@charset "UTF-8";
/* CSS Document */
body {
  color: #555;
	font-family: 'Hiragino Kaku Gothic ProN',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, sans-serif;
}
main {
	display: block;
}
a {
  text-decoration: none;
}
figure, p {
  margin: 0;
}
p {
  font-size: 16px;
  line-height: 1.8;
  background: transparent;
  position: relative;
  z-index: 2;
}

h1 {
  font-size: 34px;
  letter-spacing: 0.1em;
  background: transparent;
}
h2 {
  font-size: 24px;
  text-align: center;
  letter-spacing: 0.1em;
}
/* ボタンデザインここから */
button {
  font-size: 1.5em;
  letter-spacing: 0.5em;
  padding: 15px 60px;
  box-shadow: 10px 10px 10px rgba(0,0,0,0.3);
  background-color: gainsboro;
  border-color: gainsboro;
  border-radius: 0;
  display: block;
  margin: 10% auto;
}
button i {
	margin-left: 0.5em;
}
/* ボタンデザインここまで */
/*contact:お問い合わせ ここから*/
/* ロゴデザインここから　*/
#co_logo {
	position: absolute;
	top: 5%;
	/*left: 2%;*/
	left: 0;
	right: 0;
	text-align: center;
	text-shadow: 3px 3px 3px #fff;
}
#co_logo p {
  font-size: 16px;
  letter-spacing: 0.2em;
}
/* ロゴデザインここまで　*/
#co_nohero {
  height: 50vh;
	background-position: center;
	background-size: cover;
}
#co_wrapper {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
}
#co_wrapper div {
  margin: 10% 0;
}
#co_wrapper .button {
  letter-spacing: normal;
  width: 250px;
  font-size: 1.5em;
  box-shadow: 10px 10px 10px rgba(0,0,0,0.3);
  background-color: gainsboro;
  border-color: gainsboro;
  border-radius: 0;
  margin: 10% auto;
  text-align: center;
}
#co_wrapper .button a {
	padding: 0.7em 10px;
	display: block;
}
#co_wrapper button p {
	color: #555;
	font-size: 18px;
}
#co_wrapper .button p i {
	margin-left: 0.5em;
	display: inline-block;
}
/*8の字*/
#co_eight, #co_eight2 {
  border: solid 1px;
  width: 250px;
  margin-bottom: -67px;
  margin-left: 10px;
  line-height: 47px;
  border-color: lightgray;
}
/*contact:お問い合わせ ここまで*/
/*business:事業内容 ここから*/
/* ロゴデザインここから　*/
#bu_logo {
  position: absolute;
  top: 5%;
  right: 2%;
  text-align: center;
  text-shadow: 3px 3px 3px #fff;
  background: transparent;
}
#bu_logo p {
  font-size: 16px;
  letter-spacing: 0.2em;
  background: transparent;
}
/* ロゴデザインここまで　*/
#bu_hero {
  width: 100%;
  min-height: 50vh;
  background-position: center left 30%;
  background-size: cover;
	position: relative;
}
/*帯デザインここから*/
#bu_dom h2, #bu_int h2, #bu_lab h2, #bu_fac h2 {
  background-image: -webkit-linear-gradient(right, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
  background-image: -o-linear-gradient(right, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
  background-image: linear-gradient(to left, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
  background-repeat: no-repeat;
  background-size: 100% 5%;
  background-position: bottom;
  margin: 40px auto;
  padding: 5px 1em;
}
#bu_int h2 {
  letter-spacing: 0.1em;
}
/*帯デザインここまで*/
/*ボタンデザインここだけ*/
#bu_dom_button, #bu_int_button {
  letter-spacing: 0.2em;
}
#bu_dom_button a p, #bu_int_button a p {
	font-size: 18px;
	color: #555;
}
/*本文画像サイズとテキストここから*/
#bu_dom, #bu_int, #bu_lab, #bu_fac {
  margin: 100px 0px;
}
#bu_dom_1_ph, #bu_dom_2_ph, #bu_dom_3_ph, #bu_int_1_ph, #bu_int_2_ph, #bu_int_3_ph, #bu_lab_1_ph, #bu_lab_2_ph, #bu_lab_3_ph, #bu_lab_4_ph, #bu_fac_1_ph, #bu_fac_2_ph {
  min-height: 300px;
  background-position: center;
  background-size: cover;
}
#bu_dom_1_tx, #bu_dom_2_tx, #bu_dom_3_tx, #bu_int_1_tx, #bu_int_2_tx, #bu_int_3_tx, #bu_lab_1_tx, #bu_lab_2_tx, #bu_lab_3_tx, #bu_lab_4_tx, #bu_fac_1_tx, #bu_fac_2_tx {
  margin: 1em;
}
#bu_lab > p {
  font-size: 0.8em;
  margin: 20px;
}
#bu_font_small {
  font-size: 0.8em;
  margin: 10px 5px;
  text-align: right;
}
/*本文画像サイズとテキストここまで*/
/* business:事業内容 ここまで */

