/* @kajima legacy-content-scoped */
@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,300;0,400;0,500;0,700;1,400&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap");
html, #legacy-content, body, #legacy-content div, #legacy-content span, #legacy-content applet, #legacy-content object, #legacy-content iframe, #legacy-content h1, #legacy-content h2, #legacy-content h3, #legacy-content h4, #legacy-content h5, #legacy-content h6, #legacy-content p, #legacy-content blockquote, #legacy-content pre, #legacy-content a, #legacy-content abbr, #legacy-content acronym, #legacy-content address, #legacy-content big, #legacy-content cite, #legacy-content code, #legacy-content del, #legacy-content dfn, #legacy-content em, #legacy-content img, #legacy-content ins, #legacy-content kbd, #legacy-content q, #legacy-content s, #legacy-content samp, #legacy-content small, #legacy-content strike, #legacy-content strong, #legacy-content sub, #legacy-content sup, #legacy-content tt, #legacy-content var, #legacy-content b, #legacy-content u, #legacy-content i, #legacy-content center, #legacy-content dl, #legacy-content dt, #legacy-content dd, #legacy-content ol, #legacy-content ul, #legacy-content li, #legacy-content fieldset, #legacy-content form, #legacy-content label, #legacy-content legend, #legacy-content table, #legacy-content caption, #legacy-content tbody, #legacy-content tfoot, #legacy-content thead, #legacy-content tr, #legacy-content th, #legacy-content td, #legacy-content article, #legacy-content aside, #legacy-content canvas, #legacy-content details, #legacy-content embed, #legacy-content figure, #legacy-content figcaption, #legacy-content footer, #legacy-content header, #legacy-content hgroup, #legacy-content menu, #legacy-content nav, #legacy-content output, #legacy-content ruby, #legacy-content section, #legacy-content summary, #legacy-content time, #legacy-content mark, #legacy-content audio, #legacy-content video { margin: 0; padding: 0; border: 0; font: inherit; font-size: 100%; vertical-align: baseline; }

html, #legacy-content { line-height: 1; }

#legacy-content ol, #legacy-content ul { list-style: none; }

#legacy-content table { border-collapse: collapse; border-spacing: 0; }

#legacy-content caption, #legacy-content th, #legacy-content td { text-align: left; font-weight: normal; vertical-align: middle; }

#legacy-content q, #legacy-content blockquote { quotes: none; }
#legacy-content q:before, #legacy-content q:after, #legacy-content blockquote:before, #legacy-content blockquote:after { content: ""; content: none; }

#legacy-content a img { border: none; }

#legacy-content article, #legacy-content aside, #legacy-content details, #legacy-content figcaption, #legacy-content figure, #legacy-content footer, #legacy-content header, #legacy-content hgroup, #legacy-content main, #legacy-content menu, #legacy-content nav, #legacy-content section, #legacy-content summary { display: block; }

#legacy-content #body, #legacy-content #body.full-width .content .inner, #legacy-content #body.full-width .bread { position: relative; width: 960px; margin: 0 auto; text-align: left; line-height: 1.7; }

#legacy-content #header #pagetop, #legacy-content .bottom, #legacy-content #footer .inner { position: relative; width: 1160px; margin: 0 auto; text-align: left; line-height: 1.7; }

#legacy-content ul#gnav > li, #legacy-content #footer, #legacy-content h1.title_middle, #legacy-content h1.title_large, #legacy-content h2.heading_line, #legacy-content h3.heading_line, #legacy-content h4, #legacy-content #snav h2, #legacy-content #bnav dt { font-family: "Roboto","Noto Sans JP","メイリオ", Meiryo, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "ＭＳ ゴシック", sans-serif; }

/*  Common Elements
---------------------------------------------------------- */
html, #legacy-content { overflow-y: scroll; }

body, #legacy-content { background-color: #fff; color: #363434; font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-size: 13px; text-align: center; -webkit-text-size-adjust: none; -webkit-font-smoothing: antialiased; position: relative; }

#legacy-content a { text-decoration: underline; color: #1d3994; }
#legacy-content a:visited { color: #941d55; }
#legacy-content a:focus { color: #cc0033; }
#legacy-content a:hover { color: #cc0033; }
#legacy-content a:active { color: #cc0033; }

#legacy-content hr { display: none; }

#legacy-content strong { font-weight: bold; }

#legacy-content blockquote { padding: 15px; }

#legacy-content table th, #legacy-content table td, #legacy-content table caption { line-height: 1.7; }

#legacy-content img { vertical-align: bottom; }

#legacy-content sup, #legacy-content sub { line-height: 1; font-size: 70%; }

#legacy-content sup { vertical-align: 0.6em; }

/*  Common id, class
---------------------------------------------------------- */
#legacy-content #counter { position: absolute; top: 0; }

#legacy-content .hover { cursor: pointer; }

#legacy-content .clear { clear: both; }

#legacy-content .no_margin { margin: 0 !important; }

#legacy-content .break { page-break-before: always; }
#legacy-content .break span { display: none; }

#legacy-content .tm { margin-bottom: 1em !important; }

#legacy-content .tm_2 { margin-bottom: 2em !important; }

#legacy-content .c-mb--1 { margin-bottom: 1.875rem !important; }

/*  Paragraph
---------------------------------------------------------- */
#legacy-content p.caption, #legacy-content p.table_caption { font-size: 87.5%; margin: 8px 0 0 0; }

#legacy-content p.date { margin: 0 10px; text-align: right; }
#legacy-content p.caption { margin-bottom: 20px; }
#legacy-content p.note { margin: 0 0 15px 0; padding-left: 1em; text-indent: -1em; }

/* link_icon */
#legacy-content img.link_icon { margin: 0 3px 0 5px; vertical-align: baseline; }

#legacy-content img.speech { position: absolute; }

#legacy-content #header *, #legacy-content #footer * { box-sizing: border-box; }

