html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,hr,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
    background: rgba(0,0,0,0)
}

h1,h2,h3,h4,h5,h6 {
    color: #000;
    letter-spacing: 0
}

p {
    letter-spacing: 0
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
    display: block;
    margin: 0
}

body {
    -webkit-text-size-adjust: 100%;
    max-width: 100vw
}

li {
    list-style: none
}

a,button {
    outline: none;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    text-decoration: none
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: top
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

caption,th {
    text-align: left
}

button {
    padding: 0;
    border-style: none;
    border-radius: 0;
    background-color: rgba(0,0,0,0);
    outline: none;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    line-height: 1
}

input,select,textarea {
    padding: 0;
    border-style: none;
    border-radius: 0;
    background-color: rgba(0,0,0,0);
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-family: inherit;
    line-height: 1
}

*,*::before,*::after {
    box-sizing: border-box
}

html {
    font-size: 62.5%
}

body {
    font-size: 1.6rem;
    font-weight: normal;
    line-height: 1;
    margin: 0px
}

button,input,select,textarea {
    font-family: inherit;
    font-size: 100%
}

.ast {
    font-family: sans-serif
}

@media screen and (max-width: 640px) {
    body {
        font-size:1.5rem
    }
}

@font-face {
    font-family: "Helvetica Neue";
    font-style: normal;
    font-weight: 500;
    src: url("/themes/custom/medical_navi_theme/assets/fonts/HelveticaNeue/HelveticaNeueMedium.woff2") format("woff2"),url("/themes/custom/medical_navi_theme/assets/fonts/HelveticaNeue/HelveticaNeueMedium.ttf") format("truetype")
}

body {
    line-height: 1.3;
    font-family: "游ゴシック体",YuGothic,"游ゴシック Medium","Yu Gothic Medium","游ゴシック","Yu Gothic",sans-serif;
    letter-spacing: 0;
    font-size: 10px
}

h1,h2,h3,h4,h5,p,a {
    color: #333
}

@media screen and (max-width: 960px) {
    .pcOnly {
        display:none !important
    }
}

@media print,screen and (min-width: 961px) {
    .spOnly {
        display:none !important
    }
}

.c-button {
    position: relative;
    border: 1px solid #0e3192;
    color: #fff;
    padding: 1rem 2rem;
    display: inline-block;
    background-color: #0e3192;
    padding: 1.5rem 3rem;
    color: #fff;
    font-size: 1.6rem;
    transition: .2s ease;
    min-width: 24.4rem;
    text-align: center;
    transition: .2s ease;
    font-weight: 700;
    cursor: pointer
}

@media screen and (max-width: 960px) {
    .c-button {
        min-width:24rem;
        padding: 1.2rem 3rem
    }
}

.c-button-wrapper {
    text-align: center;
    margin-top: 3rem
}

@media screen and (max-width: 960px) {
    .c-button-wrapper {
        margin-top:3.5rem
    }
}

.c-button::after {
    position: absolute;
    right: 1.6rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: "";
    background-image: url(/assets/img/icon_angle_white.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100%;
    width: .7rem;
    height: 1.1rem;
    transition: .2s ease
}

.c-button:hover {
    opacity: .5
}

.c-button--close {
    background-color: rgba(0,0,0,0);
    padding: 1.2rem 1.7rem 1.4rem;
    color: #333;
    min-width: inherit;
    border: 1px solid #ccc;
    font-weight: 500;
    font-size: 1.6rem
}

@media screen and (max-width: 960px) {
    .c-button--close {
        padding:.8rem 1.7rem;
        font-size: 1.5rem;
        font-weight: 400
    }
}

.c-button--close::after {
    display: none
}

.c-button--white {
    background-color: #fff;
    color: #0e3192
}

.c-button--white:after {
    background-image: url(/assets/img/icon_angle_blue.png)
}

.c-button--login {
    background-color: #b81c2b;
    color: #fff;
    min-width: 20rem;
    font-size: 1.6rem;
    border: none;
    border-radius: 2.2rem;
    padding: 1.2rem 3rem;
    margin-top: 3rem
}

.c-button--login::after {
    display: none
}

.c-button--held {
    padding: 1.4rem 5rem
}

.c-button--held::before {
    position: absolute;
    content: "";
    display: block;
    width: 2.2rem;
    height: 2rem;
    background-image: url(/assets/img/icon_detail_white.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    left: 1.5rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.c-button--calendar {
    background-color: #fff;
    color: #0e3192
}

@media screen and (max-width: 960px) {
    .c-button--calendar {
        padding:1.6rem 3rem
    }
}

.c-button--calendar::before {
    position: absolute;
    content: "";
    display: block;
    width: 2.2rem;
    height: 1.9rem;
    background-image: url(/assets/img/icon_calendar_blue.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 2.2rem 1.9rem;
    left: 1.5rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.c-button--calendar::after {
    background-image: url(/assets/img/icon_arrow_blue.svg);
    -webkit-transform: rotate(-90deg) translateX(50%);
    transform: rotate(-90deg) translateX(50%);
    top: calc(50% - .2rem)
}

.c-button-parent {
    position: relative;
    z-index: 15
}

.c-button-parent[aria-expanded=true] {
    z-index: 16
}

.c-button-parent[aria-expanded=true] .c-button--calendar::after {
    -webkit-transform: rotate(90deg) translateX(-50%);
    transform: rotate(90deg) translateX(-50%)
}

.c-button-parent .c-button {
    height: 100%
}

.c-button-dropdown {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    border: 1px solid #0e3192;
    border-top: none;
    background-color: #fff;
    z-index: 2;
    text-align: left
}

.c-button-dropdown>ul>li>a {
    display: block;
    padding: 0 1.6rem;
    color: #0e3192;
    font-size: 1.6rem;
    line-height: 1.3
}

.c-button-dropdown>ul>li>a>span {
    display: block;
    padding: 1.5rem 0
}

.c-button-dropdown>ul>li>a:hover span {
    opacity: .5;
    transition: .2s ease
}

.c-button-dropdown>ul>li:not(:first-child)>a>span {
    border-top: 1px solid #ccc
}

.c-col {
    margin-top: 70px;
    margin-right: -15px;
    margin-left: -15px
}

.c-col::after {
    content: "";
    display: block;
    clear: both
}

.c-col:first-child {
    margin-top: 0
}

.c-col-item {
    float: left;
    box-sizing: border-box;
    padding: 0 15px
}

.c-flex {
    display: flex;
    flex-wrap: wrap
}

.c-flex-col3>li {
    width: calc((100% - 40px)/3)
}

.c-flex-col3>li:not(:nth-child(3n)) {
    margin-right: 20px
}

.c-flex-col3>li:nth-child(n+4) {
    margin-top: 20px
}

.c-flex-col4>li {
    width: calc((100% - 60px)/4)
}

.c-flex-col4>li:not(:nth-child(4n)) {
    margin-right: 20px
}

.c-flex-col4>li:nth-child(n+5) {
    margin-top: 20px
}

.c-float {
    margin-top: 20px;
    overflow: hidden
}

.c-float:first-child {
    margin-top: 0
}

.c-float-media {
    max-width: 50%
}

.u-left .c-float-media {
    float: left;
    margin-right: 20px
}

.u-right .c-float-media {
    float: right;
    margin-left: 20px
}

.c-float-media img {
    max-width: 100%
}

.c-float-body {
    overflow: hidden
}

.c-list {
    margin-top: 20px
}

.c-list:first-child {
    margin-top: 0
}

ol.c-list {
    counter-reset: num
}

.c-list>li {
    margin-top: 15px;
    position: relative;
    list-style: none
}

.c-list>li:first-child {
    margin-top: 0
}

.c-list>li::before {
    position: absolute;
    left: 0
}

ul.c-list>li {
    padding-left: 1em
}

ul.c-list>li::before {
    content: "・"
}

ol.c-list>li {
    padding-left: 1.5em;
    counter-increment: num
}

ol.c-list>li:nth-child(n+10) {
    padding-left: 2em
}

ol.c-list>li::before {
    content: counter(num) "."
}

.c-list.u-icon-none>li {
    padding-left: 0
}

.c-list.u-icon-none>li:nth-child(n+10) {
    padding-left: 0
}

.c-list.u-icon-none>li::before {
    display: none
}

ol.c-list.u-brackets>li {
    padding-left: 2em
}

ol.c-list.u-brackets>li:nth-child(n+10) {
    padding-left: 2.5em
}

ol.c-list.u-brackets>li::before {
    content: "(" counter(num) ")"
}

ol.c-list.u-leading-zero>li {
    padding-left: 2em
}

ol.c-list.u-leading-zero>li::before {
    content: counter(num, decimal-leading-zero) "."
}

ol.c-list.u-leading-zero.u-brackets>li {
    padding-left: 2.5em
}

ol.c-list.u-leading-zero.u-brackets>li::before {
    content: "(" counter(num, decimal-leading-zero) ")"
}

.c-pageTitle {
    font-weight: 700
}

.c-pageTitle-h1 {
    font-size: 45px
}

.c-pageTitle-h2 {
    font-size: 40px
}

.c-pageTitle-h3 {
    font-size: 36px
}

.c-pageTitle-h4 {
    font-size: 30px
}

.c-pageTitle-h5 {
    font-size: 25px
}

.c-text {
    font-size: 16px;
    line-height: 1.6;
    color: #333
}

.c-text-small {
    font-size: 12px
}

.c-text-large {
    font-size: 18px
}

.c-text-strong {
    font-weight: 700
}

.c-table {
    margin-top: 20px;
    width: 100%;
    table-layout: fixed
}

.c-table:first-child {
    margin-top: 0
}

.c-table caption {
    padding: 10px;
    border: #ccc 1px solid;
    border-bottom: 0;
    background: #ddd
}

.c-table th,.c-table td {
    padding: 10px;
    border: #ccc 1px solid;
    vertical-align: middle
}

.c-table thead th {
    background: #ddd
}

.c-table tbody {
    text-align: left
}

.c-table tbody th {
    background: #eee
}

.c-table-col.u-width-1per {
    width: 1%
}

.c-table-col.u-width-2per {
    width: 2%
}

.c-table-col.u-width-3per {
    width: 3%
}

.c-table-col.u-width-4per {
    width: 4%
}

.c-table-col.u-width-5per {
    width: 5%
}

.c-table-col.u-width-6per {
    width: 6%
}

.c-table-col.u-width-7per {
    width: 7%
}

.c-table-col.u-width-8per {
    width: 8%
}

.c-table-col.u-width-9per {
    width: 9%
}

.c-table-col.u-width-10per {
    width: 10%
}

.c-table-col.u-width-11per {
    width: 11%
}

.c-table-col.u-width-12per {
    width: 12%
}

.c-table-col.u-width-13per {
    width: 13%
}

.c-table-col.u-width-14per {
    width: 14%
}

.c-table-col.u-width-15per {
    width: 15%
}

.c-table-col.u-width-16per {
    width: 16%
}

.c-table-col.u-width-17per {
    width: 17%
}

.c-table-col.u-width-18per {
    width: 18%
}

.c-table-col.u-width-19per {
    width: 19%
}

.c-table-col.u-width-20per {
    width: 20%
}

.c-table-col.u-width-21per {
    width: 21%
}

.c-table-col.u-width-22per {
    width: 22%
}

.c-table-col.u-width-23per {
    width: 23%
}

.c-table-col.u-width-24per {
    width: 24%
}

.c-table-col.u-width-25per {
    width: 25%
}

.c-table-col.u-width-26per {
    width: 26%
}

.c-table-col.u-width-27per {
    width: 27%
}

.c-table-col.u-width-28per {
    width: 28%
}

.c-table-col.u-width-29per {
    width: 29%
}

.c-table-col.u-width-30per {
    width: 30%
}

.c-table-col.u-width-31per {
    width: 31%
}

.c-table-col.u-width-32per {
    width: 32%
}

.c-table-col.u-width-33per {
    width: 33%
}

.c-table-col.u-width-34per {
    width: 34%
}

.c-table-col.u-width-35per {
    width: 35%
}

.c-table-col.u-width-36per {
    width: 36%
}

.c-table-col.u-width-37per {
    width: 37%
}

.c-table-col.u-width-38per {
    width: 38%
}

.c-table-col.u-width-39per {
    width: 39%
}

.c-table-col.u-width-40per {
    width: 40%
}

.c-table-col.u-width-41per {
    width: 41%
}

.c-table-col.u-width-42per {
    width: 42%
}

.c-table-col.u-width-43per {
    width: 43%
}

.c-table-col.u-width-44per {
    width: 44%
}

.c-table-col.u-width-45per {
    width: 45%
}

.c-table-col.u-width-46per {
    width: 46%
}

.c-table-col.u-width-47per {
    width: 47%
}

.c-table-col.u-width-48per {
    width: 48%
}

.c-table-col.u-width-49per {
    width: 49%
}

.c-table-col.u-width-50per {
    width: 50%
}

.c-table-col.u-width-51per {
    width: 51%
}

.c-table-col.u-width-52per {
    width: 52%
}

.c-table-col.u-width-53per {
    width: 53%
}

.c-table-col.u-width-54per {
    width: 54%
}

.c-table-col.u-width-55per {
    width: 55%
}

.c-table-col.u-width-56per {
    width: 56%
}

.c-table-col.u-width-57per {
    width: 57%
}

.c-table-col.u-width-58per {
    width: 58%
}

.c-table-col.u-width-59per {
    width: 59%
}

.c-table-col.u-width-60per {
    width: 60%
}

.c-table-col.u-width-61per {
    width: 61%
}

.c-table-col.u-width-62per {
    width: 62%
}

.c-table-col.u-width-63per {
    width: 63%
}

.c-table-col.u-width-64per {
    width: 64%
}

.c-table-col.u-width-65per {
    width: 65%
}

.c-table-col.u-width-66per {
    width: 66%
}

.c-table-col.u-width-67per {
    width: 67%
}

.c-table-col.u-width-68per {
    width: 68%
}

.c-table-col.u-width-69per {
    width: 69%
}

.c-table-col.u-width-70per {
    width: 70%
}

.c-table-col.u-width-71per {
    width: 71%
}

.c-table-col.u-width-72per {
    width: 72%
}

.c-table-col.u-width-73per {
    width: 73%
}

.c-table-col.u-width-74per {
    width: 74%
}

.c-table-col.u-width-75per {
    width: 75%
}

.c-table-col.u-width-76per {
    width: 76%
}

.c-table-col.u-width-77per {
    width: 77%
}

.c-table-col.u-width-78per {
    width: 78%
}

.c-table-col.u-width-79per {
    width: 79%
}

.c-table-col.u-width-80per {
    width: 80%
}

.c-table-col.u-width-81per {
    width: 81%
}

.c-table-col.u-width-82per {
    width: 82%
}

.c-table-col.u-width-83per {
    width: 83%
}

.c-table-col.u-width-84per {
    width: 84%
}

.c-table-col.u-width-85per {
    width: 85%
}

.c-table-col.u-width-86per {
    width: 86%
}

.c-table-col.u-width-87per {
    width: 87%
}

.c-table-col.u-width-88per {
    width: 88%
}

.c-table-col.u-width-89per {
    width: 89%
}

.c-table-col.u-width-90per {
    width: 90%
}

.c-table-col.u-width-91per {
    width: 91%
}

.c-table-col.u-width-92per {
    width: 92%
}

.c-table-col.u-width-93per {
    width: 93%
}

.c-table-col.u-width-94per {
    width: 94%
}

.c-table-col.u-width-95per {
    width: 95%
}

.c-table-col.u-width-96per {
    width: 96%
}

.c-table-col.u-width-97per {
    width: 97%
}

.c-table-col.u-width-98per {
    width: 98%
}

.c-table-col.u-width-99per {
    width: 99%
}

.c-table-col.u-width-100per {
    width: 100%
}

.c-table-col.u-width--5px {
    width: 5px
}

.c-table-col.u-width--10px {
    width: 10px
}

.c-table-col.u-width--15px {
    width: 15px
}

.c-table-col.u-width--20px {
    width: 20px
}

.c-table-col.u-width--25px {
    width: 25px
}

.c-table-col.u-width--30px {
    width: 30px
}

.c-table-col.u-width--35px {
    width: 35px
}

.c-table-col.u-width--40px {
    width: 40px
}

.c-table-col.u-width--45px {
    width: 45px
}

.c-table-col.u-width--50px {
    width: 50px
}

.c-table-col.u-width--55px {
    width: 55px
}

.c-table-col.u-width--60px {
    width: 60px
}

.c-table-col.u-width--65px {
    width: 65px
}

.c-table-col.u-width--70px {
    width: 70px
}

.c-table-col.u-width--75px {
    width: 75px
}

.c-table-col.u-width--80px {
    width: 80px
}

.c-table-col.u-width--85px {
    width: 85px
}

.c-table-col.u-width--90px {
    width: 90px
}

.c-table-col.u-width--95px {
    width: 95px
}

.c-table-col.u-width--100px {
    width: 100px
}

.c-table-col.u-width--105px {
    width: 105px
}

.c-table-col.u-width--110px {
    width: 110px
}

.c-table-col.u-width--115px {
    width: 115px
}

.c-table-col.u-width--120px {
    width: 120px
}

.c-table-col.u-width--125px {
    width: 125px
}

.c-table-col.u-width--130px {
    width: 130px
}

.c-table-col.u-width--135px {
    width: 135px
}

.c-table-col.u-width--140px {
    width: 140px
}

.c-table-col.u-width--145px {
    width: 145px
}

.c-table-col.u-width--150px {
    width: 150px
}

.c-table-col.u-width--155px {
    width: 155px
}

.c-table-col.u-width--160px {
    width: 160px
}

.c-table-col.u-width--165px {
    width: 165px
}

.c-table-col.u-width--170px {
    width: 170px
}

.c-table-col.u-width--175px {
    width: 175px
}

.c-table-col.u-width--180px {
    width: 180px
}

.c-table-col.u-width--185px {
    width: 185px
}

.c-table-col.u-width--190px {
    width: 190px
}

.c-table-col.u-width--195px {
    width: 195px
}

.c-table-col.u-width--200px {
    width: 200px
}

.c-table-col.u-width--205px {
    width: 205px
}

.c-table-col.u-width--210px {
    width: 210px
}

.c-table-col.u-width--215px {
    width: 215px
}

.c-table-col.u-width--220px {
    width: 220px
}

.c-table-col.u-width--225px {
    width: 225px
}

.c-table-col.u-width--230px {
    width: 230px
}

.c-table-col.u-width--235px {
    width: 235px
}

.c-table-col.u-width--240px {
    width: 240px
}

.c-table-col.u-width--245px {
    width: 245px
}

.c-table-col.u-width--250px {
    width: 250px
}

.c-table-col.u-width--255px {
    width: 255px
}

.c-table-col.u-width--260px {
    width: 260px
}

.c-table-col.u-width--265px {
    width: 265px
}

.c-table-col.u-width--270px {
    width: 270px
}

.c-table-col.u-width--275px {
    width: 275px
}

.c-table-col.u-width--280px {
    width: 280px
}

.c-table-col.u-width--285px {
    width: 285px
}

.c-table-col.u-width--290px {
    width: 290px
}

.c-table-col.u-width--295px {
    width: 295px
}

.c-table-col.u-width--300px {
    width: 300px
}

.c-table-col.u-width--305px {
    width: 305px
}

.c-table-col.u-width--310px {
    width: 310px
}

.c-table-col.u-width--315px {
    width: 315px
}

.c-table-col.u-width--320px {
    width: 320px
}

.c-table-col.u-width--325px {
    width: 325px
}

.c-table-col.u-width--330px {
    width: 330px
}

.c-table-col.u-width--335px {
    width: 335px
}

.c-table-col.u-width--340px {
    width: 340px
}

.c-table-col.u-width--345px {
    width: 345px
}

.c-table-col.u-width--350px {
    width: 350px
}

.c-table-col.u-width--355px {
    width: 355px
}

.c-table-col.u-width--360px {
    width: 360px
}

.c-table-col.u-width--365px {
    width: 365px
}

.c-table-col.u-width--370px {
    width: 370px
}

.c-table-col.u-width--375px {
    width: 375px
}

.c-table-col.u-width--380px {
    width: 380px
}

.c-table-col.u-width--385px {
    width: 385px
}

.c-table-col.u-width--390px {
    width: 390px
}

.c-table-col.u-width--395px {
    width: 395px
}

.c-table-col.u-width--400px {
    width: 400px
}

.c-table-col.u-width--405px {
    width: 405px
}

.c-table-col.u-width--410px {
    width: 410px
}

.c-table-col.u-width--415px {
    width: 415px
}

.c-table-col.u-width--420px {
    width: 420px
}

.c-table-col.u-width--425px {
    width: 425px
}

.c-table-col.u-width--430px {
    width: 430px
}

.c-table-col.u-width--435px {
    width: 435px
}

.c-table-col.u-width--440px {
    width: 440px
}

.c-table-col.u-width--445px {
    width: 445px
}

.c-table-col.u-width--450px {
    width: 450px
}

.c-table-col.u-width--455px {
    width: 455px
}

.c-table-col.u-width--460px {
    width: 460px
}

.c-table-col.u-width--465px {
    width: 465px
}

.c-table-col.u-width--470px {
    width: 470px
}

.c-table-col.u-width--475px {
    width: 475px
}

.c-table-col.u-width--480px {
    width: 480px
}

.c-table-col.u-width--485px {
    width: 485px
}

.c-table-col.u-width--490px {
    width: 490px
}

.c-table-col.u-width--495px {
    width: 495px
}

.c-table-col.u-width--500px {
    width: 500px
}

.c-favorite-trigger {
    width: 2.5rem;
    height: 2.4rem;
    display: block;
    background-image: url(/assets/img/icon_fav_off_white.svg);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100%;
    z-index: 20
}

.c-favorite-trigger[aria-selected=true] {
    background-image: url(/assets/img/icon_fav_on.svg)
}

@media screen and (max-width: 960px) {
    .c-favorite-trigger {
        width:2rem;
        height: 2rem
    }
}

.c-lock-content {
    background-color: #fff;
    display: block;
    width: 2.8rem;
    height: 2.8rem;
    background-image: url(/assets/img/icon_key_blue_bg.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100%;
    border-radius: 50%
}

@media screen and (max-width: 960px) {
    .c-lock-content {
        width:2rem;
        height: 2rem
    }
}

.c-tooltip {
    position: relative;
    font-size: 1.6rem;
    line-height: 1.5;
    z-index: 15
}

@media screen and (max-width: 960px) {
    .c-tooltip {
        display:inline-block;
        font-size: 1.5rem
    }
}

.c-tooltip[aria-expanded=true] .c-tooltip-balloon {
    visibility: visible;
    opacity: 1
}

.c-tooltip[aria-expanded=true] .c-tooltip-balloon-arrow {
    visibility: visible;
    opacity: 1
}

.c-tooltip-text {
    cursor: pointer;
    text-decoration: underline;
    -webkit-text-decoration-color: rgba(3,3,3,0);
    text-decoration-color: rgba(3,3,3,0);
    text-underline-offset: 5px;
    transition: .2s ease;
    position: relative;
    vertical-align: middle
}

.c-tooltip-icon {
    position: relative;
    width: 2rem;
    height: 2rem;
    display: inline-block;
    background-image: url(/assets/img/icon_tooltip.svg);
    background-repeat: no-repeat;
    background-position: center;
    vertical-align: middle;
    margin-left: .5rem;
    z-index: 3
}

.c-tooltip-trigger:hover {
    z-index: 16
}

.c-tooltip-trigger:hover .c-tooltip-text {
    -webkit-text-decoration-color: #333;
    text-decoration-color: #333
}

.c-tooltip-trigger:hover .c-tooltip-balloon-arrow {
    opacity: 1;
    visibility: visible
}

.c-tooltip-trigger:hover+.c-tooltip-balloon {
    opacity: 1;
    visibility: visible
}

.c-tooltip-balloon {
    position: absolute;
    bottom: 100%;
    right: -20px;
    padding-bottom: 1.5rem;
    width: 427px;
    opacity: 0;
    visibility: hidden;
    transition: .2s ease;
    z-index: 2
}

@media screen and (max-width: 960px) {
    .c-tooltip-balloon {
        width:calc(100vw - 3.2rem);
        left: 0
    }
}

.c-tooltip-balloon-arrow {
    position: absolute;
    width: 16px;
    height: 12px;
    right: 0;
    top: -2rem;
    opacity: 0;
    visibility: hidden;
    transition: .2s ease
}

@media screen and (max-width: 960px) {
    .c-tooltip-balloon-arrow {
        top:-1.9rem
    }
}

.c-tooltip-balloon-arrow:before {
    position: absolute;
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 8px solid rgba(0,0,0,0);
    border-left: 8px solid rgba(0,0,0,0);
    border-top: 12px solid #fff;
    border-bottom: 0;
    top: 0px;
    right: 1px;
    z-index: 2
}

.c-tooltip-balloon-arrow::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 1px;
    z-index: 1;
    right: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 9px solid rgba(0,0,0,0);
    border-left: 9px solid rgba(0,0,0,0);
    border-top: 13px solid #ccc;
    border-bottom: 0
}

.c-tooltip-balloon__inner {
    position: relative;
    padding: 2rem 2.4rem;
    border: 1px solid #ccc;
    background-color: #fff
}

@media screen and (max-width: 960px) {
    .c-tooltip-balloon__inner {
        padding:4.8rem 1.7rem 2.9rem
    }
}

.c-tooltip-balloon__inner>p {
    line-height: 1.8;
    font-size: 1.6rem
}

.c-tooltip-close {
    display: none
}

@media screen and (max-width: 960px) {
    .c-tooltip-close {
        position:absolute;
        display: block;
        width: 2.3rem;
        height: 2.3rem;
        border-radius: 50%;
        color: rgba(0,0,0,0);
        transition: opacity .3s;
        background-color: #999;
        top: .9rem;
        right: 1rem
    }

    .c-tooltip-close::before,.c-tooltip-close::after {
        content: "";
        position: absolute;
        display: block;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        width: 17px;
        height: 1px;
        background-color: #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    .c-tooltip-close::after {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }
}

.c-budge-list {
    display: flex;
    flex-wrap: wrap;
    gap: .8rem
}

.c-budge-list>li>span {
    display: block;
    padding: .6rem 1.6rem;
    background-color: #0e3192;
    color: #fff;
    font-size: 1.3rem;
    line-height: 1;
    display: inline-block;
    border: 1px solid #0e3192
}

@media screen and (max-width: 960px) {
    .c-budge-list>li>span {
        padding:.7rem .9rem;
        font-size: 1.1rem
    }
}

.c-budge-list>li>span.white {
    background-color: #fff;
    color: #0e3192
}

.c-budge-list>li>span.gray {
    background-color: #f1f1f1;
    color: #0e3192;
    border-color: #f1f1f1
}

.c-budge-list>li>span.green {
    background-color: #01809f;
    color: #fff;
    border-color: #01809f
}

.c-budge-list>li>span.green-white {
    background-color: #fff;
    color: #01809f;
    border-color: #01809f
}

.c-budge-list>li>span.green-gray {
    background-color: #f1f1f1;
    color: #01809f;
    border-color: #f1f1f1
}

.c-budge-list>li>span.logo {
    background-color: rgba(0,0,0,0);
    display: block;
    width: 9.2rem;
    border: none;
    padding: 0
}

.l-accordion-target {
    display: none
}

.l-modal {
    position: fixed;
    z-index: 100;
    width: 100%;
    max-width: 1056px;
    padding: 3.2rem 1.6rem;
    z-index: 300;
    opacity: 0;
    visibility: hidden;
    height: 100%
}

@media print,screen and (min-width: 961px) {
    .l-modal {
        top:50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        display: flex;
        align-items: center
    }
}

@media screen and (max-width: 960px) {
    .l-modal {
        top:1.6rem
    }
}

.l-modal[aria-expanded=true] {
    opacity: 1;
    visibility: visible
}

.l-modal-inner {
    max-width: 1024px;
    background-color: #fff;
    margin: auto;
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden
}

@media print,screen and (min-width: 961px) {
    .l-modal-inner {
        max-height:765px
    }
}

.l-modal-close {
    position: absolute;
    font-size: 0;
    right: 1.6rem;
    top: 1.6rem;
    width: 4.2rem;
    height: 4.2rem;
    background-color: #999;
    border-radius: 50%
}

@media screen and (max-width: 960px) {
    .l-modal-close {
        width:2.4rem;
        height: 2.4rem;
        top: .8rem;
        right: .8rem
    }
}

.l-modal-close::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg);
    width: 2.55rem;
    height: 2px;
    background-color: #fff
}

@media screen and (max-width: 960px) {
    .l-modal-close::before {
        width:1.5rem
    }
}

.l-modal-close:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg);
    width: 2.55rem;
    height: .2rem;
    background-color: #fff
}

@media screen and (max-width: 960px) {
    .l-modal-close:after {
        width:1.5rem
    }
}

.l-modal-head {
    position: relative;
    background-color: #f1f1f1;
    padding: 2.3rem;
    text-align: center
}

@media screen and (max-width: 960px) {
    .l-modal-head {
        padding:1rem
    }
}

@media screen and (max-width: 960px) {
    .l-modal-head__text {
        display:flex;
        align-items: center;
        justify-content: center;
        gap: .5rem
    }
}

.l-modal-head__text .icon {
    display: inline-block;
    width: 4.8rem;
    height: 4.8rem;
    margin-right: .8rem
}

@media print,screen and (min-width: 961px) {
    .l-modal-head__text br {
        display:none
    }
}

.l-modal-head p {
    font-weight: 700;
    color: #333;
    font-size: 2.4rem
}

@media screen and (max-width: 960px) {
    .l-modal-head p {
        font-size:2rem
    }
}

.l-modal-check {
    display: flex
}

.l-modal-check__box input[type=checkbox] {
    display: none
}

.l-modal-check__box input[type=checkbox]:checked+label {
    border-color: #0e3192;
    color: #0e3192;
    background-color: #e7f0ff
}

.l-modal-check__box label {
    display: inline-block;
    padding: 1rem 1.5rem;
    color: #333;
    border: 1px solid #ccc;
    font-size: 1.6rem;
    cursor: pointer;
    transition: .2s ease
}

@media screen and (max-width: 960px) {
    .l-modal-check__box label {
        font-size:1.4rem;
        padding: .8rem 1.2rem
    }
}

.l-modal-check__box label:hover {
    border-color: #0e3192;
    color: #0e3192
}

.l-modal-check__box+.l-modal-check__list {
    margin-top: 1rem
}

.l-modal-check__list {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem
}

.l-modal-check__list+.l-modal-check__box {
    padding-top: 3.2rem;
    margin-top: 3.2rem;
    border-top: 1px solid #ccc
}

@media screen and (max-width: 960px) {
    .l-modal-check__list+.l-modal-check__box {
        margin-top:2.4rem;
        padding-top: 2.4rem
    }
}

.l-modal-content {
    position: relative;
    display: flex;
    flex-direction: column
}

.l-modal-content__head {
    padding: 3rem 5rem;
    border-bottom: 1px solid #ccc;
    display: flex;
    align-items: baseline;
    gap: 1.5rem
}

@media screen and (max-width: 960px) {
    .l-modal-content__head {
        display:block;
        padding: 1.5rem
    }
}

.l-modal-content__headContent {
    flex: 1
}

@media screen and (max-width: 960px) {
    .l-modal-content__headContent {
        margin-top:1rem
    }
}

.l-modal-content__headText p {
    font-size: 1.6rem;
    font-weight: 500
}

@media screen and (max-width: 960px) {
    .l-modal-content__headText p {
        font-size:1.5rem
    }
}

.l-modal-content__inner {
    position: relative;
    overflow-y: scroll
}

.l-modal-content__inner>div {
    height: auto;
    padding: 3rem 5rem 4rem
}

@media screen and (max-width: 960px) {
    .l-modal-content__inner>div {
        padding:2rem 1.5rem 3rem
    }
}

.l-modal-foot {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2rem;
    padding: 5.5rem 0 4rem
}

@media screen and (max-width: 960px) {
    .l-modal-foot {
        padding:3.3rem 0
    }
}

@media screen and (max-width: 960px) {
    .l-modal-foot>div {
        text-align:center
    }
}

@media screen and (max-width: 960px) {
    .l-modal-foot>div:not(:first-child) {
        margin-top:1.6rem
    }
}

@media screen and (max-width: 960px) {
    .l-modal-foot {
        display:block
    }

    .l-modal-foot .c-button:not(.c-button--close) {
        min-width: 20rem
    }
}

.l-modal-selected-list {
    display: flex;
    flex-wrap: wrap
}

.l-modal-overlay {
    position: fixed;
    background-color: rgba(0,0,0,.5);
    opacity: 0;
    visibility: hidden;
    z-index: 299;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0
}

.l-modal-overlay[aria-expanded=true] {
    opacity: 1;
    visibility: visible
}

.l-wring-list {
    display: inline-flex;
    flex-wrap: wrap;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden
}

@media screen and (max-width: 960px) {
    .l-wring-list {
        -webkit-line-clamp: 2;
    }
}

.l-wring-list>li {
    display: inline-block;
    font-size: 1.6rem;
    color: #333
}

.l-wring-list>li:not(:first-child) {
    margin-left: 2rem
}

@media screen and (max-width: 960px) {
    .l-wring-list>li:not(:first-child) {
        margin-left:1rem
    }
}

@media screen and (max-width: 960px) {
    .l-wring-list>li {
        font-size:1.5rem
    }
}

.l-wring-list>li>span {
    color: #333
}

.l-wring-list>li::before {
    content: "";
    display: inline-block;
    width: 1.4rem;
    height: 1rem;
    background-image: url(/assets/img/icon_check_blue.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    margin-right: 1rem
}

@media screen and (max-width: 960px) {
    .l-wring-list>li::before {
        margin-right:.5rem
    }
}

.l-wring-list>li.oncology::before {
    background-image: url(/assets/img/icon_check_green.svg)
}

.l-notlogin-element {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 100% !important;
    width: 100% !important;
    background-color: rgba(0,0,0,.7);
    top: 0;
    left: 0;
    z-index: 100
}

.l-notlogin-element>div figure {
    width: 40px;
    margin: 0 auto
}

.l-notlogin-element>div>p {
    color: #fff;
    font-size: 1.5rem;
    line-height: 1.5;
    margin-top: 1.6rem
}

@media screen and (max-width: 960px) {
    .l-notlogin-element>div>p {
        font-size:1.4rem
    }
}

.l-not-child {
    background-color: #f3f3f3;
    padding: 3rem 4rem
}

@media screen and (max-width: 960px) {
    .l-not-child {
        padding-inline:2.4rem
    }
}

.l-not-child p {
    font-size: 1.6rem;
    line-height: 1.3
}

.l-update-modal {
    position: fixed;
    box-shadow: 2.121px 2.121px 16px 0px rgba(0,0,0,.1);
    background-color: #fff;
    opacity: 0;
    visibility: hidden;
    transition: .2s ease;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 32rem;
    height: 31.2rem
}

@media screen and (max-width: 960px) {
    .l-update-modal {
        width:28.2rem;
        height: 25.2rem
    }
}

.l-update-modal[aria-expanded=true] {
    opacity: 1;
    visibility: visible
}

.l-update-modal__inner figure {
    position: relative;
    background-color: #0e3192;
    width: 12rem;
    height: 12rem;
    border-radius: 50%;
    margin: 0 auto
}

@media screen and (max-width: 960px) {
    .l-update-modal__inner figure {
        width:10rem;
        height: 10rem
    }
}

.l-update-modal__inner figure img {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    width: 4.1rem
}

@media screen and (max-width: 960px) {
    .l-update-modal__inner figure img {
        width:3.4rem
    }
}

.l-update-modal__inner p {
    line-height: 1.5;
    font-size: 1.6rem;
    font-weight: 500;
    margin-top: 2rem
}

@media screen and (max-width: 960px) {
    .l-update-modal__inner p {
        font-size:1.5rem
    }
}

.l-more-btn {
    margin-top: 5rem;
    border-top: 1px solid #ccc
}

@media screen and (max-width: 960px) {
    .l-more-btn {
        margin-top:3.5rem
    }
}

.l-more-btn__inner {
    text-align: center
}

.l-more-btn__inner button {
    padding: 1.4rem 3rem;
    border: 1px solid #ccc;
    font-size: 1.6rem;
    border-top: none;
    transition: .2s ease
}

@media screen and (max-width: 960px) {
    .l-more-btn__inner button {
        font-size:1.4rem;
        padding: 1.2rem 1.4rem
    }
}

@media print,screen and (min-width: 961px) {
    .l-more-btn__inner button:hover {
        opacity:.5
    }
}

.l-more-btn__inner .js-more-btn-trigger[aria-selected=false] .l-more-btn__icon::before {
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg)
}

.l-more-btn__icon {
    position: relative;
    display: inline-block;
    width: 1.2rem;
    height: 1.2rem;
    margin-right: 1rem
}

.l-more-btn__icon::before,.l-more-btn__icon::after {
    position: absolute;
    content: "";
    display: block;
    background-color: #ccc;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    transition: .2s ease
}

.l-more-btn__icon::before {
    width: .2rem;
    height: 1.2rem
}

.l-more-btn__icon::after {
    width: 1.2rem;
    height: .2rem
}

.l-more-btn__text {
    color: #333
}

.l-seminar-tab {
    margin-top: 3.2rem;
    border-bottom: 1px solid #0e3192
}

.l-seminar-tab__trigger {
    display: flex
}

.l-seminar-tab__trigger>li.is-active>a {
    background-color: #0e3192;
    color: #fff
}

.l-seminar-tab__trigger>li.is-active>a .l-seminar-tab__Icon.list {
    background-image: url(/assets/img/icon_list_white.svg)
}

.l-seminar-tab__trigger>li.is-active>a .l-seminar-tab__Icon.calendar {
    background-image: url(/assets/img/icon_calendar_white.png)
}

.l-seminar-tab__trigger>li.is-active>a::after {
    opacity: 1
}

.l-seminar-tab__trigger>li>a {
    position: relative;
    padding: 1.1rem 3.5rem;
    display: flex;
    align-items: center;
    line-height: 1.3;
    height: 100%;
    color: #0e3192;
    font-weight: 700
}

.l-seminar-tab__trigger>li>a::after {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 6px solid rgba(0,0,0,0);
    border-left: 6px solid rgba(0,0,0,0);
    border-top: 8px solid #0e3192;
    border-bottom: 0;
    bottom: -8px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 0
}

.l-seminar-tab__Icon {
    display: inline-block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    margin-right: 1.2rem
}

.l-seminar-tab__Icon.list {
    width: 2.5rem;
    height: 2.5rem;
    margin-bottom: 0;
    background-image: url(/assets/img/icon_list_blue.svg)
}

.l-seminar-tab__Icon.calendar {
    width: 1.9rem;
    height: 1.9rem;
    background-image: url(/assets/img/icon_calendar_blue.png)
}

.l-seminar-tab__Text {
    font-size: 1.6rem
}

.l-sidebar-favorite {
    position: fixed;
    top: 15rem;
    right: 0;
    background-color: #fff;
    border: 1px solid #0e3192;
    z-index: 298;
    padding: 1rem 1rem;
    box-shadow: 2.121px 2.121px 16px 0px rgba(0,0,0,.2)
}

@media print,screen and (min-width: 961px) {
    .l-sidebar-favorite {
        border-right:none
    }
}

@media screen and (max-width: 960px) {
    .l-sidebar-favorite {
        display:flex;
        align-items: center;
        right: 20px;
        bottom: 20px;
        top: initial;
        padding: .8rem 1rem
    }
}

.l-sidebar-favorite::before {
    content: "";
    width: 2.5rem;
    height: 2.5rem;
    display: block;
    background-image: url(/assets/img/icon_fav_on.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: 0 0
}

@media screen and (max-width: 960px) {
    .l-sidebar-favorite::before {
        margin-right:.6rem
    }
}

.l-sidebar-favorite>a {
    color: #0e3192;
    font-size: 1.6rem
}

@media print,screen and (min-width: 961px) {
    .l-sidebar-favorite>a {
        -ms-writing-mode:tb-rl;
        -webkit-writing-mode: vertical-rl;
        writing-mode: vertical-rl;
        margin: 8px auto
    }
}

@media screen and (max-width: 960px) {
    .l-sidebar-favorite>a {
        font-size:1.5rem
    }
}

.u-align--center {
    text-align: center !important
}

.u-align--left {
    text-align: left !important
}

.u-align--right {
    text-align: right !important
}

.u-align--top {
    vertical-align: top !important
}

.u-align--middle {
    vertical-align: middle !important
}

.u-align--bottom {
    vertical-align: bottom !important
}

.u-align--baseline {
    vertical-align: baseline !important
}

.u-bg--normal {
    background-color: #fff !important
}

.u-bg--reverse {
    background-color: #333 !important
}

.u-color--normal {
    color: #333 !important
}

.u-color--strong {
    color: #f20000 !important
}

.u-color--thin {
    color: #555 !important
}

.u-color--reverse {
    color: #fff !important
}

.u-text--blue {
    color: #0b318f
}

.u-text--red {
    color: #dc1121
}

.u-text--strong {
    font-weight: 700
}

.u-text--thin {
    font-weight: 400
}

.u-text--italic {
    font-style: italic
}

.u-float--right {
    float: right !important
}

.u-float--left {
    float: left !important
}

.u-float--none {
    float: none !important
}

.u-clear--both {
    clear: both !important
}

.u-clear--left {
    clear: left !important
}

.u-clear--right {
    clear: right !important
}

.u-overflow--hidden {
    overflow: hidden
}

.u-clearfix::after {
    content: "";
    display: block;
    clear: both
}

.u-float-left--20 {
    float: left;
    margin-right: 20px
}

.u-float-right--20 {
    float: right;
    margin-left: 20px
}

.u-height--near {
    line-height: 1.2
}

.u-height--middle {
    line-height: 1.5
}

.u-height--normal {
    line-height: 1.8
}

.u-height--none {
    line-height: 1
}

.u-mt-50 {
    margin-top: -50px !important
}

.u-ml-50 {
    margin-left: -50px !important
}

.u-mr-50 {
    margin-right: -50px !important
}

.u-mb-50 {
    margin-bottom: -50px !important
}

.u-mt-45 {
    margin-top: -45px !important
}

.u-ml-45 {
    margin-left: -45px !important
}

.u-mr-45 {
    margin-right: -45px !important
}

.u-mb-45 {
    margin-bottom: -45px !important
}

.u-mt-40 {
    margin-top: -40px !important
}

.u-ml-40 {
    margin-left: -40px !important
}

.u-mr-40 {
    margin-right: -40px !important
}

.u-mb-40 {
    margin-bottom: -40px !important
}

.u-mt-35 {
    margin-top: -35px !important
}

.u-ml-35 {
    margin-left: -35px !important
}

.u-mr-35 {
    margin-right: -35px !important
}

.u-mb-35 {
    margin-bottom: -35px !important
}

.u-mt-30 {
    margin-top: -30px !important
}

.u-ml-30 {
    margin-left: -30px !important
}

.u-mr-30 {
    margin-right: -30px !important
}

.u-mb-30 {
    margin-bottom: -30px !important
}

.u-mt-25 {
    margin-top: -25px !important
}

.u-ml-25 {
    margin-left: -25px !important
}

.u-mr-25 {
    margin-right: -25px !important
}

.u-mb-25 {
    margin-bottom: -25px !important
}

.u-mt-20 {
    margin-top: -20px !important
}

.u-ml-20 {
    margin-left: -20px !important
}

.u-mr-20 {
    margin-right: -20px !important
}

.u-mb-20 {
    margin-bottom: -20px !important
}

.u-mt-15 {
    margin-top: -15px !important
}

.u-ml-15 {
    margin-left: -15px !important
}

.u-mr-15 {
    margin-right: -15px !important
}

.u-mb-15 {
    margin-bottom: -15px !important
}

.u-mt-10 {
    margin-top: -10px !important
}

.u-ml-10 {
    margin-left: -10px !important
}

.u-mr-10 {
    margin-right: -10px !important
}

.u-mb-10 {
    margin-bottom: -10px !important
}

.u-mt-5 {
    margin-top: -5px !important
}

.u-ml-5 {
    margin-left: -5px !important
}

.u-mr-5 {
    margin-right: -5px !important
}

.u-mb-5 {
    margin-bottom: -5px !important
}

.u-mt0 {
    margin-top: 0px !important
}

.u-ml0 {
    margin-left: 0px !important
}

.u-mr0 {
    margin-right: 0px !important
}

.u-mb0 {
    margin-bottom: 0px !important
}

.u-mt5 {
    margin-top: 5px !important
}

.u-ml5 {
    margin-left: 5px !important
}

.u-mr5 {
    margin-right: 5px !important
}

.u-mb5 {
    margin-bottom: 5px !important
}

.u-mt10 {
    margin-top: 10px !important
}

.u-ml10 {
    margin-left: 10px !important
}

.u-mr10 {
    margin-right: 10px !important
}

.u-mb10 {
    margin-bottom: 10px !important
}

.u-mt15 {
    margin-top: 15px !important
}

.u-ml15 {
    margin-left: 15px !important
}

.u-mr15 {
    margin-right: 15px !important
}

.u-mb15 {
    margin-bottom: 15px !important
}

.u-mt20 {
    margin-top: 20px !important
}

.u-ml20 {
    margin-left: 20px !important
}

.u-mr20 {
    margin-right: 20px !important
}

.u-mb20 {
    margin-bottom: 20px !important
}

.u-mt25 {
    margin-top: 25px !important
}

.u-ml25 {
    margin-left: 25px !important
}

.u-mr25 {
    margin-right: 25px !important
}

.u-mb25 {
    margin-bottom: 25px !important
}

.u-mt30 {
    margin-top: 30px !important
}

.u-ml30 {
    margin-left: 30px !important
}

.u-mr30 {
    margin-right: 30px !important
}

.u-mb30 {
    margin-bottom: 30px !important
}

.u-mt35 {
    margin-top: 35px !important
}

.u-ml35 {
    margin-left: 35px !important
}

.u-mr35 {
    margin-right: 35px !important
}

.u-mb35 {
    margin-bottom: 35px !important
}

.u-mt40 {
    margin-top: 40px !important
}

.u-ml40 {
    margin-left: 40px !important
}

.u-mr40 {
    margin-right: 40px !important
}

.u-mb40 {
    margin-bottom: 40px !important
}

.u-mt45 {
    margin-top: 45px !important
}

.u-ml45 {
    margin-left: 45px !important
}

.u-mr45 {
    margin-right: 45px !important
}

.u-mb45 {
    margin-bottom: 45px !important
}

.u-mt50 {
    margin-top: 50px !important
}

.u-ml50 {
    margin-left: 50px !important
}

.u-mr50 {
    margin-right: 50px !important
}

.u-mb50 {
    margin-bottom: 50px !important
}

.u-mt55 {
    margin-top: 55px !important
}

.u-ml55 {
    margin-left: 55px !important
}

.u-mr55 {
    margin-right: 55px !important
}

.u-mb55 {
    margin-bottom: 55px !important
}

.u-mt60 {
    margin-top: 60px !important
}

.u-ml60 {
    margin-left: 60px !important
}

.u-mr60 {
    margin-right: 60px !important
}

.u-mb60 {
    margin-bottom: 60px !important
}

.u-mt65 {
    margin-top: 65px !important
}

.u-ml65 {
    margin-left: 65px !important
}

.u-mr65 {
    margin-right: 65px !important
}

.u-mb65 {
    margin-bottom: 65px !important
}

.u-mt70 {
    margin-top: 70px !important
}

.u-ml70 {
    margin-left: 70px !important
}

.u-mr70 {
    margin-right: 70px !important
}

.u-mb70 {
    margin-bottom: 70px !important
}

.u-mt75 {
    margin-top: 75px !important
}

.u-ml75 {
    margin-left: 75px !important
}

.u-mr75 {
    margin-right: 75px !important
}

.u-mb75 {
    margin-bottom: 75px !important
}

.u-mt80 {
    margin-top: 80px !important
}

.u-ml80 {
    margin-left: 80px !important
}

.u-mr80 {
    margin-right: 80px !important
}

.u-mb80 {
    margin-bottom: 80px !important
}

.u-mt85 {
    margin-top: 85px !important
}

.u-ml85 {
    margin-left: 85px !important
}

.u-mr85 {
    margin-right: 85px !important
}

.u-mb85 {
    margin-bottom: 85px !important
}

.u-mt90 {
    margin-top: 90px !important
}

.u-ml90 {
    margin-left: 90px !important
}

.u-mr90 {
    margin-right: 90px !important
}

.u-mb90 {
    margin-bottom: 90px !important
}

.u-mt95 {
    margin-top: 95px !important
}

.u-ml95 {
    margin-left: 95px !important
}

.u-mr95 {
    margin-right: 95px !important
}

.u-mb95 {
    margin-bottom: 95px !important
}

.u-mt100 {
    margin-top: 100px !important
}

.u-ml100 {
    margin-left: 100px !important
}

.u-mr100 {
    margin-right: 100px !important
}

.u-mb100 {
    margin-bottom: 100px !important
}

.u-rollover {
    transition: opacity .3s ease
}

.u-rollover:hover,.u-rollover:active {
    opacity: .7
}

.u-size--xxsmall {
    font-size: 1.3rem !important
}

.u-size--xsmall {
    font-size: 1.4rem !important
}

.u-size--small {
    font-size: 1.5rem !important
}

.u-size--medium {
    font-size: 1.6rem !important
}

.u-size--large {
    font-size: 1.7rem !important
}

.u-size--xlarge {
    font-size: 1.8rem !important
}

.u-size--xxlarge {
    font-size: 1.9rem !important
}

.u-page__width {
    width: 960px;
    margin-right: auto;
    margin-left: auto
}

.u-space-section--near {
    margin-top: 50px
}

.u-space-section--near:first-child {
    margin-top: 0
}

.u-space-section--normal {
    margin-top: 70px
}

.u-space-section--normal:first-child {
    margin-top: 0
}

.u-space-section--far {
    margin-top: 90px
}

.u-space-section--far:first-child {
    margin-top: 0
}

.u-space--near {
    margin-top: 15px
}

.u-space--near:first-child {
    margin-top: 0
}

.u-space--normal {
    margin-top: 20px
}

.u-space--normal:first-child {
    margin-top: 0
}

.u-space--far {
    margin-top: 30px
}

.u-space--far:first-child {
    margin-top: 0
}

.u-space--none {
    margin-top: 0 !important
}

.u-spacing--near {
    letter-spacing: .02em
}

.u-spacing--normal {
    letter-spacing: .05em
}

.u-spacing--far {
    letter-spacing: .08em
}

.u-spacing--none {
    letter-spacing: 0
}

.u-weight--normal {
    font-weight: 500 !important
}

.u-weight--bold {
    font-weight: 700 !important
}

.u-style--underline {
    text-decoration: underline !important
}

.u-style--italic {
    font-style: oblique !important
}

@media screen and (min-width: 1025px) {
    .t-main {
        padding-top:12.6rem
    }
}

@media screen and (max-width: 1024px) {
    .t-main {
        padding-top:7rem
    }
}

.header {
    position: fixed;
    top: 0;
    left: 0;
    transition: .2s ease
}

@media screen and (min-width: 1025px) {
    .header {
        padding-bottom:0
    }
}

@media screen and (max-width: 1024px) {
    .header {
        height:auto
    }
}

@media screen and (min-width: 1025px) {
    .header.is-scroll {
        top:-82px
    }
}

.p-home .header.is-scroll-filter .n-global-custom {
    opacity: 1;
    visibility: visible
}

.h-menu__content {
    overflow: inherit
}

@media screen and (max-width: 1024px) {
    .h-menu__content {
        top:initial
    }
}

@media screen and (min-width: 1025px) {
    .h-inner {
        padding:1.8rem 1.6rem;
        align-items: center
    }
}

@media screen and (max-width: 1024px) {
    .h-inner {
        margin-right:0;
        align-items: inherit
    }
}

.n-global {
    bottom: 0
}

@media print,screen and (min-width: 961px) {
    .n-global__btn,.n-global__link {
        height:100%
    }

    .n-global {
        height: 48px
    }

    .n-global__list {
        height: 100%
    }
}

@media screen and (min-width: 1025px) {
    .h-logo {
        display:flex;
        gap: 2rem
    }
}

@media screen and (max-width: 1024px) {
    .h-logo {
        width:11rem;
        padding: .8rem 0
    }
}

@media screen and (max-width: 1024px) {
    .h-logo-text {
        margin-top:.5rem
    }
}

.h-logo-text>p {
    line-height: 1.3
}

@media screen and (min-width: 1025px) {
    .h-logo-text>p {
        font-size:1.4rem;
        font-weight: 500;
        color: #333
    }
}

@media screen and (max-width: 1024px) {
    .h-logo-text>p {
        font-size:1rem
    }
}

@media screen and (max-width: 1024px) {
    .h-menu {
        width:60px
    }
}

@media screen and (max-width: 1024px) {
    .h-menu__btn {
        margin-left:0;
        width: 60px;
        height: 7rem;
        padding-bottom: 1.2rem
    }
}

.h-menu__btn .h-menu__btnTxt {
    margin-bottom: 0
}

@media screen and (max-width: 1024px) {
    .h-menu__btn .h-menu__btnTxt::before {
        top:2.4rem
    }
}

@media screen and (max-width: 1024px) {
    .h-menu__btn[aria-expanded=false]::before {
        top:1.6rem
    }
}

@media screen and (max-width: 1024px) {
    .h-menu__btn[aria-expanded=false]::after {
        top:3.2rem
    }
}

@media screen and (min-width: 1025px) {
    .h-search {
        margin-left:0;
        margin-bottom: 0
    }
}

.h-search__inner {
    overflow: hidden
}

@media screen and (min-width: 1025px) {
    .h-search__inner {
        border-radius:2.2rem
    }
}

@media screen and (max-width: 1024px) {
    .h-search__inner {
        border-radius:2rem
    }
}

.h-search__input {
    color: #333
}

.h-search__input::-webkit-input-placeholder {
    color: #999
}

.h-search__input::-moz-placeholder {
    color: #999
}

.h-search__input:-ms-input-placeholder {
    color: #999
}

.h-search__input::placeholder {
    color: #999
}

@media screen and (min-width: 1025px) {
    .h-search__input {
        padding:1rem 2rem;
        font-size: 1.6rem;
        line-height: 1;
        margin-bottom: 0
    }
}

@media screen and (max-width: 1024px) {
    .h-search__input {
        padding:.8rem 0 .8rem 2rem
    }
}

.h-search__btn {
    padding: 0 2rem
}

@media screen and (min-width: 1025px) {
    .h-btn-list {
        margin-bottom:0
    }

    .h-btn-list.spOnly {
        display: none
    }
}

@media screen and (max-width: 1024px) {
    .h-btn-list {
        margin-bottom:0;
        justify-content: flex-end
    }

    .h-btn-list.pcOnly {
        display: none
    }
}

.h-menu__group {
    z-index: 101
}

@media screen and (min-width: 1025px) {
    .h-menu__group {
        gap:0 2rem;
        align-items: center
    }
}

@media screen and (max-width: 1024px) {
    .h-btn-list__item {
        width:auto
    }
}

@media screen and (min-width: 1025px) {
    .h-btn-list__btn {
        padding:1.2rem 0;
        border-radius: 2.2rem
    }
}

@media screen and (max-width: 1024px) {
    .h-btn-list__btn {
        display:block;
        height: 100%;
        font-size: 1.2rem;
        font-weight: 500;
        padding: .5rem;
        width: 6rem
    }

    .h-btn-list__btn>img {
        margin-right: 0;
        display: block;
        margin: auto;
        margin-top: 1rem;
        margin-bottom: 1rem
    }

    .h-btn-list__btn>span {
        position: absolute;
        bottom: .8rem
    }
}

.h-btn-list__btn.h-btn-list__btn--color-01 {
    color: #0e3192;
    background-color: #d5edff
}

@media screen and (min-width: 1025px) {
    .h-btn-list__btn.h-btn-list__btn--color-01 {
        border:1px solid #0e3192
    }
}

.h-btn-list__btn.h-btn-list__btn--color-02 {
    color: #fff;
    background-color: #b81c2b;
    border: 1px solid #b81c2b
}

.menu-dropdown--white {
    background-color: #fff
}

@media screen and (min-width: 1025px) {
    .n-child-foot {
        background-color:#fff
    }
}

@media screen and (max-width: 1024px) {
    .n-child-foot {
        padding-bottom:2.8rem
    }
}

@media screen and (min-width: 1025px) {
    .n-child-foot__inner {
        display:flex;
        justify-content: space-between;
        max-width: 1200px;
        margin: 0 auto;
        padding: 2.4rem 1.6rem 4rem;
        box-sizing: content-box
    }
}

.n-child-foot__inner .n-child__dl {
    padding-bottom: 0;
    margin-bottom: 0
}

.n-child-closeBtn-blue .n-child__close {
    border-color: #0e3192
}

.n-child-closeBtn-blue .n-child__close::after {
    background-color: #0e3192
}

.n-child-closeBtn-blue .n-child__close:before {
    background-color: #0e3192
}

.n-child__dd {
    margin-bottom: 0 !important
}

.n-child__dd+.n-child__dt {
    margin-top: 4.5rem
}

@media screen and (max-width: 1024px) {
    .n-child__dd+.n-child__dt {
        padding-top:0;
        margin-top: 2.8rem;
        border-top: none
    }
}

.n-child__dt {
    color: #333;
    display: flex;
    align-items: center;
    gap: 1.6rem;
    font-size: 2rem;
    margin-bottom: 1.8rem;
    padding-bottom: 0
}

@media screen and (max-width: 1024px) {
    .n-child__dt {
        background-color:#fff;
        font-size: 1.6rem;
        padding: 2.4rem 1.6rem 1.6rem;
        border-top: 1px solid #ccc;
        margin-bottom: 0
    }
}

.n-child__dt .text {
    margin-bottom: 0
}

.n-child__dt .image {
    display: block;
    width: 12.1rem
}

@media screen and (max-width: 1024px) {
    .n-child__dt .image {
        width:10rem
    }
}

.n-link-list-02 {
    display: flex;
    flex-wrap: wrap
}

@media screen and (min-width: 1025px) {
    .n-link-list-02 {
        gap:1rem
    }

    .n-link-list-02>li {
        width: calc((100% - 5rem)/6)
    }
}

@media screen and (max-width: 1024px) {
    .n-link-list-02 {
        gap:.9rem
    }

    .n-link-list-02>li {
        width: calc((100% - .9rem)/2)
    }
}

.n-link-list-02>li {
    border: 1px solid #ccc;
    height: 50px
}

@media screen and (min-width: 1025px) {
    .n-link-list-02__item:nth-child(2n+1) {
        border-right:1px solid #ccc
    }
}

.n-link-list-02__item:last-child {
    border-bottom: 1px solid #ccc
}

.n-link-list-02__item:last-child::before {
    display: none
}

.n-link-list-02__link>img {
    height: auto
}

.n-link-list-03 {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 2.7rem;
    margin-top: 3rem
}

@media screen and (max-width: 1024px) {
    .n-link-list-03 {
        gap:.9rem;
        margin-top: 2rem
    }
}

.n-link-list-03 .n-link-list-03__item {
    border: none
}

@media screen and (max-width: 1024px) {
    .n-link-list-03 .n-link-list-03__item {
        width:calc((100% - .9rem)/2)
    }
}

.n-link-list-03 .n-link-list-03__item:last-child:before {
    display: none
}

.n-link-list-03 .n-link-list-03__link {
    color: #0e3192;
    background-color: #fff;
    border: none;
    padding: 0
}

@media screen and (max-width: 1024px) {
    .n-link-list-03 .n-link-list-03__link {
        display:block;
        padding-left: 1.5rem
    }
}

.n-link-list-03 .n-link-list-03__link .n-link-list-03__txt {
    color: #0e3192;
    font-size: 1.6rem;
    font-weight: 500
}

@media screen and (max-width: 1024px) {
    .n-link-list-03 .n-link-list-03__link .n-link-list-03__txt {
        font-size:1.4rem
    }
}

.n-link-list-03 .n-link-list-03__link .n-link-list-03__txt::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    width: 7px;
    height: 11px;
    transition: opacity .3s;
    background-image: url(/assets/img/icon_arrow_blue.svg);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    background-size: 7px 11px
}

@media screen and (max-width: 1024px) {
    .n-link-list-03 .n-link-list-03__link .n-link-list-03__txt::before {
        top:.3rem;
        bottom: initial
    }
}

@media screen and (max-width: 960px) {
    .n-global__btn,.n-global__link {
        padding:16px 8px
    }
}

.n-child-title {
    font-size: 2rem;
    line-height: 1.3;
    font-weight: 700
}

@media screen and (max-width: 1024px) {
    .n-child-title {
        font-size:1.6rem
    }
}

.n-box-link-list {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-top: 1.8rem
}

@media screen and (max-width: 1024px) {
    .n-box-link-list {
        gap:.9rem;
        margin-top: 1.5rem
    }
}

.n-box-link-list+.n-child-title {
    margin-top: 4rem
}

@media screen and (max-width: 1024px) {
    .n-box-link-list+.n-child-title {
        margin-top:2.5rem
    }
}

.n-box-link-list>li {
    width: calc((100% - 5rem)/6);
    border: 1px solid #ccc
}

@media screen and (max-width: 1024px) {
    .n-box-link-list>li {
        width:calc((100% - .9rem)/2)
    }
}

.n-box-link-list>li a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 1.4rem 3.8rem 1.5rem 1.6rem;
    color: #0e3192;
    font-size: 1.6rem;
    height: 100%;
    font-weight: 700;
    line-height: 1.3;
    transition: .2s ease
}

@media screen and (max-width: 1024px) {
    .n-box-link-list>li a {
        font-size:1.5rem;
        padding: .9rem 2rem
    }
}

.n-box-link-list>li a:hover {
    opacity: .5
}

.n-box-link-list>li a::after {
    content: "";
    position: absolute;
    display: block;
    width: 7px;
    height: 11px;
    background-image: url(/assets/img/icon_arrow_blue.svg);
    background-repeat: no-repeat;
    background-position: .7rem 1.1rem;
    background-position: center;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    right: 1.6rem;
    top: 0;
    bottom: 0;
    margin: auto
}

@media screen and (max-width: 1024px) {
    .n-box-link-list>li a::after {
        right:.8rem
    }
}

@media screen and (max-width: 1024px) {
    .n-child__body--inner {
        padding:2.4rem 1.6rem
    }
}

.n-global-02-foot {
    padding-bottom: 4.5rem
}

.n-global-02-foot>li:not(:first-child) {
    margin-top: .9rem
}

.n-global-02-foot-item {
    border: 1px solid #0e3192;
    background-color: #0e3192;
    display: block;
    color: #fff;
    font-size: 1.3rem;
    padding: 1.4rem;
    text-align: center;
    font-weight: 700
}

.n-global-02-foot-item[target=_blank]:after {
    display: inline-block;
    content: "";
    width: 1rem;
    height: .8rem;
    margin-left: .8rem;
    background-image: url(/assets/img/icon_blank_white.png);
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center
}

.n-global-02-foot-item.color01 {
    background-color: #d5edff;
    color: #0e3192
}

.n-global-02-foot-item.color01[target=_blank]:after {
    background-image: url(/assets/img/icon_blank_blue.png)
}

.n-global-02-foot-item.color02 {
    border-color: #ccc;
    background-color: #fff;
    color: #0e3192
}

.n-global-02-foot-item.color02[target=_blank]:after {
    background-image: url(/assets/img/icon_blank_blue.png)
}

.m-link-list-02__item>.m-link-list-02>.m-link-list-02__item>.m-link {
    font-weight: 500
}

@media print,screen and (min-width: 961px) {
    .m-layout-toggle__container+figure {
        margin-right:1.5rem
    }
}

@media screen and (max-width: 960px) {
    .m-widget-modal__filterHeadingWrap {
        display:block;
        padding: 2rem 1.5rem
    }

    .m-widget-modal__filterHeadingTxt {
        font-size: 2rem;
        margin-bottom: 0
    }

    .m-widget-modal__filterContent {
        display: block
    }

    .m-widget-modal__filter {
        height: auto;
        padding: 0 1.5rem 2rem
    }
}

@media screen and (max-width: 960px) {
    .h-menu-member.pcOnly {
        display:none
    }
}

.h-menu-member.spOnly {
    height: 100%
}

@media print,screen and (min-width: 961px) {
    .h-menu-member.spOnly {
        display:none
    }
}

.h-menu-member__button {
    background-color: #0e3192;
    align-items: center;
    font-weight: 500;
    color: #fff;
    padding: 1.4rem 4rem 1.4rem 2rem;
    font-size: 1.6rem
}

@media print,screen and (min-width: 961px) {
    .h-menu-member__button {
        display:inline-flex;
        border-radius: 2.2rem;
        height: 100%
    }
}

@media screen and (max-width: 960px) {
    .h-menu-member__button {
        height:70px;
        font-size: 1.2rem;
        padding: .7rem
    }

    .h-menu-member__button>span {
        display: block;
        margin-top: .7rem
    }
}

.h-menu-member__button::before {
    content: "";
    display: block;
    width: 1.7rem;
    height: 1.9rem;
    background-image: url(/assets/img/icon_member.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    margin-right: 1rem
}

@media screen and (max-width: 960px) {
    .h-menu-member__button::before {
        margin:auto;
        width: 1.7rem;
        height: 1.9rem
    }
}

.h-menu-member__button::after {
    content: "";
    position: absolute;
    display: block;
    width: .7rem;
    height: 7.7rem;
    background-image: url(/assets/img/icon_angle_white.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    right: 2rem;
    transition: .2s ease
}

@media screen and (max-width: 960px) {
    .h-menu-member__button::after {
        display:none
    }
}

.h-menu-member__button[aria-selected=true]::after {
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg)
}

.h-menu-member__dropdown {
    position: absolute;
    display: none;
    background-color: #fff;
    box-shadow: 2.121px 2.121px 16px 0px rgba(0,0,0,.1);
    top: 100%;
    z-index: 100;
    right: 2.2rem
}

@media screen and (max-width: 960px) {
    .h-menu-member__dropdown {
        right:0;
        max-width: 15.5rem
    }
}

@media screen and (max-width: 960px) {
    .h-menu-member__list {
        padding-bottom:.4rem
    }
}

.h-menu-member__list li {
    width: 100%
}

.h-menu-member__list li a {
    display: block;
    padding: 1rem 2.4rem;
    width: 100%;
    font-size: 1.6rem;
    transition: .2s ease
}

@media screen and (max-width: 960px) {
    .h-menu-member__list li a {
        padding:.8rem;
        font-size: 1.5rem
    }
}

.h-menu-member__list li a:hover {
    background-color: #f1f1f1;
    color: #0e3192
}

.h-menu-member__list li.info {
    font-size: 1.3rem;
    color: #0e3192;
    padding: .8rem .8rem 0
}

.h-menu-member__list li.info>span {
    display: block;
    border-bottom: 1px solid #ccc;
    padding-bottom: .8rem
}

.n-global-custom {
    position: absolute;
    top: 100%;
    background-color: #fff;
    width: 100%;
    box-shadow: 2.121px 2.121px 16px 0px rgba(0,0,0,.1);
    opacity: 0;
    visibility: hidden;
    transition: .2s ease
}

@media screen and (max-width: 1024px) {
    .n-global-custom.pcOnly {
        display:none
    }
}

@media screen and (min-width: 1025px) {
    .n-global-custom.spOnly {
        display:none
    }
}

@media screen and (max-width: 960px) {
    .n-global-custom {
        padding:1.2rem 1.6rem
    }
}

.n-global-custom__inner {
    display: flex;
    align-items: center;
    justify-content: space-between
}

@media print,screen and (min-width: 961px) {
    .n-global-custom__inner {
        padding:.5rem 83px;
        max-width: 1366px;
        margin: auto
    }
}

@media print,screen and (min-width: 961px) {
    .n-global-custom__wrap {
        display:flex;
        align-items: center
    }
}

@media screen and (max-width: 960px) {
    .n-global-custom__wrap {
        flex:1
    }
}

.n-global-custom__wrap .l-wring-list {
    flex: 1
}

.n-global-custom__text {
    font-size: 1.6rem;
    line-height: 1.3
}

@media screen and (max-width: 960px) {
    .n-global-custom__text {
        font-size:1.2rem;
        margin-bottom: 1rem
    }
}

.n-global-custom__button {
    display: inline-flex;
    align-items: center;
    padding: 1.2rem 1.6rem;
    font-size: 1.6rem;
    font-weight: 700;
    color: #0e3192;
    border: 2px solid #0e3192;
    transition: .2s ease
}

@media screen and (max-width: 960px) {
    .n-global-custom__button {
        padding:.9rem 1.2rem;
        font-size: 1.2rem
    }
}

.n-global-custom__button:hover {
    opacity: .5
}

.n-global-custom__button::after {
    content: "";
    width: 1.8rem;
    height: 1.6rem;
    display: inline-block;
    background-image: url(/assets/img/icon_key_blue.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    margin-left: .9rem
}

@media screen and (max-width: 960px) {
    .n-global-custom__button::after {
        width:1.5rem;
        height: 1.3rem;
        margin-left: .7rem
    }
}

#block-footer2 .f-row-04__inner {
    padding: 24px 0
}

@media screen and (max-width: 1024px) {
    #block-footer2 .f-row-04__inner {
        flex-direction:column;
        padding: 2.4rem 1.6rem 1.6rem
    }

    #block-footer2 .f-row-04__inner .f-logo {
        text-align: left
    }
}

#block-footer2 .f-row-04__wrapper {
    text-align: right
}