/* factory:化粧品工場 ここから*/
/* ロゴデザインここから　*/
#fa_logo {
  position: absolute;
  top: 5%;
  right: 2%;
  text-align: center;
  text-shadow: 3px 3px 3px #fff;
  background: transparent;
}
#fa_logo p {
  letter-spacing: 0.2em;
  background: transparent;
}
/* ロゴデザインここまで　*/
/* 改行 */
#fa_text_br_1, #fa_text_br_2 {
  display: block;
}
#fa_hero {
  width: 100%;
  min-height: 50vh;
  background-position: center;
  background-size: cover;
	position: relative;
}
/*帯デザインここから*/
#fa_1 h2, #fa_2 h2, #fa_3 h2 {
  background-image: -webkit-linear-gradient(right, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
  background-image: -o-linear-gradient(right, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
  background-image: linear-gradient(to left, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
  background-repeat: no-repeat;
  background-size: 100% 5%;
  background-position: bottom;
  margin: 40px auto;
  padding: 5px 0;
}
#fa_1 h2, #fa_2 h2 {
  font-size: 20px;
  line-height: 2.5;
}

/*帯デザインここまで*/
/*本文画像サイズとテキストここから*/
#fa_1, #fa_2, #fa_3 {
  margin: 100px 0px;
}
#fa_1_1 {
  text-align: right;
  font-size: 16px;
  max-width: 80%;
  margin: 0 auto;
}
#fa_1_2_ph, #fa_3_1_ph, #fa_3_2_ph {
  min-height: 200px;
  background-position: center;
  background-size: cover;
}
#fa_1_2_tx, #fa_3_1_tx, #fa_3_2_tx, #fa_3_3_tx {
  margin: 1em;
  text-align: justify;
}
/* 工場で作成される製品の図 ここから */
#fa_2_1 {
  background-color: #aaa;
  border-radius: 15px;
  max-width: 500px;
  margin: 50px 1em;
}
#fa_2_1 div {
  display: flex;
  align-items: center;
  justify-content: center;
}
#fa_2_1 div div {
  flex: 1;
  padding: 20px 10px;
  display: flex;
  align-items: center;
  flex-direction: column;
}
#fa_2_1 figure{
    text-align: center;
}
#fa_2_1 figcaption {
  color: #fff;
  font-size: 13px;
}
#fa_2_1 img{
    width: 64px;
}
/* 工場で作成される製品の図 ここまで */
#fa_3_bg {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
#fa_3_1_gmp {
  max-width: 1200px;
    margin: 20px auto;
}
#fa_3_3 {
  margin: 1em;
}
/* factory:化粧品工場 ここまで*/

/*news:新着情報 ここから*/
/* ロゴデザインここから　*/
#ne_logo {
	padding-left: 0.5em;
  text-align: center;
}
#ne_logo p {
  font-size: 14px;
  letter-spacing: 0.2em;
}
/* ロゴデザインここまで　*/

#ne_catch_img {
  width: 100%;
  min-height: 50vh;
  background-position: center left 30%;
  background-size: cover;
}

/*帯デザインここから*/
#ne_kiji_top h2 {
  background-image: -webkit-linear-gradient(right, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
  background-image: -o-linear-gradient(right, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
  background-image: linear-gradient(to left, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
  background-repeat: no-repeat;
  background-size: 100% 5%;
  background-position: bottom;
  margin: 40px auto;
  padding: 5px 1em;
}
/*帯デザインここまで*/
/* ドロップダウンリスト ここから */
#ne_category_menu{
/*    max-width: 1200px;*/
    display: flex;
}
#ne_category_menu ul{
    text-align: center;
    list-style-type: none;
    padding: 0 ;
    color: #555;
}
ul#ne_category_menu{
    padding-inline-start: 0;
}
#ne_category_menu li{
    max-width: 200px;
    position: relative;
    padding: 5px;
    display: block;
    cursor: pointer;
}

#ne_category_menu>li{
    width: 150px;
    margin: 1px;
    background: #fff;
    display: inline;
    text-align: center;
}

#ne_dropdwn_menu{
    width: 100%;
    display: none;
    position: absolute;
    margin-left: -5px;
    margin-top: 5px;
    padding: 0;
    background: #fff;
}

#ne_dropdwn_menu li{
    width: 100%;
    max-width: 200px;
}

#ne_dropdwn_menu li a{
    padding: 5px 0;
    margin: -5px 5px -5px -5px;
    display: block;
    color: #555;
}
@media(min-width: 768px){
	li a:hover{
		background: #b3d7ff;
		color: rgb(65, 65, 65);
	}
}
/* ドロップダウンリスト ここまで */
#ne_category_flex{
    display: flex;
    align-items: center;
    justify-content: flex-end;
		max-width: 1200px;
		margin-left: auto;
		margin-right: auto;
}
#ne_category{
    margin-left: 20px;
}

/*本文画像サイズとテキストここから*/

#ne_1_ph, #ne_2_ph, #ne_3_ph, #ne_4_ph, #ne_5_ph{
  min-height: 300px;
  background-position: center;
  background-size: cover;
}
#ne_1_tx, #ne_2_tx, #ne_3_tx, #ne_4_tx, #ne_5_tx{
  margin: 40px;
  text-align: justify;
}
/*本文画像サイズとテキストここまで*/

/*news:新着情報 ここまで*/