/* Header
===========================================================*/
#legacy-content #header { border-bottom: #D9DCE0 1px solid; height: 74px; min-width: 1160px; background-color: #fff; }
#legacy-content #header #pagetop { padding: 10px 0 0 0; height: 100%; z-index: 10; }
#legacy-content #header h1#logo, #legacy-content #header p#logo { float: left; width: 100px; padding-bottom: 10px; margin: 0; }
#legacy-content #header .utility { padding: 0; position: absolute; right: 0px; top: 0; width: auto; display: flex; justify-content: flex-end; }

#legacy-content .utility ul.nav { font-size: 0.875rem; display: flex; justify-content: flex-start; line-height: 1; padding: 0.25rem 0 0; margin-right: 1.25rem; }
#legacy-content .utility ul.nav li { background: url(../image/arrow_red.png) no-repeat 10px 0.5rem; padding: 0.375rem 0rem 0.375rem 1.5rem; margin-right: 0.875rem; }
#legacy-content .utility ul.nav li a { color: #363434; text-decoration: none; }
#legacy-content .utility ul.nav li a:hover { text-decoration: underline; }

#legacy-content .utility_search__btn { width: 50px; height: 30px; background: #a1a8b0 url("/common/image/icon_header_search.svg") no-repeat 50% -2px; cursor: pointer; transition: background-color 0.3s; border-radius: 0px 0px 4px 4px; }

#legacy-content .utility_search__btn:hover { background-color: #82888e; }

/*search_form*/
#legacy-content .utility_search__form { position: fixed; top: 0px; left: 0px; width: 100%; height: 100%; background-color: rgba(7, 10, 13, 0.7); z-index: 30; justify-content: center; align-items: flex-start; font-family: "Roboto","Noto Sans JP","メイリオ", Meiryo, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "ＭＳ ゴシック", sans-serif; display: none; opacity: 0; transition: opacity 0.3s; }
#legacy-content .utility_search__form form * { font-size: 1.25rem; line-height: 1; outline: none; }
#legacy-content .utility_search__form.is-appear { opacity: 1; }
#legacy-content .utility_search__form input[type="text"] { border: #82888e 1px solid; border-radius: 4px; padding: 1rem 1.25rem; cursor: text; width: 36em; }
#legacy-content .utility_search__form input[type="text"]:hover { background-color: #f4f4f4; }
#legacy-content .utility_search__form input[type="text"]:focus { border-color: #1666A1; background-color: #f4f4f4; }
#legacy-content .utility_search__form input.search_btn { border-radius: 4px; border: none; padding: 1.0625rem 1.5rem 1.0625rem 3rem; margin: 0 0.75rem; background: #387FB5 url("/common/image/icon_header_search.svg") no-repeat 4px 50%; color: #fff; letter-spacing: 0.2rem; cursor: pointer; transition: background-color 0.3s; }
#legacy-content .utility_search__form input.search_btn:hover { background-color: #1666A1; }
#legacy-content .utility_search__form .close_btn { position: absolute; width: 44px; height: 44px; top: 12px; right: 20px; background: url("/common/image/search_form/icon_close.svg") no-repeat 50% 50%; cursor: pointer; opacity: 0.4; transition: opacity 0.3s; }
#legacy-content .utility_search__form .close_btn:hover { opacity: 0.7; }

#legacy-content .utility_search__form_bg { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background-color: transparent; }

#legacy-content .utility_search__panel { background: #fff; width: 1160px; padding: 2.25rem 2.5rem 6rem; box-shadow: 3px 6px 16px -2px rgba(0, 0, 0, 0.6); border-radius: 4px; text-align: center; margin-top: 20px; opacity: 0; transition: all 0.3s; position: relative; }
#legacy-content .utility_search__panel.is-appear { margin-top: 80px; opacity: 1; }
#legacy-content .utility_search__panel h2 { font-size: 1.5rem; margin: 0 0 2.5rem; }

