body {
    font-family: "Roboto", "Noto Sans JP", sans-serif;
    letter-spacing: 1px;
}

.hover:hover {
    cursor: pointer;
    opacity: 0.7;
    transition: .3s;
}

header {
    background: #00316C;
    height: 60px;
    width: 100%;
    position: fixed;
    top: 0;
    color: #fff !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 500;
}

header div.left,
header div.right {
    display: flex;
    align-items: center;
}

header div.right a.profile {
    margin-right: 16px;
}

header div.right p.tel {
    display: flex;
    align-items: center;
    font-size: 17px;
    margin-right: 24px;
}

header div.right p.tel img {
    margin-right: 6px;
}

header div.right p.tel small {
    font-size: 8px;
    margin-left: 10px;
}

header div.right div.button {
    border-left: 1px solid #6884a7;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
}

header div.right div.button:hover {
    background: #63AFCE;
}

header #logo,
header #logo_common {
    margin-left: 21px;
    width: 256px;
}

header #logo_sp {
    display: none;
    width: 116.07px;
}

header span.myname {
    font-weight: bold;
    font-size: 13px;
    letter-spacing: 3px !important;
    display: flex;
    align-items: center;
}

header span.myname strong {
    font-size: 15px;
    margin-right: 5px;
}

header span.myname img {
    margin-left: 36.87px;
    margin-right: 9px;
}

.button.tel.sp {
    display: none;
}

div.container {
    /*min-height: 700px;*/
    /*margin-top: 60px;*/
}

div.rules {
    text-align: center;
    padding-bottom: 16px;
}

div.rules.right {
    text-align: right;
    padding-right: 16px;
}

div.rules a {
    color: #00316C;
    text-decoration: underline !important;
}

footer .tel-info {
    padding: 39px 0;
    width: 100%;
    color: #fff;
    background: linear-gradient(99.41deg, #00306C 13.02%, #0061AB 44.71%, #00A6CB 87.89%, #75C1C4 117.95%);
    position: relative;
}

.tel-info p {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 350;
    font-size: 13px;
    line-height: 19px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #FFFFFF;
}

.tel-info p.small {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 350;
    font-size: 10px;
    line-height: 15px;
    text-align: center;
    letter-spacing: 0.01em;
    color: #FFFFFF;
}

/* 非表示にし、JS側でユーザーエージェント判定をして表示させる */
.sm-show {
    display: none;
}

footer .tel-info p.tel {
    font-size: 24px;
    margin-top: 6px;
    margin-bottom: 4px;
    font-weight: lighter;
    font-family: "Roboto";
}

footer .tel-info p.tel img {
    position: relative;
    top: 1px;
}

footer .tel-info #to-top {
    display: inline-block;
    position: absolute;
    right: 46px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

footer .tel-info #to-top p {
    margin-top: 8px;
    font-size: 10px;
}

footer .group {
    font-size: 10px !important;
    color: #00316C;
    background: #fff;
    text-align: center;
    padding: 60px 0;
}

footer .group img.logo_footer {
    margin-bottom: 37px;
}

footer .group a {
    font-weight: bold;
    font-size: 10px !important;
}

div#page_top img {
    width: 42px;
    height: auto;
}

footer .copyright {
    background: #00316C;
    width: 100%;
    color: #fff;
    font-size: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 30px;
}

footer .footer-logo {
    width: 300px;
}

.overlay {
    content: "";
    display: block;
    width: 0;
    height: 0;
    background-color: rgba(0, 0, 0, 0.5);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    opacity: 0;
    transition: opacity .5s;
}

.overlay.open {
    width: 100%;
    height: 100%;
    opacity: 1;
}

.breadcrumb_box {
    background: #DDDDDD;
    padding: 10px 50px 13px;
}

.breadcrumb_box span {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 8px;
    line-height: 12px;
    letter-spacing: 0.1em;
    color: #00316C;
    margin: 0 3px;
}

.breadcrumb_box a:hover {
    text-decoration: underline !important;
    text-decoration-color: #00316C !important;
}

.calendar {
    position: relative;
}

.calendar::after {
    content: " ";
    background: url("/images/calendar.png");
    width: 24px;
    height: 22.8px;
    background-size: contain;
    margin-right: 10px;
    border-radius: 2px;
    transition: .3s;
    position: absolute;
    right: 10px;
    top: 0;
}

.calendar:hover {
    cursor: pointer;
}

.calendar:hover::after {
    opacity: .5;
    transition: .3s;
}

p.font-small {
    font-size: 12px !important;
    line-height: 14px !important;
}

/*nav-------------------------------------------------------------------------*/

.drawer-hamburger {
    position: inherit !important;
    top: auto;
    right: 0;
}

ul.drawer-menu {
    background: #E8EBF0;
    position: absolute;
    top: 60px;
    width: 720px;
}

ul.drawer-menu>li {
    border-bottom: solid 2px #FFFFFF;
    background-image: url(../images/mypage/arrow.svg);
    background-position: 45% 50%;
    background-repeat: no-repeat;
}

a.drawer-menu-item {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 13px;
    line-height: 19px;
    letter-spacing: 0.1em;
    color: #00306C;
    padding: 20px 24px;
}

a.drawer-menu-item:hover {
    background: #FFFFFF;
    text-decoration: none;
    color: #00306C;
    background-image: url(../images/mypage/arrow.svg);
    background-position: 45% 50%;
    background-repeat: no-repeat;
}

.drawer-overlay {
    background: #000000;
    opacity: 0.5;
}

button.drawer-toggle.drawer-hamburger {
    width: 60px;
    height: 57px;
    background-image: url(../images/icon_menu.svg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
}

button.drawer-toggle.drawer-hamburger.active {
    background: #63AFCE url(../images/icon_menu_h.svg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    transition-duration: 0.5s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    cursor: pointer;
}

.button .icon_tel {
    width: 60px;
    height: 57px;
    background-image: url(../images/icon_tel.svg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
}

.button .icon_tel:hover {
    background: #63AFCE url(../images/icon_tel.svg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    transition-duration: 0.5s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    cursor: pointer;
}

.button .phone_book {
    text-align: center;
    line-height: 17px;
    font-size: 14px;
    letter-spacing: 1px;
}

.button .icon_logout {
    width: 60px;
    height: 57px;
    background-image: url(../images/icon_logout.svg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
}

.button .icon_logout:hover {
    background: #63AFCE url(../images/icon_logout.svg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    transition-duration: 0.5s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    cursor: pointer;
}

.button .icon_login {
    width: 60px;
    height: 57px;
    background-image: url(../images/icon_login.svg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
}

.button .icon_login:hover {
    background: #63AFCE url(../images/icon_login.svg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    transition-duration: 0.5s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    cursor: pointer;
}

.btn_profile {
    border: #fff 1px solid;
    font-size: x-small;
    padding: 8px 10px;
    margin-right: 10px;
}

.btn_profile img {
    width: 15px;
    height: 16px;
}

.btn_profile:hover {
    background-repeat: no-repeat;
    background-position: 50% 50%;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    transition-duration: 0.5s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    cursor: pointer;
}

img.icon-question {
    height: 16px;
    cursor: pointer;
}


/*login-----------------------------------------------------------------------*/

.login_menu ul>li {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: normal;
    font-size: 15px;
    line-height: 22px;
    letter-spacing: 0.1em;
    text-decoration-line: underline;
    color: #00316C;
}

.login_menu ul>li {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: normal;
    font-size: 15px;
    line-height: 22px;
    letter-spacing: 0.1em;
    text-decoration-line: underline;
    color: #00316C;
}

.login_menu ul>li:hover {
    opacity: 0.5;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    cursor: pointer;
}


/*forgot----------------------------------------------------------------------*/

.forgot p,
.reset p,
#analyze p {
    font-style: normal;
    font-weight: 300;
    font-size: 15px;
    line-height: 30px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

.reset div {
    font-family: Roboto;
    font-style: normal;
    font-weight: 300;
    font-size: 41px;
    line-height: 48px;
    text-align: center;
    color: #00316C;
}

.reset div>span {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 12px;
    line-height: 18px;
    text-align: center;
    letter-spacing: 0.01em;
    color: #00316C;
    display: block;
}

.clean_up div {
    font-family: Roboto;
    font-style: normal;
    font-weight: 300;
    font-size: 41px;
    line-height: 48px;
    text-align: center;
    color: #00316C;
}

.clean_up div>span {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 400;
    font-size: 17px;
    line-height: 25px;
    text-align: left;
    letter-spacing: 0.01em;
    color: #00316C;
    display: block;
}


/*info----------------------------------------------------------------------*/

#info>#news_list li:nth-child(n+1):hover {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    cursor: pointer;
}

#info .lg_btn {
    background: #FFFFFF;
    border-radius: 0;
    width: 220px;
    padding: 10px 0;
    text-align: center;
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 13px;
    line-height: 160%;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
    margin: 0 auto;
    background-image: url(../images/arrow_n_r.svg);
    background-position: 90% 50%;
    background-repeat: no-repeat;
    border: 1px solid #00316C;
}

#info .lg_btn.return {
    background-image: url(../images/arrow_n_l.svg);
    background-position: 10% 50%;
    background-repeat: no-repeat;
}

#info .lg_btn:hover {
    background: #00316C;
    color: #FFFFFF !important;
    background-image: url(../images/mypage/news_arrow_w.svg);
    background-position: 90% 50%;
    background-repeat: no-repeat;
    border: 1px solid #00316C;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    cursor: pointer;
}

#info .lg_btn:hover span {
    color: #FFFFFF !important;
    text-decoration: none !important;
}

#info .lg_btn.return:hover {
    background-image: url(../images/mypage/news_arrow_w_l.svg);
    background-position: 10% 50%;
    background-repeat: no-repeat;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    cursor: pointer;
}

div#pagination {
    text-align: center;
}

div#pagination div {
    display: inline-block;
    *display: inline;
    *zoom: 1;
    line-height: 1.2;
    font-family: Roboto;
    font-style: normal;
    font-weight: normal;
    font-size: 13px;
    line-height: 15px;
    text-align: center;
    color: #00316C;
}

div#menu div a,
div#menu div span {
    display: block;
}

#info h3 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 20px;
    line-height: 30px;
    color: #000000;
}

#info span {
    font-family: Roboto;
    font-style: normal;
    font-weight: normal;
    font-size: 13px;
    letter-spacing: 0.1em;
}

#info p {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 15px;
    line-height: 30px;
    letter-spacing: 0.1em;
    color: #000000;
}

#info p a {
    color: #00316C;
    font-weight: bold;
    text-decoration: underline !important;
}

#info .lg_btn.none,
#introduction .lg_btn.none {
    background-image: none;
}

#info .lg_btn.none:hover {
    background-image: none;
}


/*mypage----------------------------------------------------------------------*/

#mypage {
    width: 100%;
    max-width: 850px;
    height: auto;
    margin: 0 auto;
}

#mypage h2 {
    color: #00316C;
    font-size: 13px;
    font-weight: bold;
    margin-top: 10px;
}

#mypage p {
    font-size: 15px;
    line-height: 30px;
}

#mypage img.fd {
    width: 60%;
}

#mypage div.fd-box div {
    border: #00316C 2px solid;
    height: 155px;
}

#mypage img.top-banner {
    width: 571px;
}

.flex_box .box {
    width: 250px;
    height: 156px;
    position: relative;
    background: #FFFFFF;
    border: 1px solid #DDDDDD;
    box-sizing: border-box;
    border-radius: 6px;
    padding: 25px;
    text-align: center;
    margin: 0 25px;
    background-image: url('../images/mypage/arrow.svg');
    background-position: 95% 50%;
    background-repeat: no-repeat;
}

.flex_box .box .position {
    position: absolute;
    left: 0;
    right: 0;
    top: 20%;
    bottom: 20%;
}

.flex_box .box .housingloan-img {
    position: relative;
}

.flex_box .box .introduction-img {
    width: 81px;
    height: 72px;
    position: relative;
    top: -3px;
}

.flex_box .box .introduction-img+h2.bold {
    line-height: 20px;
    margin-top: 4px !important;
    position: relative;
}

.introduction .open_btn {
    background: #DDDDDD !important;
    background-position: 90% 50% !important;
    background-image: url(../images/lifeplanning/open_w.svg) !important;
    background-repeat: no-repeat !important;
    color: #00316C;
}

.gray_btn {
    width: 396px;
    padding: 15px 0;
    background: #E9EEF4;
    border: 1px solid #DDDDDD;
    box-sizing: border-box;
    border-radius: 6px;
    color: #00316C;
    font-size: 13px;
    font-weight: bold;
    text-align: center;
    margin: 0 25px;
    background-image: url('../images/mypage/arrow.svg');
    background-position: 95% 50%;
    background-repeat: no-repeat;
}

.flex_box .box:hover,
.gray_btn:hover {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    cursor: pointer;
}