/*news archive:新着アーカイブ ここから*/
/* ロゴデザインここから　*/
#na_logo {
	padding-left: 0.5em;
  text-align: center;
	font-size: 34px;
}
#na_logo h1 {
    letter-spacing: unset;
}
/* ロゴデザインここまで　*/
#na_nohero {
  position: relative;
}
/* ドロップダウンリスト ここから */
#na_category_menu{
    display: flex;
    justify-content: flex-end;
    max-width: 1200px;
    margin: 10px auto;
}
#ne_kiji #na_category_menu {
	margin: 10px 1em;
}
#na_category_menu ul{
    text-align: center;
    list-style-type: none;
    padding: 0 ;
    color: #555;
		background: #E4F5F0;
}
ul#na_category_menu{
    padding-inline-start: 0;
}
#na_category_menu li{
    max-width: 200px;
    position: relative;
    padding: 5px 0;
    display: block;
    cursor: pointer;
}
#na_category_menu>li{
    width: 200px;
    margin: 1px;
    background: #fff;
    display: inline;
    text-align: center;
}
#na_dropdwn_menu{
    width: 100%;
    display: none;
    position: absolute;
    margin-left: -5px;
    margin-top: 5px;
    padding: 0;
    background: #fff;
	z-index: 3;
}
#na_dropdwn_menu li{
    width: 100%;
}
#na_dropdwn_menu li a{
    padding: 5px 0;
    margin: -5px 0;
    display: block;
    color: #555;
}
/* ドロップダウンリスト ここまで */

/*本文画像サイズとテキストここから*/
picture[id$="_ph"] img{
    width: 100%;
}
div[id^="na_date_"], div[id^="na_title_"]{
    font-size: 14px;
}
div[id^="na_category_"]{
    text-align: right;
    font-size: 12px;
}
#na_1,#na_2,#na_3,#na_4,#na_5,#na_6,#na_7,#na_8,#na_9,#na_10,#na_11,#na_12{
    margin: 7px;
    max-width: 50%;
}
div[id*="2_flex"]{
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 90%;
    margin: 0 auto;
}
/*本文画像サイズとテキストここまで*/
/*次に続く　ここから*/
#na_nextpage{
    width: 50%;
    max-width: 200px;
    margin: 30px auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
span[id^="na_next_"]{
    line-height: 2;
    width: 2em;
    border: 1px solid #dcdcdc;
    border-radius: 50%;
    text-align: center;
}
#na_next_1{
    background-color: gainsboro;
    color: white;
    border: none;
}
/*次に続く　ここまで*/

/*news archive:新着アーカイブ ここまで*/

/*QandA ここから*/
#qa_hero {
  width: 100%;
  min-height: 50vh;
  background-position: right;
  background-size: cover;
  position: relative;
}
/* ロゴデザインここから　*/
#qa_logo {
  position: absolute;
  bottom: 5%;
  left: 2%;
  text-align: center;
  text-shadow: 3px 3px 3px #fff;
  background: transparent;
}
#qa_logo p {
  font-size: 1.3em;
  letter-spacing: 0.2em;
  background: transparent;
}
/* ロゴデザインここまで　*/

#qa_list {
    list-style-type: none;
    margin: 50px auto;
}
#qa_list li{
    margin-bottom: 50px;
}
#qa_list dt span{
    top: 0;
    left: 0;
    width: 26px;
    height: 26px;
    font-size: 18px;
    line-height: 26px;
    display: block;
    position: absolute;
    background: #005034;
    color: #fff;
    text-align: center;
}
#qa_list dt{
    position: relative;
    margin-bottom: 15px;
    padding: 10px 10px 10px 35px;
    font-size: 13px;
    background: #DCE6E3;
    font-weight: bold;
}
#qa_list dd span{
    position: absolute;
    left: 5px;
    top: 0;
    font-size: 22px;
    font-weight: bold;
}
#qa_list dd{
    position: relative;
    padding-left: 35px;
    line-height: 22px;
    font-size: 13px;
    margin-top: 30px;
}


/* QandA ここまで */

/*Company:会社情報　ここから*/
#cp_hero {
  width: 100%;
  min-height: 50vh;
  background-position: right;
  background-size: cover;
  position: relative;
}
/* ロゴデザインここから　*/
#cp_logo {
  position: absolute;
  bottom: 5%;
  left: 2%;
  text-align: center;
  text-shadow: 2px 2px 3px #fff,1px 1px 1px #fff;
  background: transparent;
}
#cp_logo p {
  font-size: 16px;
  letter-spacing: 0.2em;
  background: transparent;
}
/* ロゴデザインここまで　*/
/*帯デザインここから*/
#cp_1 h2,#cp_2 h2,#cp_3 h2 {
  background-image: -webkit-linear-gradient(right, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
  background-image: -o-linear-gradient(right, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
  background-image: linear-gradient(to left, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
  background-repeat: no-repeat;
  background-size: 100% 5%;
  background-position: bottom;
  margin: 40px auto;
  padding: 5px 1em;
	letter-spacing: 0.1em;
}
/*帯デザインここまで*/
/*ご挨拶 ここから*/
#cp_1_wrapper{
  background-size: cover;
  padding: 10% 5%;
}
#cp_1_1 p{
  line-height: 2.5;
}
#cp_1_2{
  margin: 20px 0;
  text-align: right;
}
/*ご挨拶 ここまで*/
/*沿革 ここから*/
#cp_2 dl{
  max-width: 900px;
  margin: 0 auto;
  padding: 20px 0;
  overflow: hidden;
}
#cp_2 dt{
  padding: 20px 0;
  margin-top: 20px;
  background-color: #DCDCDC;
  box-sizing: border-box;
  float:left;
  width:70px;
  text-align: center;
  font-size: 16px;
}
#cp_2 dd {
  padding: 20px 0 0 0;
  margin-left: auto;
  width:75%;
  font-size: 16px;
}
#cp_2 dd:after{
  display: block;
  content: "";
  clear: both;
}
#cp_small_1,#cp_small_2,#cp_small_3,#cp_small_4{
    font-size: 12px;
}
/*沿革 ここまで*/
/*会社概要　ここから*/
#cp_3_1{
    text-align: center;
}
#cp_3_1 img{
    width: 80%;
    max-width: 250px;
}
#cp_3_2{
    text-align: center;
}