/*  Header: Global Navigation
---------------------------------------------------------- */
#legacy-content ul#gnav { margin-left: auto; margin-right: auto; margin-bottom: 7px; position: absolute; right: 0px; bottom: 0px; width: auto; display: flex; justify-content: flex-start; border-right: #C0C5CC 1px solid; background-color: #fff; }
#legacy-content ul#gnav > li { z-index: 1; flex: 0 0 auto; width: 168px; border-left: #C0C5CC 1px solid; padding: 0 2px; font-size: 0.9375rem; text-align: center; line-height: 1; font-weight: 500; }
#legacy-content ul#gnav > li > p { position: relative; }
#legacy-content ul#gnav > li > p > a { display: block; color: #212121; text-decoration: none; border-radius: 3px; padding: 0.5rem 0 0.5rem; transition: background-color 0.3s; }
#legacy-content ul#gnav > li > p > a:hover { background-color: #d9dce0; text-decoration: none; }
#legacy-content ul#gnav > li > p > a:focus { text-decoration: none; }
#legacy-content ul#gnav > li > p.current::before { content: ""; display: block; width: 100%; height: 2px; position: absolute; background-color: #E6002D; bottom: -7px; left: 0px; }
#legacy-content ul#gnav > li.is-open > p > a { background-color: #363434; color: #fff; }
#legacy-content ul#gnav > li.recruit { width: 186px; letter-spacing: -0.03em; }
#legacy-content ul#gnav li a { text-decoration: none; }
#legacy-content ul#gnav li a:hover, #legacy-content ul#gnav li a:focus { text-decoration: underline; }
#legacy-content ul#gnav li .gnav_pulldown_menu { position: absolute; display: none; width: 1160px; border-radius: 4px; top: 40px; left: -133px; z-index: 20; opacity: 0; transition: opacity 0.2s; }
#legacy-content ul#gnav li .gnav_pulldown_menu .inner { padding: 19px 0 4rem; position: relative; min-height: 300px; }
#legacy-content ul#gnav li .gnav_pulldown_menu .ctg_title { margin: 0; display: flex; justify-content: space-between; }
#legacy-content ul#gnav li .gnav_pulldown_menu .ctg_title h2 { flex: 0 0 auto; margin: 0 auto 0 0; padding: 0; line-height: 1; font-size: 1.875rem; width: auto; }
#legacy-content ul#gnav li .gnav_pulldown_menu .ctg_title .shoulder { flex: 0 0 auto; width: auto; }
#legacy-content ul#gnav li .gnav_pulldown_menu .ctg_title .shoulder a { color: #212121; }
#legacy-content ul#gnav li .gnav_pulldown_menu .ctg_title .shoulder.link_index a { display: inline-block; position: relative; margin: -0.25rem 0 0; padding: 0.875rem 0.75rem 0.875rem 0; width: 380px; text-align: center; font-size: 1.0625rem; border: #D9DCE0 1px solid; border-radius: 2px; border-bottom: #E6002D 2px solid; background-color: #fff; box-shadow: 1px 2px 8px -2px rgba(0, 0, 0, 0.2); text-decoration: none; transition: all 0.3s; }
#legacy-content ul#gnav li .gnav_pulldown_menu .ctg_title .shoulder.link_index a::after { content: ""; display: block; position: absolute; top: 11px; right: 10px; width: 21px; height: 21px; background: url(../image/bn_arrow/arrow_right_m_red.svg) no-repeat 50% 50%; }
#legacy-content ul#gnav li .gnav_pulldown_menu .ctg_title .shoulder.link_index a:hover { background-color: #EDEEF0; border-color: #E6002D; }
#legacy-content ul#gnav li .gnav_pulldown_menu .bottom.close_menu { position: absolute; right: 0px; bottom: 1.25rem; width: auto; margin: 0; padding: 0; line-height: 1; }
#legacy-content ul#gnav li .gnav_pulldown_menu .bottom.close_menu a { display: inline-block; position: relative; color: #212121; text-decoration: none; padding: 0.5rem 2.25rem 0.5rem 0.875rem; transition: background-color 0.3s; border-radius: 3px; }
#legacy-content ul#gnav li .gnav_pulldown_menu .bottom.close_menu a:hover { background-color: #D9DCE0; }
#legacy-content ul#gnav li .gnav_pulldown_menu .bottom.close_menu a:after { content: ""; display: block; width: 20px; height: 20px; position: absolute; right: 8px; top: 50%; margin-top: -11px; background: url(../image/gnav_pulldown/close_icon.svg) no-repeat 50% 50%; }
#legacy-content ul#gnav li.is-open .gnav_pulldown_menu { opacity: 1; }

#legacy-content .p-gnav_content { text-align: left; margin: 2.9375rem 0 1.75rem; }
#legacy-content .p-gnav_content .c-flex--between { display: flex; justify-content: space-between; }
#legacy-content .p-gnav_content .col { float: none; border-left: #C0C5CC 1px solid; padding-top: 0.625rem; }
#legacy-content .p-gnav_content .col.no_border { border-left: none; }
#legacy-content .p-gnav_content .col a { color: #212121; }
#legacy-content .p-gnav_content .col .content { margin-left: 1.375rem; }
#legacy-content .p-gnav_content .col .content.line_section { border-top: #C0C5CC 1px solid; padding-top: 1.125rem; }
#legacy-content .p-gnav_content .col .content .col { border: none; }
#legacy-content .p-gnav_content .col2 .col { width: calc((100% - 40px)/2); }
#legacy-content .p-gnav_content .col3 .col { width: calc((100% - 80px)/3); }
#legacy-content .p-gnav_content .col3 .col.span-2 { width: calc(((100% - 80px)/3)*2 + 40px); }
#legacy-content .p-gnav_content .col4 .col { width: calc((100% - 120px)/4); }
#legacy-content .p-gnav_content .col4 .col.span-2 { width: calc((100% - 40px)/2); }
#legacy-content .p-gnav_content .col4 .col.span-2 .col2 .col { width: calc((100% - 40px)/2); }
#legacy-content .p-gnav_content .col4 .col.span-3 { width: calc(((100% - 120px)/4)*3 + 80px); }
#legacy-content .p-gnav_content .col4 .col.span-3 .col2 .col { width: calc((100% - 40px)/2); }
#legacy-content .p-gnav_content h3 { font-size: 1.0625rem; margin: 0 0 0.9375rem; padding-bottom: 0.875rem; border-bottom: #C0C5CC 1px solid; }
#legacy-content .p-gnav_content h3.has_shoulder { position: relative; }
#legacy-content .p-gnav_content h3.has_shoulder .shoulder { font-size: 0.9375rem; font-weight: normal; position: absolute; right: 0px; bottom: 0.625rem; }
#legacy-content .p-gnav_content ul.link li { margin-bottom: 0.75rem; font-weight: 400; }
#legacy-content .p-gnav_content ul.link.indent { margin-left: 1.25rem; }
#legacy-content .p-gnav_content p.link.large { font-size: 1.0625rem; background-position: 0 0.25em; }
#legacy-content .p-gnav_content .c-blank::after { display: inline-block; content: ""; width: 9px; height: 12px; margin: 0 6px 1px; background: url(/common/image/icon_blank.png) no-repeat 0 0; }

#legacy-content .p-gnav_gbk { display: none; position: absolute; width: 100%; top: 0px; left: 0px; background-color: rgba(7, 10, 13, 0.7); z-index: 10; opacity: 0; transition: opacity 0.3s; }
#legacy-content .p-gnav_gbk.is-appear { opacity: 1; }

#legacy-content .p-gnav_wbk { position: absolute; width: 100%; height: 0px; background-color: #F5F6F7; top: 0px; left: 0px; z-index: 10; transition: all 0.3s; }

/*.sp_view*/
#legacy-content .sp_view { background: #333; width: 100%; }
#legacy-content .sp_view a { display: block; text-decoration: none; color: #fff; font-size: 28px; padding: 1.5em 0; line-height: 1; font-weight: bold; }

/* Body
===========================================================*/
/* structure
---------------------------------------------------------- */
#legacy-content #body { min-height: 400px; z-index: 0; }
#legacy-content #body.full-width { width: 100%; }
#legacy-content #body.full-width .gbk { background-color: #EDEEF0; }
#legacy-content #body.full-width .gbk.btm { padding-bottom: 10px; }