@media screen and (max-width: 1024px) {
    #block-footer2 .f-row-04__wrapper {
        margin-top:2.5rem;
        text-align: center
    }
}

@media screen and (min-width: 1025px) {
    #block-footer2 .f-row-04 .f-copyright br {
        display:none
    }
}

#block-footer2 .f-row-04 .f-link-list-04 {
    margin-bottom: 2.5rem
}

@media screen and (max-width: 1024px) {
    #block-footer2 .f-row-04 .f-link-list-04 {
        display:block
    }

    #block-footer2 .f-row-04 .f-link-list-04>li:not(:first-child) {
        margin-top: 1.5rem
    }
}

#block-footer2 .f-row-04 .f-link-list-04 .f-link-list-04__link {
    color: #0e3192
}

#block-footer2 .f-row-04 .f-link-list-04 .f-link-list-04__link::before {
    background-color: #0e3192
}

#block-footer2 .f-row-04 .f-link-list-04 .f-link-list-04__link[target=_blank] .f-link-list-04__txt::after {
    background-image: url("/themes/custom/medical_navi_theme/images/icon/blank-blue.png")
}

.is-old .m-widget-calendar-add__triggerInner {
    background-color: #f0f0f0 !important
}

.is-old .m-widget-calendar-add__trigger:hover {
    border-color: #eff2fc !important
}