span.news_list {
    background: #FFFFFF;
    border: 1px solid #00316C;
    box-sizing: border-box;
    border-radius: 13px;
    padding: 5px 10px;
    display: inline-block;
    right: 17px;
    position: absolute;
    top: 10px;
    background-image: url(../images/mypage/news_arrow_n.svg);
    background-position: 90% 50%;
    background-repeat: no-repeat;
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 10px;
    line-height: 160%;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

span.news_list:hover {
    background: #00316C;
    border: 1px solid #00316C;
    color: #FFFFFF;
    background-image: url(../images/mypage/news_arrow_w.svg);
    background-position: 90% 50%;
    background-repeat: no-repeat;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    cursor: pointer;
}

#news_list ul {
    border: 1px solid #DDDDDD;
    box-sizing: border-box;
    border-radius: 6px;
    background: #fff;
}

#news_list ul>li {
    padding: 15px 20px;
    font-style: normal;
    font-weight: bold;
    font-size: 13px;
    line-height: 19px;
    color: #00316C;
}

#news_list ul>li.megaphone {
    background-image: url(../images/mypage/news.png);
    background-position: 2% 50%;
    background-repeat: no-repeat;
    background-size: 25.8px 30px;
}

#news_list ul>li>h3 {
    color: #00316C;
    font-size: 16px;
    font-weight: bold;
    margin-left: 30px;
}

#news_list ul>li>span {
    font-size: 11px;
    margin-right: 20px;
    font-weight: normal;
    color: #00316C;
}

#news_list li:nth-child(even) {
    background: #F8F8F8;
}

#news_list li:nth-child(n+2):hover {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    cursor: pointer;
}

#news_list li:first-child {
    border-radius: 6px 6px 0 0;
}

#news_list li:last-child {
    border-radius: 0 0 6px 6px;
}


/*profile----------------------------------------------------------------------*/

#profile {
    width: 850px;
    margin: 0 auto;
}

#profile h2 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 23px;
    line-height: 34px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

#profile label.description {
    font-weight: bold;
    font-size: 13px;
    letter-spacing: 0.1em;
    color: #00316C;
}

#profile ul>li>div {
    padding: 7px 0 15px 0;
    font-family: Noto Sans JP;
    font-weight: 300;
    font-size: 13px;
    line-height: 1.9;
    letter-spacing: 0.1em;
    color: #000000;
    border-bottom: 1px solid #DDDDDD;
}

#profile p {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 15px;
    line-height: 30px;
    letter-spacing: 0.1em;
    color: #00316C;
}

#profile p a {
    text-decoration: underline;
}

#profile p a:hover {
    opacity: 0.5;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    cursor: pointer;
}

#profile h3 {
    background: #00316C;
    font-weight: bold;
    font-size: 13px;
    line-height: 160%;
    letter-spacing: 0.1em;
    color: #FFFFFF;
    padding: 10px 20px;
}

#profile .square {
    width: 13px;
    height: 13px;
    background: #00316C;
    display: inline-block;
    margin: -1px 5px;
}

#profile span.subscribed {
    background: #DDDDDD;
    border-radius: 6px;
    padding: 5px 10px;
    margin-left: 10px;
}

#profile .contract_btn {
    margin-top: 13px;
}

#profile .contract_btn>span {
    background: #FFFFFF;
    border: 1px solid #00316C;
    box-sizing: border-box;
    border-radius: 13px;
    display: inline;
    padding: 5px 24px 5px 18px;
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 10px;
    line-height: 160%;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
    background-image: url(../images/formback_n.svg);
    background-position: 80% 50%;
    background-repeat: no-repeat;
    background-size: 10px;
}

#profile .contract_btn>span:hover {
    background: #00316C;
    border: 1px solid #00316C;
    color: #FFFFFF;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    cursor: pointer;
    background-image: url(../images/formback_w.svg);
    background-position: 80% 50%;
    background-repeat: no-repeat;
    background-size: 10px;
}


/*hotline---------------------------------------------------------------------*/

.hotline h2,
.seminar h2,
.seminar-place h2 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 23px;
    line-height: 34px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

.seminar-place .accordion h2 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 20px;
    line-height: 34px;
    text-align: center;
    letter-spacing: 0.05em;
    color: #00316C;
}

.seminar-place h2 span.font-small {
    font-weight: 300;
    font-size: 14px;
}

.hotline h3 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 30px;
    line-height: 45px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

.hotline p,
.seminar p,
.seminar-place p {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 15px;
    line-height: 30px;
    letter-spacing: 0.1em;
    color: #00316C;
}

.hotline .contact .title {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 23px;
    line-height: 34px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

.hotline .contact div.tel {
    font-family: Roboto;
    font-style: normal;
    font-weight: 300;
    font-size: 41px;
    line-height: 48px;
    text-align: center;
    color: #00316C;
}

.hotline div.tel span {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 12px;
    line-height: 18px;
    text-align: center;
    letter-spacing: 0.01em;
    color: #00316C;
    display: block;
}

.hotline>div.tel {
    font-family: Roboto;
    font-style: normal;
    font-weight: 300;
    font-size: 41px;
    line-height: 48px;
    text-align: center;
    color: #00316C;
}

.hotline .lifepartner_box {
    border: 1px solid #DDDDDD;
    box-sizing: border-box;
    border-radius: 6px;
    margin: 30px;
}

.hotline .lifepartner_box:hover {
    border: 1px solid #FFFFFF;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
    cursor: pointer;
}

.hotline .lifepartner_box div {
    padding: 20px 25px;
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 13px;
    line-height: 160%;
    letter-spacing: 0.1em;
    color: #00316C;
    background-image: url(../images/arrow_n_r.svg);
    background-position: 90% 50%;
    background-repeat: no-repeat;
}

.hotline .lifepartner_box img {
    width: 100%;
    max-width: 250px;
    height: auto;
}

.hotline .lifepartner_box img {
    border-radius: 6px 6px 0 0;
}

.hotline .modal img {
    border-radius: 6px;
}

.hotline .content.visibility,
.hidden {
    visibility: hidden;
}


/*hotline_modal*/

.modal {
    position: fixed;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 600;
    display: none;
}

.modal h3 {
    text-align: left;
}

.modal__bg {
    background: rgba(0, 0, 0, 0.8);
    position: relative;
}

.modal__content {
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
}

.modal__content img {
    width: 100%;
    max-width: 450px;
    height: auto;
}

.modal__inner {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    align-items: center;
    height: 100%;
}

.hotline .close_btn {
    padding: 30px;
    position: absolute;
    top: 0;
    right: 0;
}

.hotline .close_btn_h {
    width: 55px;
    height: 100px;
    background-image: url(../images/hotline/close_btn.png);
    background-repeat: no-repeat;
    display: inline-block;
    background-size: contain;
}

.hotline .close_btn_h:hover {
    width: 55px;
    height: 100px;
    background: url(../images/hotline/close_btn_h.png);
    background-repeat: no-repeat;
    display: inline-block;
    background-size: contain;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    transition-duration: 0.5s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    cursor: pointer;
}

.modal__inner div {
    width: 100%;
    max-width: 515px;
    height: auto;
}


/*analyze---------------------------------------------------------------------*/

#analyze {
    width: 800px;
    margin: 0 auto;
}

#analyze h2 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 23px;
    line-height: 34px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

#analyze .circle {
    position: relative;
    width: 200px;
    height: 200px;
    background-color: #00316C;
    border-radius: 50%;
    margin: 0 auto;
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 160%;
    text-align: center;
    letter-spacing: 0.1em;
    color: #FFFFFF;
    background-image: url(../images/mypage/news_arrow_w.svg);
    background-position: 50% 80%;
    background-repeat: no-repeat;
    background-size: 10px;
}

#analyze .circle-inner {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    color: #FFFFFF;
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 160%;
    text-align: center;
    letter-spacing: 0.1em;
    color: #FFFFFF;
}

#analyze .circle:hover {
    background: #63AFCE;
    color: #FFFFFF;
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    cursor: pointer;
    background-image: url(../images/mypage/news_arrow_w.svg);
    background-position: 50% 80%;
    background-repeat: no-repeat;
    background-size: 10px;
}

#analyze .about {
    border: 1px solid #DDDDDD;
    box-sizing: border-box;
    border-radius: 6px;
    padding: 15px 0;
}

#analyze .about>div {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 22px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

.qa>div {
    font-family: Roboto;
    font-style: normal;
    font-weight: 300;
    font-size: 40px;
    line-height: 47px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

.qa>p {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 23px;
    line-height: 30px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

img.yes_img,
img.no_img {
    width: 90%;
    max-width: 280px;
    height: auto;
}

.image_mouseover {
    overflow: visible;
    width: 100%;
    height: 100%;
}

.image_mouseover img:hover {
    -webkit-transform: scale(1.1, 1.1);
    -moz-transform: scale(1.1, 1.1);
    -o-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    transform: scale(1.1, 1.1);
    transition-duration: 0.5s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    cursor: pointer;
    border-radius: 6px;
}

.result_box {
    background: #FFFFFF;
    border: 1px solid #DDDDDD;
    box-sizing: border-box;
    border-radius: 6px;
    padding: 30px;
}

.result_box>ul>li {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 22px;
    letter-spacing: 0.1em;
    color: #00316C;
    padding: 10px 0;
}

.result_box span {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 8px;
    line-height: 160%;
    text-align: center;
    letter-spacing: 0.1em;
    color: #FFFFFF;
    background: #00316C;
    padding: 5px 20px;
    width: 60px;
    display: inline-block;
}

#analyze h3 {
    font-family: YuGothic;
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 22px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

#analyze .contentWrap p {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 15px;
    line-height: 22px;
    letter-spacing: 0.1em;
    color: #00316C;
    padding: 30px;
    text-align: left !important;
}


/*--ミラカレ診断アコーディオン--*/

#analyze .displayNone,
.displayNone {
    display: none;
}

#analyze .accordion a,
.seminar .accordion a,
.seminar-place .accordion a {
    display: block;
}

#analyze .switch,
.seminar .switch,
.seminar-place .switch {
    cursor: pointer;
    position: relative;
    box-sizing: border-box;
    padding: 15px 0;
}

#analyze .switch {
    font-weight: bold;
}

#analyze .accordion_box,
.seminar .deduction_qa .accordion_box,
.seminar-place .accordion_box {
    border: 1px solid #DDDDDD;
    border-radius: 6px;
    text-align: center;
}

#analyze span.Plus,
#analyze span.Minus,
.seminar span.Plus,
.seminar span.Minus,
.seminar-place span.Plus,
.seminar-place span.Minus {
    position: absolute;
    right: 20px;
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    top: 50%;
}

#analyze span.Plus,
.seminar span.Plus,
.seminar-place span.Plus {
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    border-radius: 50%;
    background: #00316C;
    color: #fff;
    padding: 1px 0 0 1px;
    font-size: 20px;
}

span.Plus.pm-row2,
span.Minus.pm-row2,
span.Plus.pm-sm-row3,
span.Minus.pm-sm-row3 {
    top: 30px;
}

#analyze span.Minus,
.seminar span.Minus,
.seminar-place span.Minus {
    display: none;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    border-radius: 50%;
    background: #75C1C4;
    color: #fff;
    padding: 1px 0 0 1px;
    font-size: 20px;
}

#analyze .accordion_shadow,
.seminar .deduction_qa .accordion_shadow,
.seminar-place .accordion_shadow {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
}

.worries ul {
    padding: 15px 25px;
}

.worries ul>li {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 22px;
    letter-spacing: 0.1em;
    color: #00316C;
    padding-bottom: 16px;
}


/*mylibrary-------------------------------------------------------------------*/

.mylibrary span.category {
    background: #00316C;
    font-family: Noto Sans JP !important;
    font-style: normal;
    font-weight: bold !important;
    font-size: 8px;
    line-height: 160%;
    text-align: center;
    letter-spacing: 0.1em;
    color: #FFFFFF;
    width: 95px;
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 8px !important;
    line-height: 160%;
    text-align: center;
    letter-spacing: 0.1em;
    color: #FFFFFF !important;
    display: inline-block;
}

.mylibrary span.date {
    font-family: Roboto;
    font-style: normal;
    font-weight: 300;
    font-size: 11px;
    line-height: 13px;
    display: flex;
    align-items: center;
    letter-spacing: 0.1em;
    color: #00316C;
    display: inline-block;
    margin: 2px 20px;
}

.mylibrary ul>li {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 12px;
    line-height: 18px;
    display: flex;
    align-items: center;
    color: #00316C;
    border-bottom: 0.5px solid #DDDDDD;
    padding: 18px 0;
    position: relative;
}

span.preview {
    border: 1px solid #DDDDDD !important;
    position: absolute;
    background: none;
    line-height: 1px;
    right: 40px;
    padding: 14px 10px 12px;
    font-size: 11px !important;
}

span.preview:hover {
    background: #00316C;
    color: #fff;
}

span.download_btn {
    background: #FFFFFF;
    border: 1px solid #DDDDDD !important;
    box-sizing: border-box;
    padding: 13px;
    text-align: right;
    position: absolute;
    right: 0;
    background-image: url(../images/mylibrary_download.png);
    background-size: 13px;
    background-position: 50% 50%;
    background-repeat: no-repeat;
}