#legacy-content #main { float: left; width: 700px; padding-bottom: 30px; }

#legacy-content #sub { float: right; width: 230px; padding-bottom: 30px; }

#legacy-content .bottom { clear: both; margin-bottom: 20px; }

/*  Body: Breadcrumbs
---------------------------------------------------------- */
#legacy-content p.bread { padding: 18px 0; line-height: 1 !important; font-size: 92.5%; }
#legacy-content p.bread a, #legacy-content p.bread em { margin: 0 8px 0 4px; }
#legacy-content p.bread a { text-decoration: none; }
#legacy-content p.bread a:hover, #legacy-content p.bread a:focus { text-decoration: underline; }
#legacy-content p.bread em { color: #595757; }

#legacy-content .bottom p.bread { clear: both; padding-top: 8px; padding-bottom: 0; }

/*  Body: Go to Pagetop
---------------------------------------------------------- */
#legacy-content p.go_pagetop { margin: 30px 0 26px 0; line-height: 1.0; text-align: right; font-size: 0.875rem; }
#legacy-content p.go_pagetop a { text-decoration: none; padding: 0 0 0 11px; background: url(/common/image/arrow_up.gif) no-repeat 0 0.4em; }
#legacy-content p.go_pagetop a:hover, #legacy-content p.go_pagetop a:focus { text-decoration: underline; }

#legacy-content .bottom p.go_pagetop { position: absolute; right: 0; bottom: 0; margin: 0; }
#legacy-content .bottom p.go_pagetop a { padding: 0; background: none; }

#legacy-content .go_pagetop_frame { position: fixed; right: 35px; bottom: 35px; width: 50px; height: 50px; z-index: 2; display: none; }
#legacy-content .go_pagetop_frame p { width: 100%; height: 100%; }
#legacy-content .go_pagetop_frame a { width: 100%; height: 100%; align-items: center; display: flex; justify-content: center; background-color: #E6002D; border-radius: 4px; box-shadow: 1px 2px 12px -2px rgba(0, 0, 0, 0.5); }
#legacy-content .go_pagetop_frame a img { opacity: 1; transition: opacity 0.3s; }
#legacy-content .go_pagetop_frame a:hover img { opacity: 0.7; }
#legacy-content .go_pagetop_frame.default { display: block; opacity: 0; transition: opacity 0.3s; }
#legacy-content .go_pagetop_frame.default.appear { opacity: 1; }

/* Footer
===========================================================*/
#legacy-content #footer { min-width: 1160px; padding: 20px 0; background: #82888E; color: #fff; font-weight: 500; }
#legacy-content #footer * { box-sizing: border-box; }
#legacy-content #footer a { color: #fff; text-decoration: none; }
#legacy-content #footer a:hover { text-decoration: underline; }
#legacy-content #footer ul.link li { font-size: 0.875rem; padding-left: 20px; background: url(../image/arrow_white.png) no-repeat 6px 0.4em; }
#legacy-content #footer ul::after { display: none; }

#legacy-content .footer_main { display: flex; justify-content: flex-start; line-height: 1; margin-bottom: 4.5rem; }

#legacy-content .footer_company_name { flex: 0 0 auto; width: 164px; }

#legacy-content .footer_company_name__logo { margin-top: 0.125rem; margin-bottom: 1.125rem; }

#legacy-content .footer_company_name__jp { font-size: 0.9375rem; }

#legacy-content .footer_fnav { flex: 0 0 auto; width: 840px; display: flex; justify-content: flex-start; flex-wrap: wrap; font-size: 0.9375rem; }

#legacy-content .footer_fnav li { flex: 0 0 auto; width: 210px; margin-bottom: 0.75rem; font-weight: 500; letter-spacing: -0.03em; }

#legacy-content .footer_fnav li a { display: block; padding: 0.3125rem 0.5rem 0.3125rem 1.5rem; background: url(../image/arrow_red_large_reverse.png) no-repeat 0.125rem 0.3125rem; }

#legacy-content .footer_sub { position: relative; font-size: 0.875rem; }
#legacy-content .footer_sub .utility_bottom li { display: inline-block; margin-right: 1.5rem; }

#legacy-content .footer_sub__inner_info.link { position: absolute; width: 370px; right: 0px; bottom: 0px; display: flex; justify-content: flex-start; flex-wrap: wrap; padding: 0.875rem 0 0rem; border-top: #C0C5CC 1px solid; }
#legacy-content .footer_sub__inner_info.link li { flex: 0 0 auto; width: 50%; margin-bottom: 0.5rem; }
#legacy-content .footer_sub__inner_info.link li a { display: block; }

#legacy-content .footer_sns { position: absolute; width: auto; top: 0px; right: 0px; background-color: #fff; border-radius: 4px; padding: 0 0.5rem 0.375rem; }
#legacy-content .footer_sns .footer_sns_label { color: #6E767C; font-size: 0.8125rem; line-height: 1; text-align: center; padding-top: 0.625rem; padding-bottom: 0.0625rem; }
#legacy-content .footer_sns ul { display: flex; justify-content: center; }
#legacy-content .footer_sns ul li { flex: 0 0 auto; width: 60px; height: 50px; overflow: hidden; margin: 0 0.0625rem; transition: opacity 0.3s; text-align: center; font-weight: normal; }
#legacy-content .footer_sns ul li:hover { opacity: 0.7; }
#legacy-content .footer_sns ul li a { display: block; width: 100%; height: 100%; background-repeat: no-repeat; background-size: 100% auto; background-position: 50% 50%; }
#legacy-content .footer_sns ul li.youtube a { background-image: url("/common/image/icon_footer_youtube_logo.svg"); }
#legacy-content .footer_sns ul li.twitter a { background-image: url("/common/image/icon_footer_twitter_logo.svg"); }

#legacy-content #copyright { border-top: #C0C5CC 1px solid; font-size: 0.8125rem; padding: 0.6875rem 0 1.25rem; margin-top: 0.75rem; font-weight: 400; }

