@charset "utf-8";
/* 紀文 西日本 /west/ last modified 2022-03-18 -- Since 2021-06-28 */
@font-face { font-family: 'Optima'; font-style: normal; font-weight: normal; src: local('Optima'), url('./fonts/OPTIMA.woff') format('woff'); }
@font-face { font-family: 'Optima Italic'; font-style: normal; font-weight: normal; src: local('Optima Italic'), url('./fonts/Optima_Italic.woff') format('woff'); }
@font-face { font-family: 'Optima Medium'; font-style: normal; font-weight: normal; src: local('Optima Medium'), url('./fonts/Optima_Medium.woff') format('woff'); }
@font-face { font-family: 'Optima Bold'; font-style: normal; font-weight: normal; src: local('Optima Bold'), url('./fonts/OPTIMA_B.woff') format('woff'); }

/* commonのリセット分(共通)
------------------------------------------------------ */
html     { overflow-y: auto; }
body     { font-size: 14px; line-height: 1.5; font-family: "YuGothic","Yu Gothic", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif; }
sub, sup { font-size: 75%; font-weight: normal; }
#ModalBg              { position: absolute; }
#Container            { width: 100%; }
#Container .org_wrap  { margin: 0 auto; width: 980px; }

.link a:hover img,
.link a:focus img,
a:hover img,
a:focus img { opacity: 1; filter: alpha(opacity=100); }

@media only screen and (max-width: 768px){
 #Container .org_wrap { width: 100%; }
}
/* english Ver.*/
body.west_en           { font-size: 16px; line-height: 1.25; font-family: 'Arial Nallow','Helvetica light',sans-serif; }
body.west_en .location { line-height: 1.5; font-size: .8em; font-family: 'Optima'; word-wrap: break-word; overflow-wrap: break-word; }
/* clearfix */
.clearfix:before, 
.clearfix:after  { content: ""; display: block; clear: both; } 
.clearfix        { display: block; }

/* glovalヘッダ(共通)
------------------------------------------------------ */
#sitelogo a.nishi_en { margin: 50px 0 0 39px; background: url(/west/common/img/common_en.png) no-repeat 0 -134px; display: block; text-indent: -9999px; outline: none; width: 52px; height: 70px; }
@media only screen and (max-width: 768px){
 .corp_header h1 img { padding-right: 1em; vertical-align: middle; }
#sitelogo a.nishi_en { margin: 0; display: block; text-indent: -9999px; outline: none; background-image: url(../en/img/common_en.png); background-position: 18px 15px; background-size: 320px auto; width: 44px; height: 50px; z-index: 1000; }
}
/* .westSite #Gnav */
.westSite #Gnav         { bottom: 0; left: 0; width: 100%;}
.westSite #Gnav li,
.westSite #Gnav li a    { height: 62px; width: 163px; text-indent: -9999px; outline: none; }
.westSite #Gnav li      { text-align: center; }
.westSite #Gnav li a    { background: url(/west/common/img/common.png) no-repeat 0 0; display: block; z-index: 100; }
.westSite #Gnav li.en a { background: url(/west/common/img/common_en.png) no-repeat 0 0; display: block; z-index: 100; }
.westSite#ct_corporate #Gnav li.corporate   { background-position: 0 0; }
.westSite#ct_corporate #Gnav li.corporate a { background-position: 0 -62px; }
.westSite #Gnav li.corporate a       { background-position: 0 0; }
.westSite #Gnav li.corporate a:hover { background-position: 0 -62px; }
.westSite #Gnav li.recipe a          { background-position: -163px 0; }
.westSite #Gnav li.recipe a:hover    { background-position: -163px -62px; }
.westSite #Gnav li.knowledge a       { background-position: -326px 0; }
.westSite #Gnav li.knowledge a:hover { background-position: -326px -62px; }
.westSite #Gnav li.products a        { background-position: -489px 0; }
.westSite #Gnav li.products a:hover  { background-position: -489px -62px; }
.westSite #Gnav li.brand a         { background-position: -652px 0; }
.westSite #Gnav li.brand a:hover   { background-position: -652px -62px; }
.westSite #Gnav li.contact a         { background-position: -815px 0; }
.westSite #Gnav li.contact a:hover   { background-position: -815px -62px; }

/* glovalフッタ(共通)
------------------------------------------------------ */
#footer_menu { display: none; }
@media only screen and (max-width: 768px){
/* #footer_menu { display: block; }*/
}