span.download_btn:hover {
    background: #00316C;
    border: 1px solid #DDDDDD !important;
    box-sizing: border-box;
    text-align: right;
    position: absolute;
    right: 0;
    background-image: url(../images/mylibrary_download_w.png);
    background-size: 13px;
    background-position: 50% 50%;
    background-repeat: no-repeat;
}


/*selectbox-------------------------------*/

.sod_select {
    width: 320px !important;
    padding: 10px !important;
    border: 1px solid #DDDDDD !important;
    background: #E8EBF0 !important;
    color: #00316C !important;
    cursor: pointer !important;
    font-family: Noto Sans JP !important;
    font-style: normal !important;
    font-weight: bold !important;
    font-size: 13px !important;
    text-align: center !important;
}

.sod_select .sod_list_wrapper {
    left: 2px !important;
    width: 100% !important;
    background: #E8EBF0 !important;
    border: 1px solid #DDDDDD !important;
}

.sod_select.focus {
    box-shadow: none !important;
}

.sod_select:before {
    display: none !important;
}

.sod_select .sod_option.selected:before {
    display: none !important;
}

.sod_select .sod_placeholder {
    border: none !important;
}

.sod_select .sod_option {
    border-bottom: 1px solid #FFFFFF !important;
}


/*lifeplanning------------------------------------------------------------------*/

.lifeplanning h2,
.fastdoctor h2 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 23px;
    line-height: 34px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

.lifeplanning h4,
.housedock h4 {
    background: linear-gradient(98.28deg, #00306C 13.02%, #0061AB 44.71%, #00A6CB 87.89%, #75C1C4 117.95%);
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 30px;
    line-height: 45px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #FFFFFF;
    padding: 42px 0;
}

.lifeplanning p,
.fastdoctor p {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 15px;
    line-height: 30px;
    letter-spacing: 0.1em;
    color: #00316C;
}

.fastdoctor img.flyer {
    max-height: 400px;
    width: calc(100% - 10px);
    margin: 0 5px;
}

.fastdoctor ul.range-list li {
    margin-left: auto;
    margin-right: auto;
    list-style: disc;
    width: 45%;
    line-height: 30px;
}

.lg_btn.to_fastdoctor {
    background: #0085d0 !important;
    background-image: none !important;
}

.lg_btn.to_fastdoctor:hover {
    background-image: none !important;
}

.fastdoctor p.ct {
    padding-left: 2em;
    margin-right: -2em;
}

.fastdoctor p.ct::before {
    content: "※";
    margin-left: -1.2em;
}

.worries_box {
    background: #F8F8F8;
    border-radius: 6px;
    padding: 80px 148px;
}

.worries_box h3 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 23px;
    line-height: 34px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

img.lifeplanning_img_arrow {
    margin-top: 30px;
}

.worries_box .flow_img {
    width: 100%;
    max-width: 196px;
    height: auto;
    margin: 0 auto;
    text-align: center;
    margin: 40px auto 0;
}

.worries_box .flow_box {
    width: 520px;
    margin: 0 auto;
}

img.lifeplanning_img.s-none {
    width: 100%;
    max-width: 886px;
    height: auto;
}

.gray_btn02 {
    background: #DDDDDD !important;
    color: #00316C !important;
    background-image: url(../images/lifeplanning/arrowbottom_n.svg) !important;
    background-position: 90% 50% !important;
    background-repeat: no-repeat !important;
}

.introduction .gray_btn02 {
    background-image: url('../images/mypage/arrow.svg') !important;
    background-size: 6px !important;
}

a .gray_btn02:hover {
    background: #00316C !important;
    color: #FFFFFF !important;
    border: none !important;
    box-shadow: none !important;
    background-image: url(../images/lifeplanning/arrowbottom_w.svg) !important;
    background-position: 90% 50% !important;
    background-repeat: no-repeat !important;
}

.lg_btn.sheet:hover {
    background: #00316C !important;
    box-shadow: none !important;
    background-image: url(../images/lifeplanning/download_w.svg) !important;
    background-position: 95% 50% !important;
    background-repeat: no-repeat !important;
}

img.lifeplanning_img {
    width: 100%;
    max-width: 886px;
    height: auto;
}

img.worries_box01_s,
img.worries_box02_s {
    width: 100%;
    max-width: 280px;
    height: auto;
}


/*maintenance------------------------------------------------------------------*/

.maintenance h2 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 23px;
    line-height: 34px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

img.maintenance_img {
    margin: 20px 50px 39px 30px;
    padding: 0;
}


/*maintenance------------------------------------------------------------------*/

.maintenance h2 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 23px;
    line-height: 34px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

.maintenance p {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: normal;
    font-size: 15px;
    line-height: 30px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

.maintenance .information {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 13px;
    line-height: 162.7%;
    letter-spacing: 0.1em;
    color: #00316C;
}

.maintenance .information>div {
    margin: 0 27px;
}

.maintenance .agree_btn {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: normal;
    font-size: 15px;
    line-height: 22px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

.maintenance-rush .housedock_img {
    width: 277px;
}

.maintenance-rush h2 {
    font-family: Noto Sans CJK JP;
    font-style: normal;
    font-weight: 300;
    font-size: 40px;
    line-height: 59px;
    letter-spacing: 0.1em;
    color: #00316C;
}

.maintenance-rush h3 {
    font-family: Noto Sans CJK JP;
    font-style: normal;
    font-weight: 300;
    font-size: 23px;
    line-height: 34px;
    letter-spacing: 0.1em;
    color: #00316C;
}

.maintenance-rush p {
    font-family: Noto Sans CJK JP;
    font-style: normal;
    font-weight: 300;
    font-size: 15px;
    line-height: 30px;
    letter-spacing: 0.1em;
    color: #00316C;
}


/*同意チェックボタン*/

input[type="submit"] {
    background: #00316C;
    border-radius: 6px;
    width: 280px;
    padding: 15px 0;
    text-align: center;
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 13px;
    line-height: 160%;
    text-align: center;
    letter-spacing: 0.1em;
    color: #FFFFFF;
    margin: 0 auto;
    background-image: url(../images/mypage/news_arrow_w.svg);
    background-position: 90% 50%;
    background-repeat: no-repeat;
}

input[type="submit"]:hover {
    background: #63AFCE;
    background-image: url(../images/mypage/news_arrow_w.svg);
    background-position: 90% 50%;
    background-repeat: no-repeat;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    transition-duration: 0.5s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    cursor: pointer;
}

input[type="submit"][disabled] {
    background: #00316C;
    border-radius: 6px;
    width: 280px;
    padding: 15px 0;
    text-align: center;
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 13px;
    line-height: 160%;
    text-align: center;
    letter-spacing: 0.1em;
    color: #FFFFFF;
    margin: 0 auto;
    background-image: url(../images/mypage/news_arrow_w.svg);
    background-position: 90% 50%;
    background-repeat: no-repeat;
    opacity: 0.5;
}


/*housedock--------------------------------------------------------------------*/

.housedock h2 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 23px;
    line-height: 34px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

.housedock p {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 15px;
    line-height: 30px;
    letter-spacing: 0.1em;
    color: #00316C;
}

.housedock .lg_btn.gray {
    margin: 0 20px;
}

.housedock ul.merit_box {
    background: #F8F8F8;
    border-radius: 6px;
    padding: 50px 220px;
}

.merit_box li {
    font-family: imperial-urw, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    line-height: 36px;
    letter-spacing: 0.1em;
    color: #00316C;
}

.merit_box li>span {
    font-size: 30px;
}

.housedock .service_box {
    background: #F8F8F8;
    border-radius: 6px;
    padding: 80px 0;
}

.housedock .service_box h3 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 30px;
    line-height: 44px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

.housedock .service_box h5 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 160%;
    letter-spacing: 0.1em;
    color: #00316C;
}

.housedock .service_box span {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 160%;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

.housedock span.warning {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 13px;
    line-height: 19px;
    letter-spacing: 0.1em;
    color: #00316C;
    display: block;
    text-align: left;
}

.housedock .benefit_box span.warning {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 10px;
    line-height: 15px;
    letter-spacing: 0.1em;
    display: block;
    color: #00316C;
    text-align: left;
}

.housedock .service_box .lg_btn.sheet {
    width: 165px;
    text-align: left;
    padding: 5px 15px;
}

.housedock h6 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 23px;
    line-height: 34px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

.housedock .benefit p {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 13px;
    line-height: 19px;
    letter-spacing: 0.1em;
    color: #00316C;
}

.housedock .benefit_box {
    width: 280px;
    margin: 0 auto;
}

.housedock .benefits_img {
    height: 105px;
}

.housedock .accordion_box h4 {
    cursor: pointer;
}

.uneasiness_box p {
    background-image: url(../images/maintenance/uneasiness_back.png);
    background-repeat: no-repeat;
    background-size: auto;
    width: 280px;
    height: 144px;
    margin: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 13px;
    text-align: center;
    line-height: 19px;
    letter-spacing: 0.1em;
    position: relative;
}

.lg_btn.housedock {
    background-image: url(../images/application_w.svg);
    background-position: 90% 50%;
    background-repeat: no-repeat;
}

.lg_btn.housedock:hover {
    background-image: url(../images/application_w.svg) !important;
    background-position: 90% 50% !important;
    background-repeat: no-repeat !important;
}

.housedock .gray_btn02 {
    margin: 0 20px !important;
}

.uneasiness_box span.position {
    position: absolute;
    left: 0;
    right: 0;
    top: 30%;
}

img.housedock_img {
    width: 100%;
    max-width: 368px;
    height: auto;
}


/*--housedock------------------------------------------------------------------------*/

.housedock .annotation_txt {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 13px;
    line-height: 19px;
    letter-spacing: 0.1em;
    color: #00316C;
}

.housedock .gray_btn02 {
    background-position: 95% 50% !important;
    width: 300px;
}

.housedock .gray_btn02:hover {
    background-position: 95% 50% !important;
    width: 300px;
}

.housedock .uneasiness_box span.position {
    position: absolute;
    width: 230px;
    top: 45%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    text-align: left;
}

.housedock img.merit {
    max-width: 337px;
    width: 70%;
    height: auto;
}

.housedock img.s-none.deliveryservice01 {
    width: 80%;
    max-width: 818px;
    height: auto;
}


/*seminar---------------------------------------------------------------------*/

.seminar div.width700 h2 {
    font-style: normal;
    font-weight: 300;
    font-size: 26px;
    line-height: 38px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

.seminar img.no-info {
    width: 211px;
}

.seminar div.seminar-schedule-box-sm {
    display: none;
}

.seminar .seminar-index-txt p,
.seminar .seminar-index-txt-sm p {
    font-size: 11px;
    line-height: 21px;
}

.seminar .seminar-index-txt-sm {
    display: none;
}

.seminar div.seminar-index-box {
    border-bottom: 0.5px solid #DDDDDD;
}

.seminar div.seminar-index-box.onclick:hover {
    opacity: 0.7;
    cursor: pointer;
}

.seminar div.seminar-doc-line {
    position: absolute;
    top: 19px;
    width: 100%;
    border-top: 1px solid #00316C;
    z-index: -1;
}

.seminar #answerQuestionBtn,
#downloadDocumentButton {
    background-image: url(../images/lifeplanning/open_w.svg) !important;
}

.seminar #closeTableBtn,
#downloadDocumentButton.close-btn,
.introduction #closeSelectDesireSalesButton {
    background-image: url(../images/lifeplanning/close.svg) !important;
}

.seminar img.seminar-image {
    height: 205px;
    width: 337px;
}

.seminar h2.under {
    border-bottom: solid;
    border-color: #00316C;
    border-width: 1px;
    display: inline-block;
}

.seminar p.seminar-kind {
    font-size: 18px;
    font-weight: bold;
}


.seminar p.held-count-participants {
    font-size: 13px;
    font-weight: 500;
}

.seminar p.txt {
    font-size: 15px;
    font-weight: 300;
    line-height: 22px;
}

.seminar p.err-msg {
    font-size: 12px;
    line-height: 18px;
    text-align: justify;
    color: #D64646;
    text-align: center;
}

.seminar .seminar-btn {
    display: inline-block;
}

.seminar p.notes {
    font-size: 12px;
    font-weight: 300;
    line-height: 18px;
}

.seminar p.sm-notes {
    display: none;
}

.seminar p.possible-date {
    display: inline-block;
    font-weight: normal;
    font-size: 12px;
    line-height: 18px;
    color: #D64646;
    position: absolute;
    top: 16px;
    margin-left: 156px;
}

.seminar p.attension {
    color: #D64646;
    font-size: 12px;
    font-weight: 300;
    line-height: 18px;
}

.seminar p.possible-date-up {
    margin-left: 308px;
    top: 46px;
}

.seminar p.seminar-place {
    font-weight: normal;
    font-size: 15px;
}

.seminar p.declaration-form {
    font-size: 15px;
    font-weight: 500;
    /* color: #D64646; */
}

.seminar .answerQuestionArea {
    display: none;
}

.seminar table.answer-question td,
.seminar-place table.answer-question td {
    background: #fff;
    color: #00316C;
    height: 57px;
    vertical-align: middle;
    font-weight: 700;
    font-size: 12px;
}

.seminar table.answer-question tr.cell-odd td {
    background: #F8F8F8;
}

.seminar table.answer-question td.qa-num,
.seminar-place table.answer-question td.qa-num {
    width: 50px;
    text-align: center;
}

.seminar table.answer-question td.qa-content {
    width: 700px;
    display: flex;
    align-items: center;
}

.seminar .radio01 {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 5px 30px;
    position: relative;
    width: auto;
    color: #018EC0;
}

.seminar .radio01::before {
    border-radius: 4px;
    background: #fff;
    border: 2px solid #018EC0;
    content: '';
    display: block;
    height: 16px;
    left: 5px;
    margin-top: -8px;
    position: absolute;
    top: 47%;
    width: 15px;
    height: 15px;
}

.seminar input[type="radio"]:checked+label.radio01::before {
    background: #018EC0;
}

.seminar span.yes {
    color: #018EC0;
    margin-right: 10px;
}

.seminar .radio01::after {
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    content: '';
    display: block;
    height: 7px;
    left: 11px;
    margin-top: -7px;
    opacity: 0;
    position: absolute;
    top: 56%;
    transform: rotate(45deg);
    width: 4px;
    background: none;
    border-radius: 0;
}

.seminar .chkbox .radio01:last-child {
    color: #D64646;
}

.seminar .chkbox .radio01:last-child::before {
    border: 2px solid #D64646;
}

.seminar input[type="radio"]:checked+label.radio01:last-child::before {
    background: #D64646;
}

.seminar span.no {
    color: #D64646;
    margin-right: 10px;
}

.seminar h1.click-resut-text {
    font-family: YuGothic;
    font-style: normal;
    font-weight: bold;
    font-size: 30px;
    line-height: 45px;
    color: #FF0000;
    text-align: center;
    margin-bottom: 48px;
}

.seminar .result-area {
    width: 100%;
    padding-bottom: 48px;
    background: #018EC0;
    display: none;
    text-align: center;
}

.seminar .result-area p,
.seminar .result-area h2,
.seminar .result-area h1 {
    color: #FFFFFF !important;
    text-align: center;
}

.seminar .result-area h2 {
    font-weight: 500;
    font-size: 23px;
    padding: 24px 0px;
}

.seminar .result-area p {
    font-weight: 500;
    font-size: 15;
}

.seminar .result-area h1 {
    font-weight: bold;
    font-size: 25px;
}

.seminar div.possible {
    display: inline;
}

.seminar table td div.sm-chkbox {
    display: none;
}

.seminar-place iframe.youtube,
.youtube-thumbnail {
    width: 100%;
    height: 450px;
}

.youtube-thumbnail {
    cursor: pointer;
    position: relative;
}

.youtube-thumbnail::before {
    position: absolute;
    width: 100px;
    content: url(../images/icon_movie_play.svg);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.seminar .qa_question {
    font-weight: bold;
    text-align: left;
    margin-bottom: 8px;
    cursor: pointer;
}

.seminar table.qa_answer td {
    line-height: 24px;
}

.seminar .qa_answer {
    font-weight: bold;
    text-align: left;
    margin-bottom: 16px;
    color: orange;
}

.gift-color {
    color: #0061AB !important;
}

.no-gift-color {
    color: #00A6CB !important;
}


/* ボタン非活性 */
.invalid-btn,
a.invalid-btn>div {
    background: darkgray !important;
    pointer-events: none !important;
    user-select: none !important;
    background-image: url(../images/mypage/news_arrow_w.svg) !important;
    background-repeat: no-repeat !important;
    background-position: 90% 50% !important;
    border-radius: 6px;
}

.seminar p.seminar-list-p {
    font-size: 12px;
    font-weight: bold;
    line-height: 17px;
}


/* ボタン非活性 */

.seminar span.btn_datetime {
    font-size: 11px;
    font-weight: 300;
}

table.housingloan-dates {
    width: 100%;
    margin-bottom: 50px;
}

table.housingloan-dates tr td {
    width: 100%;
    padding: 10px;
    color: #00316C;
    font-weight: bold;
    font-size: 12px;
}

table.housingloan-dates tr:nth-child(odd) td {
    background: #F8F8F8;
}

table.housingloan-dates tr td.end {
    font-weight: normal;
    color: #C4C4C4;
}

table.housingloan-dates tr td small {
    font-size: 10px;
    margin-left: 15px;
}

table.housingloan-dates tr:nth-child(odd) td .radio01::before,
table.housingloan-dates tr:nth-child(odd) td .radio01::after {
    top: 48%;
}


/*tab_swicthing*/

.tab_box {
    width: 278px;
    margin: 0 auto;
}

.tab-group {
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

.tab {
    height: 30px;
    flex-grow: 1;
    list-style: none;
    cursor: pointer;
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 13px;
    line-height: 160%;
    letter-spacing: 0.1em;
    color: #FFFFFF;
    display: flex;
    justify-content: center;
    align-items: center;
}

.tab.tab01 {
    background: #4B8773;
    opacity: 0.5;
}

.tab.tab02 {
    background: #67789F;
    opacity: 0.5;
}

.panel-group {
    height: 100%;
    background: #FFFFFF;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    border-radius: 0px 0px 6px 6px;
}

.panel {
    display: none;
}

.tab.is-active {
    opacity: 1;
    height: 38px;
    transition: all 0.2s ease-out;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
}

.panel.is-show {
    display: block;
}

.tab.is-active.triangle {
    position: relative;
}

.tab.is-active.triangle:after {
    content: ' ';
    height: 0;
    position: absolute;
    width: 0;
    border: 10px solid transparent;
    top: 100%;
    left: 50%;
    margin-left: -10px;
}

.tab.is-active.tab.tab01.triangle:after {
    border-top-color: #4B8773;
}

.tab.is-active.tab.tab02.triangle:after {
    border-top-color: #67789F;
}


/*user/rules------------------------------------------------------------------*/

#rules h2 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 38px;
    line-height: 32px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

#rules p.txt {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 15px;
    line-height: 30px;
    letter-spacing: 0.1em;
    color: #000000;
}

#rules h3 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 18px;
    line-height: 34px;
    text-align: left;
    letter-spacing: 0.1em;
    color: #000000;
}

#rules .riles_main p {
    font-family: Noto Sans JP;
    font-style: normal;
    text-align: left;
    color: #000000;
}

#rules .notes {
    margin-top: 1em;
    font-size: 8pt;
    line-height: 1.5 !important;
    display: block;
}


