/*==========================================================
                        C U S T O M
==========================================================*/
/* MB */
.under main .mb10 {
    margin-bottom: 10px
}
.under main .mb15 {
    margin-bottom: 15px
}
.under main .mb20 {
    margin-bottom: 20px
}
.under main .mb25 {
    margin-bottom: 25px
}
.under main .mb30 {
    margin-bottom: 30px
}
.under main .mb40 {
    margin-bottom: 40px
}
.under main .mb50 {
    margin-bottom: 50px
}
.under main .mb60 {
    margin-bottom: 60px
}
.under main .mb70 {
    margin-bottom: 70px
}
.under main .mb80 {
    margin-bottom: 80px
}
.under main .mb90 {
    margin-bottom: 90px
}
/* MT */
.under main .mt10 {
    margin-top: 10px
}
.under main .mt15 {
    margin-top: 15px
}
.under main .mt20 {
    margin-top: 20px
}
.under main .mt25 {
    margin-top: 25px
}
.under main .mt30 {
    margin-top: 30px
}
.under main .mt40 {
    margin-top: 40px
}
.under main .mt50 {
    margin-top: 50px
}
.under main .mt60 {
    margin-top: 60px
}
.under main .mt70 {
    margin-top: 70px
}
.under main .mt80 {
    margin-top: 80px
}
.under main .mt90 {
    margin-top: 90px
}
/* MAX_W */
.under main .max_w200 {
    width: 100%;
    max-width: 200px
}
.under main .max_w250 {
    width: 100%;
    max-width: 250px
}
.under main .max_w300 {
    width: 100%;
    max-width: 300px
}
.under main .max_w350 {
    width: 100%;
    max-width: 350px
}
.under main .max_w500 {
    width: 100%;
    max-width: 500px
}
.under main .max_w600 {
    width: 100%;
    max-width: 600px
}
.under main .max_w700 {
    width: 100%;
    max-width: 700px
}
.under main .max_w800 {
    width: 100%;
    max-width: 800px
}
.under main .max_w900 {
    width: 100%;
    max-width: 900px
}
/* MIN-W */
.under main .min_w200 {
    min-width: 200px
}
.under main .min_w250 {
    min-width: 250px
}
.under main .min_w300 {
    min-width: 300px
}
.under main .min_w350 {
    min-width: 350px
}
.under main .min_w500 {
    min-width: 500px
}
.under main p.bold {
    margin-bottom: 15px;
}
/*==========================================================
                        FONT FAMILY
==========================================================*/
.under main {
    background: #f7f7f7;
}
.under main p {
    line-height: 1.77;
}
.under main h2, .under main h3, .under main h4, .under main h5, .under main h6, .under main table th, .under main .list_faq dt, .under main .list_step dt {
    font-family: var(--f-yumin)
}
/*==========================================================
                        H E A D I N G
==========================================================*/
.under main h2, .under main h3, .under main h4, .under main h5, .under main h6 {
    font-weight: 700;
    margin-bottom: 30px;
}
.under main h2 {
    text-align: center;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    margin-bottom: 50px;
}
.un_head2_subttl {
    font-size: 21px;
    color: var(--mcolor);
    background: #fff;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 11px 22px 10px;
    letter-spacing: 0.03em;
    position: relative;
    margin-bottom: 20px;
}
.un_head2_subttl:before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 10px 10px 0;
    border-color: transparent #fff transparent transparent;
    left: 67px;
    bottom: -10px;
}
.un_head2_ttl {
    font-size: 50px;
    letter-spacing: 0.03em;
}
.un_head2_catch {
    font-size: 26px;
    font-weight: 700;
    letter-spacing: 0.03em;
    margin-bottom: 20px;
}
.un_head2_catch span {
    color: #FCE800;
}
.under .un_head2_txt p {
    font-weight: 500;
    line-height: 1.77;
}
.under .un_anchor {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 40px;
}
.under .un_anchor li {
    width: 323px;
    height: 78px;
    flex-wrap: wrap;
    margin: 0 10px 20px 10px;
}
.under .un_anchor li a {
    display: flex;
    align-items: center;
    color: var(--mcolor);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    width: 100%;
    height: 100%;
    padding-left: 22px;
    position: relative;
    border-radius: 20px;
    background: #fff;
    border-radius: 20px;
}
.under .un_anchor li a:hover {
    background: #EFEFEF;
}
.under .un_anchor li a:hover:before {
    background: url(../images/arrow_w.svg) var(--mcolor) no-repeat right 12px top 11px / 7px;
}
.under .un_anchor li a:before {
    position: absolute;
    content: "";
    width: 34px;
    height: 34px;
    background: url(../images/arrow_w.svg) var(--mcolor) no-repeat right 12px top 11px / 7px;
    border-radius: 50px;
    top: calc(50% - 17px);
    right: 20px;
    transition: all 0.3s;
}
.under main h3 {
    font-size: 37px;
    color: var(--mcolor);
    letter-spacing: 0.03em;
    margin-bottom: 47px;
}
.under main h3 .en {
    font-size: 80%;
    color: var(--mcolor);
    display: block;
}
.under main h4 {
    font-size: 24px;
    font-weight: 700;
    background: var(--mcolor);
    color: #fff;
    border-radius: 9999px;
    position: relative;
    left: -100px;
    width: calc(100% + 200px);
    padding: 25px 80px 26px;
    margin-bottom: 60px;
    letter-spacing: 0.02em;
}
.under main h4::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 9px 0 9px 13px;
    border-color: transparent transparent transparent #fff;
    left: 30px;
    top: calc(50% - 9px);
}
.under main h5 {
    font-size: 25px;
    position: relative;
    padding-left: 25px;
    margin-bottom: 37px;
}
.under main h5::before {
    content: "";
    position: absolute;
    height: 28px;
    width: 6px;
    background: var(--mcolor);
    left: 0;
    top: 5px;
}
.under main h6 {
    font-size: 20px;
    position: relative;
}
.under main h6::before, .under main h6::after {
    content: "";
    position: absolute;
    height: 3px;
    left: 0;
    bottom: -5px;
}
.under main h6::before {
    background-color: var(--mcolor);
    width: 50px;
    left: 0;
    z-index: 2;
}
.under main h6::after {
    background-color: #ccc;
    width: 100%;
}
.under main .box_head3, .under main .box_head5, .under main .box_white {
    position: relative;
    padding: 93px 0 90px;
    z-index: 1;
}
.under main .box_head3 h4 {
	width: 100%;
	left: 0;
}
.under main .box_head3.mb01 {
    padding: 50px 0 5px;
}
.under main .box_head5 {
    padding: 83px 0 105px;
}
.under main .box_white {
    padding: 76px 0 76px;
}
.under main .box_head5 p {
    line-height: 1.66;
}
.under main .box_head3:before, .under main .box_head5:before, .under main .box_white:before {
    position: absolute;
    content: "";
    width: calc(100% + 200px);
    height: 100%;
    left: -100px;
    background: #fff;
    z-index: -1;
    top: 0px;
    border-radius: 20px;
}
/*==========================================================
                      MAIN - CONTENT
==========================================================*/
.under main #content {
    padding: 0;
    display: flex;
    flex-direction: column;
}
#contact main #content {
    padding-bottom: 120px;
}
.under main #content > .inner {
    order: 3;
}
.under main #content > .inner2 {
    order: 4
}
.under main .inner2 {
    width: 1230px;
    margin: 115px auto 0;
    max-width: 100%;
    padding: 0 15px;
}
.under main section {
    padding: 0 0 80px;
    margin-bottom: 0
}
.under main section:last-child {
    padding: 0
}
/* LINK + BUTTON TOP */
.under main .link {
    text-decoration: underline;
    color: var(--mcolor);
}
/*============ TOP INFO ============ */
.under main #top_info {
    width: 100%;
    margin: 0 auto 25px;
    background: url('../images/idx_bg03.png')var(--mcolor) no-repeat center bottom -188px/1920px;
    min-height: 775px;
    padding-top: 160px;
    padding-bottom: 137px;
    color: #fff;
    order: 1;
}
.list_detail main #top_info,.page_404 main #top_info {
    min-height: auto;
    padding-bottom: 40px;
}
.under main #top_info .inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    padding-top: 97px;
    width: 1330px;
}
/*==========================================================
                    T O P I C   P A T H
==========================================================*/
.under main #topic_path {
    margin-bottom: 30px;
    order: 2;
}
.under main #topic_path .inner {
    width: 1330px;
}
.under main #topic_path ul {
    display: block;
    padding: 9px 0 4px;
}
.under main #topic_path li {
    display: inline-block;
    position: relative;
}
.under main #topic_path li:not(:last-child)::after {
    content: "";
    position: relative;
    display: inline-block;
    margin: 0 10px 0 15px;
    top: -1px;
    background: url("../images/arrow_topic.svg") no-repeat center center/7px;
    width: 7px;
    height: 12px;
    pointer-events: none;
}
.under main #topic_path li {
    letter-spacing: 0.02em;
}
.under main #topic_path li a {
    background: var(--scolor);
    color: #fff;
    padding: 6px 30px 7px;
    border-radius: 28px;
    font-size: 16px;
    font-weight: 500;
}
/*============ LIST ANCHOR LINK ============ */
.under main .list_anchor {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    margin-bottom: 30px;
}
.under main .list_anchor .btn {
    margin: 0 10px 15px
}
.under main .list_anchor:last-child {
    margin-bottom: -15px;
}
/*==========================================================
                        T A B L E
==========================================================*/
.under main table.td_top td {
    vertical-align: top
}
.under main table.tb_fix {
    table-layout: fixed;
}
.under main table {
    margin-bottom: 30px;
}
.under main table.mailform th, .under main table th {
    font-weight: 500;
    font-size: 20px;
    position: relative;
}
.under main table.mailform th:before, .under main table th:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    background: #fff;
    left: 0;
    top: 0;
    border-radius: 28px;
    z-index: -1;
}
.under main .box_white table tr th:not(:last-child), .under main .box_head3 table tr th:not(:last-child) {
    border-right: 15px #fff solid;
}
.under main .box_white table.mailform th:before, .under main .box_white table th:before, .under main .box_head3 table th:before {
    background: #F7F7F7;
}
.under main .box_white table th, .under main .box_white table td, .under main .box_head3 table th, .under main .box_head3 table td {
    border-bottom: 15px #fff solid;
}
/*.under main .box_head3 table th {
    text-align: left;
}*/
.under main .box_head3 table.center th {
    text-align: center;
}
.under main table.mailform th span {
    color: #fff
}
.under main table th, .under main table td {
    padding: 15px;
    border: 0;
    border-bottom: 15px #f7f7f7 solid;
}
.bg01, .bg02, .bg03 {
    position: relative;
}
.under main table td.bg01 {
    border-right: 15px #fff solid;
}
.under main table td.bg03 {
    border-right: 15px #f7f7f7 solid;
}
.under main table td.bg03.white {
    border-right: 15px #fff solid;
}
.bg01:before, .bg02:before, .bg03:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    background: #F7F7F7;
    left: 0;
    top: 0;
    border-radius: 28px;
    z-index: -1;
    border: 1px #f7f7f7 solid;
}
.bg02:before {
    background: #e7f5ff;
}
.bg03:before {
    background: #fffbe8;
}
.under main table tr:last-child th, .under main table tr:last-child td {
    border-bottom: none;
}
.under main table tr th:not(:last-child) {
    border-right: 15px #f7f7f7 solid;
}
.under main table img {
    display: block;
    margin: auto;
}
.under main .box_contact table img {
    display: inline;
    max-width: inherit;
}
/*============ LIST ============ */
/* LIST 01 */
.under main .list01, .block_item ul, .block_item01 ul {
    margin-bottom: 30px;
}
.under main .list01 li, .block_item ul li, .block_item01 ul li {
    display: block;
    padding-left: 25px;
    margin-bottom: 5px;
    position: relative
}
.under main .list01 li::before, .block_item ul li:before, .block_item01 ul li:before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7px 0 7px 11px;
    border-color: transparent transparent transparent var(--mcolor);
    left: 0px;
    top: 13px;
}
/* LIST 02 */
.under main .list02 {
    margin-bottom: 30px;
}
.under main .list02 li, .block_item ol li, .block_item01 ol li {
    counter-increment: li;
    padding-left: 50px;
    position: relative;
    margin-bottom: 6px;
}
.under main .list02_step li {
    background: #f7f7f7;
    padding: 5px 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.under main .list02_step li:not(:last-child):before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: var(--mcolor) transparent transparent transparent;
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: -15px;
}
.under main .list02_step li:not(:last-child) {
    margin-bottom: 20px;
}
.under main .list02 li::after, .block_item ol li::after, .block_item01 ol li::after {
    position: absolute;
    content: "";
    width: 1px;
    height: 24px;
    background: var(--mcolor);
    transform: rotate(30deg);
    left: 37px;
    top: 7px;
}
.under main .list02 li::before, .block_item ol li:before, .block_item01 ol li:before {
    content: '0'counter(li);
    position: absolute;
    width: 22px;
    height: 22px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    left: 0;
    top: 8px;
    font-size: 24px;
    font-weight: 600;
    color: var(--mcolor);
    line-height: 22px;
    font-family: var(--f-en);
}
/* LIST CHECK */
.under main .list_check {
    margin-bottom: 30px;
}
.under main .list_check li {
    display: block;
    padding-left: 25px;
    margin-bottom: 5px;
    position: relative
}
.under main .list_check li::before {
    content: '';
    display: block;
    position: absolute;
    top: 5px;
    left: 5px;
    width: 7px;
    height: 15px;
    border: solid var(--mcolor);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
/* LIST FAQ */
.under main .list_faq {
    margin-bottom: 30px;
}
.under main .list_faq dl {
    background: #FFF;
    padding: 15px;
    margin-bottom: 50px
}
.under main .box_head3 .list_faq dl {
    background: #f7f7f7;
}
.under main .list_faq dt {
    position: relative;
    font-size: 22px;
    font-weight: bold;
    line-height: 1.5em;
    margin-bottom: 10px;
    border-bottom: 1px solid var(--mcolor);
    display: flex;
    align-items: center;
    padding-bottom: 15px;
}
.under main .list_faq dt span {
    width: 40px;
    height: 40px;
    font-weight: bold;
    text-align: center;
    line-height: 1em;
    background: #fff;
    border: 1px solid var(--mcolor);
    color: var(--mcolor);
    margin-right: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-family: var(--f-en);
    font-size: 20px;
}
.under main .list_faq dd {
    position: relative;
    padding-left: 50px;
    min-height: 62px;
    line-height: 1.66;
}
.under main .list_faq dd span {
    position: absolute;
    top: 5px;
    left: 0;
    width: 40px;
    height: 40px;
    font-weight: bold;
    line-height: 1em;
    color: #fff;
    background: var(--mcolor);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    flex-shrink: 0;
}
/* LIST STEP */
.under main .list_step dl {
    margin-bottom: 35px;
    padding-bottom: 50px;
    position: relative;
}
.under main .list_step dl:not(:last-child)::before {
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 25px solid transparent;
    border-left: 25px solid transparent;
    border-top: 30px solid var(--mcolor);
    border-bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: 0px;
    position: absolute;
    content: "";
}
.under main .list_step_arr dl:not(:last-child)::before {
    bottom: -10px;
}
.under main .list_step dl:last-child {
    padding-bottom: 0;
    margin-bottom: 0
}
.under main .list_step dt {
    background: var(--mcolor);
    color: #fff;
    font-weight: 500;
    padding: 10px;
    display: flex;
    align-items: center;
    font-size: 24px;
}
.under main .list_step dt span {
    min-width: 120px;
    background: #fff;
    color: var(--mcolor);
    font-size: 20px;
    flex-shrink: 0;
    height: 100%;
    text-align: center;
    font-weight: 700;
    margin-right: 20px;
    border-radius: 5px;
}
.under main .list_step dd {
    padding: 15px;
    background: #fff;
}
/*============ FRAME ============ */
/* FRAME 01 */
.under main .frame01 {
    border: 3px solid var(--mcolor);
    padding: 50px 30px;
    background: url("../images/idx_par02.png") repeat 0 0;
    border-radius: 10px;
    margin-bottom: 50px;
    box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.16);
}
.under main .frame_box {}
.under main .frame_box .frame01 {
    margin-bottom: 0;
    border-radius: 0;
    border-bottom: none;
}
.under main .frame_box .frame01:last-child {
    border-radius: 0 0 10px 10px;
    border-bottom: 3px solid var(--mcolor);
}
.under main .frame_box .frame01:first-child {
    margin-bottom: 0;
    border-radius: 10px 10px 0 0;
    border-bottom: none;
}
/* FRAME 02 */
.under main .frame02 {
    border: 1px solid #e6e6e6;
    padding: 25px;
    margin-bottom: 50px;
    background: url("../images/idx_par02.png") repeat 0 0;
}
/* FRAME PICKUP */
.under main .frame_pick {
    padding: 25px;
    background: #e6e6e6;
    margin-bottom: 50px;
}
.under main .frame_pick .pick_ttl {
    font-size: 24px;
}
.under main .frame_pick .pick_ttl span {
    font-size: 36px;
    display: block;
}
/* IFRAME BOX */
.under main .box_map {
    width: 100%;
    height: 400px
}
.under main .box_ytb {
    width: 900px;
    height: auto;
    margin: 0 auto;
    aspect-ratio: 16/9;
    max-width: 100%;
}
.under main .box_map iframe, .under main .box_ytb iframe {
    width: 100%;
    height: 100%;
    border: none;
    outline: none;
}
/* ===========  KIJIKAKU ===========  */
.under main .kiji_list {
    margin-top: 50px;
}
.under main .kiji_list dl {
    display: flex;
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: 1px dashed #ccc
}
.under main .kiji_list dt {
    display: flex;
    align-items: center;
    width: 150px
}
.under main .kiji_list dt img {
    margin-right: 10px;
    position: relative;
    top: -2px;
}
.under main .kiji_list dd {
    width: calc(100% - 150px);
    display: flex;
    align-items: center;
}
.under main .kiji_list dd a {
    display: inline-block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}
