@charset "UTF-8";

/* Reset */
*,*:before,*:after {box-sizing: border-box;}

ul {list-style:none;}
ul,li {margin:0; padding:0;}

ol {padding:0; margin:0 0 1em 1.5em;}
ol li {margin-bottom:0.5em;}
ol ol {margin-top:1em;}

a {color:#2c2d30; text-decoration:none; outline:none;}

img {vertical-align:middle;}

dl,dt,dd {margin:0;}

address,caption,em,th {
	font-style:normal;
}

/* Fluid-img */
img {max-width:100%; height:auto;}


/* --------------------------------------------------
	ベース
-------------------------------------------------- */
html {color:#1a1a1a; font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; font-weight: 500; font-size:3.733vw; line-height:1.7; height:100%;}/* 基準フォントサイズは14px */

/* BODY */
body {padding-top:13.333333vw;}
body.fixing-body {position: fixed; width:100%; height:100%;}


/* --------------------------------------------------
	共通
-------------------------------------------------- */
/* PC用のもは非表示 */
.pc_only {display:none !important;}

/* 見出し一旦クリア & H1〜H3は明朝体 */
h1,h2,h3,h4,h5,h6 {margin:0 0 0.5em; font-size:1em; line-height:1.35;}

/* 段落 */
p {margin:0 0 0.75em; text-align: justify;}

/* インデント */
.indent {text-indent:-1em; margin-left:1em;}

/* 画像 */
figure {margin:0 0 1em;}

/* アコーディオン */
.acordion_tree {display: none;}

/* ノーマルリスト */
.normal_list {list-style:disc; margin-left:1.5em; margin-bottom:1em; line-height:1.5;}
.normal_list li {margin-bottom:0.5em;}
.normal_list.square {list-style:square;}
.normal_list.decimal {list-style:decimal;}

/* オレンジディスクリスト */
ul.orange_disc li {padding-left: 1.2em; position: relative; margin-bottom:5px;}
ul.orange_disc li:before {content: "●"; color: #ff6714; position: absolute; top: 0; left: 0;}
ul.orange_disc li a{text-decoration:underline;}
ul.orange_disc li a:hover{text-decoration:none;}

/* 注意書きリスト */
.caution_list {margin-bottom:1em;}
.caution_list li {padding-left:1em; margin-bottom: 0.5em; position:relative;}
.caution_list li:before {content:"※"; position:absolute; top:0; left:0;}

/* 注意書き（段落） */
p.caution {padding-left:1em; position:relative;}
p.caution:before {content:"※"; position:absolute; top:0; left:0;}

/* インラインブロック（ウインドウ幅によって途中で改行される場合にキレのいいところで改行させるため） */
.inline_block {display:inline-block;}

/* リンクボタン & button */
.btn01 a {display:block;width:100%;background-color: #2c2d30;color:#fff;text-align:center;line-height:1;padding:1.3em 0;position:relative;margin:2em auto;}
.btn01 a:after {content: ">"; display: block; position: absolute; top: calc(50% - 0.5em); right: 0.5em; color: #ff6714;}

/* ページャー change 20180124 */
.pager {text-align:center; margin-top:1.5em;}
.pager ul {display:flex; justify-content: center;}
.pager li {margin: 0 2px;}
.pager li a {display:block; padding:0.5em 0.75em; color: #666; border:1px solid #666; line-height:1;}
.pager .current a {background-color:#666; color:#fff;}
.pager li a:hover {background-color: #999; color: #fff; border-color: #999;}

/* テーブル1 */
.tbl01 {max-width:100%; border:1px solid #ddd; border-bottom:none; background-color:#fff;}
.tbl01 tr {display:block;}
.tbl01 th {display:block; background-color:#f8f8f8; padding:0.5em; font-size: 1.07em; border-bottom:1px solid #ddd;}
.tbl01 td {display:block; max-width:100%; padding:1em 1em; border-bottom:1px solid #ddd;}

.tbl01 h2{font-size:1em!important; border:none!important;}
.tbl01 h2:before {content: "●"; color: #ff6714; margin-right: 0.2em;}

.th_left th{text-align:left;}
.td_center td{text-align:center;}


/* テーブル2 */
.tbl02 {width: 100%;}
.tbl02 th,.tbl02 td {padding: 0.5em 0; border-bottom: 1px solid #ccc; vertical-align: top;}
.tbl02 th {text-align: left;}


/* テーブル3 */
.tbl03 {max-width:100%; border:1px solid #ddd; background:#fff; margin:1em auto;}
.tbl03 th {background:#f8f8f8; padding:0.5em; font-size: 1.07em; border:1px solid #ddd;}
.tbl03 td {padding:1em 1em; border:1px solid #ddd;}
.tbl03 th,.tbl03 td {border: 1px solid #ddd; font-size: 1.07em; padding: 1em;}
.tbl03 td.tbl03_center {text-align: center;}

/* テーブル4 */
.tbl04 {max-width:100%; border:1px solid #ddd; background:#fff; margin:1em auto; word-break: break-all;}
.tbl04 th {background:#f8f8f8; padding:0.5em; font-size: 0.7em; border:1px solid #ddd;}
.tbl04 th.bg {background:#f3f9fC;}
.tbl04 td {padding:1em 1em; border:1px solid #ddd;}
.tbl04 th,.tbl04 td {border: 1px solid #ddd; font-size: 0.7em;}
.tbl04 td.tbl04_center {text-align: center;}

/* --------------------------------------------------
フォーム
-------------------------------------------------- */
/* 必須項目注意書き */
form .hissu {font-size:0.75em; color:#f00; margin-bottom:1.5em;}

/*　幅指定　*/
.w200px{ width: 200px; background: orange}

/* 入力エリア */
input[type="text"],input[type="search"],input[type="tel"],input[type="email"],input[type="number"],select,textarea {-webkit-appearance: none; background-color:#fff; border:1px solid #ccc; border-radius:0; font-size:16px; padding: 0.4em; width:100%; box-sizing:border-box; line-height:1.5;}
textarea {height:6em;}
::-webkit-input-placeholder {color:#aaa;}

/* ラジオボタン */
input[type="radio"] {display:none;}
input[type="radio"] + label {position:relative; padding-left:1.5em; display: inline-block;}
input[type="radio"] + label:before {display:block; position:absolute; top:calc(50% - 0.6em); left:0; width:1.2em; height:1.2em; content: ""; border:1px solid #ccc; border-radius:50%; background-color:#fff; cursor: pointer;}
input[type="radio"]:checked + label {color:#f39800;}
input[type="radio"]:checked + label:after {display:block; position:absolute; top:calc(50% - 0.6em); left:0; width:1.2em; height:1.2em; content:""; border-radius:50%; background-color:#f39800;}

/* 送信ボタン */
button {display:block; width: 100%; line-height:1; padding:1em 0; text-align: center; background-color: #474747; color: #fff; font-size: 16px; border: none;}

/* --------------------------------------------------
	固定ヘッダ＋Gナビ
-------------------------------------------------- */
#fixed_box {width:100%; position:fixed; top:0; left:0; z-index:101; transition: all 0.25s ease;}
#fixed_box.is-fixed {box-shadow: 0 2px 10px 0 rgba(0,0,0,0.15);}

/* --------------------------------------------------
	ヘッダ
-------------------------------------------------- */
#header {display:flex; justify-content: space-between; align-items: center; height:13.333333vw; background-color:rgba(255,255,255,0.95); border-top: 3px solid #de430a;  z-index:100; transition: all 0.25s ease; position: relative;}
#header h1 {width: 61vw; padding: 0 2vw; margin-bottom: 0;}
#header.open {background-color: #fff; border-bottom: 1px solid #ccc;}

/* 言語 */
#header .head_navi {display: flex; width: 39vw; height: 100%;}
#header .head_navi .lang {display: flex; justify-content: space-between; width: 26vw; height: 100%; font-size: 0.857em;}
#header .head_navi .lang li {width: calc(50% - 0.5px); height: 100%;}
#header .head_navi .lang li a {display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; background-color: #de430a; color: #fff; text-align: center;}

/* メニュートグル＆ハンバーガーアイコン */
.drawer_toggle {width:13vw; height:100%; cursor:pointer; position:relative;}
.drawer_toggle span {display:block; position:absolute; top:50%; left:3vw; content:""; width:7vw; height:1px; background-color:#de430a; transition: all 0.25s ease;}
.drawer_toggle span:nth-child(1) {top:30%;}
.drawer_toggle span:nth-child(3) {top:70%;}

/* メニュートグル＆クローズアイコン */
.open .drawer_toggle span:nth-child(2) {display:none;}
.open .drawer_toggle span:nth-child(1) {top:calc(50% - 0.5px);
transform: rotate(45deg);
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-o-transform: rotate(45deg);
}
.open .drawer_toggle span:nth-child(3) {bottom: auto; top:calc(50% - 0.5px);
transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
}



/* --------------------------------------------------
	Gナビ
-------------------------------------------------- */

#g_navi {display:none; position:fixed; top:0; left:0; width:100%; height:100%; padding-top:13.333333vw; overflow-y:auto; z-index:98;}
#g_navi .layer {position:absolute; top:0; left:0; display:block; width: 100%; height:100%; background-color:rgba(0,0,0,0.85); content:"";}
#g_navi br {display: none;}
#g_navi .accordion_tree {display:none; padding-left:15px; border-top:1px solid #ccc; background-color:#eee;}
#g_navi .submenu {display:none; padding-left:15px; border-top:1px solid #ccc; background-color:#ddd;}
#g_navi > ul {position:relative; z-index:99; width:100%; background-color:#fff; box-shadow: 0 5px 5px 0 rgba(0,0,0,0.25);}
#g_navi li {border-bottom:1px solid #ccc; line-height:1; position: relative;}
#g_navi li:last-child {border:none;}
#g_navi li a,#g_navi .trigger {color: #2c2d30; display:block; padding:1em; cursor:pointer; position:relative;}
#g_navi .trigger:after {content:""; width: 2.4vw; height: 2.4vw; border-top: 1px solid #de430a; border-right: 1px solid #de430a; position:absolute; top:1em; right:4vw; transform: rotate(135deg);}
#g_navi .trigger.active:after {transform: rotate(-45deg);}

/* --------------------------------------------------
	フッター
-------------------------------------------------- */
#footer {text-align:center; line-height:1; background-color: #2c2d30; padding:7vw 0 24vw;}
#footer_navi {margin-bottom: 1em;}
#footer_navi li {display: inline-block; padding: 0 0.5em; margin-bottom: 0.75em; border-right: 1px solid #ccc;}
#footer_navi li a {color: #fff;}
#footer_navi li:last-child {border: none; padding-right: 0;}
#footer .copyright {font-size:0.7em; color: #b9b9b9;}

/* --------------------------------------------------
	ページトップ
-------------------------------------------------- */
#backToTop {position:fixed; right:4vw; bottom:4vw; width:12vw; transition: all 0.5s ease; cursor:pointer; z-index:90;}

/* --------------------------------------------------
	レイアウト・セクション・見出し等
-------------------------------------------------- */
#contents {padding: 0 2.67vw; position: relative; overflow: hidden;}

section {padding-bottom: 15vw;}

/* --------------------------------------------------
	トップページ
-------------------------------------------------- */
#home #contents:before {content: ""; display: block; width: 300%; height: 300%; background-color: #eee; position: absolute; bottom: 0; left: 0; transform: rotate(20deg); transform-origin: left bottom; z-index: -1;}
#home #contents h1 {color: #ff6714; font-size: 2em; text-align: center;}
#home #contents h1 span {display: block; color: #1a1a1a; font-size: 0.4em;}

/* MV */
#top_mv {height: 98vw; position: relative; margin-bottom: 2em;}
#top_mv figure {width: 100%; height: 100%; margin: 0; position: absolute; top: 0; left: 0; z-index: -1;}
#top_mv figure img {height: 100%; object-fit: cover; font-family: 'object-fit: cover;';}
#top_mv .catch .inner {width: 53vw; padding-top: 42%; margin: 0 auto;}
#top_mv h1 {margin-bottom: 1em;}
#top_mv p {display: inline-block; white-space: nowrap; font-size: 0.857em; font-weight: bold; text-shadow: 1px 1px 3px #fff, 1px -1px 3px #fff, -1px 1px 3px #fff, -1px -1px 3px #fff; margin-left: 50%; transform: translateX(-50%);}

/* NEWS */
#top_news dl {margin-bottom: 1.5em;}
#top_news dt {font-weight: bold; margin-bottom: 0.5em;}
#top_news dd {padding-bottom: 0.75em; margin-bottom: 0.75em; border-bottom: 1px solid #ccc;}

/* CONTENTS */
#top_contents ul {display: flex; flex-wrap: wrap; justify-content: space-between; background-color: #eee; padding: 1px 1px 0;}
#top_contents li { background-color: #fff; width: calc(50% - 0.5px); padding: 2.4em 0; margin-bottom: 1px; text-align: center; position: relative;}
#top_contents li a {display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 1;}
#top_contents li figure {width: 50%; margin: 0 auto;}
#top_contents li p {width:100%; display:block; text-align:center; margin: 10px auto 0;}

/* --------------------------------------------------
	下層ページ共通
-------------------------------------------------- */
/* レイアウト 見出し */
section h1 {font-size: 1.43em; text-align: center; padding-bottom: 0.3em; margin-bottom: 0.75em; border-bottom: 4px solid #ff6714;}
section .lead {margin-bottom: 2em;}

/* ページタイトル */
#page_ttl {height: 26.67vw; position: relative; background-color: #f7f7f7;}
#page_ttl figure {margin: 0; height: 100%;}
#page_ttl figure img {height: 100%; object-fit: cover; font-family: 'object-fit: cover;';}
#page_ttl h1 {position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); font-size: 2.143em; color: #ff6714; text-align: center; white-space: nowrap; text-shadow: 2px 2px 10px #fff, -2px 2px 10px #fff, 2px -2px 10px #fff, -2px -2px 10px #fff; text-transform: uppercase;}
#page_ttl h1 span {display: block; color: #1a1a1a; font-size: 0.4em;}

/* パンクズリスト */
#breadcrumb {padding:2.67vw;}
#breadcrumb li {display:inline-block;}
#breadcrumb li a {color: #ff6714;}
#breadcrumb li a:after {margin:0 0.5em; content: ">"; color: #ccc;}

/* --------------------------------------------------
	商品情報
-------------------------------------------------- */
/* カテゴリー（PC時左サイド） */
#pdc_side {margin-bottom: 2em;}
#pdc_side .trigger {background-color: #474747; color: #fff; font-size: 1.07em; text-align: center; line-height: 2.67; cursor: pointer;}
#pdc_side .trigger img {width: 1.05em; margin-right: 0.4em; vertical-align: text-bottom;}
#pdc_side .acordion_tree {background-color: #fff; border: 1px solid #ccc; border-top: none; box-shadow: 0 0 10px 0 rgba(0,0,0,0.15);}
#pdc_side .pdc_cat li {border-bottom: 1px solid #ccc;}
#pdc_side .pdc_cat li a {display: block; line-height: 1; padding: 1em; position: relative;}
#pdc_side .pdc_cat li a:after {content:""; width: 0.5em; height: 0.5em; border-top: 1px solid #de430a; border-right: 1px solid #de430a; position:absolute; top:50%; right:4vw; transform: translateY(-50%) rotate(45deg);}
#pdc_side .search_box {display: flex; justify-content: space-between; align-items: center; padding: 1.5em 0.75em;}
#pdc_side .search_box input {width: calc(100% - 4em - 10px);}
#pdc_side .search_box input[type="submit"]{width: 5em; padding: 0.65em 0; height:100%; box-sizing:border-box; border:0; background: #474747; color: #fff;}
#pdc_side .search_box input[type="submit"]:hover{opacity:.8; transition: all .3s;}
#pdc_side .search_box button {width: 4em; padding: 0.4em 0; line-height: 1.5;}
#pdc_side .banner {padding: 0 0.75em;}
#pdc_side .banner li {margin-bottom: 1em;}

/* 一覧 */
#pdc_list .item_list {display: flex; justify-content: space-between; flex-wrap: wrap;}
#pdc_list .item_list .item {width: 48%; margin-bottom: 1em; padding: 1em; border: 1px solid #ddd; position: relative;}
#pdc_list .item_list .item a {display: block; width: calc(100% + 2px); height: calc(100% + 2px); position: absolute; top: -1px; left: -1px;}
#pdc_list .item_list .item figure {width: 60%; margin: 1em auto 0;}
#pdc_list .item_list .item h2 {color: #ff6714; text-align: center;}
#pdc_list .item_list .item dl {font-size: 0.857em;}
#pdc_list .item_list .item dl:after {content: ""; clear: both; display: block;}
#pdc_list .item_list .item dt {clear: both; float: left; font-weight: bold;}
#pdc_list .item_list .item dt:after {content: "：";}
#pdc_list .item_list .item dd {border-bottom: 1px dotted #ddd; padding-bottom: 0.4em; margin-bottom: 0.4em;}
#pdc_list .item_list .item dd:last-child {border: none; padding-bottom: 0; margin-bottom: 0;}

#pdc_list .item_list .last {width: 48%; height: 10px; margin-bottom: 1em; padding: 1em; border: none; position: relative;}

#pdc_box_wrap {flex-wrap: wrap; display: flex;justify-content: space-between;}
#pdc_box_wrap .pdc_box{width: 100%; margin-bottom: 20px;}
#pdc_box_wrap .pdc_box h2{border-left: 5px solid #ff6714; padding-left: 0.3em; line-height: 1;}

/* アミノ酸とは */

#amino_box_wrap {flex-wrap: wrap; display: flex;justify-content: space-between;}
#amino_box_wrap .amino_box{width: 100%; margin-bottom: 20px;}
#amino_box_wrap .amino_box h2{border-left: 5px solid #ff6714; padding-left: 0.3em; line-height: 1;}

/* 詳細 */
#pdc_dtl figure {width: 60%; margin: 0 auto 2em;}
#pdc_dtl p {margin-bottom: 1.5em;}
#pdc_dtl .data {padding: 1em; border: 1px solid #ddd; margin-bottom: 1em;}
#pdc_dtl .data dl:after {content: ""; clear: both; display: block;}
#pdc_dtl .data dt {clear: both; float: left; font-weight: bold;}
#pdc_dtl .data dt:after {content: "：";}
#pdc_dtl .data dd {border-bottom: 1px dotted #ddd; padding-bottom: 0.4em; margin-bottom: 0.4em;}

#pdc_dtl .amino_f {background-color: #f7f7f7; padding: 1em;}
#pdc_dtl .amino_f dt {font-weight: bold;}
#pdc_dtl .amino_f dd {margin-bottom: 1em;}
#pdc_dtl .amino_f dd:last-child {margin-bottom: 0;}

/* --------------------------------------------------
	事業内容
-------------------------------------------------- */
#business #contents:before {content: ""; display: block; width: 300%; height: 300%; background-color: #eee; position: absolute; bottom: 0; left: 0; transform: rotate(45deg); transform-origin: left bottom; z-index: -1;}
#busi_cont h1 {font-size: 1.4em;}
#busi_cont figure {margin-bottom: 3em;}
#busi_cont .feature {width: 76vw; margin: 0 auto 1.5em; position: relative;}
#busi_cont .feature h2 {width: 11em; background-color: #ff6714; color: #fff; font-size: 1.286em; padding: 0.3em 0; text-align: center; position: absolute; top: 0; left: 50%; transform: translate(-50%,-50%);}
#busi_cont .feature ul {background-color: #fff; border: 3px solid #ffc19f; padding: 2em 0 0.75em 1.5em; font-weight: bold;}
#busi_cont .feature li {margin-bottom: 0.75em;}
#busi_cont .feature li img {width: 1.8em; margin-right: 0.5em;}

/* --------------------------------------------------
	品質保証
-------------------------------------------------- */
/* 品質方針 */
#ql_policy {padding-bottom: 0;}
#ql_policy .policy {background-color: #f9f8f8; border: 3px solid #e9e9e9; padding: 1em 1em 0; font-size: 1.07em; font-weight: bold; margin-bottom: 1em;}
#ql_policy .policy li {padding-left: 2.5em; margin-bottom: 1em; position: relative;}
#ql_policy .policy li img {width: 1.8em; position: absolute; top: 0.3em; left: 0;}

/* ３つのこだわり */
#ql_point .point {margin-bottom: 3em;}
/*#ql_point .point:last-child {margin-bottom: 0;}*/
#ql_point h1 {margin-bottom: 1.5em;}
#ql_point h2 {font-size: 1.285em; border-left: 5px solid #ff6714; padding-left: 0.3em; line-height: 1;}
#ql_point figure {position: relative;}
#ql_point figure figcaption {width: 12.8vw; position: absolute; top: 0; left: 10px; transform: translateY(-50%);}

/* 国内取得許認可（業許可） */
#ql_license h1 {margin-bottom: 1.75em;}
#ql_license .office {border: 3px solid #e9e9e9; padding: 2em 0.5em 1em; margin-bottom: 3em; position: relative;}
#ql_license .office:last-child {margin-bottom: 1.5em;}
#ql_license .office h2 {width: 9em; background-color: #ff6714; color: #fff; font-size: 1.07em; padding: 0.3em 0; text-align: center; position: absolute; top: 0; left: 50%; transform: translate(-50%,-50%);}
#ql_license .office li {padding-left: 1.3em; margin-bottom: 0.5em; font-size: 0.93em; font-weight: bold; position: relative;}
#ql_license .office li:before {content: "●"; color: #ff6714; position: absolute; top: 0; left: 0;}

#ql_license .license {font-size: 1.07em; font-weight: bold;display: flex; justify-content: space-between; }
#ql_license .license a {display: flex; justify-content: space-between; align-items: center; margin-bottom: 1em; position: relative;}
/*#ql_license .license a:before {content: ">"; color: #ff6714; position: absolute; top: 50%; left: 1em; transform: translateY(-50%);}*/
#ql_license .license p {margin-bottom: 0;}
#ql_license .license figure {width: 40.5vw; border: 2px solid #eee; padding: 1em 1em 1em; background: #fff; margin: 0 1vw; flex: 1;}

/* モーダル */
.modal-btn {cursor: pointer;}
.modal-content {display: none; position: fixed; width: 70%; max-width: 400px; z-index: 1000;}
#modal-overlay {position: fixed; top: 0; z-index: 950; display: none; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.75);}

/* モーダルを閉じるボタン */
.close_modal {display:none; position:fixed; width:40px; height:40px; cursor:pointer; z-index:1000;}
.close_modal .close_btn {display:block; position:absolute; top:50%; left:0; width:100%; height:1px; background-color:#fff; 
transform: rotate(45deg);
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-o-transform: rotate(45deg);
}
.close_modal .close_btn:after {content:""; display:block; width:100%; height:100%; background-color:inherit;
transform: rotate(90deg);
-webkit-transform: rotate(90deg);
-moz-transform: rotate(90deg);
-o-transform: rotate(90deg);
}

/* --------------------------------------------------
	生産体制
-------------------------------------------------- */
#production #contents:before {content: ""; display: block; width: 300%; height: 300%; background-color: #eee; position: absolute; bottom: 0; left: 0; transform: rotate(20deg); transform-origin: left bottom; z-index: -1;}

#prd_index .system {background-color: #fff; margin-bottom: 1em; text-align: center; border: 1px solid #ddd; padding-bottom:1em;}
#prd_index .system h2 {display: inline-block; font-size: 1.43em; padding-bottom: 0.4em; margin:0.75em 0!important; position: relative; border-left:none;}
#prd_index .system h2:after {content: ""; display: block; width: 100%; height: 4px; background-color: #ff6714; position: absolute; bottom: 0; left: 0;}
#prd_index .system p {text-align: left; padding: 0 1em; margin-bottom: 1em;}
#prd_index .system .btn01 {padding: 0 1em 1em;}


/* --------------------------------------------------
	会社概要
-------------------------------------------------- */
#comp_outline em {display: block; font-size: 0.7em;}
#comp_outline .map iframe {width: 100%; height: 50vw;}
#comp_outline address {margin-bottom: 0.75em;}
#comp_outline .iso {display: flex; justify-content: space-between; align-items: center;}
#comp_outline .iso img {width: auto; height: 17.2vw; margin-left: 0.5em;}
#comp_outline dl:after {content: ""; clear: both; display: block;}
#comp_outline dt {clear: both; float: left;}
#comp_outline dd {padding-left: 9em;}
#comp_outline li {padding-left: 1.2em; position: relative;}
#comp_outline li:before {content: "●"; color: #ff6714; position: absolute; top: 0; left: 0;}

#comp_photo h2 {font-size: 1.286em; padding-bottom: 0.2em; margin-bottom: 1em; border-bottom: 2px solid #ff6e1e;}
#comp_photo .photo {display: flex; flex-wrap: wrap; justify-content: space-between;}
#comp_photo .photo figure {width: 48%; margin-bottom: 1em;}

/* モーダル */
#comp_photo .modal-content {width: 80%; max-width: 800px;}


/* --------------------------------------------------
	 新着情報
-------------------------------------------------- */
/* 一覧 */
#news_list dl {margin-bottom: 1.5em;}
#news_list dt {font-weight: bold; margin-bottom: 0.5em;}
#news_list dd {padding-bottom: 0.75em; margin-bottom: 0.75em; border-bottom: 1px solid #ccc;}

/* 詳細 */
#news_dtl .date {color: #666;}

/* --------------------------------------------------
	 汎用的なレイアウト等（工場設備・など）
-------------------------------------------------- */
.temp_post h2 {font-size: 1.285em; border-left: 5px solid #ff6714; padding-left: 0.3em;}
.temp_post h2:nth-child(n+2) {margin-top: 1em;}
.temp_post h3 {font-size: 1.143em; margin-top: 1em;}
.temp_post figcaption {color: #666; font-size: 0.875em; margin-top: 0.3em; text-align: center;}

dl.flex_layout01 {display: flex; align-items: center; margin-bottom: 1em;}
dl.flex_layout01 dt {border: 1px solid #ccc; padding: 0.5em; margin-right: 1em; white-space: nowrap;}

.flex_col2 {display: flex; flex-wrap: wrap; justify-content: space-between;}
.flex_col2 > * {width: 48%;}

.fig_col2_4 {display: flex; flex-wrap: wrap; justify-content: space-between;}
.fig_col2_4 figure {width: 48%;}


/* --------------------------------------------------
	経営理念
-------------------------------------------------- */
#philosophy figure{width:50%; margin:auto;}
dl.type01{width:100%; margin:2em 0;}
dl.type01 dt{font-weight:bold; font-size:1.2em; border-bottom:1px dotted #ccc; margin-bottom:10px; padding-left:.4em;}
dl.type01 dt span{color:#ff6714; margin-right:10px;}
dl.type01 dd{margin-bottom:20px;}


/* --------------------------------------------------
	環境への取り組み
-------------------------------------------------- */
.catch_ttl{font-size: 1.3em; text-align: left; display:block; margin-bottom:.5em;}

ul.num {background-color: #f9f8f8; border: 3px solid #e9e9e9; padding: 1em 1em 0; font-size: 1em; font-weight: bold; margin: 1.5em auto;}
ul.num li {padding-left: 2.5em; margin-bottom: 1em; position: relative;}
ul.num li img {width: 1.8em; position: absolute; top: 0.3em; left: 0;}
ul.num li a{text-decoration:underline;}
ul.num li a:hover{text-decoration:none;}

.signature{width:100%; text-align:right; margin:1em 0;}


/* --------------------------------------------------
	日理化学株式会社
-------------------------------------------------- */
.philosophy_box{background-color: #f9f8f8; border: 3px solid #e9e9e9; padding: 2em 1em 1.5em; font-size: 1em; font-weight: bold; margin: 1.5em auto;}
/* ロゴ表示 */
.logo img{margin:auto; width:auto;}

/* --------------------------------------------------
	健康食品
-------------------------------------------------- */
.ex_box{background-color: #f9f8f8; border: 3px solid #e9e9e9; padding: 1em 1em .5em; font-size: 1em; font-weight: bold; margin: 1.5em auto; font-size:1.2em;}


/* --------------------------------------------------
	受託製造
-------------------------------------------------- */
.manu_item{width:100%; border-bottom:1px dotted #333;}
.manu_item h3{width:100%; border-bottom:1px solid #ff6714; padding-bottom:5px;}
.manu_item dt{border:1px solid #333; padding:10px; text-align:center; background:#fff; margin-bottom:10px; font-weight:bold;}
.manu_item dd{width:100%; padding:10px; box-sizing:border-box;}

#ql_point3 .flow:after {text-align: center; font-family:'Font Awesome 5 Free'; content:'\f063';	display: block; font-size: 2.5em; font-weight: 900; color: #ff6714; padding: 0.3em; margin-bottom: .5em;}


/* --------------------------------------------------
	品質管理
-------------------------------------------------- */
/* フロー */






/* --------------------------------------------------
	 simtemap
-------------------------------------------------- */
.sitemap {margin-left:20px;}
.sitemap ul{padding: 0 0 15px 0;}
.sitemap li{margin-top: 10px;padding-bottom: 5px;padding-left:16px;font-size:13px;line-height:15px;}
.sitemap li a:hover{color: #333;text-decoration:underline;}
.sitemap li ul li{border: medium none;padding-bottom: 0;vertical-align: middle;margin-left: 15px;padding-left:14px;}
.sitemap li ul li a:hover{color: #333;text-decoration:underline;}
.sitemap ul ul{padding:0px;}

.sitemap li a:before{
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: '\f105';
  color: #ff6714;/*色*/
  padding: 0.3em;/*余白*/
  margin-bottom:.5em;
}

/* --------------------------------------------------
	 contact
-------------------------------------------------- */
/* フォーム */
#contact .contact_form dt {margin-bottom: 0.2em;}
#contact .contact_form dd {margin-bottom: 1.2em;}
#contact .contact_form {margin: 20px 0 0;}
#contact .contact_form .btn {display: block; margin-top: 40px;}
#contact .contact_form .btn li {width: 200px; margin: 0 auto 10px;}

/* --------------------------------------------------
	 アミノジェット
-------------------------------------------------- */
#ql_point2 .point {margin-bottom: 3em;}
#ql_point2 .point:last-child {margin-bottom: 0;}
#ql_point2 h1 {margin-bottom: 1.5em;}
#ql_point2 h2 {font-size: 1.285em; border-left: 5px solid #ff6714; padding-left: 0.3em; line-height: 1;}
#ql_point2 figure {position: relative;}
#ql_point2 figure figcaption {width: 12.8vw; position: absolute; top: 0; left: 10px; transform: translateY(-50%);}

/* --------------------------------------------------
	 受託製造の流れ
-------------------------------------------------- */
#ql_point3 .point {/*margin-bottom: 3em;*/}
#ql_point3 .point:last-child {margin-bottom: 0;}
#ql_point3 h1 {margin-bottom: 1.5em;}
#ql_point3 h2 {font-size: 1.285em; border-left: 5px solid #ff6714; padding-left: 0.3em; line-height: 1;}
#ql_point3 figure {position: relative;}
#ql_point3 figure figcaption {width: 12.8vw; position: absolute; top: 0; left: 10px; transform: translateY(-50%);}

/* --------------------------------------------------
	 アミノ酸とは
-------------------------------------------------- */
h2.detail {font-size: 1.7em;padding-left: 0.3em;border-left: 5px solid rgb(255, 103, 20);}


/* --------------------------------------------------
	 検索結果
-------------------------------------------------- */
.searchlist01{ width: 100%;}
.searchlist01 dt{ font-weight: bold}
.searchlist01 dd{ margin: 0 0 1em; border-bottom: 1px dotted #ccc;}

/* --------------------------------------------------
	 768px〜　タブレット
-------------------------------------------------- */
@media print, screen and (min-width : 768px) {
	
html {font-size:14px;}

/* BODY */
body {padding-top:70px;}
body.fixing-body {position:static; height:auto; top:auto !important;}

/* --------------------------------------------------
	共通
-------------------------------------------------- */
a:hover {color:#ff6714; transition: all 0.5s ease;}
a:hover img {opacity: 0.75; transition: all 0.25s ease;}


.sp_only {display:none !important;}
.pc_only {display:block !important;}

/* リンクボタン */
.btn01 a {width: 240px;margin: 2em auto;}
.btn01 a:hover {background-color:#ff6714; color: #ffff; transition: all 0.25s ease;}
.btn01 a:hover:after{color: #fff; transition: all 0.25s ease;}

/* テーブル1 */
.tbl01 tr {display:table-row;}
.tbl01 th,.tbl01 td {display:table-cell; border: 1px solid #ddd; font-size: 1.07em; padding: 1em;}
.tbl01 th {white-space: nowrap; padding: 1em 2em;}

/* 画像サイズリセット */
.w_100 img{display:block; margin:auto; width:auto;}

/* --------------------------------------------------
	ヘッダ
-------------------------------------------------- */
#header {display: block; height:70px; border-width: 4px; position: static;}
#header h1 {width: 287px; padding: 0; position: absolute; top: 50%; left: 10px; transform: translateY(-50%);}

/* 言語 */
#header .head_navi {display: block; width: auto; height: 30px; position: absolute; top: 4px; right: 0;}
#header .head_navi .lang {width: 100px; font-size: 1em;}

/* --------------------------------------------------
	Gナビ
-------------------------------------------------- */
#g_navi {display:block !important; position:absolute; top:4px; left:295px;right:100px; width: auto; height:66px; padding-top:0;  z-index:101; font-size: 1.143em; overflow:inherit;}
#g_navi .layer {display:none;}
#g_navi br {display: block;}
#g_navi > ul {position: static; width:auto; height: 100%; background-color: transparent; box-shadow: none; display: flex;}
#g_navi > ul > li {border-bottom:none;}
#g_navi > ul > li > a,#g_navi .trigger {padding:1em; height: 100%; display: flex; align-items: center; text-align: center;}
#g_navi > ul > li > a:after,#g_navi .trigger:after {display: none;}
#g_navi .pulldown {position:relative;}
#g_navi .accordion_tree {display:none; font-size: 0.875em;}
#g_navi .open .accordion_tree {display:block; position:absolute; top: 66px; left:0; white-space:nowrap; box-shadow:0 10px 10px 0 rgba(0,0,0,0.25); z-index: 102;}
#g_navi .open+.accordion_tree {display:block; position:absolute; top: 66px; left:0; white-space:nowrap; box-shadow:0 10px 10px 0 rgba(0,0,0,0.25); z-index: 102;}
#g_navi > ul > li a:hover,#g_navi .open .trigger {background-color:#eee;}
#g_navi .accordion_tree a {padding-right: 30px;}
#g_navi .accordion_tree a:after {width: 6px; height: 6px; top: calc(50% - 5px); right:10px; transform: rotate(45deg);}
#g_navi .accordion_tree a:hover {background-color: #fff;}
	
#g_navi .accordion .submenu {display: none;}
#g_navi .accordion {cursor: pointer;}
#g_navi .accordion:hover {background-color: #fff; transition:.3s; }
#g_navi .accordion:after{content:""; border-top: 1px solid #de430a; border-right: 1px solid #de430a; position:absolute; width: 6px; height: 6px; top: calc(50% - 5px); top:1em; right:10px; transform: rotate(135deg);}
#g_navi .accordion.dropdown_toggle:after{content:""; border-top: 0; border-right: 0; border-bottom: 1px solid #de430a; border-left: 1px solid #de430a; position:absolute; width: 6px; height: 6px; top: 1em; right:10px; transform: rotate(135deg);}

	
/* --------------------------------------------------
	フッター
-------------------------------------------------- */
#footer {padding:30px 0 100px;}
#footer_navi {display: flex; justify-content: center; flex-wrap: wrap;}
#footer_navi ul:last-child {width: 100%;}
#footer_navi ul:first-child li:last-child {border-right: 1px solid #ccc; padding-right: 0.5em;}

/* --------------------------------------------------
	ページトップ
-------------------------------------------------- */
#backToTop {width:70px; bottom:20px; right:20px;}
#backToTop img:hover {opacity: 0.75; transition: all 0.25s ease;}

/* --------------------------------------------------
	コンテンツレイアウト・セクション・見出し等
-------------------------------------------------- */
#contents {padding: 0;}
#contents .inner {max-width: 1040px; margin: 0 auto; padding: 0 20px; height:auto;}

section {padding-bottom: 80px;}

/* --------------------------------------------------
	トップページ
-------------------------------------------------- */
#home #contents:before {transform: rotate(70deg);}
#home #contents h1 {font-size: 2.57em; margin-bottom: 30px;}

/* MV */
#top_mv {height: 744px; margin-bottom: 50px;}

/* NEWS */
#top_news dl:after {content: ""; clear: both; display: block;}
#top_news dt {float: left; margin-bottom: 0;}
#top_news dd {padding-left: 10em;}

/* CONTENTS */
#top_contents ul {padding: 3px 3px 0;}
#top_contents li {width: calc(20% - 3px); padding: 2.75em 0; margin-bottom: 3px;}
#top_contents li:hover {background-color: #f7f7f7;}
#top_contents li a:hover {width: calc(100% + 6px); height: calc(100% + 6px); top: -3px; left: -3px; border: 3px solid #ff6714; transition:none;}

/* --------------------------------------------------
	下層ページ共通
-------------------------------------------------- */
/* レイアウト 見出し */
section h1 {font-size: 2.143em;}
section .lead {font-size: 1.143em;}
section p {font-size: 1.07em;}

/* ページタイトル */
#page_ttl {height: 150px;}
#page_ttl h1 {font-size: 2.57em;}

/* パンクズリスト */
#breadcrumb {max-width: 1040px; margin: 0 auto; padding:20px 20px 30px;}

/* --------------------------------------------------
	商品情報
-------------------------------------------------- */
#contents.col2 .inner {display: flex; justify-content: space-between;}

#pdc_side {width: 24%; margin-bottom:0;}
#pdc_main {width: 74%;}

#pdc_side .acordion_tree {display: block !important; position: static; border: none; box-shadow: none;}
#pdc_side h1 {background-color: #ff6714; color: #fff; font-size: 1.143em; text-align: center; padding: 0.5em 0; margin-bottom: 0; border-radius: 6px 6px 0 0;}
#pdc_side .pdc_cat {border: 1px solid #ccc; border-top: none; border-radius: 0 0 6px 6px; font-size: 1.07em;}
#pdc_side .pdc_cat li {border-bottom: 1px dotted #ccc;}
#pdc_side .pdc_cat li a {padding: 1em 0 1em 40px; position: relative;}

#amino #pdc_side .pdc_cat li a {padding-left: 1em; line-height: 1.3;}

#pdc_side .pdc_cat li a img {width: 24px; position: absolute; top: 50%; left: 8px; transform: translateY(-50%);}
#pdc_side .pdc_cat li a:after {display: none;}
#pdc_side .search_box {padding: 14px 0 24px;}
#pdc_side .banner {padding: 0;}
#pdc_side .banner li {margin-bottom: 10px;}

#pdc_list .item_list .item {width: 32%; margin-bottom: 20px;}
#pdc_list .item_list .item:hover {}
#pdc_list .item_list .item a:hover {background-color: rgba(255,255,255,0.5); border: 3px solid #ff6714; transition: none;}
#pdc_list .item_list .item h2 {font-size: 1.07em;}
#pdc_list .item_list .item dl {font-size: 1em;}

/* 詳細 */
#pdc_dtl figure {width: 50%; margin-bottom: 50px;}
#pdc_dtl p {margin-bottom: 30px;}
#pdc_dtl .data {display: flex; justify-content: space-between; font-size: 1.07em;}
#pdc_dtl .data dl {width: 48%;}

#pdc_dtl .amino_f {font-size: 1.07em;}
	
#pdc_box_wrap .pdc_box{width: 48%; margin-bottom: 20px;}
	
#amino_box_wrap .amino_box{width: 48%; margin-bottom: 20px;}	

/* --------------------------------------------------
	事業内容
-------------------------------------------------- */
#business #contents:before {transform: rotate(70deg);}
#busi_cont h1 {font-size: 2.143em;}
#busi_cont figure {width: 70%; max-width: 590px; margin: 0 auto 35px;}
#busi_cont .feature {width: 400px; margin: 0 auto 30px;}
#busi_cont .feature h2 {font-size: 1.7em;}
#busi_cont .feature ul {border-width: 6px; padding: 40px 0 20px 40px; font-size: 1.43em;}
#busi_cont p {width: 90%; margin: 0 auto;}

/* --------------------------------------------------
	品質保証
-------------------------------------------------- */
/* 品質方針 */
#ql_policy .policy {border-width: 6px; padding: 1em 2em 0; font-size: 1.43em;}
#ql_policy .policy li {padding-left: 3em;}
#ql_policy .policy li img {width: 2em;}

/* ３つのこだわり */
#ql_point .point {margin-bottom: 60px; display: flex; align-items: center; justify-content: space-between;}
#ql_point h1 {margin-bottom: 60px;}
#ql_point h2 {font-size: 1.7em;}
#ql_point figure {width: 40%;}
#ql_point figure figcaption {width: 60px;}
#ql_point .txt {width: 56%;}

/* 国内取得許認可（業許可） */
#ql_license h1 {margin-bottom: 60px;}
#ql_license .office_box {display: flex; justify-content: space-between; margin-bottom: 20px;}
#ql_license .office {border-width: 6px; padding: 40px 20px; width: 46%; margin-bottom: 0;}
#ql_license .office:last-child {margin-bottom: 0;}
#ql_license .office h2 {font-size: 1.43em;}
#ql_license .office li {font-size: 1.143em;}

#ql_license .license {font-size: 1.2em; display: flex; justify-content: space-between; width: 100%;}
#ql_license .license a img {width: 46%; }
#ql_license .license figure {width: calc(92%/2); border-width: 4px; padding: 20px 20px 20px 35px; margin-bottom: 0; background: #fff;}

/* --------------------------------------------------
	生産体制
-------------------------------------------------- */
#production #contents:before {transform: rotate(70deg);}

#prd_index {display: flex; flex-wrap: wrap; justify-content: space-between;}
#prd_index .lead {width: 100%; margin-bottom: 50px;}
#prd_index .system {width: 48%; margin-bottom: 0; font-size: 1.07em;}
#prd_index .system h2 {font-size: 1.7em; margin-bottom: 0.75em; position: relative;}
#prd_index .system h2:after {content: ""; display: block; width: 100%; height: 4px; background-color: #ff6714;}
#prd_index .system p {padding: 0 1.5em; min-height:140px;}
#prd_index .system .btn01 {padding: 0 1.5em 1.5em;}
#prd_index .system .btn01 a {width: 100%; margin:0;}

/* --------------------------------------------------
	会社概要
-------------------------------------------------- */
#comp_outline em {font-size: 0.8em;}
#comp_outline .office_map {display: flex; justify-content: space-between;}
#comp_outline .data {width: 58%;}
#comp_outline .map {width: 38%;}
#comp_outline .map iframe {height: 200px;}
#comp_outline .iso .txt {width: calc(100% - 138px);}
#comp_outline .iso img {height: 83px; margin-left: 15px;}

#comp_photo h2 {font-size: 1.333em;}
#comp_photo .photo {margin-bottom: 30px;}
#comp_photo .photo figure {width: 24%; margin-bottom: 0;}

/* --------------------------------------------------
	新着情報
-------------------------------------------------- */
#news_list dl:after {content: ""; clear: both; display: block;}
#news_list dt {float: left; margin-bottom: 0;}
#news_list dd {padding-left: 10em;}

/* --------------------------------------------------
	 汎用的なレイアウト等（工場設備・など）
-------------------------------------------------- */
.temp_post h2 {font-size: 1.7em; margin-bottom: 0.75em;}
.temp_post h2:nth-child(n+2) {margin-top: 1.5em;}
.temp_post h3 {font-size: 1.286em; margin-top: 1.5em; margin-bottom: 0.75em;}
.temp_post dl,.temp_post table,.temp_post ul {font-size: 1.07em;}

.fig_l{width:100%; margin-bottom:2em;}
.fig_l:after {content: ""; clear: both; display: block;}
.fig_l figure {width: 44%; float: left;}
.fig_l .txt {width: calc(56% - 20px); float: right;}

.fig_l2{width:100%; display:flex; flex-wrap:wrap; justify-content: space-between; margin-bottom:2em;}
.fig_l2 figure {width: 20%; margin-right:3%;}
.fig_l2 .txt {width: 77%;}

.fig_col2_4 figure {width: 24%;}

.flex_col1_2 {display: flex; flex-wrap: wrap; justify-content: space-between;}
.flex_col1_2 > * {width: 48%;}


/* --------------------------------------------------
	経営理念
-------------------------------------------------- */
#philosophy figure{width:20%; margin:0;}
.catch_ttl{font-size: 1.8em; text-align: center; display:block; margin-bottom:.5em;}

/* --------------------------------------------------
	環境への取り組み
-------------------------------------------------- */
ul.num {border-width: 6px; padding: 1em 2em 0; font-size: 1.1em;}
ul.num li {padding-left: 3em;}
ul.num li img {width: 2em;}


/* --------------------------------------------------
	受託製造
-------------------------------------------------- */
.manu_item{width:100%; display:flex; flex-wrap:wrap; justify-content:space-between;}
.manu_item .txt{width:70%;}
.manu_item h3{width:100%; border-bottom:1px solid #ff6714; padding-bottom:5px;}
.manu_item dl{display:flex; flex-wrap:wrap; align-items:center;}
.manu_item dt{width:15%; padding:10px; text-align:center; background:#fff; margin-bottom:0; font-weight:bold;}
.manu_item dd{width:80%; padding:10px; box-sizing:border-box;}

.manu_item .img{width:30%;}


/* --------------------------------------------------
	アミノジェット
-------------------------------------------------- */
#ql_point2 .point {margin-bottom: 60px; display: flex; align-items: center; justify-content: space-between;}
#ql_point2 h1 {margin-bottom: 60px;}
#ql_point2 h2 {font-size: 1.7em;}
#ql_point2 figure {width: 40%;}
#ql_point2 figure figcaption {width: 60px;}
#ql_point2 .txt {width: 56%;}	
	
	
/* --------------------------------------------------
	受託製造の流れ
-------------------------------------------------- */
#ql_point3 .point {/*margin-bottom: 60px;*/ display: flex; align-items: center; justify-content: space-between;}
#ql_point3 h1 {margin-bottom: 60px;}
#ql_point3 h2 {font-size: 1.7em;}
#ql_point3 figure {width: 40%;}
#ql_point3 figure figcaption {width: 60px;}
#ql_point3 .txt {width: 100%;}

/* --------------------------------------------------
	工場設備
-------------------------------------------------- */	
/* テーブル4 */
.tbl04 th {background:#f8f8f8; padding:0.5em; font-size: 1.07em; border:1px solid #ddd;}
.tbl04 th,.tbl04 td {border: 1px solid #ddd; font-size: 1.07em;}	
	
}

/* --------------------------------------------------
	 1024px〜　1200～に修正
-------------------------------------------------- */
@media print, screen and (min-width : 1200px) {

/* --------------------------------------------------
	Gナビ
-------------------------------------------------- */
#g_navi br {display: none;}
#g_navi li {white-space: nowrap;}

/*
#g_navi {left: 50%; transform: translateX(-50%);}
*/
/* --------------------------------------------------
	フッター
-------------------------------------------------- */
#footer_navi ul:last-child {width: auto;}

#footer_navi ul:nth-child(2) li:last-child {border-right: 1px solid #ccc; padding-right: 0.5em;}

}




/* --------------------------------------------------
	 1240px〜　 1525px～に修正
-------------------------------------------------- */
@media print, screen and (min-width : 1525px) {

/* --------------------------------------------------
	ヘッダ
-------------------------------------------------- */

/* 言語 */
#header .head_navi {right: 30px;}
#header .head_navi .lang {width: 200px;}


/* --------------------------------------------------
	Gナビ
-------------------------------------------------- */

#g_navi {left:295px; right:230px;}
#g_navi > Ul > li > a {padding: 0 1.5em;}

}