/*assessment------------------------------------------------------------------*/

#assessment {
    width: 840px;
    margin: 0 auto;
}

#assessment h2 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 23px;
    line-height: 34px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

.assessment_box {
    background: #F8F8F8;
    border-radius: 6px;
    padding: 40px 128px;
}

.assessment_box .inner-box.not-last {
    padding-bottom: 64px;
    margin-bottom: 64px;
    border-bottom: solid 2px #fff;
}

#assessment p {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 13px;
    line-height: 19px;
    letter-spacing: 0.1em;
    color: #00316C;
    text-align: center;
}

.assessment_date {
    font-weight: 300 !important;
    font-size: 12px !important;
}

.assessment_price {
    font-family: Roboto !important;
    font-weight: 100 !important;
}

.assessment_warning {
    font-weight: 300 !important;
    font-size: 10px !important;
}


/* introduction */

#introduction h2 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 400;
    font-size: 23px;
    line-height: 34px;
    text-align: center;
    letter-spacing: 0.1em;
}

#introduction .circle {
    position: relative;
    width: 261px;
    height: 261px;
    background-color: #fff;
    border-radius: 50%;
    margin: 0 auto;
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 20px;
    line-height: 160%;
    text-align: center;
    letter-spacing: 0.1em;
    background-position: 50% 68%;
    background-repeat: no-repeat;
    background-size: 60px;
}

#introduction div.circle-sales {
    border: 2px solid #5AB3B7;
    color: #5AB3B7;
    background-image: url(../images/introduction/sales_icon.svg);
}

#introduction div.circle-company {
    border: 2px solid #117CCD;
    color: #117CCD;
    background-image: url(../images/introduction/company_icon.svg);
}

#introduction .circle-inner {
    width: 60%;
    position: absolute;
    top: 30%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 20px;
    line-height: 160%;
    text-align: center;
    letter-spacing: 0.1em;
}

#introduction .circle:hover {
    color: #FFFFFF !important;
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    cursor: pointer;
}

#introduction .circle-sales:hover {
    background: #5AB3B7;
    background-image: url(../images/introduction/sales_icon_hover.svg);
    background-repeat: no-repeat;
    background-position: 50% 68%;
    background-size: 63px;
}

#introduction .circle-company:hover {
    background: #117CCD;
    background-image: url(../images/introduction/company_icon_hover.svg);
    background-repeat: no-repeat;
    background-position: 50% 68%;
    background-size: 63px;
}

#introduction div.sales-user-container {
    margin: auto;
    background-color: #ECFBFC;
    width: 420px;
    border-radius: 25px;
    padding: 1px;
}

#introduction div.companies-map-container-sm {
    background-color: #f0f9ff;
    width: 95%;
    border-radius: 25px;
    margin: auto;
}

#introduction div.companies-map-container-sm table {
    text-align: left;
    margin: auto;
    font-weight: 500;
    font-size: 12px;
    line-height: 250%;
    letter-spacing: 0.05em;
    text-decoration-line: underline;
    color: #00316C;
}

#introduction div.companies-map-container-sm table td {
    width: 137px;
}

#introduction div.sales-user-container img {
    height: 187px;
    max-width: 300px;
}

#introduction div.companies-map-container {
    background-color: #f0f9ff;
    width: 100%;
    border-radius: 25px;
}

#introduction div.companies-map-container img.polygon {
    position: relative;
    right: 36%;
    top: 38px;
}

#introduction p,
#introduction h2,
#introduction a {
    color: #00316C;
}

#introduction p.company-click {
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 0.05em;
}

#introduction p.company-click-sm {
    font-size: 13px;
    line-height: 23px;
    letter-spacing: 0.05em;
}

.desire_sales_sm span {
    font-weight: 300 !important;
    font-size: 13px;
    line-height: 19px;
    letter-spacing: 0.1em;
    color: #00316C;
}

#introduction a.company-link {
    position: absolute;
    font-weight: 500;
    font-size: 11px;
    line-height: 160%;
    letter-spacing: 0.1em;
    text-decoration-line: underline !important;
}

.introduction p.small {
    font-size: 11px !important;
    line-height: 16px !important;
    letter-spacing: 0.1em !important;
}

.introduction label.checkbox_text {
    font-size: 13px !important;
    padding-left: 44px !important;
    text-align: left;
}

.introduction div.check_w {
    width: 50% !important;
}

.introduction span.small {
    font-size: 10px !important;
    line-height: 15px !important;
    display: flex;
    position: absolute;
}

#openSelectDesireSalesButton {
    display: none;
}

#closeSelectDesireSalesButton {
    display: none;
}

#introduction a.shintoshin {
    top: 283px;
    left: 544px;
}

#introduction a.urawa {
    top: 304px;
    left: 544px;
}

#introduction a.kawaguchi {
    top: 325px;
    left: 544px;
}

#introduction a.kawaguchi {
    top: 325px;
    left: 544px;
}

#introduction a.joto {
    top: 346px;
    left: 544px;
}

#introduction a.funabashi {
    top: 395px;
    left: 544px;
}

#introduction a.shinkoiwa {
    top: 419px;
    left: 544px;
}

#introduction a.shinagawa {
    top: 470px;
    left: 544px;
}

#introduction a.otatokyo {
    top: 491px;
    left: 544px;
}

#introduction a.nerima {
    top: 315px;
    right: 589px;
}

#introduction a.suginami {
    top: 336px;
    right: 589px;
}

#introduction a.musashino {
    top: 357px;
    right: 589px;
}

#introduction a.tachikawa {
    top: 378px;
    right: 589px;
}

#introduction a.kokubunji {
    top: 397px;
    right: 589px;
}

#introduction a.setagaya {
    top: 417px;
    right: 589px;
}

#introduction a.machida {
    top: 438px;
    right: 589px;
}

#introduction a.mizonokuchi {
    top: 459px;
    right: 589px;
}

#introduction a.yokohamawest {
    top: 478px;
    right: 589px;
}

#introduction a.yokohama {
    top: 498px;
    right: 589px;
}

#introduction a.shonan {
    top: 518px;
    right: 589px;
}

#introduction a.matsudo {
    top: 360px;
    left: 544px;
}

#introduction p.company-small {
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 30px;
    letter-spacing: 0.1em;
}

#introduction p.sales-name {
    font-size: 23px;
    font-style: normal;
    font-weight: 500;
    line-height: 34px;
    letter-spacing: 0.1em;
}

#introduction p.introduction-p {
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 30px;
    letter-spacing: 0.1em;
}

#introduction a.introduction-a {
    font-weight: 500;
    font-size: 15px;
    line-height: 22px;
    text-align: center;
    letter-spacing: 0.1em;
    text-decoration-line: underline !important;
}

