html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    outline: 0 !important;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
body {
    line-height: 1;
    /*letter-spacing: 0.12em;*/
    /*word-spacing: 0.16em;*/
}
p {
    /*margin-bottom: 2em;*/
}
.Mob {
    display: block;
}
.Tab {
    display: none;
}
.Top {
    display: none;
}
.MobOnly {
    display: block;
}
.TabOnly {
    display: none;
}
.TopOnly {
    display: none;
}
@media (min-width: 768px) {
    .Mob {
        display: block;
    }
    .Tab {
        display: block !important;
    }
    .Top {
        display: none;
    }
    .MobOnly {
        display: none;
    }
    .TabOnly {
        display: block;
    }
    .TopOnly {
        display: none;
    }
}
@media (min-width: 1300px) {
    .Mob {
        display: block;
    }
    .Tab {
        display: block;
    }
    .Top {
        display: block !important;
    }
    .MobOnly {
        display: none;
    }
    .TabOnly {
        display: none;
    }
    .TopOnly {
        display: block;
    }
}

@font-face {
    font-family: 'Helvetica Roman';
    src: url('../font/Helvetica Neue LT Std 55 Roman.woff') format("woff"),
           url('../font/Helvetica Neue LT Std 55 Roman.ttf') format("truetype"),
           url('../font/Helvetica Neue LT Std 55 Roman.eot') format("embedded-opentype");
}
@font-face {
    font-family: 'Helvetica Bold';
    src: url('../font/Helvetica Neue LT Std 75 Bold.woff') format("woff"),
           url('../font/Helvetica Neue LT Std 75 Bold.ttf') format("truetype"),
           url('../font/Helvetica Neue LT Std 75 Bold.eot') format("embedded-opentype");
}
@font-face {
    font-family: 'Helvetica Heavy';
    src: url('../font/Helvetica Neue LT Std 85 Heavy.woff') format("woff"),
           url('../font/Helvetica Neue LT Std 85 Heavy.ttf') format("truetype"),
           url('../font/Helvetica Neue LT Std 85 Heavy.eot') format("embedded-opentype");
}

/* HTML5 display-role reset for older browsers */
.noto-sans JP-Noto {
    font-family: 'Noto Sans JP';
    font-optical-sizing: auto;
    font-weight: normal;
    font-style: normal;
}
.ColorPrimary {
    color: #151515;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.ColorPrimary a {
    color: #151515;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.ColorPrimary a:link {
    color: #151515;
}
.ColorPrimary a:visited {
    color: #151515;
}
.ColorPrimary a:hover {
    color: #0076DE;
}
.ColorPrimary a:active {
    color: #005eb2;
}
.ColorPrimary a:focus {
    color: #0076DE;
}
.ColorSecondary {
    color: #0076DE;
}
.ColorRed {
    color: #ff0000;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.FontBold {
    font-weight: bold;
}
.FontHeavy {
    font-weight: bolder;
}

.FontDisplay1 {
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    font-size: 40px;
    line-height: 40px;
    font-weight: 800;
}
.FontDisplay2 {
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    font-size: 34px;
    line-height: 34px;
    font-weight: bold;
}
.FontDisplay3 {
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    font-size: 30px;
    line-height: 30px;
    font-weight: bold;
}
.FontDisplay4 {
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    font-size: 24px;
    line-height: 24px;
    font-weight: bold;
}
.FontH1 {
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    font-size: 24px;
    line-height: 24px;
    font-weight: bold;

}
.FontH2 {
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    font-size: 24px;
    line-height: 24px;
    text-decoration: none;
    font-weight: bold;
}
.FontH3 {
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    font-size: 18px;
    line-height: 18px;
    font-weight: bold;
}
.FontH4 {
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    font-size: 16px;
    line-height: 16px;
    font-weight: bold;
}
.FontH5 {
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    font-size: 16px;
    line-height: 16px;
    font-weight: bold;
}
.FontH6 {
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    font-size: 16px;
    line-height: 16px;
    font-weight: bold;
}
.FontLead {
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    font-size: 18px;
    line-height: 24px;
}
.FontBody {
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    font-size: 16px;
    line-height: 20px;
}
.FontSmall {
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    font-size: 14px;
    line-height: 18px;
}
.Font404 {
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    font-size: 140px;
    line-height: 130px;
    font-weight: 800;
}
.TextCenter {
    text-align: center;
}
.TextUp {
    text-transform: uppercase;
}