.m-widget-calendar-add__item {
    padding: 3.7rem .9rem 1rem
}

.m-widget-calendar-add__trigger {
    position: relative;
    display: block;
    width: 100%;
    text-align: left;
    border: 1px solid #eff2fc
}

.m-widget-calendar-add__trigger:hover {
    border-color: #0e3192
}

.m-widget-calendar-add__trigger[aria-expanded=true] .m-widget-calendar-add__balloon {
    opacity: 1;
    visibility: visible
}

.m-widget-calendar-add__trigger[aria-expanded=true] .m-widget-calendar-add__balloon:before,.m-widget-calendar-add__trigger[aria-expanded=true] .m-widget-calendar-add__balloon:after {
    opacity: 1;
    visibility: visible
}

.m-widget-calendar-add__trigger+.m-widget-calendar-add__trigger {
    margin-top: .8rem
}

.m-widget-calendar-add__trigger.green .m-widget-calendar-add__budge {
    background-color: #01809f
}

.m-widget-calendar-add__trigger.green .m-widget-calendar-add__triggerInner {
    background-color: #eef7f9
}

.m-widget-calendar-add__trigger.green .m-widget-calendar-add__balloon::before {
    border-bottom-color: #eef7f9
}

.m-widget-calendar-add__trigger.green .m-widget-calendar-add__balloon::after {
    border-bottom-color: #01809f
}