/* Heading
===========================================================*/
/* h1 */
#legacy-content h1 { margin: 0 0 20px 0; }
#legacy-content h1.page_title { line-height: 1; text-align: left; padding: 0.8em 1em; letter-spacing: 0.05em; background-color: #EDEEF0; border-radius: 4px; font-size: 1.5625rem; font-weight: bold; }
#legacy-content h1.title_middle { font-size: 1.4375rem; font-weight: bold; line-height: 1.4; text-align: left; padding-top: 0.8em; margin-bottom: 1.5rem; border-top: #D9DCE0 4px solid; }
#legacy-content h1.title_large { font-size: 1.5625rem; font-weight: bold; line-height: 1.2; text-align: left; padding: 0.6875rem 0.875rem 0.8125rem 1rem; margin-bottom: 1.5rem; box-sizing: border-box; border: #D9DCE0 1px solid; background-color: #EDEEF0; }

/* h2-h4 ,#main*/
#legacy-content h2, #legacy-content h3, #legacy-content h4 { font-size: 107.7%; font-weight: 600; }
#legacy-content h2.first, #legacy-content h3.first, #legacy-content h4.first { margin-top: 0 !important; }
#legacy-content h2 img, #legacy-content h3 img, #legacy-content h4 img { vertical-align: top; }
#legacy-content #main h2, #legacy-content #main h3, #legacy-content #main h4 { margin: 2rem 0 1.25rem 0; }

#legacy-content h2.heading_line { border-bottom: #D9DCE0 3px solid; padding-bottom: 0.5em; font-size: 1.3125rem; text-align: left; position: relative; overflow: visible; }
#legacy-content h2.heading_line::before { content: ""; position: absolute; left: 0px; bottom: -3px; height: 3px; width: 0px; border-left: #E6002D 32px solid; border-right: #fff 3px solid; }

#legacy-content h3.heading_line { padding: 0 0 0 0.875rem; font-size: 1.125rem; text-align: left; border-left: #D9DCE0 3px solid; position: relative; }
#legacy-content h3.heading_line::before { content: ""; position: absolute; left: -3px; top: 0px; height: 6px; width: 3px; background-color: #E6002D; border-bottom: #fff 3px solid; }
#legacy-content #main h3.box { padding: 0.4375rem 0.625rem; background: #EDEEF0; }
#legacy-content #main h3.box.hover a { color: #cc0033; }

#legacy-content h4 { text-align: left; }

 /*  Body: Sub Contents (snav)
---------------------------------------------------------- */
#legacy-content #sub * { box-sizing: border-box; }

#legacy-content #sub { position: relative; }
#legacy-content #sub h2, #legacy-content #sub h3, #legacy-content #sub h4 { margin: 0; font-size: 100%; }
#legacy-content #sub #snav { border-radius: 0px 6px 0px 0px; }

#legacy-content #snav { position: relative; width: 100%; margin-bottom: 20px; background: #fff; z-index: 0; font-size: 0.875rem; line-height: 1.5; }
#legacy-content #snav a { text-decoration: none; }
#legacy-content #snav h2 { background: #3C4248; border-radius: 0 6px 0 0; font-size: 1.0625rem; margin-top: 10px; transition: background-color 0.3s; }
#legacy-content #snav h2 a { display: block; padding: 1rem 0.75rem 1.25rem 1.875rem; background: url("/common/image/arrow_red_large.png") no-repeat 0.675rem 1.1875rem; color: #fff; line-height: 1; }
#legacy-content #snav h2:hover { background-color: #252b32; }
#legacy-content #snav ul.pager { display: none; }
#legacy-content #snav ul.nav { background: #EDEEF0; }
#legacy-content #snav ul.nav li.current p a, #legacy-content #snav ul.nav li p a:hover, #legacy-content #snav ul.nav li p.current a, #legacy-content #snav ul.nav ul li a:hover, #legacy-content #snav ul.nav ul li.current a { background-color: #C0C5CC; }
#legacy-content #snav ul.nav li a:hover, #legacy-content #snav ul.nav li.current a, #legacy-content #snav ul.nav li p a { background-color: #D9DCE0; }
#legacy-content #snav ul.nav li a, #legacy-content #snav ul.nav li p a, #legacy-content #snav ul.nav ul li a { background-image: url(/common/image/arrow_red.png); background-repeat: no-repeat; }
#legacy-content #snav ul.nav li.current a, #legacy-content #snav ul.nav li.current p a { background-image: url(/common/image/arrow_gray.png); background-repeat: no-repeat; }
#legacy-content #snav ul.nav li { border-top: 1px solid #fff; }
#legacy-content #snav ul.nav li a { display: block; padding: 8px 10px 8px 30px; background-position: 15px 0.9375rem; color: #363434; transition: background-color 0.3s; }
#legacy-content #snav ul.nav li a:hover { color: #333333; }
#legacy-content #snav ul.nav li.current a { color: #333333; }
#legacy-content #snav ul.nav li p a { background-image: url(/common/image/bg_snav_minus.gif); }
#legacy-content #snav ul.nav li.plus a { background-image: url(/common/image/bg_snav_plus.gif); }
#legacy-content #snav ul.nav ul { background: #D9DCE0; }
#legacy-content #snav ul.nav ul li { background: url(/news/digest/image_v2/bg_snav_dot2.gif) repeat-x left top; padding-top: 1px; border: none; }
#legacy-content #snav ul.nav ul li a { padding: 8px 15px 9px 49px; background-position: 33px 0.9375rem; }

/*  Body: Sub Contents (banner)
---------------------------------------------------------- */
#legacy-content #sub .project { display: none; }

/* banner */
#legacy-content #sub ul.banner li, #legacy-content #sub .block ul.line li { line-height: 1.0; }

#legacy-content #sub ul.banner li { margin-bottom: 20px; }

#legacy-content #sub .block ul.line li { width: 230px; padding-top: 1px; background: url(/common/image/bg_dot_line.gif) repeat-x left top; }
#legacy-content #sub .block ul.line li.first { padding-top: 0; background: none; }