/* 企業情報のブロック(共通)
------------------------------------------------------ */
.corp_wrap   { position: relative; margin: 0 auto; padding: 20px 0 8em 0; width: 100%; background: #fff; border-top: 4px solid #e60012; border-bottom: 1px solid #ccc; }
.corp_wrap * { box-sizing: border-box; }
.pc_only     { }
.sp_only     { display: none!important; }
@media only screen and (max-width: 768px){
.corp_wrap   { padding: 0 0 4em 0; }
.pc_only     { display: none!important; }
.sp_only     { display: block!important; }
}
/* header */
.corp_header        { margin: 0 auto 2em auto; padding-bottom: 20px; max-width: 1200px; border-bottom: 1px solid #ccc; display: flex; flex-diretion: row; justify-content: space-between; align-items: center; }
.corp_header.idx    { border-bottom: none; margin-bottom: 0; }
.corp_header h1     { margin: 0!important; text-align: left!important; }
.corp_header h1 img { width: 90%; }

.corp_header .language a       { padding: .25em 1em; font-size: .9em; text-decoration: none; display: block; color: #fff; background: #999; border-radius: .25em; }
.corp_header .language a:hover { opacity: .8; }
.corp_header .menu-trigger     { display: none; }
@media only screen and (max-width: 1024px){
.corp_header { padding: 0 1em 1em 1em; max-width: 100%; display: flex; flex-diretion: row; justify-content: space-between; align-items: center; }
}
@media only screen and (max-width: 768px){
.corp_header        { padding: 1em; width: 100%; }
.corp_header h1     { }
.corp_header h1 img { width: 70%; }
}
/* main */
.corp_main                { margin: 0 auto; max-width: 1200px; display: flex; justify-content: space-between; flex-direction: row-reverse; }
.corp_main.idx            { margin: 0 auto 5.2% auto; padding: 4em 0 0 0; max-width: 100vw; display: flex; justify-content: space-between; background: #edebe1; position: relative; }
.corp_main.idx:after      { content: ''; width: 100%; padding-bottom: 5.2%; position: absolute; top: 100%; background: url(/west/img/top/pc_top_btm_wave.png) top no-repeat; background-size: cover; }
.corp_main.idx .wrapper   { margin: 0 auto; max-width: 1200px; display: flex; justify-content: space-between; }
.corp_main.idx .corp_navi { display: none; }
@media only screen and (max-width: 1024px){
.corp_main               { margin: 0 auto; padding: 0 1em; width: 100%; }
.corp_main.idx .wrapper  { margin: 0 auto; padding: 0 1em; width: 100%; }
}
@media only screen and (max-width: 768px){
.corp_main                { margin: 0 auto; padding: 0 1em; width: 100%; }
.corp_main.idx            { margin: 0 auto 9.8% auto; padding: 0; }
.corp_main.idx:after      { content: ''; width: 100%; padding-bottom: 9.8%; position: absolute; top: 100%; background: url(/west/img/top/sp_top_btm_wave.png) top no-repeat; background-size: cover; }
.corp_main.idx .wrapper   { margin: 0 auto; padding: 0 0; width: 100%; display: block; }
.corp_main.idx .corp_navi { display: initial; }
}
/* SP humburger */
.el_humburger         { display: none; }
@media only screen and (max-width: 768px){
 .el_humburger        { margin-left: 1em; z-index: 20; display: block; right: 0; top: 0; width: 28px; height: 28px; cursor: pointer; pointer-events: auto; }
 .el_humburger_wrap   { width: 2em; }
 .el_humburger_wrap i { font-weight: 900; font-size: 2em; color: #999; }
 }
/* side navi */
.corp_navi,.corp_navi_years  { padding-left: 1rem; width: 25%; position: relative; }
.corp_navi .navi_head,
.corp_navi_years .navi_head  { padding: 1em 1.5em; font-weight: bold; font-size: 1.5em; color: #000; background: #f2f2f2; border: 1px solid #ccc; }
.corp_navi ul,
.corp_navi_years ul          { display: flex; flex-direction: column; }
.corp_navi li a,
.corp_navi_years li a        { padding: 1em 1.5em 1em 2em; font-size: 1.125em; color: #333; display: block; border: 1px solid #ccc; border-top: none; position: relative; }
.corp_navi li a:before,
.corp_navi_years li a:before { content: "\f054"; font-family: "Font Awesome 5 Free"; font-size: 1em; font-weight: 900; color: #666; position: absolute; left: 1em; -webkit-font-smoothing: antialiased; } 
.corp_navi li.sub a          { padding: 1em 1.5em 1em 3em; font-size: 1.125em; color: #333; background: #fff; display: block; border: 1px solid #ccc; border-top: none; position: relative; }
.corp_navi li.sub a:before   { content: "\f101"; font-family: "Font Awesome 5 Free"; font-size: 1em; font-weight: 900; color: #999; position: absolute; left: 1.5em; -webkit-font-smoothing: antialiased; }
.corp_navi li.local a        { color: #000; background: url(/common/img/bg.gif) repeat #FDFAF5 0 0; }
.corp_navi li.local a:before { color: #b71b21; }
.corp_navi li.na-local,
.corp_navi_years li.na-local { /* */ }
.corp_navi li.na-local a:hover:before,.corp_navi_years li.na-local a:hover:before { color: #b71b21; }
.corp_navi .banner           { display: block; }
.corp_navi .banner a         { margin-top: 20px; display: block; }
.corp_navi .banner a img     { width: 100%; }

/* 本社へのリンク */
.westSite .corp_navi #west_kibun   { margin: 1em 0 0 0; padding: 0; background: none; display: block; width: 100%; }
.westSite .corp_navi #west_kibun a { width: 100%; padding: 1em 1.5em 1em 2em; text-decoration: none; font-size: 1.125em; color: #333; display: block; border: 1px solid #ccc; }
.westSite .corp_navi #west_kibun a:before { content: "\f054"; font-family: "Font Awesome 5 Free"; font-size: 1em; font-weight: 900; color: #666; position: absolute; left: 2em; -webkit-font-smoothing: antialiased; } 
.westSite .corp_navi #west_kibun a:hover:before { color: #b71b21; }

/* side navi English */
body.west_en .corp_navi .navi_head,.corp_navi_years .navi_head { padding: 1.2em 1em; font-weight: bold; font-size: 1.2em; font-family: 'Optima'; }
body.west_en .corp_navi li a       { padding: 1.2em 1em 1.2em 2em; font-size: 1em; font-family: 'Optima'; line-height: 1.2; }
body.west_en .corp_navi li.sub a   { padding: 1em 1em 1em 3em; font-size: 1em; }

/* navi smartphone */
@media only screen and (max-width: 768px){
.corp_navi .navi                   { padding: 4em calc(2em + 5px) 2em 2em; position: fixed; right: -10px; background: rgba(255,255,255,.95); z-index: 3; box-shadow: -5px 5px 5px rgba(0,0,0,.2);
 transform: translateZ(0) translateX(100%); -webkit-transition: all 1000ms ease-in-out; transition: all 1000ms ease-in-out; opacity: 0; }
.js_humburgerOpen .corp_navi .navi { position: absolute; top: 0; transform: translateZ(0) translateX(0); opacity: 1; }
.corp_navi                         { padding-left: 0; width: 100%; position: absolute; top: 0; right: 0; }
.corp_main.idx .corp_navi          { top: -63px; }
.corp_navi .navi_head                         { padding: .75em 1em; font-weight: bold; font-size: 1.2em; color: #000; background: #f2f2f2; border: 1px solid #ccc; }
.corp_navi ul,.corp_navi_years ul             { display: flex; flex-direction: column; }
.corp_navi li a,.corp_navi_years li a         { padding: .75em 1em .75em 2em; font-size: .9em; color: #333; background: #fff; display: block; border: 1px solid #ccc; border-top: none; position: relative; }
.corp_navi li.sub a,.corp_navi_years li.sub a { padding: .75em 1em .75em 3em; font-size: .9em; color: #333; background: #fff; display: block; border: 1px solid #ccc; border-top: none; position: relative; }
 .corp_navi .banner       { width: 100%; }
 .corp_navi .banner a img { max-width: 100%; width: 14em; }

/* 本社へのリンク */
.westSite .corp_navi #west_kibun   { margin: 1em 0 0 0; padding: 0; background: none; display: block; width: 100%; position: relative; }
.westSite .corp_navi #west_kibun a { width: 100%; padding: .75em 1em .75em 2em; text-decoration: none; font-size:  .9em; color: #333; display: block; border: 1px solid #ccc; }
.westSite .corp_navi #west_kibun a:before { content: "\f054"; font-family: "Font Awesome 5 Free"; font-size: 1em; font-weight: 900; color: #666; position: absolute; left: 1em; -webkit-font-smoothing: antialiased; } 
.westSite .corp_navi #west_kibun a:hover:before { color: #b71b21; }

}
/* scroll top */
.pagetop         { margin: 0 auto; max-width: 1200px; position: relative; }
.pagetop div     { width: calc(25% - 1rem); position: absolute; right: 0; top: -4em; text-align: center; }
.pagetop div a   { height: calc(3em - 2px); padding-top: 1em; text-decoration: none; display: block; border: 1px solid #ccc; border-bottom: 0; border-radius: .5em .5em 0 0; }
.pagetop div a i { margin-right: .5em; color: #b71b21; }
body.west_en .pagetop div   { top: -45px; }
body.west_en .pagetop div a { padding: 1em 0; height: calc(44px - 2em); font-family: 'Optima'; font-size: .85em; }
@media only screen and (max-width: 768px){
 .pagetop         { padding: 0; max-width: 100%; }
 .pagetop div     { width: 100%; text-align: center; }
 .pagetop div a   { margin: 0 1em; padding-top: 1em; text-decoration: none; display: block; border: 1px solid #ccc; border-bottom: 0; border-radius: .5em .5em 0 0; }
 .pagetop div a i { margin-right: .5em; color: #e60012; }
}
/* カラム共通 */
.column                      { margin-bottom: 2em; display: flex; flex-wrap: wrap; justify-content: space-between; }
.column_center               { margin-bottom: 2em; display: flex; flex-wrap: wrap; justify-content: center; }
.column .col_full            { margin-bottom: 1em; width: 100%; }
.column .col_half            { width: calc(50% - 1em); }
.column_center .col_half     { width: 50%; }
.column_center .col_half img { width: 100%; }
.column .col_third           { width: calc(33.33% - 1em); }
.column .col_third2          { width: calc(66.66% - 1em); }
.column div img              { width: 100%; border: 1px solid #ccc; border-radius: 1em; }
.column_center div img       { width: 100%; border: 1px solid #ccc; border-radius: 1em; }
.column div p.caption        { margin: .5em 0; font-size: 80%; }
.column .solid img           { border: none; border-radius: 0; }
@media only screen and (max-width: 768px){
.column                    { margin-bottom: 1em; display: flex; flex-wrap: wrap; justify-content: space-between; }
.column_center             { display: flex; flex-wrap: wrap; justify-content: space-between; }
.column .col_half          { width: calc(50% - .5em); }
.column .col_third         { width: calc(33.33% - .5em); }
.column .col_third2        { width: calc(66.66% - .5em); }
.column .sp_half           { width: calc(50% - .5em); }
.column .sp_full,
.column_center .sp_full    { width: 100%; }
.column div img            { width: 100%; border: 1px solid #ccc; border-radius: .5em; }
.column_center div img     { width: 100%; border: 1px solid #ccc; border-radius: .5em; }
.column .col_full.flow_pic { padding: 0 10%; }
}
/* title 改行 */
span.sp_br:before  { content: '　'; }
span.pc_br:before  { content: '\A'; white-space: pre; }
@media only screen and (max-width: 640px){
 span.pc_br:before { content: ''; white-space: normal; }
 span.sp_br:before { content: '\A'; white-space: pre; }
}
/* google map */
.g_map        { margin-top: .5em; height: 0; overflow: hidden; padding-bottom: 56.25%; position: relative; border: 1px solid #ccc; border-radius: 1em; }
.g_map iframe { position: absolute; left: 0; top: 0; height: 100%; width: 100%; }

/* index.html
---------------------------------------------- */
/* 企業情報ビジュアル(TOP) SLIDER
------------------------------------------------------ */
.corp_visual                { padding-top: 36.458%; width: 100%; height: 0; position: relative; background: #edebe1; }
.sliderArea                 { width:100%; position: absolute; top:0; }
.sliderArea .slider div img { width: 100%; }
@media only screen and (max-width: 768px){
.corp_visual { margin-bottom: 0; padding-top: 80.355%; width: 100%; height: 0; position: relative; }
}
/* メイン(TOP)
------------------------------------------------------ */
.corp_article                  { margin-right: 1em; width: 75%; }
.corp_main.idx .corp_article   { margin-right: 0; width: 100%; }
.corp_article ul.top_list      { display: flex; flex-wrap: wrap; margin-right: -2em; }
.corp_article ul.top_list li   { margin-bottom: 2em; margin-right: 2em; padding: 0; width: calc(50% - 2em); background: #fff; border-radius: 1em; overflow: hidden; }
.corp_article ul.top_list li div   { padding-left: 4em; background: url(/west/img/top/left_arrow_crimson.png) 1em 50% no-repeat; background-size: 2em; }
.corp_article ul.top_list li:hover { opacity: .7; }

.corp_article ul.top_list li a { display: block; }
.corp_article ul.top_list li img { width: 100%; }

.corp_article ul.top_list li .top_title { padding: 1rem 1rem .5rem 0; font-weight: bold; font-size: 2em; font-family: "YuGothic","Yu Gothic", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif; color: #102e60; }
.corp_article ul.top_list li p  { padding: 0 1rem 1rem 0; font-size: 17.6px; font-family: serif; }

@media only screen and (max-width: 768px){
.corp_article                           { margin-right: 0; width: 100%; }
.corp_main.idx .corp_article            { padding: 1rem; }
.corp_article ul.top_list               { display: flex; flex-direction: column; margin-right: 0; }
.corp_article ul.top_list li            { margin-bottom: 1rem; margin-right: 0; padding: 0; width: 100%; border-radius: .5rem; }
.corp_article ul.top_list li div        { padding-left: 10vw; background: url(/west/img/top/left_arrow_crimson.png) 2vw 50% no-repeat; background-size: 5vw; }
.corp_article ul.top_list li .top_title { padding: .5rem .5rem .25rem 0; font-size: 6vw; }
.corp_article ul.top_list li p          { padding: 0 .5rem .5rem 0; font-size: 3.5vw; font-family: serif; }
}

/* サブ画面 */
.corp_article article { margin-bottom: 4em; }
.corp_article h2#outl { padding: 2.75rem 1rem; color: #000; border: 1px solid #ccc; border-radius: 1rem;
 background: url(/west/img/outline/outl_img_h2.png) right no-repeat; background-size: cover; }
.corp_article h2#fact { padding: 2.75rem 1rem; color: #000; border: 1px solid #ccc; border-radius: 1rem;
 background: url(/west/img/factory/fact_img_h2.png) right no-repeat; background-size: cover; }
.corp_article h2#divi { padding: 2.75rem 1rem; color: #000; border: 1px solid #ccc; border-radius: 1rem;
 background: url(/west/img/division/divi_img_h2.png) right no-repeat; background-size: cover; }
.corp_article h2#prod { padding: 2.75rem 1rem; color: #000; border: 1px solid #ccc; border-radius: 1rem;
 background: url(/west/img/products/prod_img_h2.png) right no-repeat; background-size: cover; }
.corp_article h2#recr { padding: 2.75rem 1rem; color: #000; border: 1px solid #ccc; border-radius: 1rem;
 background: url(/west/img/recruit/recr_img_h2.png) right no-repeat; background-size: cover; }
.corp_article h2#glos { padding: 2.75rem 1rem; color: #000; border: 1px solid #ccc; border-radius: 1rem;
 background: url(/west/en/img/glossary/glos_img_h2.png) right no-repeat; background-size: cover; }
.corp_article h2,
.corp_article h3,
.corp_article h4,
.corp_article h5 { font-size: 3em; line-height: 1.5; font-family: "YuGothic","Yu Gothic", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif; }
.corp_article h2 { line-height: .75; text-shadow: 1px 1px 1px #fff,-1px 1px 1px #fff, 1px -1px 1px #fff,-1px -1px 1px #fff, 1px 0px 1px #fff, 0px 1px 1px #fff,-1px 0px 1px #fff, 0px -1px 1px #fff; }
.corp_article h2 span        { color: #b71b21; font-size: 50%; font-family: 'Optima'; }
.corp_article h2 span:before { content: '\A'; white-space: pre; }
.corp_article h3 { margin: 1.5em 0 1rem 0; color: #000; font-weight: bold; font-size: 2.5em; border-bottom: 1px solid #666; }
.corp_article h4 { margin: 1.5em 0; font-size: 1.75em; text-align: center; color: #b71b21; }
.corp_article h5 { padding: .25em .75em; margin: 2em 0 1em 0; font-size: 1.25em; color: #b71b21; border: 1px solid #b71b21; border-radius: .25em; }

.btn_link a       { display: inline-block; padding: .25em .75em .25em 1em; text-decoration: none; color: #fff; background: #b71b21; border-radius: .25em; }
.btn_link a:after { content: ' ＞'; }
.btn_link a:after { content: '\f054'; font-family: "Font Awesome 5 Free"; font-size: 1em; font-weight: 900; color: #fff; padding-left: .5em; -webkit-font-smoothing: antialiased; }

@media only screen and (max-width: 768px){
.corp_article article { margin-bottom: 2em; }
.corp_article h2#outl { padding: 1.5rem 1rem; color: #000; border: 1px solid #ccc; border-radius: 1rem;
 background: url(/west/img/outline/outl_img_h2.png) right no-repeat; background-size: cover; }
.corp_article h2#fact { padding: 2.75rem 1rem; color: #000; border: 1px solid #ccc; border-radius: 1rem;
 background: url(/west/img/factory/fact_img_h2.png) right no-repeat; background-size: cover; }
.corp_article h2#divi { padding: 2.75rem 1rem; color: #000; border: 1px solid #ccc; border-radius: 1rem;
 background: url(/west/img/division/divi_img_h2.png) right no-repeat; background-size: cover; }
.corp_article h2#prod { padding: 2.75rem 1rem; color: #000; border: 1px solid #ccc; border-radius: 1rem;
 background: url(/west/img/products/prod_img_h2.png) right no-repeat; background-size: cover; }
.corp_article h2#recr { padding: 2.75rem 1rem; color: #000; border: 1px solid #ccc; border-radius: 1rem;
 background: url(/west/img/recruit/recr_img_h2.png) right no-repeat; background-size: cover; }
.corp_article h2#glos { padding: 2.75rem 1rem; color: #000; border: 1px solid #ccc; border-radius: 1rem;
 background: url(/west/en/img/glossary/glos_img_h2.png) right no-repeat; background-size: cover; }
.corp_article h2 { font-size: 2em!important; }
.corp_article h3 { font-size: 1.5em!important; }
.corp_article h4 { font-size: 1.25em!important; }
.corp_article h5 { font-size: 1.05em; }
}

body.west_en .corp_article h2 { font-size: 2.2em!important; line-height: 1.75; font-family: 'Optima Bold'; }
body.west_en .corp_article h3 { font-size: 2.2em!important; line-height: 1.25; font-family: 'Optima Bold'; }
body.west_en .corp_article h4 { font-size: 1.5em!important; line-height: 1.25; font-family: 'Optima Bold'; }
body.west_en .corp_article h5 { font-size: 1em!important; font-weight: bold; }

/* MAP */
.accordion-container                    { position: relative; width: 100%; }
.accordion-container .accordion-title   { position: relative; margin: 0; padding-left: 1em; color: #b71b21; cursor: pointer; }
.accordion-container .accordion-title i { padding-left:.5em; color: #b71b21; }
.accordion-content img                  { width: 100%; border: 1px solid #ccc; border-radius: 1em; }
.office_chart dl           { display: flex; flex-wrap: wrap; border-top: 1px solid #b71b21; border-bottom: 1px solid #b71b21; line-height: 1.8rem; }
.office_chart dl dt        { background: #f2f2f2; width: 30%; padding: 1em; border-bottom: 1px solid #ccc; font-weight: bold; font-size: 1.15em; }
.office_chart dl dd        { padding: 1em; margin: 0; border-bottom: 1px solid #ccc; width: 70%; background: #fff; }
.office_chart dl .btn_link { margin-left: 1em; display: inline; }
.office_chart dl dd .accordion-container h4    { margin: 1em 0 .5em 0; font-size: 1.1em; text-align: left; color: initial; border-bottom: 1px solid #333; }
.office_chart dl dd .accordion-container dl    { display: flex; flex-wrap: wrap; border: none; line-height: 1.5em; }
.office_chart dl dd .accordion-container dl dt { background: none; width: 14em; padding: 0; border: none; font-weight: bold; font-size: 1em; }
.office_chart dl dd .accordion-container dl dd { padding: 0; margin: 0; border: none; width: calc(100% - 14em); background: #fff; }
.office_chart dl dd .accordion-container dl dt.nontitle { font-weight: normal; }
@media screen and (max-width: 640px){
.office_chart dl    { flex-flow: column nowrap; }
.office_chart dl dt,
.office_chart dl dd { width: 100%; padding: .5em 1em; line-height: 1.5rem; }
.office_chart dl dd > p { margin-bottom: 1em; }
.office_chart dl dd .accordion-container dl dt { width: 100%; }
.office_chart dl dd .accordion-container dl dd { width: 100%; }
}

/* 会社概要outline.html
---------------------------------------------- */
/* ceo coo */
.corp_article #ceo h5,
.corp_article #coo h5         { padding: 0; margin: 0 0 .5em 0; font-size: 1.1em; color: #000; border: none; border-radius: 0; }
.corp_article #ceo p,
.corp_article #coo p          { margin: 0 0 2em 0; }
.corp_article #ceo .col_photo { float: right; }
.corp_article #coo .col_photo { float: left; }
#ceo .column,
#coo .column            { position: relative; display: block; }
#ceo .column .col_photo { width: 33.333%; margin-left: 1em; margin-bottom: .5em; }
#coo .column .col_photo { width: 33.333%; margin-right: 1em; margin-bottom: .5em; }
@media only screen and (max-width: 640px){
.corp_article #ceo .col_photo,
.corp_article #coo .col_photo { float: none; width:50%; margin: 0 auto 1em auto; }
}

#office_add ul li                { margin: 2em 0; }
#office_add ul li .branch        { padding-left: 1em; font-weight: bold; color: #000; text-indent: -1em; }
#office_add ul li .branch:before { content: '▶'; white-space: pre; }
#office_add ul li .add           { padding-left: 1em; }
#office_add ul li .add span      { display: inline-block; margin-left:.5em; text-indent: 0; }
@media screen and (max-width: 640px){
#office_add ul li { margin: 2em 0; }
}
#office_map .ja_map img { padding: 0 4em; width: 100%; }
@media screen and (max-width: 640px){
#office_map .ja_map img { padding: 0; width: 100%; }
}
#group_lists .column .btn_link a { font-size: 1.5em; display: block; padding: 1em .75em 1em 1em; text-align: center; border-radius: .25em; }
body.west_en #group_lists .column .btn_link a { font-weight: bold; font-size: 1em;  padding: 1em .75em 1em 1em; }
@media screen and (max-width: 640px){
#group_lists .column .btn_link   { margin-top: 1em; }
#group_lists .column .btn_link a { font-size: 1.2em; padding: .5em .75em .5em 1em; border-radius: .25em; }
}

/* 岡山総社工場factory.html
---------------------------------------------- */

/* 部門の紹介division.html
---------------------------------------------- */
.section_pass                     { margin: 2em 0; width: 100%; }
.section_pass .division_link      { display: flex; flex-wrap: wrap; justify-content: space-between; padding: 0; margin-right: -.5em; }
.section_pass .division_link li   { width: 20%; text-align: center; white-space: pre; padding: 0 .5em .5em 0; }
.section_pass .division_link li a { display: block; font-size: 1em; line-height: 1; padding: .5em .25em .25em .25em; color: #b71b21!important; background: #fff; border: 1px solid #b71b21; border-radius: .25em; }
.section_pass .division_link li a:after { content: '\f107'; font-family: "Font Awesome 5 Free"; font-size: 1em; font-weight: 900; display: block; }
@media screen and (max-width: 768px) {
.section_pass .division_link li a       { font-size: 2vw; padding: .5em 0 .25em 0; }
}



/* 紀文西日本の商品products.html
---------------------------------------------- */
.sp.corp_navi {
    display: none;
}

.westSite.products .corp_header      { width: 980px; margin: auto; margin-bottom: 25px; }
.westSite.products .corp_main        { max-width: 980px; margin: auto; }
.westSite.products .corp_article     { width: 100%; margin: auto; }
.westSite.products .corp_article #side { border: none; }
.westSite.products .corp_article #side .themS { margin-bottom: 20px; background-color: #fff; border: 1px solid #fff; -webkit-box-shadow: 0px 0px 4px rgb(112 112 112 / 50%); -moz-box-shadow: 0px 0px 4px rgba(112,112,112,0.5); -ms-box-shadow: 0px 0px 4px rgba(112,112,112,0.5); box-shadow: 0px 0px 4px rgb(112 112 112 / 50%); border: 1px solid #EDE9E3\9; *border: 1px solid #EDE9E3; _border: 1px solid #EDE9E3; zoom: 1;}
.westSite.products .corp_article #side h3 { margin: 10px 15px; font-size: 17px; line-height: 1; font-family: "ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","ＭＳ Ｐ明朝","MS PMincho"; color: #B71B21; display: block; border-bottom: none;}
#side .menu.expnd li { padding-bottom: 10px;}
#side .menu.expnd li div.btn-expnd { color: #B71B21; background: url(/common/img/icon-link-g.gif) no-repeat scroll 100% 50% transparent; display: block; cursor: pointer; padding: 10px 20px 9px 0; text-decoration: none;}
#side ul.menu                        { margin: 10px 15px;}
#side .menu li .menu_chld li         { background-image: none; padding: 0; margin: 0; line-height: 1.4em;}
#side .menu.expnd li .menu_chld li a { background-image: none; padding: 1px 0 1px 12px; color: #888889;}
#side .menu.expnd li a               { color: #B71B21;}

#catalogTop h1                       { margin: 0 0 15px; padding: 0 0 5px; border-bottom: 2px solid #B71B21; text-align: left;}
ul.pageLink                          { margin: 0 -10px 20px 0;}
ul.pageLink li                       { margin: 0 10px 10px; float: left; width: 331px;}
ul.pageLink li .btn_all a            { background-position: -993px 0;}
.cl { zoom: 1;}
#ct_corporate #main ul.pageLink a    { width: 331px; height: 45px; display: block; text-indent: -9999px; padding: 5px; font-size: 13px; color: #fff; font-weight: bold; text-align: center; text-decoration: none!important; -webkit-box-shadow: none; -moz-box-shadow: none; -ms-box-shadow: none; box-shadow: none;}
#ct_corporate #main ul.pageLink .btn_all a { background: url("../img/products/pagelink.png") no-repeat ; background-position: -993px 0;}
#ct_corporate #main ul.pageLink .btn_all a:hover{ background-position:-993px 100%; -webkit-box-shadow: none; -moz-box-shadow: none; -ms-box-shadow: none; box-shadow: none;}
#ct_corporate #main ul.pageLink .btn_west a { background: url("../img/products/pagelink-west.gif")no-repeat 0 0;}
#ct_corporate #main ul.pageLink .btn_west a:hover{ background-position:0px 100%; -webkit-box-shadow: none; -moz-box-shadow: none; -ms-box-shadow: none; box-shadow: none;}

#ct_corporate #main ul.pageLink .btn_newyear a { background: url("../img/products/pagelink.png") no-repeat; background-position: -662px 0; }
#ct_corporate #main ul.pageLink .btn_newyear a:hover { background-position:-662px 100%; -webkit-box-shadow: none; -moz-box-shadow: none; -ms-box-shadow: none; box-shadow: none;}
#ct_corporate #main ul.pageLink .btn_west_newyear a { background: url(../img/products/pagelink-west.gif) no-repeat -331px 0; }
#ct_corporate #main ul.pageLink .btn_west_newyear a:hover { background-position:-331px 100%; -webkit-box-shadow: none; -moz-box-shadow: none; -ms-box-shadow: none; box-shadow: none;}

#ct_corporate #main h2               { background: none; -webkit-border-radius: 0; border-radius: 0; font-size: 18px; line-height: 1.3; color: #B71B21; font-family: "ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","ＭＳ Ｐ明朝","MS PMincho"; margin: 0 -10px 20px; padding: 7px 10px;}

#ct_corporate #main h2.ftr_prdct     { background: none; -webkit-border-radius: 0; border-radius: 0; font-size: 18px; line-height: 1.3; color: #B71B21; font-family: "ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","ＭＳ Ｐ明朝","MS PMincho"; margin: 0 -10px 0px; padding: 7px 10px;}

.westSite.products .prdct_srch .inner, .brand .inner { margin: 20px 25px 0 25px;}
.col5                                { margin-right: -17px; display: flex; flex-wrap: wrap;}
.col5 li                             { margin: 0 17px 10px 0; width: 117px;}
.themS .col3                         { display: flex; justify-content: space-between; flex-wrap: wrap;}
.themS .col3 li                      { margin: 20px 0px 10px 0; overflow: hidden; width: 210px;}
.westSite.products p.box             { border: none;}
#ct_corporate #main a                { text-decoration: none !important;}

#product .column                     { margin: 0 auto; width: 765px; }
#product .col5                       { margin: 2em auto; display: flex; flex-wrap: wrap; }
#product .col5 li                    { margin: 0 0 2em 0; padding: 0 10px; width: 20%; }
#product .link a, #product a .banner { display: block; }
#product span.banner                 { margin: 0 0 .25em 0; }
#product span.title                  { display: block; text-align: center; }
#product span img                    { border: none; }

@media screen and (max-width: 768px) {
.westSite.products .corp_main        { padding: 0 0.8em;}
.sp.corp_navi                        { display: block !important;}
#main                                { margin: 0 !important; width: 100%;}
#main .prdct_srch h2.txt             { font-size: 18px !important;}
.grd_r                               { padding:1px;	background-image: none !important;}
.themS                               { margin-bottom: 20px; background-color: #fff; border:none; -webkit-box-shadow: none; -moz-box-shadow: none; -ms-box-shadow: none; box-shadow: none; border: none; *border: none; _border: none; zoom: 1;}
.westSite.products .prdct_srch .inner, .brand .inner { margin: 0 !important;}
.col5 { display: flex; flex-wrap: wrap; margin-left: 0% !important; margin-right: -5% !important; }
.col5 li {  background: #ffe9ea!important; }

.brand h2 {font-size: 18px !important; margin-bottom: 0!important;}
.themS .col3                         { display: flex; justify-content:space-between; flex-wrap: wrap;}
.themS .col3.wide {
-webkit-box-shadow: 0px 0px 4px rgb(112 112 112 / 50%);
    -moz-box-shadow: 0px 0px 4px rgba(112,112,112,0.5);
    -ms-box-shadow: 0px 0px 4px rgba(112,112,112,0.5);
    box-shadow: 0px 0px 4px rgb(112 112 112 / 50%);
    padding: 0 2.8% 10px;
}
.themS .col3 li {
    margin: 20px 0px 10px 0;
    overflow: hidden;
    width: 48%;
}
#side {
    width: 100%;
    margin: auto!important;
}
#side .sidemenu h3 {
    margin: 0 !important;
    padding: 10px 30px 10px 10px;
    display: block;
    background: url("../../img/contact/ico_arrow_d.png") no-repeat 15% 50%;
    background-position: 15px 50%;
    background-repeat: no-repeat;
    letter-spacing: -0.05em;
    line-height: 1.2em;
    padding-left: 40px;
    color: #b71b21!important;
    font-size: 15px!important;
}
#side .sidemenu ul.menu {
    margin: 10px;
    margin-bottom: 0;
}
#side .sidemenu ul.menu li {
    padding: 0 1em;
}
#side .sidemenu ul.menu li {
    background: none;
    border-bottom: 1px solid #e0e0e0;
}
#side .menu li .menu_chld li {
    background-image: none;
    padding: 0;
    margin: 0;
    line-height: 1.4em;
}
#side .menu.expnd li .menu_chld li a {
    background-image: none;
    padding: 1px 0 1px 12px!important;
    color: #888889!important;
}
#side .menu.expnd li {
    padding-bottom: 10px;
}
#product .column                     { width: 100%; }
#product .col5 li                    { width: 33.333%; padding: 0; }
#product .link a, #product a .banner { display: block; }
#product .col5 li .title             { margin: 0; padding-bottom: .5em; }
}


/* Eng Nishi Nihon Kibun Foods Company Outline
---------------------------------------------- */
/* Eng Okayama Soja Factory
---------------------------------------------- */
/* Eng Product Development
---------------------------------------------- */
/* Eng Glossary
---------------------------------------------- */
a.glos       { color: #b71b21; text-decoration: underline; }
a.glos:hover { cursor: help; }
.glossary .caption            { text-align: right; }
.glossary ul li               { padding: 1em 1em 1em 0; border-bottom: 1px solid #ccc; }
.glossary ul li > div         { display: block; position: relative; }
.glossary ul li:first-child   { border-top: 1px solid #ccc; }
.glossary ul li .items        { margin: 0 1rem .25em 24px; font-weight: bold; font-size: 1.5em; font-family: 'Optima Bold'; color: #b71b21; width: calc(100% - 240px); float: left; }
.glossary ul li .items:before { content: '▶︎'; position: absolute; top: 0; left: 0; }
.glossary ul li .situation    { padding-left: .25em; font-size: .85rem; font-family: 'Arial Nallow','Helvetica light', sans-serif; color: #000; display: inline-block; }
.glossary ul li .image        { position: relative; float: right; width: 200px; height: auto; }
.glossary ul li .image img    { width: 100%; border: 1px solid #ccc; border-radius: 1em; }
.glossary ul li .meaning      { margin-left: 24px; padding: .5em 1rem 0 0; border-top: dotted 1px #ccc; width: calc(100% - 224px); float: left; }
.glossary ul #Sugar-Free_Noodles .image img { padding: 1em 1.5em; }
@media screen and (max-width: 640px) {
 .glossary ul li .items       { margin: 0 0 .25em 24px; width: auto; float: none; }
 .glossary ul li .image       { position: relative; float: right; width: 45%; height: auto; margin: 0 0 .25em .75em; background: #fff; }
 .glossary ul li .image img   { border-radius: .5em; }
 .glossary ul li .meaning     { margin: 1.5em 0 0 24px; padding: .5em 0 0 0; font-size: .9rem; border-top: dotted 1px #ccc; width: auto; float: none; }
}

/* News Release  */
ul.newsList li             { /*min-height: 5em;*/ }
ul.newsList li a           { padding: 10px 10px 10px 10em; }
ul.newsList li.moreLink    { display: none; }

@media only screen and (max-width: 768px){
ul.newsList li             { font-size: 3vw; }
ul.newsList li a          { padding: 10px 20px 10px 10px; }
ul.newsList li span.label { right: 10px; top: 10px; }
ul.newsList li.moreLink    { display: block; text-align: center;  padding-top: 1rem; }
ul.newsList li.moreLink a  { display: inline-block; padding: .5em 2em; font-size: 1rem; text-decoration: none; color: #fff; background: #ccc; border-radius:.25em; }
}

/*ニュースリリース*/
.corp_news                { margin: 0 auto; padding: 1rem; }
.corp_news .wrapper       { margin: 0 auto; max-width: 1200px; padding: 1rem 0; }
.emergency                { margin-bottom: 2rem; }
.emergency h3             { margin-bottom: .25em; padding-bottom: .5em!important; }
.emergency ul.newsList li { /*min-height: auto;*/ }

.corp_news ul#tab             { display: none; }
.corp_news h3                 { margin-bottom: .25em; padding-bottom: .25em; font-size: 1.75em; font-family: "YuGothic","Yu Gothic", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif; color: #b71b21; border-bottom: solid 2px #102e60; }
.corp_news h3 .moreLink       { padding:.5em 2em; font-size: 1rem; text-decoration: none; color: #fff; background: #ccc; border-radius:.25em; }
.corp_news h3 .moreLink:hover { opacity:0.7; cursor:pointer; }

.corp_news .chikuwa-tokucho         { border: 2px solid #333; background: #fff4ca; padding: 5px; }
.corp_news .genen-column            { border: 3px double #ccc; padding: 10px; }
.corp_news .genen-column .float-img { margin: 0 6px 6px 6px; float: right; }

@media screen and (max-width: 768px) {
.corp_news .wrapper { width: 100%; padding: 1rem 0; }
.emergency          { margin-bottom: 2rem; }
.emergency h3       { margin-bottom: .25em; padding-bottom: .5em!important; font-size: 4.5vw!important; }

.corp_news ul#tab           { display: flex; flex-diretion: row; justify-content: space-between; margin-bottom: 1rem; border-bottom: 1px solid #102e60; }
.corp_news ul#tab li        { width: calc(50% - 5px); font-weight: bold; font-size: 4vw; text-align: center; padding: .75em 0; color:#fff; background: #ccc;border-radius: .5rem .5rem 0 0; }
.corp_news ul#tab li.select { color: #b71b21; background: #fff; border: 1px solid #102e60; border-bottom: none; }
.corp_news h3.column        { display: none; }
}

/* add style/ start ----------------------------------- */
ul.newsList li.new       { padding-right: 45px; position: relative; }
ul.newsList li.new:after { display: block; content: ""; background: url(/common/img/imgNew.gif) no-repeat 100% 50%; width: 35px; height: 15px; position: absolute; right: 0; top: 0; bottom: 0; margin: auto 0; }
@media only screen and (max-width: 768px){
ul.newsList li.new       { padding-right: 0; position: relative; }
ul.newsList li.new:after { right: 145px; top: 10px; bottom: inherit; margin: 0; }
}

#news_frame .corp_main   { flex-direction: row; }
#news_frame .corp_navi,
#emergency .corp_navi    { display: none; }
#emergency .corp_article { width: 100%; }
#news_frame .table2,
#emergency .table2       { margin-top: 3em; }
.emergency               { margin-bottom: 3em; }
h3 .moreLink:link,
h3 .moreLink:visited     { padding: 0.25em 1em; font-size: 40%; display: inline-block; color: #fff; background: #999; border-radius: 0.25em; text-decoration: none; vertical-align: middle; font-weight: 400 }
h3 .moreLink:hover       { opacity: .8; }
#tab                     { display: none; }
.tab-content h3.column   { margin-top: 0.5em; align-items: center; }
ul.newsList li.moreLink  { display: none; }
@media only screen and (max-width: 768px){
#news_frame .corp_main                       { flex-direction: column; }
#news_frame .corp_navi_years                 { display: block; width: 100%; margin-bottom: 2em; padding-left: 0; }
#news_frame .corp_navi,#emergency .corp_navi { display: block; }
#tab           { display: flex; justify-content: space-between; margin: 0; border-bottom: 1px solid #B71B21; font-weight: bold; }
#tab li.select { background: #B71B21; color: #fff; }
#tab li        { margin: 0; padding: 0.8em 1em; background: #fff; width: 50%; font-size: 1.125em; line-height: 1; text-align: center; cursor: pointer; }
.tab-content h3                  { display: none; }
ul.newsList li.moreLink          { display: block; }
ul.newsList li.moreLink a        { position: relative; display: block; padding: 0.8em 1em; /*background: #fcf1f1;*/ text-align: center; font-weight: bold; }
ul.newsList li.moreLink a:before { content: "\f054"; font-family: "Font Awesome 5 Free"; font-size: 1em; font-weight: 900; /* color: #666;*/  position: absolute; right: 1em; -webkit-font-smoothing: antialiased; }
ul.newsList li.moreLink a:hover:before { color: #e60012; }
ul.newsList li p                       { padding: 10px 20px 10px 10px; }
}

/* 記事詳細ページ */
.article-info  { margin: 0 0 2em; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.sns_btn       { text-align: right; }
ul.sns li      { display: inline-block; vertical-align: middle; line-height: 1; }
ul.sns li + li { margin-left: 10px; }
#article h3    { margin-top: 0; font-size: 1.64em; }
#article p + p { margin-top: 1.5em; }

/* add style / end ----------------------------------- */