.m-widget-calendar-add__trigger.green .m-widget-calendar-add__balloonInner {
    background-color: #eef7f9;
    border-color: #01809f
}

.m-widget-calendar-add__trigger.green:hover {
    border-color: #01809f
}

.m-widget-calendar-add__triggerInner {
    cursor: pointer;
    background-color: #eff2fc;
    padding: .8rem
}

.m-widget-calendar-add__budge {
    display: inline-block;
    line-height: 1;
    background-color: #0e3192;
    color: #fff;
    padding: .5rem .9rem;
    font-size: 1.3rem
}

.m-widget-calendar-add__date {
    font-size: 1.4rem;
    color: #333;
    line-height: 1.3;
    margin-top: .4rem
}

.m-widget-calendar-add__text {
    font-size: 1.4rem;
    color: #000;
    line-height: 1.3;
    margin-top: .2rem;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden
}

.m-widget-calendar-add__balloon {
    position: absolute;
    top: 99%;
    width: 550px;
    z-index: 10;
    padding-top: 16px;
    opacity: 0;
    visibility: hidden;
    left: 0
}

.m-widget-calendar-add__balloon[aria-expanded=true] {
    opacity: 1;
    visibility: visible
}

.m-widget-calendar-add__balloonInner {
    position: relative;
    display: block;
    background: #eff2fc;
    border: 1px solid #0e3192;
    box-shadow: 0 3px 4px rgba(0,0,0,.2);
    padding: 4.4rem 2.4rem 2.4rem;
    color: #333;
    position: relative
}