@media (min-width: 768px) {
    .FontDisplay1 {
        font-size: 70px;
        line-height: 70px;
    }
    .FontDisplay2 {
        font-size: 60px;
        line-height: 60px;
    }
    .FontDisplay3 {
        font-size: 50px;
        line-height: 50px;
    }
    .FontDisplay4 {
        font-size: 40px;
        line-height: 40px;
    }
    .FontH1 {
        font-size: 34px;
        line-height: 34px;
    }
    .FontH2 {
        font-size: 34px;
        line-height: 34px;
    }
    .FontH3 {
        font-size: 20px;
        line-height: 20px;
    }
    .FontH4 {
        font-size: 18px;
        line-height: 18px;
    }
    .FontH5 {
        font-size: 16px;
        line-height: 16px;
    }
    .FontH6 {
        font-size: 16px;
        line-height: 16px;
    }
    .FontLead {
        font-size: 18px;
        line-height: 24px;
    }
    .FontBody {
        font-size: 16px;
        line-height: 20px;
    }
    .FontSmall {
        font-size: 14px;
        line-height: 18px;
    }
    .Font404 {
        font-size: 200px;
        line-height: 180px;
    }
}
@media (min-width: 1300px) {
    .FontDisplay1 {
        font-size: 80px;
        line-height: 80px;
    }
    .FontDisplay2 {
        font-size: 70px;
        line-height: 70px;
    }
    .FontDisplay3 {
        font-size: 60px;
        line-height: 60px;
    }
    .FontDisplay4 {
        font-size: 50px;
        line-height: 50px;
    }
    .FontH1 {
        font-size: 48px;
        line-height: 48px;
    }
    .FontH2 {
        font-size: 34px;
        line-height: 34px;
    }
    .FontH3 {
        font-size: 24px;
        line-height: 24px;
    }
    .FontH4 {
        font-size: 20px;
        line-height: 20px;
    }
    .FontH5 {
        font-size: 18px;
        line-height: 18px;
    }
    .FontH6 {
        font-size: 16px;
        line-height: 16px;
    }
    .FontLead {
        font-size: 20px;
        line-height: 26px;
    }
    .FontBody {
        font-size: 16px;
        line-height: 20px;
    }
    .FontSmall {
        font-size: 14px;
        line-height: 18px;
    }
    .Font404 {
        font-size: 250px;
        line-height: 210px;
    }
}
.BackToTop {
    position: fixed;
    z-index: 5;
    right: 8px;
    bottom: 8px;
    width: 40px;
    height: 40px;
    border-radius: 100%;
    border: solid 1px #d9dcdd;
    background-repeat: no-repeat;
    background-size: 70%;
    background-position: center center;
    background-color: #fafafa;
    background-image: url(../img/icon-top.svg);
    background-position: center center;
    background-size: 25px 25px;
    box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.15);
    -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.15);
    -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.15);
}
.ButtonGroup {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 60px;
    margin-bottom: 60px;
    width: 100%;
}
.ButtonGroup .ButtonUnit {
    position: relative;
    text-decoration: none;
}
.ButtonGroup .ButtonSmall {
    padding: 14px 22px 14px 22px;
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    border-radius: 100px;
}
.ButtonGroup .ButtonMedium {
    padding: 16px 26px 16px 26px;
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    border-radius: 100px;
}
.ButtonGroup .ButtonLarge {
    padding: 18px 30px 18px 30px;
    font-family: 'Helvetica', Arial, 'Noto Sans JP';
    border-radius: 100px;
}