.under main .kiji_detail_ct img {
    max-width: 800px;
    max-height: 600px;
}
/* ===========  PAGINATION ===========  */
.under main .pagination {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    text-align: center;
    margin: 30px auto 0
}
.under main .pagination li {
    margin: 0 10px
}
.under main .pagination li a {
    width: 40px;
    height: 40px;
    text-align: center;
    border: 1px solid var(--mcolor);
    background: #fff;
    display: flex;
    color: var(--mcolor);
    justify-content: center;
    align-items: center;
    border-radius: 5px;
}
.under main .pagination li:hover a, .under main .pagination li.active a {
    background: var(--mcolor);
    color: #fff;
}
.under main .pagination li.active a {
    pointer-events: none;
}
.under main .pagination li.disabled {
    display: none
}
/* ===========  PAGINATION WP ===========  */
.under main .wp_pagination {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 40px;
}
.under.list_page main .wp_pagination {
    margin-top: 0px;
}
.under main .wp_pagination > span, .under main .wp_pagination a {
    min-width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    color: #fff;
    margin: 5px;
    text-align: center;
    font-weight: 500;
    line-height: 1em;
    transition: all 0.3s;
    padding: 5px;
    border: 1px #ccc solid;
    font-size: 14px;
    background: #ccc;
}
.under main .wp_pagination a {
    color: var(--txt)
}
.under main .wp_pagination > span {
    background: var(--mcolor);
    border: 1px var(--mcolor) solid;
    color: #fff;
}
.under main .image_r img, .under main .image_l img, .under main .bor img {
    border-radius: 20px;
}
.under main .boxunder_bnr a {
    position: relative;
    overflow: hidden;
}
.under main .un_bnr01.full01 a {
    position: relative;
}
.under main .boxunder_bnr a:after, .under main .un_bnr01.full01 a:after {
    position: absolute;
    content: "";
    width: 0%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.2);
    left: 0;
    top: 0;
    transition: all 0.3s;
}
.under main .boxunder_bnr {
    position: relative;
    padding: 140px 0 123px;
}
.under main .boxunder_bnr .un_ttl01 {
    color: #fff;
    margin-bottom: 25px;
    text-align: center;
}
.under main .boxunder_bnr:before {
    position: absolute;
    content: "";
    background: url("../images/un_bg_bnr.jpg") top center/cover no-repeat;
    width: 1920px;
    height: 100%;
    left: calc(50% - 960px);
    top: 0px;
    z-index: -1;
}
.under main .un_bnr01 a {
    background: url("../images/un_bg_full.png")#e8e8e8 no-repeat right 58px center;
    height: 190px;
    border-radius: 20px;
    border: 4px #fff solid;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
    letter-spacing: 0.05em;
    padding-left: 174px;
    position: relative;
    padding-top: 7px;
    box-shadow: 5px 5px 0px 0px rgba(0, 0, 0, 0.16);
}
.under main .un_bnr01 {
    margin-bottom: 21px;
}
.under main .un_bnr01 a:before {
    position: absolute;
    content: "";
    width: 88px;
    height: 88px;
    border-radius: 50%;
    background: url("../images/arrow_blue.svg")#fff no-repeat center/32px;
    left: 50px;
}
.under main .un_bnr01 a .lg {
    font-size: 35px;
    font-weight: 900;
    color: var(--mcolor);
    line-height: 1.25;
}
.under main .un_bnr01 a .sm {
    font-size: 24px;
    font-weight: 700;
}
.under main .un_bnr02 {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
.under main .un_bnr02.mb02 {
    margin-bottom: 50px;
}
.under main .un_bnr02.un_wfull li {
    width: 100%;
}
.under main .un_bnr02.un_w50 li {
    width: 590px;
}
.under main .un_bnr02.un_w30 li {
    width: 386px;
}
.under main .un_bnr02 li {
    height: 180px;
}
.under main .un_bnr02 li:not(:last-child) {
    margin-right: 20px;
}
.under main .un_bnr02 li a {
    color: #fff;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    border-radius: 20px;
    background: var(--mcolor);
    border: 4px rgba(255, 255, 255, 0.5) solid;
    box-shadow: 5px 5px 0px 0px rgba(0, 0, 0, 0.16);
    letter-spacing: 0.02em;
    font-weight: 700;
}
.under main .un_bnr02 li a .sm {
    font-size: 18px;
    color: var(--mcolor);
    background: #fff;
    border-radius: 23px;
    padding: 5px 22px;
    position: relative;
    margin-bottom: 19px;
}
.under main .un_bnr02 li a .lg {
    font-weight: 700;
    font-size: 32px;
    text-align: center;
    line-height: 1.35;
}
.under main .un_bnr02 li a .sm:before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 18px 10px 0 10px;
    border-color: #fff transparent transparent transparent;
    left: 0;
    right: 0;
    bottom: -9px;
    margin: 0 auto;
}
.under main .un_bnr02 li a .mid {
    text-align: center;
    font-size: 22px;
    line-height: 1.4;
}
.under main .un_bnr02.un_w30 li a .sm {
    font-size: 16px;
    padding: 1px 22px;
}
.under main .un_ttl01 {
    font-size: 23px;
    font-weight: 700;
}
.under main .btn a {
    line-height: 1.4;
}
.under main .btn.btn_pdf a {
	background:url('../images/arrow02_w.svg') no-repeat right 24px center /13px, url("../images/icon_pdf.png") no-repeat left 60px center/30px;
	background-color: var(--mcolor);
}
/* BACK PREV DETAIL POST */
.under main .next_prev ul {
    position: relative;
    display: flex;
    justify-content: center;
    margin-top: 50px;
}
.under main .next_prev li {
    width: 30%;
}
.under main .next_prev li a {
    width: 100%;
    letter-spacing: 0px;
    justify-content: center;
    padding: 5px;
    font-size: 18px;
}
.under main .next_prev .btn.prevPage a {
    background: url('../images/arrow02_w_l.png') no-repeat left 24px center /13px var(--scolor);
}
.under main .next_prev .btn.btn_back a {
    background: var(--scolor);
}
.under main .prevPage, .under main .nextPage {
    position: absolute;
    top: 0;
}
.under main .prevPage {
    left: 0
}
.under main .nextPage {
    right: 0
}
.under main .next_prev .btn a {
    width: 100%;
    height: 80px;
    line-height: 1.5;
    text-align: center;
}
.under main .next_prev .btn a:after {
    display: none;
}
/*PAGE NAVI*/
.under main .news_pagination {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 40px;
}
.under main .news_pagination > span, .under main .news_pagination a {
    width: 52px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    color: #fff;
    margin: 5px;
    text-align: center;
    font-weight: 500;
    line-height: 1em;
    transition: all 0.3s;
    padding: 5px 2px;
    border: 1px #ccc solid;
    font-size: 14px;
    background: #ccc;
}
.under main .news_pagination a {
    color: #232323
}
.under main .news_pagination > span, .under main .news_pagination a:hover {
    background: var(--mcolor);
    border: 1px var(--mcolor) solid;
    color: #fff;
}
.under main .img_news_center {
    text-align: center;
}
.under main .img_news_center img {
    max-height: 500px;
}
.under main .img_news_center a{
    display: inline-block;
}