.m-widget-calendar-add__balloon::before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border: rgba(0,0,0,0) 1px solid;
    border-width: 0 10px 16px;
    border-bottom-color: #eff2fc;
    position: absolute;
    top: 1px;
    left: min(5vw,65px);
    z-index: 12;
    opacity: 0;
    visibility: hidden
}

.m-widget-calendar-add__balloon::after {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border: rgba(0,0,0,0) 1px solid;
    border-width: 0 10px 16px;
    position: absolute;
    top: -1px;
    left: min(5vw - 1px,64px);
    z-index: 2;
    border-width: 0 11px 18px;
    border-bottom-color: #0e3192;
    z-index: 11;
    opacity: 4;
    visibility: hidden
}

.m-widget-calendar-add__balloonClose {
    position: absolute;
    display: block;
    width: 2.3rem;
    height: 2.3rem;
    border-radius: 50%;
    color: rgba(0,0,0,0);
    transition: opacity .3s;
    background-color: #999;
    top: .9rem;
    right: 1rem
}

.m-widget-calendar-add__balloonClose::before,.m-widget-calendar-add__balloonClose::after {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 17px;
    height: 1px;
    background-color: #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.m-widget-calendar-add__balloonClose::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.m-widget-calendar-add__balloonHead {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem
}

.m-widget-calendar-add__balloonHeadInner {
    display: flex;
    align-items: center;
    gap: .7rem
}