#cp_3 dl{
  max-width: 900px;
  margin: 0 auto;
  padding: 20px 0;
  overflow: hidden;
}
#cp_3 dt{
  padding: 20px 0;
  box-sizing: border-box;
  float:left;
  width:80px;
  text-align: center;
  font-size: 16px;
}
#cp_3 dd {
  padding: 20px 0 0 0;
  margin-left: auto;
  width:75%;
  font-size: 16px;
}
#cp_3 dd:after{
  display: block;
  content: "";
  clear: both;
}
#cp_3_3_1,#cp_3_3_2,#cp_3_3_3,#cp_3_3_4,#cp_3_3_5,#cp_3_3_6,#cp_3_3_7,#cp_3_3_8,#cp_3_3_9,#cp_3_3_10{
    padding: 20px 0;
    border-bottom: 1px solid #ccc;
}

span[id^="cp_text_br"]{
    display: block;
}

/*会社概要　ここまで*/

/*Company:会社情報　ここまで*/
/*laboratory:研究所 ここから*/
#la_logo {
    position: absolute;
    top: 5%;
    left: 2%;
    text-align: center;
    text-shadow: 3px 3px 3px #fff;
    background: transparent;
}
#la_hero{
    width: 100%;
    min-height: 50vh;
    background-position: center;
    background-size: cover;
}

/*帯デザインここから*/
#la_1 h2, #la_2 h2, #la_3 h2, #la_4 h2 {
    background-image: -webkit-linear-gradient(right, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
    background-image: -o-linear-gradient(right, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
    background-image: linear-gradient(to left, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
    background-repeat: no-repeat;
    background-size: 100% 5%;
    background-position: bottom;
    margin: 40px auto;
    padding: 5px 0;
}
#la_1 h2, #la_2 h2, #la_3 h2,#la_4 h2 {
    font-size: 20px;
    letter-spacing: -0.1em;
    line-height: 2.5;
}
/*帯デザインここまで*/
#la_1_1_ph, #la_2_1_ph, #la_3_1_ph, #la_4_1_ph {
    min-height: 200px;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

/*laboratory:研究所 ここまで*/
/*Recruit:採用情報 ここから*/
#re_hero {
    width: 100%;
    min-height: 50vh;
    background-position: -700px center;
    background-size: cover;
    position: relative;
}
/* ロゴデザインここから　*/
#re_logo {
    position: absolute;
    bottom: 5%;
    right: 2%;
    text-align: center;
    text-shadow: 3px 3px 3px #fff;
    background: transparent;
}
#re_logo p {
    font-size: 1.3em;
    letter-spacing: 0.2em;
    background: transparent;
}
/* ロゴデザインここまで　*/
/*position*/
#re_po_flex_1,#re_po_flex_2{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-direction: row;
}
#re_po_flex_1 article:nth-of-type(even),
#re_po_flex_2 article:nth-of-type(even),
#re_po_flex_1 article:nth-of-type(even) h2,
#re_po_flex_2 article:nth-of-type(even) h2{
    text-align: right;
}
#re_position{
    margin: 50px;
}
#re_position_img article{
    width: 45%;
}
#re_position_img article h2{
    font-size: 15px;
    letter-spacing: inherit;
}
#re_position_img figure{
    width: 50%;
    margin: 0 auto;
}
#re_position_img img{
    width: 100%;
}
/*改行*/
span[id^="re_text_br"]{
    display: block;
    color: #fff;
}
/*アコーディオン*/
.s_01 .accordion_one {
/*    max-width: 1024px;*/
    margin: 30px auto;
}
.s_01 .accordion_one .accordion_header {
    font-size: 26px;
    font-weight: bold;
    padding: 20px 11%;
    text-align: center;
    position: relative;
    z-index: +1;
    cursor: pointer;
    transition-duration: 0.2s;
}
.s_01 .accordion_one .accordion_header:hover {
    opacity: .8;
}
.s_01 .accordion_one .accordion_header .i_box {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 50%;
    right: 5%;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    box-sizing: border-box;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transform-origin: center center;
    transition-duration: 0.2s;
}
.s_01 .accordion_one .accordion_header .i_box .one_i {
    display: block;
    width: 18px;
    height: 18px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transform-origin: center center;
    transition-duration: 0.2s;
    position: relative;
}
.s_01 .accordion_one .accordion_header.open .i_box {
    -webkit-transform: rotate(-360deg);
    transform: rotate(-360deg);
}
.s_01 .accordion_one .accordion_header .i_box .one_i:before, .s_01 .accordion_one .accordion_header .i_box .one_i:after {
    display: flex;
    content: '';
    background-color: #555;
    border-radius: 10px;
    width: 18px;
    height: 4px;
    position: absolute;
    top: 7px;
    left: 0;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    transform-origin: center center;
}
.s_01 .accordion_one .accordion_header .i_box .one_i:before {
    width: 4px;
    height: 18px;
    top: 0;
    left: 7px;
}
.s_01 .accordion_one .accordion_header.open .i_box .one_i:before {
    content: none;
}
.s_01 .accordion_one .accordion_header.open .i_box .one_i:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.s_01 .accordion_one .accordion_inner {
    display: none;
    padding: 0px 30px 10px;
    box-sizing: border-box;
}
.s_01 .accordion_one .accordion_inner p.txt_a_ac {
    margin: 0;
}
.txt_a_ac dt{
    margin-top: 10px;
}
.txt_a_ac dd{
    font-size: .9em;
}
.txt_a_ac{
    max-width: 1200px;
    margin: 0 auto;
}
.s_01 .accordion_one .accordion_header h2 {
    margin: 0 auto;
    font-size: 25px;
    max-width: 1200px;
}
.s_01 .accordion_one button{
    margin: 50px auto;
}
@media screen and (max-width: 1024px) {
    .s_01 .accordion_one .accordion_header {
        font-size: 18px;
    }
    .s_01 .accordion_one .accordion_header h2 {
        font-size: 20px;
        margin: 0;
    }
    .s_01 .accordion_one .accordion_header .i_box {
        width: 30px;
        height: 30px;
        margin-top: -15px;
    }
    .txt_a_ac{
        max-width: 800px;
        margin: 0 auto;
    }
}
@media screen and (max-width: 767px) {
    .s_01 .accordion_one .accordion_header {
        font-size: 16px;
        text-align: left;
        padding: 15px 60px 15px 15px;
    }
    .s_01 .accordion_one .accordion_header h2{
        font-size: 18px;
        letter-spacing: inherit;
        margin: 0;
    }
    .accordion_one button{
        letter-spacing: inherit;
    }
    .txt_a_ac dt{
        margin-top: 10px;
    }
    .txt_a_ac dd{
        font-size: .9em;
    }
}
/*アコーディオンここまで*/
/*Recruit:採用情報 ここまで*/
/*OEMODM ここから*/
/* ロゴデザインここから　*/
#oem_logo {
    position: absolute;
    top: 5%;
    right: 2%;
    text-align: center;
    text-shadow: 3px 3px 3px #fff;
    background: transparent;
}
/* ロゴデザインここまで　*/
#oem_hero {
    width: 100%;
    min-height: 50vh;
    background-position: center 80%;
    background-size: cover;
}
/*帯デザインここから*/
#oem_1 h2,#oem_2 h2 {
    background-image: -webkit-linear-gradient(right, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
    background-image: -o-linear-gradient(right, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
    background-image: linear-gradient(to left, rgba(0, 150, 94, 0) 0%, rgba(0, 150, 94, 1) 80%, rgba(0, 150, 94, 1) 100%);
    background-repeat: no-repeat;
    background-size: 100% 5%;
    background-position: bottom;
    margin: 40px auto;
    padding: 5px 0;
}
#oem_2 h2{
    letter-spacing: inherit;
}
/*帯デザインここまで*/