div.required-label {
    width: 100%;
    height: 40px;
    background: #5AB3B7;
    color: white;
}

div.required-label-company {
    background: #117CCD;
}

div.required-label p {
    padding-top: 5px !important;
    padding-left: 20px !important;
    font-size: 13px !important;
    color: white !important;
    text-align: left !important;
    font-weight: bold !important;
}

p.required-under {
    font-weight: 300 !important;
    font-size: 13px !important;
    line-height: 19px !important;
    letter-spacing: 0.1em !important;
    color: #00316C !important;
    text-align: left !important;
}


/*共通*/

.width400 {
    width: 100%;
    max-width: 400px;
    height: auto;
    margin: 0 auto;
}

.width500 {
    width: 100%;
    max-width: 500px;
    height: auto;
    margin: 0 auto;
}

.width600 {
    width: 100%;
    max-width: 603px;
    height: auto;
    margin: 0 auto;
}

.width700 {
    width: 100%;
    max-width: 700px;
    height: auto;
    margin: 0 auto;
}

.width800 {
    width: 100%;
    max-width: 800px;
    height: auto;
    margin: 0 auto;
}

.width924 {
    width: 100%;
    max-width: 924px;
    height: auto;
    margin: 0 auto;
}

.width1180 {
    width: 100%;
    max-width: 1180px;
    height: auto;
    margin: 0 auto;
}

.text-line {
    display: flex;
    align-items: center;
}

.text-line:before,
.text-line:after {
    content: "";
    flex-grow: 1;
    height: 1px;
    /* 線の太さ */
    background: #00316C;
    /* 線の色 */
    margin: 0 2em;
    /* 文字と線の余白 */
}

#common {
    width: 100%;
    max-width: 610px;
    height: auto;
    margin: 0 auto;
}

#common h2 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 23px;
    line-height: 34px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

#common h3 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 18px;
    line-height: 30px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

#common p {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 15px;
    line-height: 30px;
    letter-spacing: 0.1em;
    color: #00316C;
}

#free-online {
    width: 90%;
    max-width: 700px;
    height: auto;
    margin: 0 auto;
}

#free-online h2 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 400;
    font-size: 23px;
    line-height: 34px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

label .description,
div .description {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 13px;
    line-height: 19px;
    letter-spacing: 0.1em;
    color: #00316C;
}

input#element,
textarea#element,
input.element {
    background: #eeeeee;
    width: 97%;
    height: 30px;
    margin-top: 8px;
    font-size: 13px;
    padding: 10px;
}

#addressChangeModal input.element {
    width: 90% !important;
}

#addressChangeModal .sod_select {
    width: 93% !important;
}

input[readonly]:not(.datepicker,
    .datepicker_7,
    .datepicker_8) {
    background: #c9c9c9;
}

textarea.resize-horizontal {
    resize: vertical !important;
}

input.element.input-sm {
    width: 90% !important;
}

input.element.input-md {
    width: 96% !important;
}

.linethrough {
    text-decoration: line-through;
}

textarea {
    font-family: Noto Sans JP;
    font-weight: 300;
    background: #eeeeee;
    width: 97%;
    height: 80px;
    margin-top: 8px;
    font-size: 13px;
    resize: none;
    padding: 10px;
}

.diagonal_title {
    position: relative;
    background: linear-gradient(123.23deg, #00306C -0.02%, #0061AB 27.56%, #00A6CB 65.13%, #75C1C4 91.29%);
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 40px;
    line-height: 130%;
    letter-spacing: 0.1em;
    color: #FFFFFF;
    height: 380px;
}

.diagonal_title::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 250px 100vw;
    border-color: transparent transparent #fff transparent;
}

.diagonal_title h1 {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 80%;
    height: 8rem;
}

.fvLine.lower h1 {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 80%;
    height: 8rem;
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 40px;
    line-height: 130%;
    letter-spacing: 0.1em;
    color: #FFFFFF;
}

.fvLine.lower.housingloan h1 {
    height: 11rem;
}

.fvLine.lower h1 span {
    font-size: 28px;
}

/* テキストを中央寄せのまま左揃え */

.center_box {
    text-align: center;
}

.center_box p {
    display: inline-block;
    text-align: left;
}


/*フォーム共通-------------------------------------------------------------*/

#contact_form {
    width: 603px;
    margin: 0 auto;
}

#contact_form h2 {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: 300;
    font-size: 23px;
    line-height: 34px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

#contact_form p {
    font-style: normal;
    font-weight: 300;
    font-size: 15px;
    line-height: 30px;
    text-align: center;
    letter-spacing: 1px;
    color: #00316C;
}

#contact_form ul>li:not(.checkbox)>div {
    padding: 7px 0 0 0;
    font-family: Noto Sans JP;
    font-weight: 300;
    font-size: 13px;
    line-height: 1.9;
    letter-spacing: 0.1em;
    color: #000000;
}

#contact_form ul>li.checkbox>div {
    padding: 16px 0 0 0;
}

#contact_form ul>li.checkbox>div>div:not(.validation-error) {
    font-family: Noto Sans JP;
    font-weight: 300;
    font-size: 13px;
    letter-spacing: 0.1em;
    color: #000000;
}

#contact_form p.red {
    font-size: 12px;
}


/*チェックボックス共通----------------------------------------------------------*/

label.checkbox input[type="checkbox"] {
    -moz-appearance: none;
    -webkit-appearance: none;
    margin: 0;
    padding: 0;
    position: absolute;
    left: 20px;
    width: 20px;
    height: 20px;
    left: -40px;
    box-shadow: 39px 0px #FFF;
    z-index: 2;
}

label.checkbox input[type="checkbox"]:checked {
    box-shadow: none;
}

label.checkbox input[type="checkbox"]:checked:focus {
    box-shadow: 39px 0px #666;
    opacity: 0.1;
}

label.checkbox input[type="checkbox"]:focus {
    box-shadow: 39px 0px #EEE;
}

label.checkbox:after {
    content: '';
    position: absolute;
    top: 40%;
    left: 5px;
    display: block;
    margin-top: -8px;
    width: 8px;
    height: 12px;
    border-right: 3px solid #D65;
    border-bottom: 3px solid #D65;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    z-index: 1;
}

label.checkbox_text {
    cursor: pointer;
    position: relative;
    padding-left: 25px;
    /*overflow: hidden;*/
    position: relative;
    padding-left: 45px;
    padding-top: 5px;
    display: inline-block;
    box-sizing: border-box;
    height: 32px;
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: normal;
    font-size: 15px;
    line-height: 22px;
    text-align: center;
    letter-spacing: 0.1em;
    color: #00316C;
}

label.checkbox_text:before {
    content: '';
    position: absolute;
    width: 30px;
    height: 30px;
    left: 0px;
    top: 0;
    border: 1px solid #00316C;
    z-index: 3;
}

label.checkbox_text.checked:after {
    content: '';
    position: absolute;
    top: 38%;
    left: 11px;
    display: block;
    margin-top: -8px;
    width: 9px;
    height: 15px;
    border-right: 2px solid #00316C;
    border-bottom: 2px solid #00316C;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    z-index: 1;
}

label.checkbox_text input[type="checkbox"] {
    -moz-appearance: none;
    -webkit-appearance: none;
    position: absolute;
    left: -40px;
    width: 30px;
    height: 30px;
    display: block;
    box-shadow: 41px 0px #FFF;
    z-index: 2;
    margin: 0px;
    padding: 0px;
    border: none !important;
    clip: rect(0, 0, 0, 0);
    pointer-events: none;
}

label.checkbox_text input[type="checkbox"]:checked {
    box-shadow: none;
    visibility: hidden;
}

label.checkbox_text input[type="checkbox"]:checked:focus {
    box-shadow: 40px 0px #FFF;
    opacity: 0.1;
}

label.checkbox_text input[type="checkbox"]:focus {
    box-shadow: 41px 0px #FFF;
}


/*ボタン共通-------------------------------------------------------------*/

.lg_btn {
    background: #00316C;
    border-radius: 6px;
    width: 280px;
    padding: 15px 0;
    text-align: center;
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 13px;
    line-height: 160%;
    text-align: center;
    letter-spacing: 0.1em;
    color: #FFFFFF;
    margin: 0 auto;
    background-image: url(../images/mypage/news_arrow_w.svg);
    background-position: 90% 50%;
    background-repeat: no-repeat;
    border: none;
}

.lg_btn.sqauare_btn {
    border: none;
    background-image: none;
    border-radius: 0%;
}

.lg_btn.sqauare_btn:hover {
    background-image: none !important;
}

.lg_btn .font-small {
    font-size: 10px;
}

.lg_btn.row2 {
    padding: 4.1px 0;
}

@media screen and (max-width:342px) {
    .lg_btn {
        width: 90%;
    }
}

.lg_btn:hover:not(.close_btn):not(.open_btn) {
    background: #63AFCE;
    background-image: url(../images/mypage/news_arrow_w.svg);
    background-position: 90% 50%;
    background-repeat: no-repeat;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    transition-duration: 0.5s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
    cursor: pointer;
}

.lg_btn.return {
    margin-top: 15px;
    background-image: url(../images/mypage/news_arrow_w_l.svg);
    background-position: 10% 50%;
    background-repeat: no-repeat;
}

.lg_btn.return:hover {
    margin-top: 15px;
    background-image: url(../images/mypage/news_arrow_w_l.svg) !important;
    background-position: 10% 50% !important;
    background-repeat: no-repeat;
}

.lg_btn.gray {
    background: #DDDDDD;
    border-radius: 6px;
    color: #00316C;
    border: 1px solid #00316C;
    background-image: url(../images/lifeplanning/arrowbottom_n.svg);
    background-position: 90% 50%;
    background-repeat: no-repeat;
}

.lg_btn.gray:hover {
    background: #00316C !important;
    color: #FFFFFF;
    background-image: url(../images/lifeplanning/arrowbottom_w.svg) !important;
    background-position: 90% 50%;
    background-repeat: no-repeat;
    box-shadow: none;
}

.lg_btn.gray-out {
    background-color: gray !important;
}

.lg_btn.sheet {
    background: #FFFFFF;
    border: 1px solid #DDDDDD;
    box-sizing: border-box;
    border-radius: 6px;
    color: #00316C;
    padding: 5px 0;
    background-image: url(../images/lifeplanning/download_n.svg);
    background-position: 95% 50%;
    background-repeat: no-repeat;
}

.lg_btn.sheet.sheet-lg {
    padding: 15px 0 !important;
}

.lg_btn.sheet:hover {
    background: #00316C;
    color: #FFFFFF;
    background-image: url(../images/lifeplanning/download_w.svg);
    background-position: 95% 50%;
    background-repeat: no-repeat;
    box-shadow: none;
}

.lg_btn.effectiveness {
    color: #00316C;
    background-image: url(../images/lifeplanning/arrowbottom_n.svg);
    background-position: 90% 50%;
    background-repeat: no-repeat;
    background: #FFFFFF;
    border: 1px solid #00316C;
    box-sizing: border-box;
    border-radius: 6px;
    background-image: url(../images/mypage/arrow.svg);
    background-position: 95% 50%;
    background-repeat: no-repeat;
}

.lg_btn.effectiveness:hover {
    color: #00316C;
    background-image: url(../images/lifeplanning/arrowbottom_n.svg);
    background-position: 90% 50%;
    background-repeat: no-repeat;
    background: #FFFFFF !important;
    border: 1px solid #00316C;
    box-sizing: border-box;
    border-radius: 6px;
    box-shadow: none !important;
    background-image: url(../images/mypage/arrow.svg) !important;
    background-position: 95% 50% !important;
    background-repeat: no-repeat !important;
    opacity: 0.5;
}

.lg_btn.invalid,
.lg_btn.invalid:hover {
    color: #00316C !important;
    background: #FFFFFF !important;
    border: 1px solid #00316C !important;
    box-shadow: none !important;
    background-image: url(../images/mypage/arrow.svg) !important;
    background-position: 95% 50% !important;
    background-repeat: no-repeat !important;
    opacity: 0.5 !important;
}

.open_btn {
    background-image: url(../images/lifeplanning/open_w.svg) !important;
    background-position: 90% 50%;
    background-repeat: no-repeat;
}

.lg_btn.lg_btn_long {
    background-position: 97% 50% !important;
}

.lg_btn.no-back {
    background-image: none !important;
}

.cg_btn {
    cursor: pointer;
    font-size: 1.2em;
    color: #000066;
    text-decoration: underline;
    text-decoration-color: #000066;
    font-weight: bold;
}


/*エラーページ-----------------------------------------------------------------*/

.error-page {
    min-height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.error-page>.container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    padding: 48px 24px;
}

.error-page>.container>div>h1 {
    font-size: 50px;
    margin-bottom: 20px;
}

.error-page>.container>div>h4 {
    margin-bottom: 20px;
}

.error-page>.container a,
.link {
    text-decoration: underline;
    color: #00316C;
    cursor: pointer;
}