/* Elements in div#body
===========================================================*/
/*  Section
---------------------------------------------------------- */
#legacy-content .section { clear: both; }

/* basic style of .bn-box and .wh-box*/
#legacy-content .bn-box, #legacy-content .wh-box { background-color: #FFF; border-radius: 3px; overflow: hidden; margin-bottom: 20px; line-height: 1.4; }
#legacy-content .bn-box.sh, #legacy-content .wh-box.sh { box-shadow: 1px 1px 7px -2px rgba(0, 0, 0, 0.6); }
#legacy-content .bn-box.border, #legacy-content .wh-box.border { border-radius: 0px; border: #C0C5CC 1px solid; }
#legacy-content .bn-box .txt, #legacy-content .wh-box .txt { padding: 0 10px; }
#legacy-content .bn-box .txt .title, #legacy-content .wh-box .txt .title { background: url("../image/arrow_red_large.png") no-repeat 0px 0.15em; padding: 0 0 0 20px; margin: 6px 0 4px 0; }
#legacy-content .bn-box .txt .title.no_link, #legacy-content .wh-box .txt .title.no_link { background: none; padding-left: 0; }
#legacy-content .bn-box .txt .title a, #legacy-content .wh-box .txt .title a { color: #3C4248; text-decoration: none; }
#legacy-content .bn-box .txt .title a:hover, #legacy-content .bn-box .txt .title a:focus, #legacy-content .wh-box .txt .title a:hover, #legacy-content .wh-box .txt .title a:focus { text-decoration: underline; }
#legacy-content .bn-box .txt .indent, #legacy-content .wh-box .txt .indent { margin-left: 20px; }
#legacy-content .bn-box .txt .small, #legacy-content .wh-box .txt .small { color: #333; font-size: 84.6%; }
#legacy-content .bn-box .txt ul.link, #legacy-content .wh-box .txt ul.link { font-size: 92.3%; display: inline-block; }
#legacy-content .bn-box .txt ul.link li.inline, #legacy-content .wh-box .txt ul.link li.inline { float: left; width: auto; margin-right: 1em; }

#legacy-content .bn-box.hover { background-color: #f4f4f4 !important; }
#legacy-content .bn-box.hover .title { text-decoration: underline; }

/*border-box*/
#legacy-content .border-box { border: #C0C5CC 1px solid; overflow: hidden; background: #FFF; margin-bottom: 20px; }
#legacy-content .border-box .thumb_link { overflow: hidden; padding: 10px; }
#legacy-content .border-box .thumb_link .img { float: left; width: 70px; }
#legacy-content .border-box .thumb_link .txt { padding-left: 80px; }
#legacy-content .border-box .thumb_link .txt .title { background: url("../image/arrow_red.png") no-repeat 0px 0.35em; padding: 0 0 0 12px; margin: 0px 0 4px 0; line-height: 1.33; }
#legacy-content .border-box .thumb_link .txt .title a { color: #3C4248; text-decoration: none; }
#legacy-content .border-box .thumb_link .txt .title a:hover, #legacy-content .border-box .thumb_link .txt .title a:focus { text-decoration: underline; }
#legacy-content .border-box .thumb_link .txt .indent { margin-left: 12px; }
#legacy-content .border-box .thumb_link .txt .small { color: #333; font-size: 84.6%; }
#legacy-content .border-box .thumb_link.hover { background-color: #f4f4f4 !important; }
#legacy-content .border-box .thumb_link.hover .title { text-decoration: underline; }
#legacy-content .border-box ul.box-list li { background: url(/common/image/bg_dot_line.gif) repeat-x left bottom; padding-bottom: 1px; }
#legacy-content .border-box ul.box-list li.last { background: none; }
#legacy-content .border-box ul.box-list li.block_link h3.title, #legacy-content .border-box ul.box-list li.block_link .title { line-height: 1.33; margin: 0; padding: 1.5em 10px 1.65em 40px; background: url("../image/arrow_red_large.png") no-repeat 20px 1.65em; }
#legacy-content .border-box ul.box-list li.block_link a { color: #3C4248; text-decoration: none; }
#legacy-content .border-box ul.box-list li.block_link a:hover, #legacy-content .border-box ul.box-list li.block_link a:focus { text-decoration: underline; }
#legacy-content .border-box ul.box-list li.block_link.hover { background-color: #f4f4f4; }
#legacy-content .border-box ul.box-list li.block_link.hover .title { text-decoration: underline; }
#legacy-content .border-box .label { background: #EDEEF0; padding: 0.4em 1em; line-height: 1.4; }

/*  PDF Note
---------------------------------------------------------- */
#legacy-content div.pdf_note { font-size: 0.8125rem; margin: 0.8125rem 0; padding: 0.875rem 1.125rem 1rem; line-height: 1.0; border: #D9DCE0 2px solid; border-radius: 4px; }
#legacy-content div.pdf_note > p:nth-of-type(1) { background: url("../image/icon_pdf.gif") no-repeat 0px 0.0625rem; padding-left: 20px; }
#legacy-content div.pdf_note img { display: none; }
#legacy-content div.pdf_note img.link_icon { display: inline-block; }

/*  Index Box
---------------------------------------------------------- */
#legacy-content .index_box { margin-bottom: 10px; padding: 10px; }
#legacy-content .index_box.hover { background: #f0f0f0; }
#legacy-content .index_box.hover a { text-decoration: underline; }
#legacy-content .index_box p.image { float: left; margin-right: 15px; line-height: 1.0; }
#legacy-content .index_box .text { float: left; width: calc(100% - 85px); font-size: 0.9375rem; }
#legacy-content .index_box a { text-decoration: none; }
#legacy-content .index_box a:hover, #legacy-content .index_box a:focus { text-decoration: underline; }

#legacy-content div.column2 { display: flex; justify-content: space-between; flex-wrap: wrap; }
#legacy-content div.column2 .index_box { flex: 0 0 auto; width: calc((100% - 40px)/2); }
#legacy-content div.column2::after { display: none; }