.ButtonGroup .ButtonPrimaryBlack {
    color: #ffffff;
    background-color: #151515;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.ButtonGroup .ButtonPrimaryBlack:hover {
    color: #ffffff;
    background-color: #3e3f40;
}
.ButtonGroup .ButtonPrimaryBlack::before, .ButtonGroup .ButtonPrimaryBlack:hover::before {
    content: " ";
    position: absolute;
    top: -3px;
    left: -3px;
    right: -3px;
    bottom: -3px;
    border: 1px solid #0076DE00;
    border-radius: 100px;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.ButtonGroup .ButtonPrimaryBlack:focus::before {
    border: 1px solid #0076DE;
}

.ButtonGroup .ButtonSecondaryBlack {
    box-sizing: border-box;
    color: #151515;
    background-color: inherit;
    border: solid 1px #151515;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.ButtonGroup .ButtonSecondaryBlack:hover {
    color: #ffffff;
    border: solid 1px #3e3f40;
    background-color: #3e3f40;
}
.ButtonGroup .ButtonSecondaryBlack::before, .ButtonGroup .ButtonSecondaryBlack:hover::before {
    content: " ";
    position: absolute;
    top: -3px;
    left: -3px;
    right: -3px;
    bottom: -3px;
    border: 1px solid #0076DE00;
    border-radius: 100px;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.ButtonGroup .ButtonSecondaryBlack:focus::before {
    border: 1px solid #0076DE;
}

.ButtonGroup .ButtonPrimaryWhite {
    color: #151515;
    background-color: #ffffff;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.ButtonGroup .ButtonPrimaryWhite:hover {
    color: #ffffff;
    background-color: #f6f6f6;
}
.ButtonGroup .ButtonPrimaryHighlight {
    color: #ffffff;
    background-color: #0076DE;
    border: 0px;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.ButtonGroup .ButtonPrimaryHighlight:hover {
    color: #ffffff;
    background-color: #005eb2;
}
.ButtonGroup .ButtonPrimaryHighlight:active {
    background-color: #0076de;
}
.ButtonGroup .ButtonPrimaryHighlight:focus {
    color: #ffffff;
    background-color: #0076de;
}
.ButtonGroup .ButtonPrimaryHighlight::before, .ButtonGroup .ButtonPrimaryHighlight:hover::before {
    content: " ";
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    border: 1px solid #0076de00;
    border-radius: 100px;
    color: #ffffff;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.ButtonGroup .ButtonPrimaryHighlight:focus::before {
    border: 1px solid #0076DE;
}
.HeaderMob {
    position: fixed;
    top: 0;
    z-index: 10;
    width: 100vw;
}
.Header .HeaderMobMainGrid {
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: nowrap;
    justify-content: start;
    align-items: start;
    width: 300vw;
}
.Header .HeaderMobMainGrid .HeaderMobMenuGrid {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100vw;
    background-color: #fffffff7;
    backdrop-filter: blur(10px);
    -webkit-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);
    -moz-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);
    box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);
}
.Header .HeaderMobMainGrid .HeaderMobMenuGrid .HeaderMobMenuGroup {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: 290px;
    padding-top: 15px;
    padding-bottom: 15px;
    width: 290px;
}
.Header .HeaderMobMainGrid .HeaderMobMenuGroup .LogoGroup {
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: 120px;
    margin-right: 30px;
    width: 120px;
}
.Header .HeaderMobMainGrid .HeaderMobMenuGroup .SearceGroup {
    display: flex;
    flex-direction: row;
}
.Header .HeaderMobMainGrid .HeaderMobMenuGroup .SearceGroup .Icon {
    margin-left: 15px;
    width: 25px;
    height: 25px;
}
.Header .HeaderMobMainGrid .FirstMenuGrid {
    display: flex;
    flex-direction: column;
    z-index: 2;
    -webkit-box-shadow: 0px 0px 100px 0px rgba(0,0,0,0.2);
    -moz-box-shadow: 0px 0px 100px 0px rgba(0,0,0,0.2);
    box-shadow: 0px 0px 100px 0px rgba(0,0,0,0.2);
}
.Header .HeaderMobMainGrid .FirstMenuGrid .FirstMenuGroup {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100vw;
    height: 100vh;
    background-color: #ffffff;
}
.Header .HeaderMobMainGrid .SecondMenuGrid {
    display: flex;
    flex-direction: column;
    z-index: 1;
    -webkit-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);
    -moz-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);
    box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);
}
.Header .HeaderMobMainGrid .SecondMenuGrid .SecondMenuGroup {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100vw;
    height: 100vh;
    background-color: #ffffff;
}
.MenuHeaderGrid {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: 66px;
    width: 100%;
    height: 66px;
    border-bottom: solid 1px #d9dcdd;
}
.MenuHeaderGrid .MenuHeaderGroup {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: 290px;
}
.MenuHeaderGrid .MenuHeaderGroup .Icon {
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: 25px;
    width: 25px;
    width: 25px;
}
.MenuContentGrid {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: calc(100vh - 67px);
    overflow-y: auto;
}
.MenuContentGrid .MenuContentGroup {
    display: flex;
    flex-direction: column;
    width: 290px;
}
.MenuContentGrid .MenuContentGroup .MenuContentUnit {
    padding-top: 15px;
    padding-bottom: 15px;
}
.MenuContentGrid .MenuContentGroup .MenuContentUnit:first-of-type {
    padding-top: 30px;
}
.MenuContentGrid .MenuContentGroup .MenuContentUnit .MenuContentMainText {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    text-decoration: none;
}
.MenuContentGrid .MenuContentGroup .MenuContentUnit .MenuContentMainText .Text {
    text-decoration: none;
}
.MenuContentGrid .MenuContentGroup .MenuContentUnit .MenuContentMainText .Icon {
    position: relative;
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: 25px;
    width: 25px;
    height: 25px;
}
.MenuContentGrid .MenuContentGroup .MenuContentLine {
    margin-top: 15px;
    margin-bottom: 15px;
    width: 100%;
    border-bottom: solid 1px #d9dcdd;
}
.MenuContentUnit .MenuContentMainText .Icon {
    width: 25px;
}
.MenuContentUnit .Icon .MenuArrowUp {
    position: absolute;
    width: 25px;
    height: 25px;
    opacity: 1;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.MenuContentUnit .Icon .MenuArrowDown {
    position: absolute;
    width: 25px;
    height: 25px;
    opacity: 0;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.MenuContentUnit .collapsed .MenuArrowUp {
    opacity: 0;
}
.MenuContentUnit .collapsed .MenuArrowDown {
    opacity: 1;
}
.MenuContentUnit .MenuContentOption {
    display: flex;
    flex-direction: column;
}
.MenuContentUnit .MenuContentOption .Option {
    margin-bottom: 10px;
    width: 100%;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.MenuContentUnit .MenuContentOption .Option:first-child {
    margin-top: 10px;
}
.MenuContentUnit .MenuContentOption .Option:hover {
    color: #0076DE;
}
.MenuContentUnit .MenuContentOption .Option:focus {
    color: #0076DE;
}
.MenuContentUnit .CaseCategoryMenuOption {
    display: inline-block;
    padding-top: 10px;
    padding-bottom: 10px;
    width: 100%;
    color: #151515;
    text-decoration: none;
}
.Header .HeaderMobMainGrid .MobSearchGrid {
    display: flex;
    flex-direction: column;
}
.Header .HeaderMobMainGrid .MobSearchGrid .MobSearchGroup {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100vw;
    height: 100vh;
    background-color: #FFFFFF;
    border-bottom: solid 1px #d9dcdd;
}
.HeaderSearchGrid {
    display: flex;
    justify-content: center;
    margin-bottom: 10px;
    width: 100%;
    border-bottom: solid 1px #d9dcdd;
}
.HeaderSearchGroup {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding-top: 12px;
    padding-bottom: 12px;
    width: 290px;
}
.HeaderSearchGroup .SearchBar {
    margin-right: 15px;
    width: 100%;
}
.HeaderSearchGroup .SearchBar input {
    padding-left: 20px;
    font-size: 20px;
    font-weight: bolder;
    background-color: #ecedee ;
    background-image: url(../img/icon-search.svg);
    background-size: 25px 25px;
    background-repeat: no-repeat;
    background-position: center right 20px;
    border-radius: 100px;
    border: none;
}
/* clears the ‘X’ from Internet Explorer */
input[type=search]::-ms-clear { display: none; width : 0; height: 0; }
input[type=search]::-ms-reveal { display: none; width : 0; height: 0; }
/* clears the ‘X’ from Chrome */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration { display: none; }
.HeaderSearchGroup .SearchCross {
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: 25px;
    width: 25px;
    height: 25px;
}
.HeaderSearchResultGroup{
    display: flex;
    flex-direction: column;
    width: 290px;
    max-height: calc(100vh - 87px);
    overflow-y: auto;
}
.HeaderSearchResultGroup .HeaderSearchResult {
    margin-bottom: 10px;
    color: #151515;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.HeaderSearchResultGroup .HeaderSearchResult:last-of-type {
    margin-bottom: 0px;
}
@media (min-width: 768px) {
    .Header .HeaderMobMainGrid .HeaderMobMenuGrid .HeaderMobMenuGroup {
        flex-basis: calc(100vw - 88px);
        width: calc(100vw - 88px);
    }
    .MenuHeaderGrid .MenuHeaderGroup {
        width: calc(100vw - 88px);
    }
    .MenuContentGrid .MenuContentGroup {
        width: calc(100vw - 88px);
    }
    .MenuContentGroup {
        width: calc(100vw - 88px);
    }
    .HeaderSearchGroup {
        width: calc(100vw - 88px);
    }
    .HeaderSearchResultGroup{
        width: calc(100vw - 88px);
    }
}
@media (min-width: 1300px) {
    .HeaderMob {
        display: none;
    }
    .HeaderSearchGroup {
        margin-bottom: 15px;
        padding: 0;
        width: 100%;
        border-bottom: none;
    }
    .HeaderSearchGroup .SearchBar input {
        font-size: 30px;
    }
    .HeaderSearchResultGroup {
        padding: 0;
        width: 100%;
        max-height: 370px;
        overflow-y: auto;
    }
    .HeaderTop {
        position: fixed;
        display: flex;
        flex-direction: column;
        align-items: center;
        z-index: 4;
        top: 0;
        width: 100%;
    }
    .Header .HeaderTopGrid {
        display: flex;
        flex-direction: column;
        align-items: center;
        z-index: 3;
        width: 100%;
        background-color: #fffffff7;
        backdrop-filter: blur(10px);
        -webkit-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);
        -moz-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);
        box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup {
        width: 1224px;
        min-height: 60px;
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuSub {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        padding-top: 15px;
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuSub .CampaignGroup {
        display: flex;
        flex-direction: row;
        color: #151515;
        text-decoration: none;
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuSub .CampaignGroup a {
        text-decoration: none;
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuSub .CampaignGroup .Line {
        margin-left: 15px;
        margin-right: 15px;
        height: 100%;
        border-right: solid 1px #151515;
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuSub .SearchGroup {
        display: flex;
        flex-direction: row;
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuSub .SearchGroup .Icon {
        margin-left: 15px;
        width: 20px;
        height: 20px;
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuSub .SearchGroup .IconSearch {
        width: 20px;
        width: 20px;
        -webkit-transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        transition: all 0.2s ease-in-out;
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuSub .SearchGroup .IconSearch:hover {
        filter: invert(29%) sepia(67%) saturate(2582%) hue-rotate(193deg) brightness(94%) contrast(101%);
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuSub .SearchGroup .IconSearch:active {
        filter: invert(29%) sepia(67%) saturate(2582%) hue-rotate(193deg) brightness(94%) contrast(101%);
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuSub .SearchGroup .IconSearch:focus {
        filter: invert(29%) sepia(67%) saturate(2582%) hue-rotate(193deg) brightness(94%) contrast(101%);
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuMain {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-end;
        margin-top: 15px;
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuMain .LogoGroup {
        flex-grow: 0;
        flex-shrink: 0;
        flex-basis: 120px;
        margin-right: 30px;
        padding-bottom: 10px;
        width: 120px;
        height: 100%;
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuMain .MenuGrid {
        position: relative;
        display: flex;
        flex-direction: row;
        justify-content: start;
        width: 100%;
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuMain .MenuGrid .MenuGroup {
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuMain .MenuGrid .MenuGroup a {
        text-decoration: none;
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuMain .MenuGrid .MenuGroup .MenuUnit {
        display: flex;
        justify-content: center;
        align-items: center;
        padding-top: 5px;
        padding-right: 15px;
        padding-left: 15px;
        width: auto;
        height: 100%;
        color: #151515;
        text-align: center;
        text-decoration: none;
        cursor: pointer;
        border-bottom: solid 3px #15151500;
        -webkit-transition: all 0.5s ease-in-out;
        -moz-transition: all 0.5s ease-in-out;
        transition: all 0.5s ease-in-out;
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuMain .MenuGrid .MenuGroup .MenuUnit:hover {
        color: #0076DE;
        border-bottom: solid 3px #151515;
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuMain .MenuGrid .MenuGroup .MenuUnit:focus {
        border-bottom: solid 3px #151515;
    }
    .Header .HeaderTopGrid .HeaderTopMenuGroup .HeaderTopMenuMain .MenuGrid .MenuGroup .MenuUnit .Text {
        padding-bottom: 10px;
    }
    .Header .HeaderTopExpendGrid {
        position: relative;
        width: 100%;
        max-width: 1224px;
    }
    .Header .HeaderTopExpendSearchGrid {
        position: relative;
        width: 900px !important;
    }
    .Header .MenuGroup .HeaderTopExpandGroup {
        display: none;
        width: max-content;
        -webkit-box-shadow: 0px 30px 30px 0px rgba(0,0,0,0.12);
        -moz-box-shadow: 0px 30px 30px 0px rgba(0,0,0,0.12);
        box-shadow: 0px 30px 30px 0px rgba(0,0,0,0.12);
    }
    .Header .MenuGroup.show .HeaderTopExpandGroup {
        position: absolute;
        display: block;
        z-index: 1;
        border-radius: 0 0 30px 30px;
    }
    .Header .HeaderTopExpandGroup:first-of-type {
        z-index: 2;
    }
    .Header .HeaderTopSearchGrid {
        display: flex;
        flex-direction: column;
        padding: 30px;
        width: 900px;
        background-color: #fffffff7;
        border-radius: 0 0 30px 30px;
        backdrop-filter: blur(2px);
    }
    .Header .HeaderTopMenuOptionGroup {
        display: flex;
        flex-direction: row;
        justify-content: start;
        align-items: start;
        padding: 30px 45px 30px 60px;
        max-width: 1200px;
        background-color: #fffffff7;
        border-radius: 0 0 30px 30px;
        backdrop-filter: blur(2px);
    }
    .Header .HeaderTopMenuOptionGroup .HeaderTopMenuOptionUnit {
        display: flex;
        flex-direction: column;
        margin-right: 24px;
    }
    .Header .HeaderTopMenuOptionGroup .HeaderTopMenuOptionUnit:last-of-type {
        margin-right: 0px;
    }
    .Header .HeaderTopMenuOptionGroup .HeaderTopMenuOptionUnit a {
        text-decoration: none;
        -webkit-transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        transition: all 0.2s ease-in-out;
    }
    .Header .HeaderTopMenuOptionGroup .HeaderTopMenuOptionUnit .HeaderTopMenuOption {
        margin-bottom: 10px;
    }
}
.Footer {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
}
.Footer .FooterGrid {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    width: 100%;
    background-color: #ffffff;
    border-top: solid 1px #d9dcdd;
}
.Footer .FooterGrid:first-of-type {
    z-index: 1;
}
.Footer .FooterGrid:nth-of-type(2) {
    position: absolute;
    bottom: 0;
    padding-bottom: 84px;
    z-index: 2;
    -webkit-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);
    -moz-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);
    box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);
}
.Footer .FooterGrid:nth-of-type(3) {
    z-index: 2;
}
.FooterMenuGrid {
    width: 290px;
    padding-top: 60px;
    background-color: #ffffff;
}
.FooterMenuGrid .FooterMenuUnit {
    display: flex;
    flex-direction: column;
    padding-top: 30px;
    padding-bottom: 30px;
    width: 100%;
    border-bottom: solid 1px #d9dcdd;
}
.FooterMenuGrid .FooterMenuUnit:first-of-type {
    padding-top: 0;
}
.FooterMenuGrid .FooterMenuUnit:last-of-type {
    border-bottom: none;
}
.FooterMenuGrid .FooterMenuUnit .FooterMenu {
    display: flex;
    flex-direction: row;
    width: 100%;
    color: #151515;
    text-decoration: none;
}
.FooterMenuGrid .FooterMenuUnit .FooterMenu .FooterMenuTitle {
    display: block;
    width: calc(100% - 25px);
    color: #151515;
    text-decoration: none;
}
.FooterMenuGrid .FooterMenuUnit .FooterMenu  .FooterMenuPlus {
    width: 25px;
    height: 25px;
}
.FooterMenuGrid .FooterMenuUnit .FooterMenu a.collapsed .MenuPlus {
    opacity: 1 !important;
}
.FooterMenuGrid .FooterMenuUnit .FooterMenu a.collapsed .MenuMinus {
    opacity: 0 !important;
}
.FooterMenuOptionGroup .FooterMenuOption {
    display: inline-block;
    padding-top: 10px;
    padding-bottom: 10px;
    width: 100%;
    color: #151515;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.FooterMenuOptionGroup .FooterMenuOption:hover {
    color: #0076DE;
}
.FooterMenuOptionGroup .FooterMenuOption:active {
    color: #005eb2;
}
.FooterMenuOptionGroup .FooterMenuOption:focus {
    color: #0076DE;
}
.FooterMenuOptionGroup .FooterMenuOption:first-child {
    margin-top: 10px;
}
.FooterSNSOptionGroup {
    display: flex;
    flex-direction: row;
}
.FooterSNSOptionGroup .FooterSNSOption {
    display: inline-block;
    margin-right: 15px;
    margin-top: 10px;
    margin-bottom: 10px;
    width: 30px;
    height: 30px;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.FooterSNSOptionGroup .FooterSNSOption:hover {
    filter: invert(29%) sepia(67%) saturate(2582%) hue-rotate(193deg) brightness(94%) contrast(101%);
}
.FooterSNSOptionGroup .FooterSNSOption:active {
    filter: invert(29%) sepia(67%) saturate(2582%) hue-rotate(193deg) brightness(94%) contrast(101%);
}
.FooterSNSOptionGroup .FooterSNSOption:focus {
    filter: invert(29%) sepia(67%) saturate(2582%) hue-rotate(193deg) brightness(94%) contrast(101%);
}
.FooterGroundGroup {
    display: flex;
    flex-direction: column-reverse;
    width: 290px;
    padding-top: 15px;
    padding-bottom: 15px;
    background-color: #ffffff;
}
.FooterGroundGroup .FooterCopy {
}
.FooterGroundGroup .FooterLocalizationButton {
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-bottom: 10px;
    height: 25px;
    color: #151515;
    font-weight: bold;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.FooterGroundGroup .FooterLocalizationButton .Icon {
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: 25px;
    width: 25px;
    height: 25px;
    margin-right: 5px;
}
.FooterGroundGroup .FooterLocalizationButton:hover {
    color: #005eb2;
}
.FooterLocalGrid {
    width: 290px;
    padding-top: 30px;
    background-color: #ffffff;
}
.FooterLocalGrid .FooterLocalCrossGroup {
    display: flex;
    flex-direction: row;
    justify-content: end;
    width: 100%;
}
.FooterLocalGrid .FooterLocalCrossGroup .FooterLocalCross {
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: 25px;
    width: 25px;
    width: 25px;
}
.FooterLocalGrid .FooterLocalUnit {
    display: flex;
    flex-direction: column;
    padding-top: 15px;
    padding-bottom: 15px;
    width: 100%;
    border-bottom: solid 1px #d9dcdd;
}
.FooterLocalGrid .FooterLocalUnit:first-of-type {
    padding-top: 0;
}
.FooterLocalGrid .FooterLocalUnit:last-of-type {
    padding-bottom: 15px;
    border-bottom: none;
}
.FooterLocalGrid .FooterLocalUnit .FooterLocal {
    display: flex;
    flex-direction: row;
    margin-top: 10px;
    margin-bottom: 15px;
    width: 100%;
    color: #151515;
    text-decoration: none;
}
.FooterLocalGrid .FooterLocalUnit .FooterLocal .FooterLocalTitle {
    margin-bottom: 0px;
    width: calc(100% - 25px);
}
.FooterLocalGrid .FooterLocalUnit .FooterLocal  .FooterLocalPlus {
    width: 25px;
    height: 25px;
}
.LocalPlus {
    position: absolute;
    width: 25px;
    height: 25px;
    opacity: 0;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.LocalMinus {
    position: absolute;
    width: 25px;
    height: 25px;
    opacity: 1;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.FooterLocalGrid .collapsed .FooterLocalPlus .LocalPlus {
    opacity: 1;
}
.FooterLocalGrid .collapsed .FooterLocalPlus .LocalMinus {
    opacity: 0;
}
.FooterLocalOptionGroup .FooterLocalOption {
    display: inline-block;
    margin-bottom: 10px;
    width: 100%;
    color: #151515;
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in-out;
     -moz-transition: all 0.2s ease-in-out;
     transition: all 0.2s ease-in-out;
}
.FooterLocalOptionGroup .FooterLocalOption:hover {
    color: #0076DE;
}
.FooterLocalOptionGroup .FooterLocalOption:active {
    color: #005eb2;
}
.FooterLocalOptionGroup .FooterLocalOption:focus {
    color: #0076DE;
}
.FooterLocalOptionGroup {
    display: flex;
    flex-direction: column;
}
@media (min-width: 768px) {
    .Footer .FooterGrid:nth-of-type(2) {
        padding-bottom: 56px;
    }
    .FooterMenuGrid {
        width: calc(100vw - 88px);
    }
    .FooterGroundGroup {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        width: calc(100vw - 88px);
    }
    .FooterGroundGroup .FooterLocalizationButton {
        flex-direction: row-reverse;
        margin-bottom: 0;
    }
    .FooterGroundGroup .FooterLocalizationButton .Icon {
        margin-right: 0;
        margin-left: 5px;
    }
    .FooterLocalGrid {
        width: calc(100vw - 88px);
    }
}
@media (min-width: 1300px) {
    .FooterMenuGrid {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        width: 1224px;
    }
    .FooterMenuGrid .FooterMenuUnit {
        padding-top: 0;
        padding-right: 24px;
        padding-bottom: 60px;
        width: 25%;
        border-bottom: none;
    }
    .FooterMenuGrid .FooterMenuUnit .FooterMenu {
    }
    .FooterMenuGrid .FooterMenuUnit .FooterMenu  .FooterMenuPlus {
        display: none;
    }
    .FooterMenuOptionGrid {
        display: block !important;;
    }
    .FooterGroundGroup {
        width: 1224px;
    }
    .FooterLocalGrid {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        width: 1224px;
    }
    .FooterLocalGrid .FooterLocalUnit {
        border-bottom: none;
    }
    .FooterLocalGrid .FooterLocalUnit .FooterLocal {
        pointer-events: none;
    }
    .FooterLocalGrid .FooterLocalUnit .FooterLocal  .FooterLocalPlus {
        display: none;
    }
    .FooterLocalOptionGrid {
        display: block !important;;
    }
    .FooterLocalOptionGroup {
        flex-direction: row;
        flex-wrap: wrap;
    }
    .FooterLocalOptionGroup .FooterLocalOption {
        width: 20%;
    }
}