.validation-error {
    background-color: #f86c6b;
    font-size: 0.75rem;
    padding: 0.2rem 0.4rem !important;
    color: white;
    font-weight: bold;
    display: inline-block;
    margin-top: 2px;
    line-height: 12px;
}

.validation-error-top {
    background-color: #f86c6b;
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    padding: 0.5rem;
    margin-bottom: 1rem;
    color: white;
    font-weight: bold;
}

.name-error .validation-error {
    display: table;
}

.message-success {
    color: #28623c;
    background-color: #dbf2e3;
    border-color: #cdedd8;
    padding: 0.5rem;
    margin-bottom: 1rem;
}

#pagination span {
    margin: 0 8px;
    padding-bottom: 3px;
    text-align: center;
}

#pagination span.active,
div.border-bottom {
    border-bottom: 1px solid #00316C;
}

#pagination span a {
    color: #00316C;
}

#pagination .disabled .lg_btn {
    opacity: 0;
}

#pagination .disabled .lg_btn:hover {
    color: #ddd;
    border-color: #ddd;
    background-image: none;
    background-color: inherit;
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    -o-transition: none;
    transition: none;
    box-shadow: none;
    cursor: default;
}

#info-detail-flex-box-btn>div {
    width: 33%;
}


/*

アニメーション関連

*/


/* 斜めバックグラウンド関連 */

.edge .fvClipSvg,
.ie .fvClipSvg {
    display: block;
}

.fvMainSvg {
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0);
    -webkit-transition: 1.5s cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s;
    transition: 1.5s cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s;
    will-change: clip-path;
}

.fvMainSvg.no-anime {
    -webkit-transition: 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
    transition: 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
}

.fvLine {
    top: 60px;
    width: 100%;
    height: 100%;
    left: 0;
    right: 0;
    position: absolute;
    z-index: -1;
}

@media all and (-ms-high-contrast: none) {
    body {
        position: relative;
    }

    .fvLine {
        top: -100px;
    }
}

@media all and (max-width: 1600px) and (-ms-high-contrast: none) {
    .fvLine:not(.lower) {
        top: -210px !important;
    }
}

@media all and (max-width: 1300px) and (-ms-high-contrast: none) {
    .fvLine:not(.lower) {
        top: -310px !important;
    }
}

@media all and (max-width: 1023px) and (-ms-high-contrast: none) {
    .fvLine:not(.lower) {
        top: -400px !important;
    }
}

@media all and (max-width: 480px) and (-ms-high-contrast: none) {
    .fvLine:not(.lower) {
        top: -540px !important
    }
}

.fvLine.lower {
    top: 41px;
    position: relative;
    margin-bottom: 64px;
}

.fvLine svg {
    width: 100%;
    height: auto;
}

.fv-start .fvMainSvg {
    -webkit-clip-path: inset(0 0% 0 0);
    clip-path: inset(0 0% 0 0);
}

.fvClipSvg {
    display: none;
}

.fvClipSvg {
    position: absolute;
    top: 0;
    left: 0;
}


/* 全体のフェードイン */

body {
    opacity: 0;
}

body.load {
    opacity: 1;
    -webkit-transition: opacity 1s ease 0.5s;
    transition: opacity 1s ease 0.5s;
}


/* スライドイン関連 */

.js-slideUp.js-action {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition: 1s;
    transition: 1s;
    opacity: 1;
}

.js-slideUp {
    -webkit-transform: translateY(40px);
    transform: translateY(40px);
    opacity: 0;
}

.a {
    cursor: pointer;
}


/*base.css--------------------------------------------------------------------*/

.flex_box {
    display: flex;
    justify-content: center;
}

.flex_box_left {
    display: flex;
    justify-content: left;
}

.jc-center {
    justify-content: center;
}

.flex_box_between {
    display: flex;
    justify-content: space-between;
}

.flex_box_btn {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}

.frex_inline {
    display: inline-flex;
}

.d-grid {
    display: grid;
}

.relative {
    position: relative;
}

.list-none {
    list-style: none !important;
}

.txt-l {
    text-align: left !important;
}

.txt-r {
    text-align: right !important;
}

.txt-c {
    text-align: center;
}

.v-hidden {
    visibility: hidden;
}

.l-spacing-25 {
    letter-spacing: 25px;
    margin-left: 25px;
}

.l-spacing-10 {
    letter-spacing: 10px;
    margin-left: 10px;
}

.bold {
    font-weight: bold !important;
}

.font-10 {
    font-size: 10px !important;
}

.font-18 {
    font-size: 18px !important;
}

.font-20 {
    font-size: 20px !important;
}

.m-0 {
    margin: 0 !important;
}

.m-auto {
    margin: auto;
}

.m-auto-0 {
    margin: auto 0;
}

.m-0-auto {
    margin: 0 auto;
}

.m-t2 {
    margin-top: 2px;
}

.m-t5 {
    margin-top: 5px;
}

.m-t10 {
    margin-top: 10px;
}

.m-t16 {
    margin-top: 16px;
}

.m-t24 {
    margin-top: 24px;
}

.m-t32 {
    margin-top: 32px;
}

.m-t48 {
    margin-top: 48px;
}

.m-t64 {
    margin-top: 64px;
}

.m-t72 {
    margin-top: 72px;
}

.m-t80 {
    margin-top: 80px;
}

.m-t96 {
    margin-top: 96px;
}

.m-t128 {
    margin-top: 128px;
}

.m-t160 {
    margin-top: 160px;
}

.m-t184 {
    margin-top: 184px;
}

.p-0 {
    padding: 0 !important;
}

.p-10 {
    padding: 10px;
}

.p-t2 {
    padding-top: 2px;
}

.p-t5 {
    padding-top: 5px;
}

.p-t16 {
    padding-top: 16px;
}

.p-t24 {
    padding-top: 24px;
}

.p-t32 {
    padding-top: 32px;
}

.p-t48 {
    padding-top: 48px;
}

.p-t64 {
    padding-top: 64px;
}

.p-t72 {
    padding-top: 72px;
}

.p-t80 {
    padding-top: 80px;
}

.p-t96 {
    padding-top: 96px;
}

.p-t128 {
    padding-top: 128px;
}

.p-t184 {
    padding-top: 184px;
}

.m-b5 {
    margin-bottom: 5px;
}

.m-b10 {
    margin-bottom: 10px;
}

.m-b16 {
    margin-bottom: 16px;
}

.m-b24 {
    margin-bottom: 24px;
}

.m-b32 {
    margin-bottom: 32px;
}

.m-b48 {
    margin-bottom: 48px;
}

.m-b64 {
    margin-bottom: 64px;
}

.m-b72 {
    margin-bottom: 72px;
}

.m-b80 {
    margin-bottom: 80px;
}

.m-b96 {
    margin-bottom: 96px;
}

.m-b112 {
    margin-bottom: 112px;
}

.m-b128 {
    margin-bottom: 128px;
}

.m-b160 {
    margin-bottom: 160px;
}

.m-b256 {
    margin-bottom: 256px;
}

.p-b2 {
    padding-bottom: 2px;
}

.p-b5 {
    padding-bottom: 5px;
}

.p-b16 {
    padding-bottom: 16px;
}

.p-b24 {
    padding-bottom: 24px;
}

.p-b32 {
    padding-bottom: 32px;
}

.p-b48 {
    padding-bottom: 48px;
}

.p-b64 {
    padding-bottom: 64px;
}

.p-b72 {
    padding-bottom: 72px;
}

.p-b80 {
    padding-bottom: 80px;
}

.p-b96 {
    padding-bottom: 96px;
}

.p-b128 {
    padding-bottom: 128px;
}

.p-b184 {
    padding-bottom: 184px;
}

.m-r16 {
    margin-right: 16px;
}

.m-r24 {
    margin-right: 24px;
}

.m-r32 {
    margin-right: 32px;
}

.m-r48 {
    margin-right: 48px;
}

.m-r64 {
    margin-right: 64px;
}

.m-r72 {
    margin-right: 72px;
}

.m-r80 {
    margin-right: 80px;
}

.m-r96 {
    margin-right: 96px;
}

.m-r112 {
    margin-right: 112px;
}

.m-r128 {
    margin-right: 128px;
}

.m-l-auto {
    margin-left: auto;
}

.m-l5 {
    margin-left: 5px;
}

.m-l16 {
    margin-left: 16px;
}

.m-l24 {
    margin-left: 24px;
}

.m-l32 {
    margin-left: 32px;
}

.m-l48 {
    margin-left: 48px;
}

.m-l64 {
    margin-left: 64px;
}

.m-l72 {
    margin-left: 72px;
}

.m-l80 {
    margin-left: 80px;
}

.m-l96 {
    margin-left: 96px;
}

.m-l112 {
    margin-left: 112px;
}

.m-l128 {
    margin-left: 128px;
}

.p-l16 {
    padding-left: 16px;
}

.p-l24 {
    padding-left: 24px;
}

.p-l32 {
    padding-left: 32px;
}

.p-l48 {
    padding-left: 48px;
}

.p-l64 {
    padding-left: 64px;
}

.p-l72 {
    padding-left: 72px;
}

.p-l80 {
    padding-left: 80px;
}

.p-l96 {
    padding-left: 96px;
}

.p-l112 {
    padding-left: 112px;
}

.p-l128 {
    padding-left: 128px;
}

.p-r16 {
    padding-right: 16px;
}

.p-r24 {
    padding-right: 24px;
}

.p-r32 {
    padding-right: 32px;
}

.p-r48 {
    padding-right: 48px;
}

.p-r64 {
    padding-right: 64px;
}

.p-r72 {
    padding-right: 72px;
}

.p-r80 {
    padding-right: 80px;
}

.p-r96 {
    padding-right: 96px;
}

.p-r112 {
    padding-right: 112px;
}

.p-r128 {
    padding-right: 128px;
}

.l-height-21 {
    line-height: 21px !important;
}

.space-around {
    justify-content: space-around;
}

.space-between {
    justify-content: space-between;
}

.text-center {
    text-align: center;
}

.d-block {
    display: block !important;
}

.d-none {
    display: none !important;
}

a {
    text-decoration: none !important;
}

a.under_line,
.underline {
    text-decoration: underline !important;
}

.cursor_none {
    pointer-events: none !important;
}

.strong-underline {
    text-decoration: underline !important;
    font-weight: bold;
    color: #00316C;
}

.item_center {
    align-items: center;
}

.item_baseline {
    align-items: baseline;
}

.lapel-text {
    display: inline-block;
}

p.strong {
    font-weight: bold !important;
}

.strong-red {
    color: red !important;
    font-weight: bold !important;
}

.red {
    color: red !important;
}

.blue {
    color: blue !important;
}

.navy {
    color: #00316C;
}

.v-align-sub {
    vertical-align: sub;
}

.v-align-middle {
    vertical-align: middle;
}

.v-align-bottom {
    vertical-align: bottom;
}

.navy-md-label {
    background-color: #00316C;
    color: white !important;
    font-weight: bold !important;
    width: 459px !important;
    padding-left: 10px;
}

.navy-sm-label {
    background-color: #00316C;
    color: white !important;
    font-weight: bold !important;
    width: 102px !important;
    font-size: 8px !important;
    padding: 4px 10px;
    font-size: 8px !important;
    height: fit-content;
}

span.white-label {
    background-color: white;
    padding: 0 20px;
}


/* ラジオボタン01 */

input[type=radio] {
    display: none;
}

.radio01 {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 5px 30px;
    position: relative;
    width: auto;
}

.radio01::before {
    background: #E8E8E8;
    border: 1px solid #E8E8E8;
    border-radius: 50%;
    content: '';
    display: block;
    height: 16px;
    left: 5px;
    margin-top: -8px;
    position: absolute;
    top: 49%;
    width: 16px;
}

.radio01::after {
    background: #00316C;
    border-radius: 50%;
    content: '';
    display: block;
    height: 10px;
    left: 9px;
    margin-top: -4px;
    opacity: 0;
    position: absolute;
    top: 49%;
    width: 10px;
}

input[type=radio]:checked+.radio01::after {
    opacity: 1;
}

p[data-f-id=pbf] {
    display: none !important;
}


/* modal */

.modal {
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
    overflow-y: auto;
}

.modal__bg {
    background: rgba(0, 0, 0, 0.8);
    height: 100vh;
    position: absolute;
    width: 100%;
}

.modal__content {
    background: #fff;
    left: 50%;
    padding: 60px 60px 20px;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    overflow-y: scroll;
    -ms-overflow-style: none;
    /* IE, Edge 対応 */
    scrollbar-width: none;
    /* Firefox 対応 */
}

.housingloan-modal .modal__content {
    width: 330px;
    height: auto;
}

.seminar-question-modal .modal__content {
    width: 550px;
    height: auto;
    padding: 80px 50px;
}

.seminar-question-modal .modal__content h2 {
    letter-spacing: 0.1em;
    color: #00316C;
    font-size: 20px;
}

.seminar-question-modal .modal__content p {
    letter-spacing: 0.1em;
    color: #00316C;
    line-height: 22px;
    font-size: 14px;
}

.seminar-question-modal .modal__content .img-wrapper {
    width: 450px;
    margin: auto;
}

