@charset "UTF-8";
@font-face { font-family: "HitachiSans-Regular"; src: url("../font/HitachiSans-Regular.woff2") format("woff2"); }
@font-face { font-family: "HitachiSans-Italic"; src: url("../font/HitachiSans-Italic.woff2") format("woff2"); }
@font-face { font-family: "HitachiSans-Bold"; src: url("../font/HitachiSans-Bold.woff2") format("woff2"); }
@font-face { font-family: "HitachiSans-BoldItalic"; src: url("../font/HitachiSans-BoldItalic.woff2") format("woff2"); }
*, *::before, *::after { box-sizing: border-box; }

body { color: #0C0C0C; background: #FFFFFF; font-size: 1em; letter-spacing: .05em; line-height: 1.6; font-family: "Noto Sans JP", sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; font-feature-settings: "palt"; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

_:lang(x)::-ms-backdrop, .selector { font-family: "Segoe UI", Meiryo, sans-serif; }

.fnt-HTCS-R { font-family: "HitachiSans-Regular", sans-serif; letter-spacing: normal; line-height: 1.2; }

.fnt-HTCS-I { font-family: "HitachiSans-Italic", sans-serif; letter-spacing: normal; line-height: 1.2; }

.fnt-HTCS-B { font-family: "HitachiSans-Bold", sans-serif; letter-spacing: normal; line-height: 1.2; }

.fnt-HTCS-BI { font-family: "HitachiSans-BoldItalic", sans-serif; letter-spacing: normal; line-height: 1.2; }

p { line-height: 1.8; }

img { border: 0; vertical-align: top; }

input, select { position: relative; top: 1px; }

table, th, td { border-collapse: collapse; border-spacing: 0; }

ul, li { list-style: none; }

a:link, a:visited { color: #0C0C0C; text-decoration: none; transition: opacity .5s; }
a:hover, a:active { opacity: .6; }

#cover { width: 100%; height: 100%; position: fixed; background: #FFFFFF; top: 0; left: 0; z-index: 10000; }

#wrapper { overflow: hidden; position: relative; }

.dd599 { display: none; }
@media screen and (max-width: 599px) { .dd599 { display: block !important; } }

@media screen and (max-width: 599px) { .nn599 { display: none !important; } }

.fadeinS { opacity: 0; transform: translateY(30px); transition: opacity .6s ease-in, transform .6s ease-out; }
.fadeinS.active { opacity: 1; transform: translateY(0); }

#HeaderArea1.Fix, #HeaderArea2.Fix { min-width: inherit !important; }

.ContainerFix { width: 90% !important; max-width: 1280px !important; }

@media screen and (max-width: 599px) { .inquirySP span, #SupportNaviSearch span span { display: none !important; } }

#HeaderArea2 { z-index: 999 !important; }
#HeaderArea2 h1 { font-weight: 500; }

@media screen and (max-width: 599px) { #GlobalNaviMenu { display: none !important; } }
#GlobalNaviMenu li { position: relative; }
#GlobalNaviMenu li > a:hover { opacity: 1; }
#GlobalNaviMenu li div.lBox span { padding: 0 15px; font-size: 83%; height: 60px; line-height: 1.2; text-align: center; box-sizing: border-box; display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; margin: 0; }
#GlobalNaviMenu li div.lBox span:hover { color: #FFFFFF; background: #b1000e; }
#GlobalNaviMenu li div.lBox ul.inMenu { position: absolute; top: 60px; width: 100%; left: 0; overflow: hidden; height: 0; transition: all .2s; }
#GlobalNaviMenu li div.lBox ul.inMenu.open { height: 15.2em; }
#GlobalNaviMenu li div.lBox ul.inMenu > li > a { display: block; font-size: 80%; line-height: 1.4; letter-spacing: 0; padding: .7em .5em .7em 1.2em; background: #F4F4F4; transition: all .2s; }
#GlobalNaviMenu li div.lBox ul.inMenu > li > a:hover { opacity: 1; background: #b1000e; color: #FFFFFF; }
#GlobalNaviMenu li div.lBox ul.inMenu.nowarp { white-space: nowrap; width: 170%; }
#GlobalNaviMenu li div.lBox ul.inMenu.nowarp.open { height: 23em; }

#HeaderArea2 .gMenu { display: none; position: absolute; z-index: 9999; width: 88%; margin: 0 6%; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu { display: block; width: 100%; margin: 0; } }
#HeaderArea2 .gMenu ul.mainM { position: relative; display: flex; justify-content: flex-end; z-index: 999; top: -3.3em; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.mainM { position: absolute; right: 0; width: 50%; } }
#HeaderArea2 .gMenu ul.mainM li:nth-child(2) { background: #CC0000; width: 8.4em; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.mainM li:nth-child(2) { width: calc((100% - 4em) / 2); } }
#HeaderArea2 .gMenu ul.mainM li:nth-child(2) a { position: relative; z-index: 9999; display: block; text-align: center; color: #FFFFFF; font-size: 90%; padding: .7em 0; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) { _background: rgba(0, 0, 0, 0.4); position: relative; width: 4.5em; text-align: center; padding-top: .4em; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) .menu-trigger { position: relative; display: inline-block; transition: all .4s; z-index: 9999; width: 1.6em; height: 2em; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) .menu-trigger span { display: inline-block; transition: all .4s; box-sizing: border-box; position: absolute; width: 100%; height: 2px; background-color: #0C0C0C; border-radius: 2px; left: 0; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) .menu-trigger span:nth-of-type(1) { top: .6em; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) .menu-trigger span:nth-of-type(2) { top: 50%; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) .menu-trigger span:nth-of-type(3) { bottom: .5em; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) .menu-trigger.active span:nth-of-type(1) { top: .4em; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) .menu-trigger.active span:nth-of-type(2) { width: 60%; left: 20%; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) .menu-trigger.active span:nth-of-type(3) { bottom: .3em; }
#HeaderArea2 .gMenu ul.subM { position: absolute; top: 0; right: 0; background: rgba(0, 0, 0, 0.8); z-index: 888; opacity: 0; height: 0; min-height: 0; width: 100%; overflow: hidden; padding: 0; transition: all .4s; display: flex; justify-content: center; flex-wrap: wrap; align-items: flex-start; scrollbar-width: none; }
#HeaderArea2 .gMenu ul.subM.active { opacity: 1; height: auto; min-height: auto; padding: 3em 0 6em; overflow-y: scroll; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.subM.active { height: 100vmax; min-height: 100vmax; } }
#HeaderArea2 .gMenu ul.subM li { width: 45%; padding: 0 1em 1em; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.subM li { width: 90%; padding: 0 0 1.5em; } }
#HeaderArea2 .gMenu ul.subM li .cate { position: relative; color: #FFFFFF; border-bottom: 1px solid #B3B3B3; padding-bottom: .3em; margin-bottom: .5em; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.subM li .cate.spf a { display: flex; align-items: baseline; } }
#HeaderArea2 .gMenu ul.subM li .cate a { color: #FFFFFF; }
#HeaderArea2 .gMenu ul.subM li .cate .jp { display: block; font-size: 80%; line-height: 1; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.subM li .cate .jp { order: 2; padding-left: 1em; } }
#HeaderArea2 .gMenu ul.subM li .cate .en { display: block; font-size: 155%; line-height: 1.2; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.subM li .cate .en { order: 1; } }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.subM li .linkB { display: flex; flex-wrap: wrap; align-items: center; } }
#HeaderArea2 .gMenu ul.subM li .linkB a { display: block; text-align: center; color: #FFFFFF; font-size: 110%; font-weight: 500; padding: .3em 0; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.subM li .linkB a { width: 50%; font-size: 100%; line-height: 1.2; padding: .6em 0; } }

/* [s5] Breadcrumb Trail
=========================================================================================== */
#TopicPath { position: relative; }
#TopicPath ul { width: 90%; max-width: 1280px; margin: 0 auto; padding: .8em 0 .6em; }
#TopicPath ul:after { content: ""; display: block; clear: both; }
#TopicPath ul li { float: left; padding: 0 0 0 20px; font-size: 67%; background: url("../img/common/icon_topic_path_transition_hd.gif") no-repeat 7px center; background-size: 6px 6px; -moz-background-size: 6px 6px; -webkit-background-size: 6px 6px; -o-background-size: 6px 6px; -ms-background-size: 6px 6px; word-break: keep-all; }
#TopicPath ul li.FirstItem { padding: 0; background: none; }
#TopicPath ul li a { color: #CC0000; }
#TopicPath ul li a:link, #TopicPath ul li a:visited { text-decoration: none; }
#TopicPath ul li a:hover, #TopicPath ul li a:active { text-decoration: underline; }
#TopicPath ul li strong { font-weight: 500; color: #333; }

main { position: relative; font-size: 1.6vw; }
@media screen and (min-width: 1280px) { main { font-size: 20.4px; } }
@media screen and (max-width: 599px) { main { font-size: 3.2vw; } }
main section { position: relative; }
main section#topMainSct .inner { position: relative; }
main section#topMainSct .inner .slider-Top { position: relative; }
main section#topMainSct .inner .slider-Top ul { position: relative; }
main section#topMainSct .inner .slider-Top ul li { position: relative; width: 100%; height: auto; aspect-ratio: 9 / 5; }
@media screen and (min-width: 1280px) { main section#topMainSct .inner .slider-Top ul li { max-height: 34em; } }
@media screen and (max-width: 599px) { main section#topMainSct .inner .slider-Top ul li { aspect-ratio: 9 / 7; } }
main section#topMainSct .inner .slider-Top ul li img { object-fit: cover; object-position: center center; width: 100%; height: auto; aspect-ratio: 9 / 5; }
@media screen and (min-width: 1280px) { main section#topMainSct .inner .slider-Top ul li img { max-height: 34em; } }
@media screen and (max-width: 599px) { main section#topMainSct .inner .slider-Top ul li img { aspect-ratio: 9 / 7; } }
main section#topMainSct .inner .slider-Top ul li.add-animation { animation: zoomUp 2.8s ease-out forwards; }
@media screen and (min-width: 1280px) { main section#topMainSct .inner .slider-Top ul li:nth-child(2) img, main section#topMainSct .inner .slider-Top ul li:nth-child(10) img { object-position: center 10%; } }
@media screen and (min-width: 1280px) { main section#topMainSct .inner .slider-Top ul li:nth-child(5) img { object-position: center 5%; } }
main section#topMainSct .inner .slider-Top ul .prev { position: absolute; z-index: 500; cursor: pointer; top: 50%; left: 2%; transform: translateY(-50%); transition: all .2s; }
@media screen and (max-width: 599px) { main section#topMainSct .inner .slider-Top ul .prev { top: 56%; } }
main section#topMainSct .inner .slider-Top ul .prev img { position: relative; transform: rotate(180deg); width: 1.5em; height: auto; }
main section#topMainSct .inner .slider-Top ul .prev:hover { opacity: .6; }
main section#topMainSct .inner .slider-Top ul .next { position: absolute; z-index: 500; cursor: pointer; top: 50%; right: 2%; transform: translateY(-50%); transition: all .2s; }
@media screen and (max-width: 599px) { main section#topMainSct .inner .slider-Top ul .next { top: 56%; } }
main section#topMainSct .inner .slider-Top ul .next img { width: 1.5em; height: auto; }
main section#topMainSct .inner .slider-Top ul .next:hover { opacity: .6; }
main section#topMainSct .inner .txtB { position: absolute; top: 50%; transform: translateY(-50%); width: 100%; text-align: center; color: #FFFFFF; }
main section#topMainSct .inner .txtB.fadeUp { opacity: 0; transition: all 1.5s; }
main section#topMainSct .inner .txtB.fadeUp.start { opacity: 1; }
main section#topMainSct .inner .txtB .jp { font-size: 175%; font-weight: 600; letter-spacing: .15em; line-height: 1.4; text-shadow: 1px 1px 8px black, 1px 1px 8px black; margin-bottom: .6em; }
@media screen and (max-width: 599px) { main section#topMainSct .inner .txtB .jp { white-space: nowrap; font-size: 165%; line-height: 1.5; } }
main section#topMainSct .inner .txtB .jp2 { position: relative; font-size: 115%; font-weight: 500; letter-spacing: .15em; line-height: 1.4; text-shadow: 1px 1px 8px black, 1px 1px 8px black; }
@media screen and (max-width: 599px) { main section#topMainSct .inner .txtB .jp2 { display: inline-block; white-space: nowrap; font-size: 100%; line-height: 1.5; } }
main section#topMainSct .inner .txtB .jp2::before { content: "-"; }
@media screen and (max-width: 599px) { main section#topMainSct .inner .txtB .jp2::before { position: absolute; left: -1em; top: 50%; transform: translateY(-50%); } }
main section#topMainSct .inner .txtB .jp2::after { content: "-"; }
@media screen and (max-width: 599px) { main section#topMainSct .inner .txtB .jp2::after { position: absolute; right: -1em; top: 50%; transform: translateY(-50%); } }
main section#topTopicsSct { padding: 3em 10%; }
@media screen and (max-width: 599px) { main section#topTopicsSct { padding: 4em 7%; } }
main section#topTopicsSct h2 { position: relative; display: block; text-align: center; margin-bottom: 2em; }
main section#topTopicsSct h2 p { position: relative; display: inline-block; padding-left: 2em; }
main section#topTopicsSct h2 p .en { display: inline-block; font-size: 220%; letter-spacing: .1em; }
main section#topTopicsSct h2 p .jp { display: inline-block; font-weight: 500; letter-spacing: .15em; }
main section#topTopicsSct h2 p::before { content: "▲"; position: absolute; left: 0; top: 0; color: #CC0000; font-size: 150%; transform: rotate(90deg); }
main section#topTopicsSct .postB { margin: 0 auto 2em; max-width: 1280px !important; }
main section#topTopicsSct .postB li { position: relative; display: flex; align-items: center; border-top: 1px solid #B3B3B3; padding: .6em 1em; }
@media screen and (max-width: 599px) { main section#topTopicsSct .postB li { padding: .6em .5em; } }
main section#topTopicsSct .postB li .date { width: 14%; font-size: 80%; font-weight: 500; line-height: 2; padding-right: 1.2em; }
@media screen and (max-width: 599px) { main section#topTopicsSct .postB li .date { width: 22%; } }
main section#topTopicsSct .postB li .ttl { width: 86%; }
@media screen and (max-width: 599px) { main section#topTopicsSct .postB li .ttl { width: 78%; } }
main section#topTopicsSct .postB li .ttl a { position: relative; display: inline-block; color: #CC0000; line-height: 1.5; padding-right: 1.5em; transition: all .2s; }
@media screen and (max-width: 599px) { main section#topTopicsSct .postB li .ttl a { padding-right: 1.8em; } }
main section#topTopicsSct .postB li .ttl a::after { content: ""; position: absolute; top: 50%; right: 0; transform: translateY(-40%); width: 1em; height: 1em; margin-left: .5em; background: url("../img/icn_arrow_box.svg") no-repeat center center/contain; }
@media screen and (max-width: 599px) { main section#topTopicsSct .postB li .ttl a::after { position: absolute; right: .3em; top: 50%; transform: translateY(-50%); } }
main section#topTopicsSct .postB li .ttl a:hover { opacity: 1; text-decoration: underline; }
main section#topTopicsSct .postB li .ttl a.nolink { color: #0C0C0C; pointer-events: none; }
main section#topTopicsSct .postB li .ttl a.nolink::after { display: none; }
main section#topTopicsSct .postB li:last-child { border-bottom: 1px solid #B3B3B3; }
main section#topTopicsSct .btn { text-align: center; }
main section#topTopicsSct .btn a { position: relative; display: inline-block; border: 2px solid #0C0C0C; border-radius: .3em; font-weight: 700; letter-spacing: .15em; padding: .3em 3em .3em 1.5em; }
main section#topTopicsSct .btn a::after { content: ""; position: absolute; right: 1.5em; top: 50%; width: .6em; height: .6em; border: 2px solid #0C0C0C; transform: rotate(45deg) translateY(-50%); border-bottom: transparent; border-left: transparent; }
main section#topTopicsSct .btn a:hover { opacity: 1; background: #CC0000; color: #FFFFFF; border: 2px solid #CC0000; transition: all .2s; }
main section#topTopicsSct .btn a:hover::after { border: 2px solid #FFFFFF; border-bottom: transparent; border-left: transparent; }
main section#topHeadSct { background: url("../img/bar01.webp") no-repeat left top; background-size: 8em; padding: 2.5em 5% 6em 10%; border-top: 10px solid #CC0000; border-bottom: 8px solid #CC0000; }
@media screen and (max-width: 599px) { main section#topHeadSct { padding: 5em 7%; background-size: 5em; } }
main section#topHeadSct .mw { display: flex; justify-content: center; margin: 0 auto; max-width: 1280px; }
@media screen and (max-width: 599px) { main section#topHeadSct .mw { display: block; } }
main section#topHeadSct .mw .box1 { width: 55%; padding-top: 4em; }
@media screen and (max-width: 599px) { main section#topHeadSct .mw .box1 { width: 100%; padding-top: 0; margin-bottom: 3em; } }
main section#topHeadSct .mw .box1 .head { display: block; font-size: 150%; margin-bottom: 1.2em; }
@media screen and (max-width: 599px) { main section#topHeadSct .mw .box1 .head { font-size: 180%; margin-bottom: .8em; } }
main section#topHeadSct .mw .box1 .head span { display: block; font-weight: 700; letter-spacing: .17em; line-height: 1.3; }
@media screen and (max-width: 599px) { main section#topHeadSct .mw .box1 .head span { margin-bottom: .5em; } }
main section#topHeadSct .mw .box1 .head small { display: block; font-weight: 700; letter-spacing: .1em; }
@media screen and (max-width: 599px) { main section#topHeadSct .mw .box1 .head small { line-height: 1.5; } }
main section#topHeadSct .mw .box1 .txt { display: block; width: 85%; font-size: 90%; letter-spacing: .03em; line-height: 2.2; }
@media screen and (max-width: 599px) { main section#topHeadSct .mw .box1 .txt { line-height: 2; width: 100%; } }
main section#topHeadSct .mw .box2 { width: 45%; padding-top: 4em; }
@media screen and (max-width: 599px) { main section#topHeadSct .mw .box2 { width: 100%; padding-top: 0; } }
main section#topHeadSct .mw .box2 .bar { background: #CC0000; color: #FFFFFF; font-size: 150%; font-weight: 700; text-align: center; width: 90%; margin-bottom: .5em; }
@media screen and (max-width: 599px) { main section#topHeadSct .mw .box2 .bar { font-size: 180%; width: 100%; margin-bottom: .5em; } }
main section#topHeadSct .mw .box2 .cp { text-align: center; width: 91%; line-height: 1.4; margin-bottom: .8em; }
@media screen and (max-width: 599px) { main section#topHeadSct .mw .box2 .cp { width: 100%; font-size: 115%; line-height: 1.5; text-align: center; } }
main section#topHeadSct .mw .box2 .illst { display: block; width: 100%; height: auto; }
@media screen and (max-width: 599px) { main section#topHeadSct .mw .box2 .illst { position: relative; width: 106%; } }
main section#top50thSct { background: url("../img/top_50th_bg1.webp") no-repeat right bottom, url("../img/top_50th_bg2.webp") no-repeat left bottom; background-size: contain, auto 95%; padding: 3em 10% 3.8em; border-bottom: 8px solid #CC0000; }
@media screen and (max-width: 599px) { main section#top50thSct { background-size: 50%, 30%; padding: 2.5em 7% 2.8em; } }
main section#top50thSct .inner { text-align: center; }
main section#top50thSct .inner .txtB { display: inline-block; text-align: left; padding: .3em 0 .3em 5%; }
@media screen and (max-width: 599px) { main section#top50thSct .inner .txtB { width: 100%; padding: 1.5em 0 1em; border-left: none; text-align: center; } }
main section#top50thSct .inner .txtB .en { position: relative; display: inline-block; color: #CC0000; font-size: 115%; padding-right: 2em; }
@media screen and (max-width: 599px) { main section#top50thSct .inner .txtB .en { margin-bottom: .2em; } }
main section#top50thSct .inner .txtB .en::after { content: ""; position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 1.4em; height: 2px; background: #CC0000; }
main section#top50thSct .inner .txtB .jp { color: #CC0000; font-size: 200%; font-weight: 700; letter-spacing: .08em; margin-bottom: .2em; }
@media screen and (max-width: 599px) { main section#top50thSct .inner .txtB .jp { display: block; font-size: 225%; line-height: 1.4; margin-bottom: .4em; } }
main section#top50thSct .inner .txtB .txt { display: block; letter-spacing: .1em; line-height: 1.6; margin-bottom: 1.2em; }
@media screen and (max-width: 599px) { main section#top50thSct .inner .txtB .txt { margin-bottom: 1.5em; } }
main section#top50thSct .inner .txtB .btn a { position: relative; display: inline-block; border: 2px solid #CC0000; color: #CC0000; font-weight: 700; letter-spacing: .08em; padding: .3em 3.3em .3em 1.5em; border-radius: .3em; }
@media screen and (max-width: 599px) { main section#top50thSct .inner .txtB .btn a { padding: .6em 3.3em .6em 1.5em; } }
main section#top50thSct .inner .txtB .btn a::after { content: ""; position: absolute; right: 1.5em; top: 50%; transform: translateY(-50%) rotate(45deg); width: .6em; height: .6em; border: 2px solid #CC0000; border-left: transparent !important; border-bottom: transparent !important; }
main section#top50thSct .inner .txtB .btn a:hover { opacity: 1; background: #CC0000; color: #FFFFFF; transition: all .2s ease-out; }
main section#top50thSct .inner .txtB .btn a:hover::after { border: 2px solid #FFFFFF; }
main section#topPasSct { padding: 4em 2% 1em; }
main section#topPasSct h2 { position: relative; display: block; text-align: center; margin-bottom: 2.2em; }
main section#topPasSct h2 .en { display: inline-block; font-size: 220%; letter-spacing: .02em; margin-bottom: .2em; border-bottom: 1px solid #CC0000; }
main section#topPasSct h2 .en::before { content: "▲"; position: absolute; left: -1.3em; top: 15%; color: #CC0000; font-size: 80%; transform: rotate(90deg); }
main section#topPasSct h2 .jp { font-weight: 500; }
main section#topPasSct .listB { position: relative; display: flex; justify-content: center; flex-wrap: wrap; margin: 0 auto 2em; max-width: 1024px; }
main section#topPasSct .listB li { width: calc(100% / 3); padding: 0 1%; margin-bottom: 1.5em; }
@media screen and (max-width: 599px) { main section#topPasSct .listB li { width: 50%; } }
main section#topPasSct .listB li a { position: relative; display: block; overflow: hidden; }
main section#topPasSct .listB li a img { width: 100%; height: auto; }
main section#topPasSct .listB li a .ttl { position: relative; z-index: 5; background: #CC0000; color: #FFFFFF; border: 2px solid #CC0000; text-align: center; font-weight: 700; letter-spacing: .1em; padding: .7em 0; }
@media screen and (max-width: 599px) { main section#topPasSct .listB li a .ttl.spl2 { line-height: 1.2; padding: .4em 0; } }
main section#topPasSct .listB li a .ttl.line2 { line-height: 1.2; padding: .4em 0; }
main section#topPasSct .listB li a:hover { opacity: 1; }
main section#topPasSct .listB li a:hover .bg { opacity: .8; transform: scale(1.06); transform-origin: center center; transition: transform 1s ease-out; }
main section#topPasSct .listB li a:hover .ttl { background: #FFFFFF; color: #CC0000; transition: all .2s ease-out; }
main section#topPasSct .catalogB { margin: 0 auto 3em; max-width: 1024px; }
main section#topPasSct .catalogB img { display: block; width: 50%; height: auto; margin: 0 auto .8em; }
@media screen and (max-width: 599px) { main section#topPasSct .catalogB img { width: 90%; margin: 0 auto 1.2em; } }
main section#topPasSct .catalogB .btn { text-align: center; }
main section#topPasSct .catalogB .btn a { display: inline-block; background: #CC0000; color: #FFFFFF; font-weight: 700; letter-spacing: .1em; padding: .7em 3em; border: 2px solid #CC0000; }
@media screen and (max-width: 599px) { main section#topPasSct .catalogB .btn a { padding: .9em 4em; } }
main section#topPasSct .catalogB .btn a:hover { opacity: 1; background: #FFFFFF; color: #CC0000; transition: all .2s ease-out; }
main section#topPasSct .linkList { margin: 0 auto 4em; display: flex; justify-content: space-between; width: 86%; max-width: 960px; }
@media screen and (max-width: 599px) { main section#topPasSct .linkList { flex-wrap: wrap; justify-content: center; } }
main section#topPasSct .linkList li { width: 30%; }
@media screen and (max-width: 599px) { main section#topPasSct .linkList li { width: 70%; margin-bottom: .8em; } }
main section#topPasSct .linkList li a { position: relative; display: block; border: 2px solid #737373; }
main section#topPasSct .linkList li a:hover { border-color: #FA000F; }
main section#topPasSct .linkList li a img { width: 100%; height: auto; }
main section#topPasSct .linkList li a::after { content: ""; position: absolute; z-index: 5; right: 3.5%; bottom: 3.5%; width: .7em; height: .9em; background: url("../../img/icn_arrow_box2.svg") no-repeat center center/contain; }
@media screen and (max-width: 599px) { main section#topPasSct .linkList li a::after { width: 1.2em; height: 1.4em; } }
main section#topPasSct .linkList li .atn { position: relative; padding: .3em 1% 0 6%; font-size: 70%; line-height: 1.4; }
main section#topPasSct .linkList li .atn::before { content: "※"; position: absolute; top: .3em; left: 1%; }
main section#topCompanySct { padding: 3em 0; background-image: linear-gradient(0deg, #dddddd, #ffffff); }
@media screen and (max-width: 599px) { main section#topCompanySct { padding: 4em 7% 3em; } }
main section#topCompanySct::after { content: ""; position: absolute; z-index: 1; top: 0; right: 0; background: #FFFFFF; width: 28%; height: 100%; }
main section#topCompanySct .inner { position: relative; z-index: 5; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; width: 100%; max-width: 1260px; }
@media screen and (max-width: 599px) { main section#topCompanySct .inner { display: block; } }
main section#topCompanySct .inner .txtB { padding: .5em 3% 0 8%; width: 62%; }
@media screen and (max-width: 599px) { main section#topCompanySct .inner .txtB { padding: 0 0 1em; width: 100%; } }
main section#topCompanySct .inner .txtB h2 { display: block; margin-bottom: .8em; }
main section#topCompanySct .inner .txtB h2 .jp { font-weight: 500; letter-spacing: .1em; }
main section#topCompanySct .inner .txtB h2 .en { font-size: 300%; }
main section#topCompanySct .inner .txtB .txt { font-size: 80%; line-height: 1.6; width: 98.2%; padding-bottom: 1.2em; border-bottom: 2px solid #0C0C0C; margin-bottom: 1.5em; }
@media screen and (max-width: 599px) { main section#topCompanySct .inner .txtB .txt { width: 100%; font-size: 90%; border-bottom: none; margin-bottom: 25em; } }
main section#topCompanySct .inner .txtB .sMenu { position: relative; display: flex; flex-wrap: wrap; }
@media screen and (max-width: 599px) { main section#topCompanySct .inner .txtB .sMenu { justify-content: space-between; } }
main section#topCompanySct .inner .txtB .sMenu li { padding: 0 .7rem .8rem 0; width: calc(100%/3); }
@media screen and (max-width: 599px) { main section#topCompanySct .inner .txtB .sMenu li { width: 48.2%; padding: 0 0 1em 0; } }
main section#topCompanySct .inner .txtB .sMenu li a { position: relative; display: block; background: #FFFFFF url("../img/icn_c02.webp") no-repeat 0 center/4em; font-size: 70%; font-weight: 500; letter-spacing: .02rem; line-height: 6em; padding: 0 13px 0 3.9em; height: 6em; box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.3); white-space: nowrap; }
@media screen and (max-width: 599px) { main section#topCompanySct .inner .txtB .sMenu li a { display: block; line-height: 5.5em; height: 5.5em; font-size: 90%; background-size: 3.4em; background-position: .2em center; padding: 0 13px 0 3.6em; } }
main section#topCompanySct .inner .txtB .sMenu li a.l2 { padding-top: 1.5em; line-height: 1.5em; }
@media screen and (max-width: 599px) { main section#topCompanySct .inner .txtB .sMenu li a.l2 { padding-top: 1.2em; } }
main section#topCompanySct .inner .txtB .sMenu li a::before { content: ""; position: absolute; right: 5.5%; top: 50%; transform: translateY(-50%) rotate(45deg); width: .4rem; height: .4rem; border: 1px solid #CC0000; border-left: transparent !important; border-bottom: transparent !important; }
main section#topCompanySct .inner .txtB .sMenu li a:hover { opacity: 1; color: #CC0000; box-shadow: none; transition: all .2s ease-out; }
main section#topCompanySct .inner .txtB .sMenu li a:hover::before { border: 2px solid #CC0000; }
main section#topCompanySct .inner .txtB .sMenu li:nth-child(2) a { background-image: url("../img/icn_c01.webp"); }
main section#topCompanySct .inner .txtB .sMenu li:nth-child(3) a { background-image: url("../img/icn_c07.webp"); }
main section#topCompanySct .inner .txtB .sMenu li:nth-child(4) a { background-image: url("../img/icn_c03.webp"); }
main section#topCompanySct .inner .txtB .sMenu li:nth-child(5) a { background-image: url("../img/icn_c08.webp"); }
main section#topCompanySct .inner .txtB .sMenu li:nth-child(6) a { background-image: url("../img/icn_c09.webp"); }
main section#topCompanySct .inner .txtB .sMenu li:nth-child(7) a { background-image: url("../img/icn_c04.webp"); }
main section#topCompanySct .inner .txtB .sMenu li:nth-child(8) a { background-image: url("../img/icn_c05.webp"); }
main section#topCompanySct .inner .txtB .sMenu li:nth-child(9) a { background-image: url("../img/icn_c06.webp"); }
main section#topCompanySct .inner .imgB { width: 38%; padding-bottom: 2em; }
@media screen and (max-width: 599px) { main section#topCompanySct .inner .imgB { position: absolute; top: 14em; left: 0; width: 100%; padding-bottom: 0; } }
main section#topCompanySct .inner .imgB img { object-fit: cover; width: 100%; height: 21em; object-position: 40% top; }
@media screen and (max-width: 599px) { main section#topCompanySct .inner .imgB img { height: 20em; } }
main section#topRecruitSct { padding-bottom: 4em; }
main section#topRecruitSct .bgC { padding: 6em 2% 0 20%; background-image: linear-gradient(90deg, #ff979d, #cc0000 93%, #ffffff 93%, #ffffff); }
@media screen and (max-width: 599px) { main section#topRecruitSct .bgC { padding: 5em 0 0 7%; } }
main section#topRecruitSct .bgC .inner { position: relative; margin: 0 auto; max-width: 1024px; }
@media screen and (max-width: 599px) { main section#topRecruitSct .bgC .inner { display: block; } }
main section#topRecruitSct .bgC .inner .txtB { padding: 0 2%; color: #FFFFFF; display: flex; align-items: center; }
main section#topRecruitSct .bgC .inner .txtB h2 { display: block; margin-right: .7em; }
main section#topRecruitSct .bgC .inner .txtB h2 .jp { font-size: 210%; font-weight: 500; line-height: 1.4; letter-spacing: .12em; }
main section#topRecruitSct .bgC .inner .txtB .btn a { position: relative; display: inline-block; background: #FFFFFF; color: #0C0C0C; font-size: 90%; font-weight: 500; padding: .9em 4.5em .9em 3.5em; border: 2px solid #FFFFFF; }
@media screen and (max-width: 599px) { main section#topRecruitSct .bgC .inner .txtB .btn a { font-size: 100%; padding: .9em 4em .9em 3em; margin-left: .5em; } }
main section#topRecruitSct .bgC .inner .txtB .btn a::before { content: ""; position: absolute; right: 10%; top: 50%; transform: translateY(-50%) rotate(45deg); width: .5em; height: .5em; border: 2px solid #0C0C0C; border-left: transparent !important; border-bottom: transparent !important; }
main section#topRecruitSct .bgC .inner .txtB .btn a:hover { opacity: 1; background: #CC0000; color: #FFFFFF; transition: all .2s ease-out; }
main section#topRecruitSct .bgC .inner .txtB .btn a:hover::before { border: 2px solid #FFFFFF; }
main section#topRecruitSct .bgC .inner .imgB { position: relative; margin-top: -1.5em; bottom: -2.5em; }
main section#topRecruitSct .bgC .inner .imgB img { width: 100%; height: auto; }
@media screen and (max-width: 599px) { main section#topRecruitSct .bgC .inner .imgB img { object-fit: cover; object-position: 84% top; height: 13em; } }
main section#topRecruitSct .bgC .inner .imgB .en { position: absolute; top: .25em; left: .45em; color: #CC0000; font-size: 250%; }
@media screen and (max-width: 599px) { main section#topRecruitSct .bgC .inner .imgB .en { font-size: 200%; top: .15em; } }
main section#cmnFtSiteMap { padding: 5em 5% 3em; }
@media screen and (min-width: 1450px) { main section#cmnFtSiteMap { padding: 5em 0 3em; margin: 0 auto; max-width: 1280px; } }
main section#cmnFtSiteMap .comp { position: relative; display: inline-block; font-weight: 700; line-height: 1.6; padding: 0 .8em 0 .9em; border-left: 4px solid #CC0000; margin-bottom: 1em; }
main section#cmnFtSiteMap .comp::after { content: ""; position: absolute; right: 0; top: 50%; transform: translateY(-50%) rotate(45deg); width: .6em; height: .6em; border: 1px solid #CC0000; border-left: transparent !important; border-bottom: transparent !important; }
main section#cmnFtSiteMap ul { position: relative; display: flex; font-size: 70%; letter-spacing: 0; padding-left: 1.7em; }
@media screen and (max-width: 599px) { main section#cmnFtSiteMap ul { flex-wrap: wrap; font-size: 75%; } }
main section#cmnFtSiteMap ul li { width: calc(100%/5); }
@media screen and (max-width: 599px) { main section#cmnFtSiteMap ul li { width: 50% !important; margin-bottom: 1em; } }
main section#cmnFtSiteMap ul li .ttl { font-weight: 500; margin-bottom: .8em; }
main section#cmnFtSiteMap ul li .link { display: block; line-height: 1.4; padding-bottom: .8em; }
main section#cmnFtSiteMap ul li .link a { color: #CC0000; }
main section#cmnFtSiteMap ul li:nth-child(1) { width: 20%; }
@media screen and (max-width: 599px) { main section#cmnFtSiteMap ul li:nth-child(1) { order: 1; } }
main section#cmnFtSiteMap ul li:nth-child(2) { width: 19%; }
@media screen and (max-width: 599px) { main section#cmnFtSiteMap ul li:nth-child(2) { order: 2; } }
main section#cmnFtSiteMap ul li:nth-child(3) { width: 17%; }
@media screen and (max-width: 599px) { main section#cmnFtSiteMap ul li:nth-child(3) { order: 3; } }
main section#cmnFtSiteMap ul li:nth-child(4) { width: 12%; }
@media screen and (max-width: 599px) { main section#cmnFtSiteMap ul li:nth-child(4) { order: 5; } }
main section#cmnFtSiteMap ul li:nth-child(5) { width: 22%; }
@media screen and (max-width: 599px) { main section#cmnFtSiteMap ul li:nth-child(5) { order: 6; } }
main section#cmnFtSiteMap ul li:nth-child(6) { width: 10%; }
@media screen and (max-width: 599px) { main section#cmnFtSiteMap ul li:nth-child(6) { order: 4; } }

@keyframes zoomUp { 0% { transform-origin: center center; transform: scale(1); }
  100% { transform: scale(1.1);
    /* 拡大率 */ } }
#footer { position: relative; }
#footer #FooterArea.Fix { min-width: inherit !important; }
#footer #Copyright { padding-top: 4px; }
@media screen and (max-width: 599px) { #footer #Footer2 { position: absolute; right: 0; } }
#footer #FooterPageTop { position: fixed; z-index: 995; bottom: 0; top: inherit; right: 5% !important; opacity: 0; }
@media screen and (max-width: 599px) { #footer #FooterPageTop { right: 20px !important; } }
@media screen and (min-width: 1440px) { #footer #FooterPageTop { right: calc((100% - 1280px) / 2) !important; } }
#footer #FooterPageTop.foot { position: absolute; right: 0 !important; }
#footer #FooterPageTop.fade { opacity: 1; }