#oem_1_1,#oem_1_5{
    margin: 40px;
}
#oem_1_bgwrapper{
    max-width: 1200px;
    margin: 50px auto;
}
#oem_1_2{
    position: relative;
}
#oem_1_2 figure,#oem_1_4 figure{
    width: 40%;
    position: relative;
    z-index: 3;
    text-align: center;
}
#oem_1_2 h3,#oem_1_4 h3{
    color: #fff;
    position: absolute;
    top: 5px;
    left: 5%;
}
#oem_1_2_2 li{
    font-size: 14px;
}
#oem_1_2 img,#oem_1_4 img{
    width: 100%;
    max-width: 250px;
}
#oem_1_3{
    text-align: center;
    margin: -100px 0;
}
#oem_1_2_1 figcaption{
    letter-spacing: -.1em;
}

#oem_1_2_3 figcaption{
    letter-spacing: -0.2em;
}
#oem_circle{
    display: inline-block;
    width: 250px;
    height: 250px;
    border:3px solid #fff;
    border-radius: 50%;
    margin: 0 auto;
    z-index: 2;
    position: relative;
}
#oem_1_2_1{
    margin: 0 auto;
}
#oem_1_2_2 ul{
    padding-left: 15px;
    text-align: left;
}
#oem_1_4{
    display: flex;
    justify-content: space-around;
    flex-direction: row;
    align-items: flex-start;
    max-width: 780px;
    margin: 0 auto;
}
#oem_1_6{
    padding: 10px 0;
    margin: 50px auto;
    width: 95%;
    max-width: 750px;
}
#oem_1_6_inner{
    border: solid 3px #fff;
    margin:auto 10px;
    background-color: #ccc;
}
#oem_1_6_1{
    width: 40%;
    margin: 20px auto;
}
#oem_1_6_1 img{
    width: 100%;
}
#oem_1_6 p{
    text-align: center;
    color: #fff;
    font-size: 20px;
}
#oem_2 img{
    width: 100%;
}
#oem_2 ul{
    list-style-type: none;
    padding-left: 20px;
}
#oem_2_sp>div{
    width: 30%;
    margin: 0 0 20px auto;
    max-width: 150px;
}
#oem_2_sp li,#oem_2_pc li{
    padding-left: 8px;
}
#oem_2_pc{
    display: none;
    position:relative;
}
#oem_2_pc ul{
    max-width: 1200px;
    margin: 0 auto;
}
#oem_2_pc_list div{
    width: 400px;
}
#oem_2_pc_list div:nth-of-type(odd){
    margin:0 0 0 auto;
}
#oem_2_pc_list div:nth-of-type(even){
    margin: -30px 0 0 0;
}
div[id^="oem_img"]{
    width: 30%;
    margin: 0 0 20px auto;
    max-width: 150px;
}
#oem_2_pc_flow{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.arrow {
    position: relative;
}
.arrow::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 50%;
    left: 50%;
    width: 14px;
    height: 14px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    transform: translateX(-50%) rotate(135deg);
}
.oem_no{
    display: inline-block;
    width: 80px;
    height: 80px;
    text-align:center;
    line-height: 80px;
    border-radius: 50%;
    font-size: 30px;
    margin: 80px;
}
/*OEMODM ここまで*/
/* -------------------- メディアクエリ  --------------------*/
/*contact:お問い合わせ ここから*/
@media(min-width:768px) {
  #co_logo {
    text-align: left;
    max-width: 700px;
    margin: 0 auto;
  }
  #co_wrapper {
    display: flex;
    align-items: center;
    justify-content: space-around;
    flex-direction: inherit;
  }
  #co_wrapper .button {
    width: 300px;
  }
  #co_eight, #co_eight2 {
    width: 300px;
    margin-bottom: -70px;
    margin-left: 15px;
  }
}
@media(min-width:1024px) {
  #co_logo {
    max-width: 1200px;
		text-shadow: 3px 3px 3px #fff;
  }
  #co_eight, #co_eight2 {
    line-height: 52px;
    margin-bottom: -78px;
  }
}
/*contact:お問い合わせ ここまで*/
/*business:事業内容 ここから*/
@media(min-width:768px) {
  p {
    font-size: 16px;
  }
  h1 {
    font-size: 60px;
  }
  h2 {
    font-size: 24px;
    text-align: left;
    padding-left: 30px;
  }
  #bu_dom_1, #bu_dom_2, #bu_dom_3, #bu_int_1, #bu_int_2, #bu_int_3, #bu_lab_1, #bu_lab_2, #bu_lab_3, #bu_lab_4, #bu_lab > p, #bu_fac_1, #bu_fac_2 {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #bu_dom_1_ph, #bu_dom_2_ph, #bu_dom_3_ph, #bu_int_1_ph, #bu_int_2_ph, #bu_int_3_ph, #bu_lab_1_ph, #bu_lab_2_ph, #bu_lab_3_ph, #bu_lab_4_ph, #bu_fac_1_ph, #bu_fac_2_ph {
    flex: 1;
	max-width: 480px;
  }
  #bu_dom_1_tx, #bu_dom_2_tx, #bu_dom_3_tx, #bu_int_1_tx, #bu_int_2_tx, #bu_int_3_tx, #bu_lab_1_tx, #bu_lab_2_tx, #bu_lab_3_tx, #bu_lab_4_tx, #bu_fac_1_tx, #bu_fac_2_tx {
    margin: 50px 30px;
    flex: 1;
  }
  /*逆配置*/
  #bu_dom_2, #bu_int_2, #bu_lab_2, #bu_fac_2, #bu_lab_4 {
    flex-direction: row-reverse;
  }
  /*帯の最大幅*/
  #bu_dom h2, #bu_int h2, #bu_lab h2, #bu_fac h2 {
    width: 95%;
    max-width: 1200px;
  }
}
@media(min-width:1024px) {
  p {
    font-size: 18px;
  }
  h1 {
    font-size: 60px;
  }
  h2 {
    font-size: 34px;
    text-align: left;
    padding-left: 50px;
  }
  #bu_dom_1, #bu_dom_2, #bu_dom_3, #bu_int_1, #bu_int_2, #bu_int_3, #bu_lab_1, #bu_lab_2, #bu_lab_3, #bu_lab_4, #bu_lab > p, #bu_fac_1, #bu_fac_2 {
    width: 80%;
    max-width: 1200px;
		padding-top: 20px;
  }
}
/*business:事業内容 ここまで*/
/*factory:化粧品工場 ここから*/
@media(min-width: 532px) {
	#fa_2_1 {
		margin-left: auto;
		margin-right: auto;
	}
}
@media(min-width:768px) {
  p {
    font-size: 16px;
  }
  h1 {
    font-size: 60px;
  }
  h2 {
    font-size: 24px;
    text-align: left;
    padding-left: 30px;
  }
  #fa_1 h2, #fa_2 h2 {
    font-size: 26px;
    line-height: 1.4;
  }
  #fa_1_2, #fa_3_1, #fa_3_2 {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
		padding-top: 20px;
  }
  #fa_3_3 {
    width: 80%;
    max-width: 1200px;
    margin: 5% auto;
  }
  #fa_1_2_ph, #fa_3_1_ph, #fa_3_2_ph {
      flex: 0 0 50%;
      max-width: 400px;
      min-height: 250px;
  }
  #fa_1_2_tx, #fa_3_1_tx, #fa_3_2_tx {
    margin: 50px;
    flex: 0 0 50%;
  }
  /*逆配置*/
  #fa_1_2, #fa_3_2 {
    flex-direction: row-reverse;
  }
  /*帯の最大幅*/
  #fa_1 h2, #fa_2 h2, #fa_3 h2 {
    width: 95%;
    max-width: 1200px;
  }
	#fa_2_1 figcaption {
		font-size: 16px;
	}
}
@media(min-width:1024px) {
  p {
    font-size: 18px;
  }
  h1 {
    font-size: 60px;
  }
  h2 {
    font-size: 34px;
    text-align: left;
    padding-left: 50px;
  }
  #fa_text_br_1, #fa_text_br_2 {
    display: inline;
  }
  #fa_1 h2, #fa_2 h2 {
    font-size: 26px;
  }
  #fa_1_1, #fa_1_2, #fa_3_1, #fa_3_2 {
    width: 80%;
      max-width: 1200px;
  }
  #fa_1_1 p, #fa_3_1_gmp {
    font-size: 14px;
  }
    #fa_1_2_ph, #fa_3_1_ph, #fa_3_2_ph {
        min-height: 300px;
    }
  /* 工場で作成される製品の図 ここから */
  #fa_2_1 {
    max-width: 900px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  #fa_2_1 div {
    flex: 0 0 400px;
  }
  /* 工場で作成される製品の図 ここまで */
}
/*factory:化粧品工場 ここまで*/
/*news:新着情報 ここから*/
@media(min-width:768px) {
  p {
    font-size: 14px;
  }
  h1 {
    font-size: 60px;
  }
  #ne_kiji_top h2 {
    font-size: 24px;
    text-align: left;
    padding-left: 30px;
    max-width: 1200px;
  }
  #ne_logo {
    text-align: left;
    max-width: 1200px;
    margin: 0 auto;
  }
  /*帯の最大幅*/
  ne_kiji_top h2 {
    width: 95%;
    max-width: 1200px;
  }
}
@media(min-width:1024px) {
  p {
    font-size: 14px;
  }
  h1 {
    font-size: 26px;
  }
  h2 {
    font-size: 26px;
    text-align: left;
    padding-left: 50px;
  }
  #ne_kiji_1, #ne_kiji_2, #ne_kiji_3, #ne_kiji_4, #ne_kiji_5{
    max-width: 1200px;
		margin-left: auto;
		margin-right: auto;
  }
}
/*news:新着情報 ここまで*/