.under main .information_list li {
    padding: 20px;
    background: #f7f7f7;
    transition: all 0.3s;
}
.under main .information_list li:not(:last-child) {
    margin-bottom: 30px;
}
.under main .information_list li, .under main .information_list li, .under main .information_list li a {
    display: flex;
    width: 100%;
}
.under main .information_list li a {
    align-items: center;
}
.under main .information_img {
    width: 200px;
    height: 130px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px #ddd solid;
    margin-right: 40px;
    margin-bottom: 0px;
    flex-shrink: 0;
}
.under main .info_group {
    width: calc(100% - 240px);
}
.under main .information_img img {
    max-width: 100%;
    max-height: 100%;
    flex-shrink: 0;
    width: auto;
    height: auto;
}
.under main .information_tt_main {
    font-size: 20px;
    font-weight: 700;
    color: var(--mcolor);
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}
.under main .date_post {
    font-size: 16px;
    color: #777777;
    margin-bottom: 10px;
}
/*POST TYPE LIST*/
.under .uwp_slider {
    background: #ffffff;
    padding: 20px 20px 10px 20px;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.1);
    margin: 0 auto;
    max-width: 1000px;
}
.under #content .uwp_for {
    width: 100%;
    height: 450px;
    overflow: hidden;
    position: relative;
    z-index: 1;
}
.under #content .uwp_for .slick-slide, .under #content .uwp_for .slick-slide > div, .under #content .uwp_for .slick-slide > div > li {
    height: 450px;
    position: relative;
}
.under #content .uwp_for .slick-slide, .under #content .uwp_for .slick-slide > div, .under #content .uwp_for .slick-slide > div > li, .under #content .uwp_nav .slick-slide, .under #content .uwp_nav .slick-slide > div, .under #content .uwp_nav .slick-slide > div > li {
    width: 100%;
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: #efefef;
    z-index: 98 !important;
}
.under #content .uwp_nav {
    margin-top: 30px;
}
.under #content .uwp_nav .slick-track {
    width: 100% !important;
    justify-content: center;
}
.under #content .uwp_nav .slick-list {
    overflow: hidden;
}
.under #content .uwp_for .slick-slide, .under #content .uwp_nav .slick-slide {
    outline: none;
}
.under #content .uwp_nav .slick-slide, .under #content .uwp_nav .slick-slide > div, .under #content .uwp_nav .slick-slide > div > li {
    height: 100%;
}
.uwp_nav .slick-slide > div > li img, .under #content .uwp_for .slick-slide img {
    max-width: 100%;
    max-height: 100%;
    flex-shrink: 0;
}
.under #content .uwp_nav .slick-slide {
    margin-right: 10px;
    cursor: pointer;
    transition: all 0.3s;
    width: calc(10% - 9px) !important;
    margin-bottom: 10px;
    height: 90px;
}
.under #content .uwp_nav .slick-slide img {
    max-width: 100%;
    max-height: 100%;
}
.under #content .uwp_nav .slick-slide:last-child, .under #content .uwp_nav .slick-slide:nth-child(10n) {
    margin-right: 0px;
}
.under #content .uwp_slider .slick-track {
    display: flex !important;
    flex-wrap: wrap;
    transform: translate3d(0, 0, 0) !important;
    left: 0px !important;
}
.under #content .uwp_nav .slick-slide.slick-current {
    opacity: 0.7;
}
.under main .map_un iframe {
    width: 100%;
}
.under main .list_box_wrap {
    display: flex;
    flex-wrap: wrap;
}
.under main .list_box_wrap li {
    width: calc(33.333% - 20px);
    padding: 20px;
    border: 1px var(--mcolor) solid;
    position: relative;
    transition: all 0.3s;
}
.under main .list_box_wrap li > a {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 9;
}
.under main .img_list {
    width: 100%;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #efefef;
    margin-bottom: 10px;
}
.under main .img_list img {
    max-width: 100%;
    max-height: 100%;
    flex-shrink: 0;
    width: auto;
    height: auto;
}
.under main .list_box_wrap li .title {
    display: flex;
    align-items: center;
    background: #efefef;
    font-size: 14px
}
.under main .list_box_wrap li .lb {
    background: var(--mcolor);
    color: #fff;
    width: 120px;
    text-align: center;
    padding: 8px 5px;
    margin-right: 10px;
}
.under main .list_box_wrap li .tt {
    width: calc(100% - 120px);
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}
.under main .hiragana-buttons {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-bottom: 50px;
}
.under main .hiragana-buttons li {
    width: calc(20% - 8px);
    height: 60px;
    margin-bottom: 10px;
}
.under main .hiragana-buttons li:not(:nth-child(5n)) {
    margin-right: 10px;
}
.under main .hiragana-buttons li a {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--mcolor);
    border-radius: 10px;
    color: #fff;
    text-align: center;
    font-weight: 500;
    width: 100%;
    height: 100%;
}
.under main .hiragana-buttons li.active a {
    opacity: 0.7;
}
/*CONTACT*/
.under main .box_sroll {
    height: 500px;
    overflow: auto;
    border: 1px #ddd solid;
    padding: 25px;
}
.under main .bnr_tel {
    background: url("../images/idx_par01.png") repeat;
    height: 180px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-shadow: 5px 5px 0px 0px rgba(0, 0, 0, 0.16);
    border: 4px #fff solid;
    border-radius: 20px;
    color: #fff;
    padding-bottom: 10px;
}
.under main .bnr_tel a {
    font-size: 47px;
    font-weight: 700;
    font-family: var(--f-en);
    color: #FCE800;
    letter-spacing: 0.05em;
    line-height: 1.4;
    padding-bottom: 5px;
}
.under main .bnr_tel .txt {
    font-size: 17px;
    line-height: 1;
}
.under main .box_contact {
    margin-bottom: 30px;
}
.under main .box_contact dl {
    display: flex;
}
.under main .btn_contact_w > p {
    display: flex;
    justify-content: center;
    margin: 0 5px;
}
.under main .btn_contact_w > p input {
    margin: 0 5px;
}
.under main .box_contact dl:not(:last-child) {
    border-bottom: 1px #e5e5e5 solid;
}
.under main .box_contact dl dt {
    background: var(--mcolor);
    color: #fff;
    font-size: 18px;
    padding: 5px 10px;
    width: 300px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    font-weight: 500;
}
.under main .box_contact dl dt p {
    font-weight: 700;
    display: flex;
    align-items: center;
    width: 100%;
}
.under main .box_contact dl dd {
    width: calc(100% - 300px);
}
.under main .box_contact dl dt, .under main .box_contact dl dd {
    padding: 10px 15px;
}
.input_text01 {
    width: 350px;
    height: 38px;
    padding: 5px;
    box-sizing: border-box;
}
.txt_info {
    color: #009900;
    font-size: 80%;
    display: block;
    margin-bottom: 5px;
}
.textarea_text01 {
    width: 100%;
    height: 200px;
    min-height: 200px;
    /* max-height: 200px; */
    min-width: 100%;
    max-width: 100%;
    padding: 10px;
    box-sizing: border-box;
}
.btn_contact, .back-btn {
    appearance: none;
    -webkit-appearance: none;
    border: none !important;
    width: 334px;
    height: 68px;
    border-radius: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: url(../images/arrow02_w.svg) no-repeat right 24px center / 13px var(--scolor);
    font-size: 18px;
    color: #fff;
    font-weight: bold;
    box-shadow: 0px 5px 0px 0px rgba(0, 0, 0, 0.16);
    letter-spacing: 0.02em;
    cursor: pointer;
    transition: all 0.3s;
    padding-top: 5px;
}
.btn-con-arrow {
    display: table;
    position: relative;
    margin: 0 auto;
}
.back-btn {
    background: url(../images/arrow02_w_l.png)#666 no-repeat left 24px center/13px;
}
.under #content .btn_contact a, .under #content .back-btn a {
    color: #fff;
}
#confirm .btn_contact_w input {
    margin: 0 5px;
    position: relative;
}
.list_check.list_check01 {
    display: flex;
}
input[type="text"], input[type="number"], input[type="tel"], input[type="email"], input[type="submit"], textarea, button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.btn_contact a {
    color: #fff;
    text-decoration: none;
}
.box_zipcode, .btn_zipcode01 {
    display: flex;
    flex-wrap: wrap;
}
.btn_zipcode, .btn_zipcode01 {
    width: 100px;
    height: 36px;
    background: var(--scolor);
    border: 1px var(--scolor) solid;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    margin-left: 10px;
    cursor: pointer;
    flex-shrink: 0;
    box-sizing: border-box;
    color: #fff;
    font-size: 14px;
    transition: all ease 0.3s;
    position: relative;
    top: 2px;
}
.clear_left {
    clear: left;
}
.under main .check_wrap {
    display: flex;
    flex-wrap: wrap;
}
.under img.ui-datepicker-trigger {
    position: relative;
    left: 7px;
    top: -1px;
    cursor: pointer;
}
.under main .input02, .under main .text_area01, .select01 {
    border: 1px #ccc solid;
    padding: 5px;
}
.under main .input02, .select01 {
    width: 300px;
    height: 36px;
}
.select01 {
    height: 40px;
}
.under main .input02::placeholder, .under main .text_area01::placeholder {
    color: #ccc;
}
.under main .text_area01 {
    width: 100% !important;
    height: 150px !important;
}
.under main .must1 {
    background: #d0111b;
    color: #fff;
    font-size: 11px;
    font-weight: 500;
    float: right;
    padding: 2px 5px 3px;
    border-radius: 3px;
    line-height: 1.7;
    margin-left: auto;
    position: relative;
    top: 4px;
}
.under main .box-check01 .wpcf7-list-item {
    border: dashed 1px #CCCCCC;
    padding: 5px 10px;
    display: inline-block;
    margin: 3px;
    cursor: pointer;
}
.under main .check_wrap .mwform-checkbox-field {
    display: block;
}
p:empty {
    display: none;
}
.under main .contact_tt01 {
    font-weight: 700;
    text-align: center;
    background: var(--mcolor);
    color: #fff;
    padding: 20px;
    line-height: 1.4;
    margin-bottom: 0px;
    border-bottom: 1px #e5e5e5 solid;
}
.under main .box-check01 .wpcf7-list-item:hover {
    background: #FFEE7C;
}
.wpcf7-spinner {
    position: absolute;
    bottom: -30px;
    left: 0;
    right: 0;
    margin: 0 auto;
}
.under .text_af {
    margin-left: 10px;
}
.under main .idxboxcon_tab {
    display: flex;
    justify-content: center;
    border-bottom: 3px var(--mcolor) solid;
    margin-bottom: 20px;
}
.under main .idxboxcon_tab li {
    height: 70px;
    flex: 1;
}
.under main .idxboxcon_tab li:not(:last-child) {
    margin-right: 10px;
}
.under main .idxboxcon_tab li a {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background: #999;
    text-decoration: none;
    font-size: 18px;
    font-weight: 700;
    transition: all 0.3s;
    text-align: center;
    border-radius: 10px 10px 0 0
}
.under main .idxboxcon_tab li:last-child a {
    border-right: none
}
.under main .idxboxcon_tab li a.active {
    background: var(--mcolor);
    pointer-events: none;
}
.information_page main #content, .page_404 main #content, #confirm main #content, #thanks main #content, #list_confirm main #content, #list_confirm2 main #content, #list_thanks main #content {
    padding-bottom: 120px
}
.under main .num_tt01 {
    display: block;
    font-size: 28px;
    font-weight: 700;
    color: var(--mcolor);
}
.wpcf7 form .wpcf7-response-output {
    font-size: 20px;
}
.under main .un_tt03 {
    font-weight: bold;
    font-size: 26px;
    color: var(--mcolor);
    margin-bottom: 10px;
}
.under main .bnr_ft {
    border: 1px #ddd solid;
    padding: 25px 40px 42px;
}
.under main .btn.full a {
    width: 100%;
}
.under main .list_step_img {
    display: flex;
    margin-top: 70px;
}
.under main .list_step_img li:not(:last-child) {
    margin-right: 80px;
}
.under main .list_step_img li {
    background: #fff;
    position: relative;
}
.under main .list_step_img li .tt {
    position: absolute;
    background: var(--mcolor);
    color: #fff;
    padding: 8px 25px;
    text-align: center;
    display: table;
    margin: 0 auto;
    top: -25px;
    left: 0;
    right: 0;
    min-width: 112px;
}
.under main .list_step_img li:not(:last-child):before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 0 20px 30px;
    border-color: transparent transparent transparent var(--mcolor);
    right: -55px;
    top: calc(50% - 15px);
}
.under main .com_img {
    position: relative;
}
.under main .com_img .sec11_bb {
    left: auto;
    right: 20px;
}
.under main .flex_img_w .frame01 {
    flex-shrink: 0;
    padding: 20px;
    border-width: 2px;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    margin-bottom: 0px;
}
/* RESET */
.under main table:last-child, .under main .list_faq:last-child, .under main .list_faq dl:last-child, .under main .list01:last-child, .under main .list01 li:last-child, .under main .list02:last-child, .under main .list02 li:last-child, .under main .list_check:last-child, .under main .list_check li:last-child, .under main .list_step:last-child, .under main .list_step dl:last-child, .under main section p:last-child, .under main p:last-child, .under main .frame01:last-child, .under main .frame02:last-child, .under main .frame_pick:last-child {
    margin-bottom: 0
}

.box-check01 .wpcf7-list-item.first{display: none !important;}
.under .ui-datepicker .ui-datepicker-prev,.under .ui-datepicker .ui-datepicker-next{background-color: var(--mcolor);width: 8px;height: 18px;top: 5px;cursor: pointer;}
.ui-datepicker .ui-datepicker-prev{clip-path: polygon(100% 0%, 100% 100%, 0 50%);}
.ui-datepicker .ui-datepicker-next{clip-path: polygon(0 0, 0% 100%, 100% 46%);}

.wrap_in span{
	display: inline-block;
	margin-bottom: 7px;
}

.wrap_in a{
	display: inline-block;
}

.wrap_in img{
	max-width: 200px;
	display: block;
}

.ex_link, .in_link, .in_link span{
	color: var(--mcolor);
	text-decoration: underline
}