.m-widget-calendar-add__balloonMid {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-top: 2rem
}

.m-widget-calendar-add__balloonDate {
    font-size: 1.8rem;
    line-height: 1.3;
    font-weight: 500
}

.m-widget-calendar-add__balloonDate span {
    font-size: 2.2rem
}

.m-widget-calendar-add__balloonHeld {
    background-color: #b81c2b;
    font-size: 1.4rem;
    color: #fff;
    padding: .6rem .7rem;
    line-height: 1.3
}

.m-widget-calendar-add__balloonTitle {
    margin-top: 1rem;
    line-height: 1.3;
    font-weight: 700;
    font-size: 2rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #ccc
}

.m-widget-calendar-add__balloonList {
    margin-top: 1.6rem
}

.m-widget-calendar-add__balloonList>li dl {
    display: flex;
    gap: 1.6rem;
    align-items: baseline
}

.m-widget-calendar-add__balloonList>li dl dt {
    font-size: 1.6rem;
    font-weight: 700
}

.m-widget-calendar-add__balloonDiv {
    font-size: 1.6rem;
    line-height: 1.3
}

.m-widget-calendar-add__balloonName {
    margin-top: .6rem;
    font-size: 1.6rem;
    line-height: 1.3
}

.m-widget-calendar-add__balloonName+.m-widget-calendar-add__balloonListDiv {
    margin-top: 1rem
}