/*news archive:新着アーカイブ ここから*/
@media(min-width:768px) {
  p {
    font-size: 16px;
  }
  h1 {
    font-size: 26px;
  }

  #na_logo {
    text-align: left;
    max-width: 700px;
    margin: 0 auto;
  }
  #na_logo h1{
  font-size: 26px;
  }
  div[id^="na_title"]{
  font-size:16px; 
  }
  div[id^="na_date"],div[id^="na_category"]{
  font-size: 14px;
  }
  div[id^="na_"] div[id$="_tx"]{
  margin: 10px auto;
    }
  div[id^="na_4_flex_"]{
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 700px;
  margin: 0 auto; 
  }
  #na_1,#na_2,#na_3,#na_4,#na_5,#na_6,#na_7,#na_8,#na_9,#na_10,#na_11,#na_12{
  margin: 20px;
  }
  #na_nextpage {
  margin: 50px auto ;
  }  
}
@media(min-width:1024px) {
  p {
  font-size: 16px;
  }
  h1 {
  font-size: 34px;
  }
  h2 {
  font-size: 26px;
  text-align: left;
  padding-left: 50px;
  }
  #na_logo {
  text-align: left;
  max-width: 1200px;
  margin: 0 auto;
  }
  div[id^="na_title"]{
  font-size:18px; 
  }
  div[id^="na_date"],div[id^="na_category"]{
  font-size: 16px;
  }
  div[id^="na_4_flex_"]{
  max-width: 900px;
  margin: 0 auto; 
  }
  #na_nextpage {
  margin-bottom: 100px ;
  }
  #ne_kiji_1, #ne_kiji_2, #ne_kiji_3, #ne_kiji_4, #ne_kiji_5{
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #ne_1_ph, #ne_2_ph, #ne_3_ph, #ne_4_ph, #ne_5_ph{
    flex: 0 0 480px;
	margin: 30px;
  }
  #ne_1_tx, #ne_2_tx, #ne_3_tx, #ne_4_tx, #ne_5_tx{
    margin: 50px 30px;
    flex: 3;
  }
  /*逆配置*/
  #ne_kiji_2, #ne_kiji_4 {
    flex-direction: row-reverse;
  }
}
/*news archive:新着アーカイブ ここまで*/