.housingloan-modal .modal__content img.modal-close {
    width: 26px;
    position: absolute;
    right: 15px;
    top: 15px;
}

.housingloan-modal .modal__content .modal-title {
    position: absolute;
    max-width: 100%;
    color: #fff;
    left: 0;
    top: 0;
    right: 0;
    padding: 48px 60px;
    font-size: 30px;
    line-height: 45px;
    font-family: serif;
}

.housingloan-modal .modal__content .modal-title::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    top: -1px;
    width: 100%;
    height: 207px;
    background: url("/images/mypage/modal_title_bg.svg");
    z-index: -1;
}

.housingloan-modal .modal__content .modal-title+.contents {
    margin-top: 160px;
    line-height: 26px;
    font-size: 13px;
    letter-spacing: 0px !important;
}

.housingloan-modal .modal__content .modal-title+.contents .gray_btn {
    width: 280px;
    height: 50px;
    line-height: 17px;
    margin-top: 26px;
}

.housingloan-modal .modal__content .modal-title+.contents div.radio {
    text-align: center;
    margin-top: 15px;
}

.schedules-modal .modal__content {
    width: 470px;
    height: 390px;
    background: rgba(0, 0, 0, 0.0001);
    padding: 0;
}

@media screen and (max-width:480px) {
    .schedules-modal .modal__content {
        width: 90%;
        height: 60%;
    }
}

.schedules-modal .modal__content img.modal-close {
    width: 26px;
    position: absolute;
    right: 15px;
    top: 15px;
    opacity: 1;
}

.schedules-modal .modal__content .modal-blank {
    position: absolute;
    height: 31px;
    max-width: 100%;
    left: 0;
    top: 0;
    right: 0;
}

.schedules-modal .modal__content .modal-title {
    position: absolute;
    height: 162px;
    max-width: 100%;
    color: #fff;
    left: 0;
    top: 31px;
    right: 0;
    font-size: 30px;
    line-height: 45px;
    background-color: #5AB3B7;
    opacity: 1;
    text-align: center;
}

.mailchanges-modal .modal__content {
    width: 600px;
    height: 560px;
    background: rgba(0, 0, 0, 0.0001);
    padding: 0;
}

.mailchanges-modal.addresschange .modal__content {
    height: 730px;
}

@media screen and (max-width:820px) {
    .mailchanges-modal .modal__content {
        width: 90%;
        height: 80%;
    }
}

.mailchanges-modal .modal__content img.modal-close {
    width: 26px;
    position: absolute;
    right: 15px;
    top: 15px;
    opacity: 1;
}

.mailchanges-modal .modal__content .modal-blank {
    position: absolute;
    height: 31px;
    max-width: 100%;
    left: 0;
    top: 0;
    right: 0;
}

.mailchanges-modal .modal__content .modal-title {
    position: absolute;
    height: 162px;
    max-width: 100%;
    color: #fff;
    left: 0;
    top: 31px;
    right: 0;
    font-size: 30px;
    line-height: 45px;
    background-color: #5AB3B7;
    opacity: 1;
    text-align: center;
}

.moving-modal .modal__content {
    width: 500px;
    height: 415px;
    background: rgba(0, 0, 0, 0.0001);
    padding: 0;
}


.moving-modal .modal__content img.modal-close {
    width: 26px;
    position: absolute;
    right: 15px;
    top: 15px;
    opacity: 1;
}

.moving-modal .modal__content .modal-blank {
    position: absolute;
    height: 31px;
    max-width: 100%;
    left: 0;
    top: 0;
    right: 0;
}

.moving-modal .modal__content .modal-title {
    position: absolute;
    height: 162px;
    max-width: 100%;
    color: #fff;
    left: 0;
    top: 31px;
    right: 0;
    font-size: 30px;
    line-height: 45px;
    background-color: #5AB3B7;
    opacity: 1;
    text-align: center;
}

.sales-modal .modal__content {
    width: 600px;
    height: 595px;
    background: rgba(0, 0, 0, 0.0001);
    padding: 0;
}

.fastdoctor-modal .modal__content {
    height: auto !important;
    width: 60% !important;
}

.fastdoctor-modal .modal__content img {
    max-width: 100%;
}

.sales-modal .modal__content img.modal-close {
    width: 26px;
    position: absolute;
    right: 15px;
    top: 15px;
    opacity: 1;
}

.sales-modal .modal__content .modal-blank {
    position: absolute;
    height: 31px;
    max-width: 100%;
    left: 0;
    top: 0;
    right: 0;
}

.sales-modal .modal__content .modal-title {
    position: absolute;
    height: 162px;
    max-width: 100%;
    color: #fff;
    left: 0;
    top: 31px;
    right: 0;
    font-size: 30px;
    line-height: 45px;
    background-color: #5AB3B7;
    opacity: 1;
    text-align: center;
}

.company-modal .modal__content .modal-title {
    background-color: #117CCD;
}

.company-select-modal .modal__content .modal-title {
    height: 116px !important;
}

.company-select-modal .modal__content {
    width: 649px;
    height: 758px;
}

.company-select-modal .modal__content img.map-sm {
    display: none;
}

.sales-modal .modal__content img.modal-text-icon {
    height: 57px;
    width: 55px;
    position: absolute;
    right: 44%;
    top: -31px;
    overflow: initial;
    opacity: 1;
}

.sales-modal .modal__content .modal-title::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    top: -1px;
    width: 100%;
    height: 207px;
    z-index: -1;
}

.sales-modal .modal__content .modal-title .triangle {
    position: absolute;
    width: 26px;
    height: 26px;
    left: 46%;
    top: 124px;
    background: #5AB3B7;
    transform: rotate(-45deg);
    z-index: 101;
}

.company-modal .modal__content .modal-title .triangle {
    background: #117CCD;
}

.company-select-modal .modal__content .modal-title .triangle {
    top: 97px;
}

.schedules-modal .modal__content img.modal-text-icon {
    height: 57px;
    width: 55px;
    position: absolute;
    right: 44%;
    top: -31px;
    overflow: initial;
    opacity: 1;
}

.schedules-modal .modal__content .modal-title::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    top: -1px;
    width: 100%;
    height: 207px;
    z-index: -1;
}

.schedules-modal .modal__content .modal-title .triangle {
    position: absolute;
    width: 26px;
    height: 26px;
    left: 46%;
    top: 124px;
    background: #117CCD;
    transform: rotate(-45deg);
    z-index: 101;
}

.mailchanges-modal .modal__content img.modal-text-icon {
    height: 57px;
    width: 55px;
    position: absolute;
    right: 44%;
    top: -31px;
    overflow: initial;
    opacity: 1;
}

.mailchanges-modal .modal__content .modal-title::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    top: -1px;
    width: 100%;
    height: 207px;
    z-index: -1;
}

.mailchanges-modal .modal__content .modal-title .triangle {
    position: absolute;
    width: 26px;
    height: 26px;
    left: 46%;
    top: 124px;
    background: #117CCD;
    transform: rotate(-45deg);
    z-index: 101;
}

.moving-modal .modal__content img.modal-text-icon {
    height: 57px;
    width: 55px;
    position: absolute;
    right: 44%;
    top: -31px;
    overflow: initial;
    opacity: 1;
}

.moving-modal .modal__content .modal-title::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    top: -1px;
    width: 100%;
    height: 207px;
    z-index: -1;
}

.moving-modal .modal__content .modal-title .triangle {
    position: absolute;
    width: 26px;
    height: 26px;
    left: 46%;
    top: 124px;
    background: #117CCD;
    transform: rotate(-45deg);
    z-index: 101;
}

.sales-modal .modal__content .modal-title+.contents {
    position: absolute;
    top: 174px;
    left: 0;
    right: 0;
    height: 420px;
    max-width: 100%;
    background: white;
    z-index: 100;
}

.schedules-modal .modal__content .modal-title+.contents {
    position: absolute;
    top: 174px;
    left: 0;
    right: 0;
    height: 215px;
    max-width: 100%;
    background: white;
    z-index: 100;
}

.mailchanges-modal .modal__content .modal-title+.contents {
    position: absolute;
    top: 174px;
    left: 0;
    right: 0;
    height: 400px;
    max-width: 100%;
    background: white;
    z-index: 100;
}

.mailchanges-modal.addresschange .modal__content .modal-title+.contents {
    height: 555px;
}

.moving-modal .modal__content .modal-title+.contents {
    position: absolute;
    top: 174px;
    left: 0;
    right: 0;
    height: 242px;
    max-width: 100%;
    background: white;
    z-index: 100;
}

.company-select-modal .modal__content .modal-title+.contents {
    height: 611px;
    top: 147px;
}

.company-select-modal .modal__content .modal-title+.contents {
    height: 611px;
}

.company-select-modal .modal__content img {
    max-width: 570px !important;
}

.company-select-modal .modal__content .radio01 {
    position: absolute;
    font-weight: 500;
    font-size: 11px;
    line-height: 160%;
    letter-spacing: 0.1em;
    color: #00316C;
}

.radio01.shintoshin {
    top: 121px;
    left: 480px;
}

.radio01.urawa {
    top: 144px;
    left: 480px;
}

.radio01.kawaguchi {
    top: 163px;
    left: 480px;
}

.radio01.joto {
    top: 186px;
    left: 480px;
}

.radio01.funabashi {
    top: 239px;
    left: 480px;
}

.radio01.shinkoiwa {
    top: 264px;
    left: 480px;
}

.radio01.shinagawa {
    top: 316px;
    left: 480px;
}

.radio01.otatokyo {
    top: 340px;
    left: 480px;
}

.radio01.nerima {
    top: 158px;
    left: 18px;
}

.radio01.suginami {
    top: 178px;
    left: 18px;
}

.radio01.musashino {
    top: 198px;
    left: 18px;
}

.radio01.tachikawa {
    top: 218px;
    left: 18px;
}

.radio01.kokubunji {
    top: 239px;
    left: 18px;
}

.radio01.setagaya {
    top: 261px;
    left: 18px;
}

.radio01.machida {
    top: 282px;
    left: 18px;
}

.radio01.mizonokuchi {
    top: 302px;
    left: 18px;
}

.radio01.yokohamawest {
    top: 324px;
    left: 18px;
}

.radio01.yokohama {
    top: 345px;
    left: 18px;
}

.radio01.shonan {
    top: 366px;
    left: 18px;
}

.radio01.matsudo {
    top: 213px;
    left: 480px;
}

.sales-modal .modal__content .modal-title h2 {
    font-weight: 500 !important;
    font-size: 23px !important;
    line-height: 34px !important;
    letter-spacing: 0.1em !important;
    color: #FFFFFF !important;
}

.sales-modal .modal__content .modal-title p {
    font-style: normal !important;
    font-weight: 300 !important;
    font-size: 15px !important;
    line-height: 25px !important;
    letter-spacing: 0.1em !important;
    color: white !important;
}

.sales-modal .modal__content .contents textarea {
    font-style: normal !important;
    font-weight: 300 !important;
    font-size: 13px !important;
    line-height: 19px !important;
    letter-spacing: 0.1em !important;
    color: black !important;
    width: 80%;
    height: 172px;
    padding: 20px !important;
}

.sales-modal .modal__content .contents p {
    width: 90%;
    text-align: left;
    margin: auto;
    line-height: 20px;
    font-size: 12px !important;
}

.schedules-modal .modal__content .modal-title h2 {
    font-weight: 500 !important;
    font-size: 23px !important;
    line-height: 34px !important;
    letter-spacing: 0.1em !important;
    color: #FFFFFF !important;
}

.schedules-modal .modal__content .modal-title p {
    font-style: normal !important;
    font-weight: 300 !important;
    font-size: 15px !important;
    line-height: 25px !important;
    letter-spacing: 0.1em !important;
    color: white !important;
}

@media screen and (max-width:306px) {
    .schedules-modal .modal__content .modal-title p {
        font-size: 13px !important;
    }
}

.schedules-modal .modal__content .contents textarea {
    font-style: normal !important;
    font-weight: 300 !important;
    font-size: 13px !important;
    line-height: 19px !important;
    letter-spacing: 0.1em !important;
    color: black !important;
    width: 80%;
    height: 172px;
    padding: 20px !important;
}

.schedules-modal .modal__content .contents p {
    width: 90%;
    text-align: left;
    margin: auto;
    line-height: 20px;
    font-size: 12px !important;
}

.mailchanges-modal .modal__content .modal-title h2 {
    font-weight: 500 !important;
    font-size: 23px !important;
    line-height: 34px !important;
    letter-spacing: 0.1em !important;
    color: #FFFFFF !important;
}

.mailchanges-modal .modal__content .modal-title p {
    font-style: normal !important;
    font-weight: 300 !important;
    font-size: 15px !important;
    line-height: 25px !important;
    letter-spacing: 0.1em !important;
    color: white !important;
}

@media screen and (max-width:306px) {
    .mailchanges-modal .modal__content .modal-title p {
        font-size: 13px !important;
    }
}