.m-widget-calendar-add__btn {
    margin-top: 2.5rem
}

.m-widget-calendar-add__btnInner {
    display: flex;
    gap: 1.5rem
}

.m-widget-calendar__table tbody tr td:nth-child(5) .m-widget-calendar-add__balloon,.m-widget-calendar__table tbody tr td:nth-child(6) .m-widget-calendar-add__balloon,.m-widget-calendar__table tbody tr td:nth-child(7) .m-widget-calendar-add__balloon {
    right: -10px;
    left: auto
}

.m-widget-calendar__table tbody tr td:nth-child(5) .m-widget-calendar-add__balloon::before,.m-widget-calendar__table tbody tr td:nth-child(6) .m-widget-calendar-add__balloon::before,.m-widget-calendar__table tbody tr td:nth-child(7) .m-widget-calendar-add__balloon::before {
    left: auto;
    right: min(5vw + 11px,78px)
}

.m-widget-calendar__table tbody tr td:nth-child(5) .m-widget-calendar-add__balloon::after,.m-widget-calendar__table tbody tr td:nth-child(6) .m-widget-calendar-add__balloon::after,.m-widget-calendar__table tbody tr td:nth-child(7) .m-widget-calendar-add__balloon::after {
    left: auto;
    right: min(5vw + 10px,77px)
}