/*QandA:よくあるご質問　ここから*/
@media(min-width:768px){
  #qa_list{
  margin:80px auto;
  }
  #qa_list dt span{
  top: -5px;
  left: 12px;
  width: 32px;
  height: 32px;
  font-size: 22px;
  line-height: 32px;
  }
  #qa_list dt{
  margin-bottom: 20px;
  padding: 10px 15px 10px 55px;
  font-size: 17px;
  }
  #qa_list dd span{
  left: 17px;
  top: 3px;
  font-size: 26px;
  }
  #qa_list dd{
  padding-left: 52px;
  line-height: 32px;
  font-size: 14px;
  }
}
@media(min-width:1024px){
   #qa_list{
   width: 90%;
    max-width: 1200px;
   }
}

/*QandA:よくあるご質問　ここまで*/

/*会社情報　ここから*/
@media(min-width:768px){
    #cp_1_1,#cp_1_2{
        width: 90%;
        max-width: 1200px;
        margin: 0 auto;
    }
    #cp_2 dt,#cp_3 dt {
    margin-left: 10%;
    }
    span[id^="cp_text_br"]{
    display: inline;
    }
    #cp_3 #cp_3_3_10 dd:nth-of-type(2){
    padding-top: 0px;
}
    /*帯の最大幅*/
    #cp_1 h2, #cp_2 h2, #cp_3 h2 {
        width: 95%;
        max-width: 1200px;
    }
}
/*会社情報　ここまで*/
/*laboratory 研究所 ここから*/
@media(min-width:768px){
    #la_1_1, #la_2_1, #la_3_1,#la_3>p, #la_4_1{
        width: 90%;
        max-width: 1200px;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    #la_1_1_ph, #la_2_1_ph, #la_3_1_ph, #la_4_1_ph {
        flex: 0 0 300px;
    }
    #la_1_1_tx, #la_2_1_tx, #la_3_1_tx, #la_4_1_tx {
        margin: 50px 30px;
        flex: 3;
    }
    /*逆配置*/
    #la_1_1,#la_3_1 {
        flex-direction: row-reverse;
    }
    /*帯の最大幅*/
    #la_1 h2, #la_2 h2, #la_3 h2, #la_4 h2 {
        width: 95%;
        max-width: 1200px;
    }
}
@media(min-width:1024px){
    #la_1_1, #la_2_1, #la_3_1,#la_3>p, #la_4_1{
        width: 80%;
        max-width: 1200px;
        margin: 0 auto;
    }
}
/*laboratory 研究所 ここまで*/
/*Recruit 採用 ここから*/
@media(min-width:768px){
    #re_po_flex_1, #re_po_flex_2 {
        width: 90%;
        margin: 0 auto;
    }
    #re_position_img article{
        width: 300px;
    }
    #re_position_img figure {
        margin: -30px auto;
    }
    #re_position_img article h2 {
        font-size: 20px;
    }
}
@media(min-width:1024px){
    #re_hero{
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        background-color: #eee;
    }
    #re_position_img{
        max-width: 900px;
        margin: 0 auto;
    }
    #re_position_img figure {
        margin: -60px auto;
    }
}
/*Recruit 採用 ここまで*/
/*OEM・ODM ここから*/
@media(min-width:768px){
    #oem_1_2 h3,#oem_1_4 h3{
        left: 20%;
    }
    #oem_1_6_inner {
        display: flex;
        align-items: center;
        justify-content: space-around;
    }
    #oem_1_6_1{
        flex: 0 0 50%;
        margin: 20px 0px;
        max-width: 300px;
    }
    #oem_1_6 p {
        font-size: 23px;
    }
}
@media(min-width:1024px){
    #oem_1_1,#oem_1_5{
        width: 80%;
        max-width: 1200px;
        margin: 0 auto;
    }
    #oem_1_6{
        width: 80%;
        max-width: 800px;
    }
    #oem_1_6 p {
        font-size: 30px;
    }
    #oem_2_sp{
        display: none;
    }
    #oem_2_pc{
        display: block;
        width: 95%;
        max-width: 1200px;
        margin: 0 auto;
    }
    /*帯の最大幅*/
    #oem_1 h2,#oem_2 h2 {
        width: 95%;
        max-width: 1200px;
    }
}
/*OEM・ODM ここまで*/
@media(max-width: 767px){
	p {
		font-size: 14px;
	}
	h1 {
		font-size: 30px;
	}
	#ne_category_flex {
		flex-wrap: wrap;
		padding-top: 20px;
	}
	#ne_date {
		flex: 0 0 40%;
		margin: 0;
		font-size: 12px;
		order: 1;
		text-align: right;
	}
	#ne_category {
		flex: 0 0 50%;
		margin: 0;
		font-size: 12px;
		order: 1;
		text-align: right;
		padding-right: 10%;
	}
	#ne_kiji #na_category_menu {
		order: 0;
		flex: 0 0 61%;
	}
	#ne_kiji h2 {
		font-size: 20px;
		letter-spacing: 0;
	}
	#ne_kiji iframe {
		width: 100%!important;
		height: auto;
	}
	#ne_1_tx, #ne_2_tx, #ne_3_tx, #ne_4_tx, #ne_5_tx {
		margin: 1em;
	}
	#fa_1 h2, #fa_2 h2 {
		line-height: 1.4;
	}
	h2 {
		font-size: 20px;
	}
	#cp_2 dl {
		margin: 0 1em;
	}
	#cp_3_1 img {
		width: 200px;
	}
	#cp_3 dt {
		font-size: 14px;
		width: 80px;
	}
	#cp_3 dd {
		width: 70%;
		padding-right: 1em;
	}
	#fa_1_1 {
		font-size: 10px;
	}
	#fa_2_1 div div {
		padding: 20px 5px;
	}
	#fa_logo p {
		font-size: 16px;
	}
}