/*heading*/
#legacy-content #main .index_box h2, #legacy-content #main .index_box h3 { margin: 0; padding: 0 0 5px 0; background: none; line-height: 1.5; font-size: 107.7%; }
#legacy-content #main .index_box.hover h3 a { color: #cc0033; }

/*  Body Navigaton
---------------------------------------------------------- */
#legacy-content #bnav dd ul li { padding: 0.125rem 0.5rem 0.125rem 1.5rem; background: url(/common/image/arrow_red_large_reverse.png) no-repeat 0.3125rem 0.3125rem; }

#legacy-content #bnav { margin: 3.5rem 0 0 0; position: relative; clear: both; }
#legacy-content #bnav a { text-decoration: none; }
#legacy-content #bnav a:hover, #legacy-content #bnav a:focus { text-decoration: underline; }
#legacy-content #bnav dl { line-height: 1.5; }
#legacy-content #bnav dl::after { display: none; }
#legacy-content #bnav dt { margin-bottom: 0.875rem; font-size: 1.1875rem; font-weight: 600; }
#legacy-content #bnav dt a { color: #212121; }
#legacy-content #bnav dd { font-size: 0.875rem; }
#legacy-content #bnav dd ul { display: flex; justify-content: flex-start; flex-wrap: wrap; }
#legacy-content #bnav dd ul li { flex: 0 0 auto; width: auto; margin: 0.375rem 0.75rem 0.375rem 0; border-radius: 4px; white-space: nowrap; }
#legacy-content #bnav dd ul li a { color: #212121; }
#legacy-content #bnav dd ul li.current { background-image: url(/common/image/arrow_gray_large_reverse.png); font-weight: 600; background-color: #D0D3D9; }
#legacy-content #bnav dd ul li.current a { color: #212121; }
#legacy-content #bnav.standard_bnav { margin: 3.5rem 0 0 0; background-color: #EDEEF0; padding: 1.125rem 1.5rem 1.4375rem; border-radius: 0 10px 0 0; }
#legacy-content #bnav.standard_bnav::before { content: ""; display: block; width: 100%; height: 3px; background-color: #D9DCE0; position: absolute; top: -18px; left: 0px; }

/*  List
---------------------------------------------------------- */
/* normal_ul */
#legacy-content ul.list { margin-bottom: 15px; }
#legacy-content ul.list li { margin-bottom: 7px; padding-left: 10px; background: url(/common/image/bg_dot_list.gif) no-repeat 1px 0.7em; }

/* normal_ol */
#legacy-content ol.list { margin-bottom: 15px; }
#legacy-content ol.list li { list-style: decimal; margin: 0 0 7px 18px; }
#legacy-content ol.list.alpha li { list-style: lower-alpha; }
#legacy-content ol.list ul.list { margin-top: 7px; }
#legacy-content ol.list ul.list li { list-style: none; margin: 0 0 7px 0; }

/*  Link
---------------------------------------------------------- */
#legacy-content ul.link li, #legacy-content ul.list li.link { margin-bottom: 7px; padding: 0 0 0 15px; background: url(../image/arrow_red.png) no-repeat 0 0.3125em; color: #82888E; line-height: 1.33; }

#legacy-content ul.link li a { text-decoration: none; }
#legacy-content ul.link li a:hover, #legacy-content ul.link li a:focus { text-decoration: underline; }
#legacy-content ul.link.border { padding: 16px 0 0 0; background: url(/common/image/bg_dot_line.gif) repeat-x 0 8px; }
#legacy-content ul.link.border-list li { padding: 0 0 1px 0; margin: 0; background: url(/common/image/bg_dot_line.gif) repeat-x 0 100%; }
#legacy-content ul.link.border-list li a { display: block; padding: 0.7em 0 0.55em 15px; background: url(../image/arrow_red.png) no-repeat 0 0.9375em; }
#legacy-content ul.link.inline li { display: inline-block; margin-right: 15px; white-space: nowrap; }

#legacy-content p.link { padding: 0 0 0 12px; background: url(../image/arrow_red.png) no-repeat 0 0.3125em; line-height: 1.33; }
#legacy-content p.link a { text-decoration: none; }
#legacy-content p.link a:hover, #legacy-content p.link a:focus { text-decoration: underline; }

#legacy-content p.link.large { padding: 0 0 0 20px; background: url(../image/arrow_red_large.png) no-repeat 0 0.15em; }
#legacy-content p.link.large a { color: #212121; }

/*  link_anchor
---------------------------------------------------------- */
#legacy-content .link_anchor { margin-bottom: 1.875rem; padding: 0.9375rem 1.25rem; background-color: #EDEEF0; text-align: left; }
#legacy-content .link_anchor ul li { padding: 0.125rem 0.875rem 0.125rem 1.25rem; display: inline-block; white-space: nowrap; line-height: 1.5; background: url("/common/image/arrow_down_red_large_reverse.png") no-repeat 0 0.375rem; }
#legacy-content .link_anchor ul li a { color: #363434; white-space: nowrap; text-decoration: none; }
#legacy-content .link_anchor ul li a:hover, #legacy-content .link_anchor ul li a:focus { text-decoration: underline; }

/*  News shoulder_link button
---------------------------------------------------------- */
#legacy-content ul.h_link { margin-top: -54px; /* 34px (img height) + 20px (h2 margin-bottom) */ margin-bottom: 20px; line-height: 1.0; text-align: right; }

#legacy-content ul.h_link li { position: relative; float: right; }

#legacy-content ul.h_link img { border-left: 1px solid #fff; vertical-align: top; }

/* dot_box */
#legacy-content .dot_box { margin: 0 auto 20px auto; border: #ccc 1px dotted; }
#legacy-content .dot_box dt { padding: 0 0 8px 0; }
#legacy-content .dot_box dd { padding: 8px 10px 7px 10px; }
#legacy-content .dot_box dd ul.list { margin-bottom: 0; line-height: 1.33; }
#legacy-content .dot_box dd ul.list li { margin-bottom: 5px; background-position: 0 0.5em; }