.m-widget-calendar__nextBtn[aria-selected=false],.m-widget-calendar__prevBtn[aria-selected=false] {
    opacity: 0;
    pointer-events: none
}

.n-global .n-global-overlay {
    position: fixed;
    top: 57px;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: rgba(0,0,0,.6);
    visibility: hidden;
    overflow-y: auto;
    opacity: 0;
    visibility: hidden
}

@media screen and (max-width: 1024px) {
    .n-global .n-global-overlay {
        display:none
    }
}

.n-global.is-show .n-global-overlay {
    opacity: 1;
    visibility: visible
}

.n-global.is-show .n-global-custom {
    display: none
}

@media screen and (max-width: 640px) {
    .home-slider-pickup_contents {
        max-height: 215px;
    }
}
@media screen and (max-width: 960px) {
    .home-slider-pickup_contents {
        max-height: 435px;
    }
}
@media print,screen and (min-width: 961px) {
    .home-slider-pickup_contents {
        max-height: 455px;
    }
}

/* 
  ONOMEDICAL_IN-3140 トップページのスライダーナビを非表示にする
*/
/* トップページ */
/* ピックアップエリアのスライダーナビ */
@media only screen and (max-width: 767px) {
  .page-node-type-site-top .p-home-mv-slider-nav__list.js-mv-slider-nav > li > span {
    display: none;
  }
}

/*
  ONOMEDICAL_IN-2822 【Lift活用施策】施策14．トップページのフッター付近にAboutページを設置する
*/
.m-lyt-grid[data-col="2-1-1-1"] {
    -ms-grid-columns: 2fr 1fr 1fr 1fr;
    grid-template-columns: 2fr 1fr 1fr 1fr;
}
.m-btn2 {
  position: relative;
  display: inline-block;
  min-width: 150px;
  padding: 13px 30px 10px;
  line-height: 1.3;
  border: none;
  font-size: 1.4rem;
  font-weight: bold;
  height: 45px;
}
.m-btn2.m-btn--login {
  color: #0e3192;
  background-color: #d5edff;
  border:1px solid #0e3192;
}
.m-btn2.unq-login__btn--signUp {
  color: #fff;
  background-color: #b81c2b;
  border:1px solid #b81c2b;
}
.m-btn-lyt__inner .m-btn2 {
  margin: 16px 0 0 16px;
}
.p-home-members-services__ttl {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
}
.u-border2 {
  border: 1px solid #ccc;
}
.u-border-circle2 {
  border: 2px solid #7f8087;
  border-radius: 50%
}
@media only screen and (min-width: 768px) {
  .m-btn2 {
    transition: opacity 0.3s;
    padding: 1.2rem 0;
    border-radius: 2.2rem;
  }
  .m-btn2:hover, .m-btn2:active, .m-btn2:focus {
    opacity: 0.5;
  }
  .m-btn2:hover[disabled=disabled], .m-btn2:active[disabled=disabled], .m-btn2:focus[disabled=disabled] {
    opacity: 1;
    cursor: default;
  }
  .pc-only-br {
    display:inline;
  }
}
@media only screen and (max-width: 767px) {
  .u-border-circle, .u-border-circle2 {
    margin: auto;
    display: block;
    width: 30%;
  }
  .pc-only-br {
    display:none;
  }
}