/*商品一覧*/
.product_jan {
	font-size: 0.8em;
	color: #ccc;
	padding-left: 0.5em;
}
.product_price {
	font-size: 0.8em;
	padding-left: 0.5em;
	text-align: right;
}
/*検索*/
#form {
	max-width: 320px;
	display: block;
	margin: auto;
	height: 3rem;
	border: 1px solid #ddd;
	border-radius: 1.5rem;
	overflow: hidden;
	display: flex;
	box-shadow: 0 3px 5px 3px rgba(110,110,110,0.1);
}
#brand_products_list #form,#brand_product_detail #form {
	margin: 0 0 0 auto;
}
#form #s-box{
	padding: 0 0 0 1rem;
	border: none;
	border-radius: 0;
	outline: none;
	background: none;
	line-height: 3rem;
	flex: 0 0 80%;
	color: #555;
}
#form #s-btn-area {
	margin: 0;
	padding: 0;
	letter-spacing: normal;
	box-shadow: none;
	display: inline-block;
	font-size: 1rem;
	border: none;
	cursor: pointer;
	outline: none;
	appearance: none;
	flex: 0 0 20%;
	color: #555;
}
#form #s-btn {
	text-align: left;
}
#form i {
	margin-left: 0.7rem;
	font-size: 1.3rem;
	line-height: 3rem;
	color: #fff;
}