/* grid
===========================================================*/
#legacy-content .col { float: left; }

/* grid in #main */
#legacy-content .l { margin-right: 20px; }

#legacy-content .col2 .col { width: 340px; }

#legacy-content .col3 .col { width: 220px; }
#legacy-content .col3 .col.span-2 { width: 460px; }

#legacy-content .col4 .col { width: 160px; }
#legacy-content .col4 .col.span-2 { width: 340px; }
#legacy-content .col4 .col.span-3 { width: 520px; }

#legacy-content .col5 .col { width: 124px; }
#legacy-content .col5 .col.span-2 { width: 268px; }
#legacy-content .col5 .col.span-3 { width: 412px; }
#legacy-content .col5 .col.span-4 { width: 556px; }

#legacy-content .col6 .col { width: 100px; }
#legacy-content .col6 .col.span-2 { width: 220px; }
#legacy-content .col6 .col.span-3 { width: 340px; }
#legacy-content .col6 .col.span-4 { width: 460px; }
#legacy-content .col6 .col.span-5 { width: 580px; }

/* grid in #body(full-width) */
#legacy-content .full-width .l { margin-right: 24px; }
#legacy-content .full-width .col2 .col { width: 468px; }
#legacy-content .full-width .col3 .col { width: 304px; }
#legacy-content .full-width .col3 .col.span-2 { width: 632px; }
#legacy-content .full-width .col4 .col { width: 222px; }
#legacy-content .full-width .col4 .col.span-2 { width: 468px; }
#legacy-content .full-width .col4 .col.span-3 { width: 714px; }
#legacy-content .full-width .col6 .col { width: 140px; }
#legacy-content .full-width .col6 .col.span-2 { width: 304px; }
#legacy-content .full-width .col6 .col.span-3 { width: 468px; }
#legacy-content .full-width .col6 .col.span-4 { width: 632px; }
#legacy-content .full-width .col6 .col.span-5 { width: 796px; }

#legacy-content .full-width .col5 .l { margin-right: 25px; }
#legacy-content .full-width .col5 .col { width: 172px; }
#legacy-content .full-width .col5 .col.span-2 { width: 369px; }
#legacy-content .full-width .col5 .col.span-3 { width: 566px; }
#legacy-content .full-width .col5 .col.span-4 { width: 763px; }

/*
table
===========================================================*/
/* tabel_area */
#legacy-content div.table { margin-bottom: 20px; margin: 0; }

/* cell_common_style */
#legacy-content table.normal th, #legacy-content table.normal td { padding: 8px 10px; border: 1px solid #c2c5c5; }

#legacy-content table.information th, #legacy-content table.information td { padding: 0 10px; }

/* table_classes */
#legacy-content table td, #legacy-content table th { vertical-align: top; }
#legacy-content table.normal { width: 100%; font-size: 0.875rem; }
#legacy-content table.normal th { width: 180px; background-color: #f0f0f0; font-weight: bold; white-space: nowrap; }
#legacy-content table.normal caption { padding-bottom: 7px; font-weight: bold; }
#legacy-content table.information th { white-space: nowrap; }
#legacy-content table.information td.icon { padding-top: 4px; }
#legacy-content table.information td.icon img { vertical-align: baseline; }
#legacy-content table.no_border th { padding-right: 20px; font-weight: bold; white-space: nowrap; }

/* =Clearfix
---------------------------------------------------------- */
#legacy-content .clearfix:after, #legacy-content ul:after, #legacy-content dl:after, #legacy-content #body:after, #legacy-content #main:after, #legacy-content #bnav:after, #legacy-content article:after, #legacy-content hgroup:after, #legacy-content section:after, #legacy-content .section:after, #legacy-content .index_box:after, #legacy-content .column2:after, #legacy-content .col:after, #legacy-content .h_link:after, #legacy-content .link_anchor:after { display: block; clear: both; content: ""; /* clearfix */ }

/* =Clearfix
---------------------------------------------------------- */
#legacy-content .clearfix:after, #legacy-content ul:after, #legacy-content dl:after, #legacy-content #body:after, #legacy-content #main:after, #legacy-content #bnav:after, #legacy-content article:after, #legacy-content hgroup:after, #legacy-content section:after, #legacy-content .section:after, #legacy-content .index_box:after, #legacy-content .column2:after, #legacy-content .col:after, #legacy-content .h_link:after, #legacy-content .link_anchor:after { display: block; clear: both; content: ""; /* clearfix */ }

/*20231026--sns*/
#legacy-content .p-snsicons { display: flex; justify-content: flex-end; align-items: center; font-family: "Roboto","Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", sans-serif; }

#legacy-content .p-snsicons .p-snsicons_label { flex: 0 0 auto; color: #6E767C; font-size: 0.8125rem; font-weight: 500; line-height: 1; margin-right: 0.25rem; }

#legacy-content .p-snsicons ul { flex: 0 0 auto; display: flex; justify-content: flex-start; background-color: #fff; border-radius: 4px; padding: 0 0.5rem; }

#legacy-content .p-snsicons ul li { flex: 0 0 auto; width: 60px; height: 50px; overflow: hidden; margin: 0 0.0625rem; transition: opacity 0.3s; text-align: center; font-weight: normal; }

#legacy-content .p-snsicons ul li:hover { opacity: 0.6; }

#legacy-content .p-snsicons ul li.twitter a { background-image: url(/common/image/icon_footer_twitter_logo.svg); }

#legacy-content .p-snsicons ul li.youtube a { background-image: url(/common/image/icon_footer_youtube_logo.svg); }

#legacy-content .p-snsicons ul li a { display: block; width: 100%; height: 100%; background-repeat: no-repeat; background-size: 100% auto; background-position: 50% 50%; }

#legacy-content .p-gnav_content .p-snsicons { margin-top: 10px; margin-bottom: -20px; }

#legacy-content .p-gnav_content .p-snsicons .p-snsicons_label { margin-right: 0.875rem; }