.mailchanges-modal .modal__content .contents textarea {
    font-style: normal !important;
    font-weight: 300 !important;
    font-size: 13px !important;
    line-height: 19px !important;
    letter-spacing: 0.1em !important;
    color: black !important;
    width: 80%;
    height: 172px;
    padding: 20px !important;
}

.mailchanges-modal .modal__content .contents p {
    width: 90%;
    text-align: left;
    margin: auto;
    line-height: 20px;
    font-size: 12px !important;
}

.moving-modal .modal__content .modal-title h2 {
    font-weight: 500 !important;
    font-size: 23px !important;
    line-height: 34px !important;
    letter-spacing: 0.1em !important;
    color: #FFFFFF !important;
}

.moving-modal .modal__content .modal-title p {
    font-style: normal !important;
    font-weight: 300 !important;
    font-size: 15px !important;
    line-height: 25px !important;
    letter-spacing: 0.1em !important;
    color: white !important;
}

@media screen and (max-width:306px) {
    .moving-modal .modal__content .modal-title p {
        font-size: 13px !important;
    }
}

.moving-modal .modal__content .contents textarea {
    font-style: normal !important;
    font-weight: 300 !important;
    font-size: 13px !important;
    line-height: 19px !important;
    letter-spacing: 0.1em !important;
    color: black !important;
    width: 80%;
    height: 172px;
    padding: 20px !important;
}

.moving-modal .modal__content .contents p {
    width: 90%;
    text-align: left;
    margin: auto;
    line-height: 20px;
    font-size: 12px !important;
}


.modal__content::-webkit-scrollbar {
    /* Chrome, Safari 対応 */
    display: none;
}

.modal .btn {
    color: #fff;
    min-width: 120px;
    margin: 0 10px;
    padding: 3px 7px 7px;
    border: none;
}

.modal input[type="search"] {
    margin: 0 0 0 7px;
    height: 30px;
    padding: 0 5px;
}

.tooltip3 {
    position: relative;
    display: inline-block;
    opacity: 1 !important;
    width: 100%;
}

.description3 {
    display: none;
    position: absolute;
    padding: 10px;
    font-size: 12px;
    line-height: 1.6em;
    color: #fff;
    border-radius: 5px;
    background: #63AFCE;
    z-index: 100;
}

.description3:before {
    content: "";
    position: absolute;
    top: -24px;
    right: 60%;
    border: 15px solid transparent;
    border-top: 15px solid #63AFCE;
    margin-left: -15px;
    transform: rotateZ(180deg);
    z-index: 100;
    opacity: 1 !important;
}

.tooltip3:hover .description3 {
    display: inline-block;
    top: 60px;
    left: 0px;
    opacity: 1 !important;
}

img.certified-housing {
    display: block;
    padding-top: 10px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}

img.register-sample {
    display: block;
    padding-top: 10px;
    width: 60%;
    margin-left: auto;
    margin-right: auto;
}

.circle-pos {
    position: fixed !important;
    top: 15%;
    right: 5%;
    background-color: white;
    border: #00316C solid 2px;
    box-shadow: 0 1rem 1rem -1rem hsl(200deg 50% 20% / 40%);
    z-index: 100;
}

.circle-introduce-toho {
    width: 300px !important;
    height: 300px !important;
    background-image: url(../images/mypage/introduction.png);
    background-position: 50% 30% !important;
    background-repeat: no-repeat;
    background-size: 130px !important;
}

.circle-introduce-toho:hover {
    background-color: #eee !important;
}

.circle .circle-inner-under {
    top: 67% !important;
    width: 80% !important;
    font-size: 24px !important;
    line-height: 29px !important;
}

.youtube.e-tax-youtube {
    height: 394px;
    width: 100%;
}

span.h2-small {
    font-size: 17px;
}

.ribbon {
    display: inline-block;
    position: relative;
    height: 45px;
    text-align: center;
    box-sizing: border-box;
    top: -26px;
    left: -59px;
}

.ribbon h3,
.rb {
    display: inline-block;
    position: relative;
    margin: 0;
    padding: 0 8px;
    line-height: 22px;
    font-size: 12px;
    font-weight: bold;
    color: #fff;
    background: #e79800;
    border-top-left-radius: 5px;
    border-bottom-right-radius: 5px;
}

.red.ribbon {
    left: -78px !important;
}

.red.ribbon h3 {
    background: #ff7200 !important;
    color: white !important;
}

span.flash {
    animation: flash 1s linear infinite;
}

@keyframes flash {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0;
    }
}

.rb:hover {
    cursor: pointer;
}

.scheduled {
    width: 90% !important;
}

.carousel {
    width: 571px;
    height: 155px;
    position: relative;
    margin: 50px auto 50px;
    overflow-x: clip;
}

.carousel-area {
    /* リスト数×リスト幅を計算してwidth指定してもいいが、汎用性を考慮してjQueryで計算代入する */
    width: 4560px;
    height: 100%;
    position: absolute;
    display: flex;
}

@media (max-width: 1023px) {
    .carousel-area {
        /* リスト数×リスト幅を計算してwidth指定してもいいが、汎用性を考慮してjQueryで計算代入する */
        width: 2720px;
    }
}

/* object-fitを使用せずに画像トリミングさせるためにbackgroundで指定 */
.carousel-list {
    width: 570px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    cursor: pointer;
}

/* clipで非表示指定（スクリーンリーダー対策） */
.carousel-img {
    width: 1px;
    height: 1px;
    clip: rect(1px, 1px, 1px, 1px);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    margin: -1px;
    padding: 0;
    overflow: hidden;
    position: absolute;
}

/*********** スライド送りボタン ***********/
/* 共有パーツ */
.arow-wrap {
    width: 99%;
    height: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.arrow-btn {
    width: 50px;
    height: 160px;
    background-color: transparent;
    border-color: transparent;
    transition: .2s;
}

.arrow-btn:hover {
    background-color: rgb(216, 216, 216, 0.2);
}

/* 左 */
.arrow-left {
    position: relative
}

.arrow-left:before {
    content: "";
    width: 10px;
    height: 10px;
    border-top: 2px solid #000;
    border-left: 2px solid #000;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-30%, -50%) rotate(-45deg);
}

/* 右 */
.arrow-right {
    position: relative
}

.arrow-right:before {
    content: "";
    width: 10px;
    height: 10px;
    border-top: 2px solid #000;
    border-left: 2px solid #000;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-70%, -50%) rotate(135deg);
}

/*********** ページネーション ***********/
.pagination {
    width: 150px;
    margin: 2% auto 0;
    display: flex;
    justify-content: space-around;
}

.pagination-circle {
    width: 10px;
    height: 10px;
    border: 1px solid rgb(4, 0, 255);
    border-radius: 50%;
    background-color: rgba(40, 60, 255, 0.3);
}

/* jsでtargetクラスがついたら背景色を変える */
.pagination-circle.target {
    background-color: rgba(130, 140, 240, 0.8);
}

.fastdoctor-img {
    background-image: url(/images/mypage/fastdoctor.jpg) !important;
    background-size: cover !important;
}

/* メールアドレス変更関連 */
.tertiary {
    margin-top: 20px !important;
    margin-bottom: 5px !important;
    font-weight: bold;
}

#local {
    margin-top: 60px !important;
    margin-bottom: 10px !important;
    font-size: 15px !important;
    font-weight: normal !important;
    text-align: center !important;
}

#general {
    margin-top: 20px !important;
    margin-bottom: 10px !important;
    font-size: 15px !important;
    font-weight: normal !important;
    text-align: center !important;
}

.current {
    font-size: 13px;
    color: #000;
    font-weight: normal;
    text-align: left;
    width: 90%;
    margin: auto;
}


div.back-movie {
    color: #00316C !important;
    cursor: pointer;
    font-weight: 300;
    font-size: .875rem;
}

div.back-movie:hover {
    opacity: 0.6;
}

.pic_agree p,
.pic_agree h2,
.pic_agree h3 {
    color: #00316C;
    font-family: Noto Sans JP;
}

.pic_agree h2 {
    font-size: 1.75rem;
    margin-bottom: 0.5rem;
}

.pic_agree p {
    font-size: 18px;
    line-height: 33px;
    font-weight: 300;
}

.pic_agree div.convention-box {
    width: 58%;
    min-width: 900px;
    margin: auto;
    padding: 50px;
}

.pic_agree div.convention-box div.text-box {
    background: #f8f8f8;
    width: 100%;
    height: 230px;
    overflow-y: scroll;
    text-align: left;
    font-weight: 300;
    font-size: .875rem;
    line-height: 1.5;
}

.pic_agree div.convention-box div.text-box span.title {
    font-weight: bold;
    font-size: 16px;
}

.modal__content::-webkit-scrollbar {
    /* Chrome, Safari 対応 */
    /* display: none; */
}

::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track {
    background: #fff;
    border: none;
    border-radius: 10px;
}

::-webkit-scrollbar-thumb {
    background: #00316C;
    border-radius: 10px;
    box-shadow: none;
}

.fine p {
    text-align: left;
    color: #00316C !important;
    font-family: serif;
    font-weight: 600;
    font-size: 15px !important;
}

.grandmother {
    margin: auto 0;
}

.grandmother img {
    width: 180px;
    height: 120px;
}

.images_free {
    display: flex;
    justify-content: space-between;
}

.box_img {
    position: relative;
    right: 100px;
}

.box_img .back_to {
    width: 130px;
    height: 200px;
    text-align: right !important;
}

img.hand_to {
    width: 100px;
    position: absolute;
    top: 136px;
    right: -46px;
}

img.img_family {
    width: 100px;
    position: absolute;
}

.held {
    font-size: 18px !important;
    font-weight: 600 !important;
    text-align: left !important;
    padding-top: 50px;
    line-height: 35px !important;
    font-family: serif !important;
}

.better {
    font-size: 16px !important;
    font-weight: 600 !important;
    text-align: center !important;
    color: #00316C !important;
    font-family: serif !important;
}

.speakers p {
    text-align: center !important;
    padding-top: 30px !important;
    color: #00316C !important;
    font-size: 25px !important;
    font-family: serif !important;
    font-weight: 500 !important;
}

.top_space {
    padding-top: 30px !important;
}

.suginohara {
    margin: auto 0;
}

.suginohara_to {
    width: 180px !important;
    height: 360px !important;
}

.suginohara p {
    color: #00316C !important;
    font-size: 15px !important;
    font-family: serif;
    font-weight: bold;
}

.logo_to {
    width: 200px;
}

.images_stg {
    display: flex;
}

.images_stg p {
    text-align: left;
    color: #00316C !important;
    margin-top: 10px;
}

/*--セミナー詳細アコーディオン--*/

#free-online .displayNone,
.displayNone {
    display: none;
}

#free-online .accordion a {
    display: block;
}

#free-online .switch {
    cursor: pointer;
    position: relative;
    box-sizing: border-box;
    padding: 15px 0;
}

#free-online .switch {
    font-weight: bold;
    border: 1px solid;
}

#free-online .accordion_box {
    border-radius: 6px;
    text-align: center;
}

#free-online span.Plus,
#free-online span.Minus {
    position: absolute;
    right: 20px;
}

#free-online span.Plus {
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    border-radius: 50%;
    background: #00316C;
    color: #fff;
    padding: 1px 0 0 1px;
    font-size: 20px;
}

span.Plus.pm-row2,
span.Minus.pm-row2,
span.Plus.pm-sm-row3,
span.Minus.pm-sm-row3 {
    top: 30px;
}

#free-online span.Minus {
    display: none;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    border-radius: 50%;
    background: #75C1C4;
    color: #fff;
    padding: 1px 0 0 1px;
    font-size: 20px;
}

#free-online .accordion_shadow {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

#free-online .small {}

.worries ul {
    padding: 15px 25px;
}

.worries ul>li {
    font-family: Noto Sans JP;
    font-style: normal;
    font-weight: bold;
    font-size: 15px;
    line-height: 22px;
    letter-spacing: 0.1em;
    color: #00316C;
    padding-bottom: 16px;
}

.dead {
    text-align: right !important;
    margin-right: 10px;
    margin-top: 20px;
    font-family: serif !important;
    font-weight: 600 !important;
}

/* .check {
    padding: 2rem 1.5rem 0;
} */

@media (max-width: 1023px) {
    .check {
        padding: 2rem 1rem 0;
    }
}

.check p {
    text-align: left;
    color: #00316C !important;
    margin-left: 10px;
    font-weight: 600;
    font-family: serif;
    font-size: 16px !important;
    pointer-events: none;
}

.parent {
    margin-right: 150px !important;
    color: #00316C !important;
    font-family: serif !important;
    font-weight: 800 !important;
    font-size: 17px !important;

}

div.cancel_to {
    position: relative;
    right: 8%;
}

.cancel_to span {
    color: red;
    font-size: 14px !important;
    font-family: serif !important;
    font-weight: 600 !important;
    white-space: nowrap;
}

.contentWrap img.icon {
    width: 16px;
}

.badge {
    display: inline-block;
    padding: 0.4em 0.8em;
    font-size: 70%;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    height: fit-content;
    margin: 5px 3px;
}

.badge-red {
    color: white;
    background-color: red;
}