/*=====================================================
Framework
=====================================================*/
html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

body, header, main, aside, footer {
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: 1.8rem;
    line-height: 1.6;
    font-family: sans-serif;
}
body * {
    box-sizing: border-box;
}

main > section,
main > div,
aside {
    width: 100%;
    margin: 0;
    padding: 8.4rem min(5.13vw, 5rem);
    position: relative;
}
main > section > *:not(.case-blk_list) {
    max-width: 1100px;
    margin-right: auto;
    margin-left: auto;
}
@media (min-width: 1024px) {
    body, header, main, aside, footer {
        font-size: 2.4rem;
    }
}

/*=====================================================
common
=====================================================*/

/*見出し*/
main h2 {
    display: flex;
    flex-direction: column;
    font-size: min(9vw, 4.8rem);
    align-items: center;
    gap: 1rem;
    margin-top: 0;
    margin-bottom: 2.4rem;
}
main h2::after {
    display: block;
    width: 105px;
    height: 6px;
    background-color: #616dd8;
    content: "";
}
main h3 {
    color: #3a3fa0;
    font-size: min(6.66vw, 3.6rem);
}
img {
    width: 100%;
    height: auto;
}
/*ボタン*/
.thesaurus-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80%;
    min-width: 26.5rem;
    padding: 1rem;
    border: solid ;
    border-radius: 99rem;
    box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.3);
    box-sizing: border-box;
    font-size: min(4.6vw, 2.8rem);
    text-decoration: none;
}
.thesaurus-btn:hover {
    background-color: #00A1B9;
    text-decoration: none;
}
.btn_blue {
    background-image: linear-gradient(90deg, #5454d1, #354aa6);
    color: #FFFFFF;
}
.btn_white {
    background-image: #FFFFFF;
    color: #3a3fa0;
    border: solid 2px #3a3fa0;
}
.thesaurus-btn:hover {
    background-color: #8254dd;
    background-image: unset;
    color: #FFFFFF;
    text-decoration: none;
    transition: .3s ease-in-out;
}
.btn_white:hover {
    border: solid 2px #FFFFFF;
}

/*PCで表示しない*/
@media (min-width: 1200px) {
    .pc-none {
        display: none;
    }
}

/*=====================================================
header
=====================================================*/
header {
    height: 70px;
    padding: 0 min(5.13vw, 50px);
    box-shadow: 0 3px 3px rgba(0, 0, 0, 0.3);
    position: relative;
    z-index: 1;
}

.header_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 100%;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0;
}
.header_wrap img {
    margin-top: 1.8rem;
}
.header-btn {
    width: fit-content;
    height: 4rem;
    min-width: unset;
    padding: 0 3rem;
    border: solid 2px #3a3fa0;
    font-size: min(4.6vw, 2.2rem);
    line-height: 4rem;
}

/*=====================================================
Block詳細
=====================================================*/

/*-------------------------------
MV
------------------------------- */
.mv-blk {
    max-height: 80rem;
    padding-top: clamp(2.4rem, 6.15vw, 5.6rem);
    background-color: rgb(213, 214, 248);
    background-image: url(/lp/thesaurus/images/mv-bg_img.png);
    background-size: cover;
    background-position: center;
}
.mv-hgroup h1 {
    margin: 0;
    font-size: min(9.2vw, 5.6rem);
    font-weight: 900;
    line-height: 1.3;
}
.mv-hgroup p {
    font-size: min(4.6vw, 2.4rem);
    font-weight: 400;
}
.mv-blk_sub_wrap {
    position: relative;
    z-index: 1;
}
main > section .mv-sub_txt {
    padding: 2rem;
    background-color: rgba(255, 255, 255, 0.7);
    border-radius: 1.6rem;
    color: #3a3fa0;
    font-size: min(4.36vw, 2.2rem);
    font-weight: 500;
}
.mv-btn.btn_blue {
    margin: 2rem auto 0;
    border: solid 2px #FFFFFF;
}
.mv-blk::after {
    display: block;
    width: 69vw;
    max-width: 430px;
    aspect-ratio: 1030 / 707;
    height: auto;
    background-image: url(/lp/thesaurus/images/mv_img.png);
    background-size: cover;
    content: "";
    position: absolute;
    right: calc(min(5.13vw, 50px) + 1rem);
}

@media (min-width: 1024px) {
    main > section.mv-blk {
        height: 70rem;
        padding-bottom: 0;
    }
    .mv-blk::after {
        width: 100%;
        max-width: 1100px;
        height: 325px;
        margin: -15rem auto 0;
        background-size: contain;
        background-position: right bottom;
        background-repeat: no-repeat;
        position: unset;
    }
    main > section .mv-sub_txt {
        display: block;
        width: 70%;
        max-width: 705px;
        margin-right: auto;
        margin-left: 0;
    }
}
@media (min-width: 1200px) {
    main > section.mv-blk {
        height: 58rem;
    }
    .mv-blk::after {
        margin-top: -21rem;
    }
}

/*-------------------------------
活用シーン
------------------------------- */
.case-blk {
    margin-top: 25.6vw;
    padding-right: 0;
    padding-left: 0;
    overflow: hidden;
}
main > section.case-blk > p {
    padding: 0 min(5.13vw, 5rem);
}

.case-blk_list {
    display: flex;
    flex-direction: column;
    gap: 5.7rem;
    width: 100vw;
    margin: 4rem 0;
    padding: 0;
}
.case-blk_list li {
    display: flex;
    width: 100vw;
}
.case-blk_list li .case-inner {
    display: grid;
    gap: 2rem;
    width: calc(100vw - min(5.2vw, 5rem));
    max-width: 1100px;
    padding: min(5.13vw, 5rem) min(5.13vw, 5rem) 5rem;
    position: relative;
    background-color: #c9cdf5;
}
.case-blk_list li::before,
.case-blk_list li::after {
    display: block;
    width: 5.2vw;
    max-width: 5rem;
    content: "";
}

.case-blk_list li:nth-child(odd) .case-inner {
    margin-left: -1px;
    padding-left: 0;
    background-image: linear-gradient(90deg, #c9cdf5, #eee9f7);
    border-top-right-radius: 4rem;
    border-bottom-right-radius: 4rem;
}
.case-blk_list li:nth-child(even) .case-inner {  
    justify-items: end;
    margin-right: -1px;
    padding-right: 0;
    background-image: linear-gradient(90deg, #eee9f7, #c9cdf5);
    border-top-left-radius: 4rem;
    border-bottom-left-radius: 4rem;
}
.case-blk_list li:nth-child(odd)::before {
    background-color: #c9cdf5;
}

.case-blk_list li:nth-child(even)::after {
    background-color: #c9cdf5;
}

.case-blk_list li .case-inner > * {
    margin: 0;
}

.case-blk_list li .case-inner > .case-inner_num {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 17.7vw;
    max-width: 11.65rem;
    height: 15.38vw;
    max-height: 10rem;
    aspect-ratio: 23 / 20;
    margin-top: calc((max(-5rem, -5.13vw)) - min(3vw, 2rem));
    background-image: url(/lp/thesaurus/images/case-inner_num_bg.png);
    background-size: cover;
    color: #FFFFFF;
    filter: drop-shadow(2px 2px 2px rgba(0,0,0,0.3));
    font-size: clamp(2.8rem, 7.15vw, 4.6rem);
    font-weight: 700;
}
.case-blk_list li .case-inner > figure.case-inner_img {
    display: flex;
    width: 100vw;
    margin: 0 calc((50% - 50vw) + min(2.564vw, 3rem));
}
.case-blk_list li:nth-child(odd) figure.case-inner_img {
    justify-content: flex-end;
}
figure.case-inner_img > img {
    box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.3);
    width: 82vw;
    max-width: 360px;
}
@media (min-width: 768px) {
    .case-blk_list li .case-inner {
        gap: 7rem;
    }
    .case-blk_list li .case-inner > figure.case-inner_img {
        display: flex;
        width: 100%;
        margin: 0;
        position: absolute;
        top: 5rem;
        right: -2rem;
    }
    .case-blk_list li:nth-child(even) figure.case-inner_img {
        right: unset;
        left: -2rem;
    }
    figure.case-inner_img > img {
        width: 100%;
    }
    .case-blk_list li .case-inner > h3{
        width: calc(100% - 400px);
    }
}

@media (min-width: 960px) {
    .case-blk_list li::before,
    .case-blk_list li::after {
        max-width: unset;
    }
}
@media (min-width: 1024px) {
    .case-blk {
        margin-top: 4rem;
    }
    .case-blk_list li .case-inner {
        gap: 1rem;
    }
    .case-blk_list li .case-inner > h3 {
        width: auto;
    }
    .case-blk_list li .case-inner > p {
        width: calc(100% - 340px);
    }
    .case-blk_list li .case-inner > figure.case-inner_img {
        top: 50%;
        transform: translateY(-50%);
    }
}
@media (min-width: 1200px) {
    main > section.case-blk > p {
        padding: 0 0 4rem;
    }
    .case-blk_list li::before,
    .case-blk_list li::after {
        width: calc((100vw - 1100px) / 2);
    }
}


/* -------------------------------
特徴とメリット
------------------------------- */
.feacher-blk {
    padding-top: 0;
    background-color: #d5d6f8;
    overflow: hidden;
}
.feacher-blk::before {
    display: block;
    width: 0;
    height: 0;
    content: "";
    overflow: visible;
    position: absolute;
    top: calc(calc(min(9vw, 4.8rem) * 1.6) + 2rem + 6px);
    left: 0;
    background-color: #d5d6f8;
    border-style: solid;
    border-right: 50vw solid transparent;
    border-left: 50vw solid transparent;
    border-top: 50px solid #404091;
    border-bottom: 0;
}
main > section.feacher-blk h2 {
    width: 100vw;
    max-width: unset;
    margin: 0 calc(50% - 50vw);
    padding-top: 1rem;
    background-color: #404091;
    color: #FFFFFF;
    position: relative;
    z-index: 1;
}
.feacher-blk h2::after {
    background-color: #FFFFFF;
}
p.feacher-blk_lead {
    margin-top: 8rem;
} 
.feacher-blk h3 {
    margin-top: 4rem;
    margin-bottom: 2.4rem;
    color: #000000;
    font-size: min(6.15vw, 3.6rem);
    text-align: center;
}
section.feacher_item.feacher_item_01 {
    display: grid;
    margin-top: 4rem;
    margin-bottom: 4rem;
}
.feacher-blk img {
    display: block;
    width: 80%;
    max-width: 450px;
    margin: 0 auto;
}
.feacher-blk h4 {
    margin: 0;
    padding: 1.2rem;
    background-color: #6068ba;
    color: #FFFFFF;
    font-size: clamp(2.8rem, 3.6458vw, 4.2rem);
    font-weight: 400;
    text-align: center;
}

table.feacher_item_01_table {
    width: 100%;
    border-collapse: collapse;
}
.feacher_item_01_table thead {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}
.feacher_item_01_table thead::before {
    content: "";
    display: block;
    width: 2.4rem;
    height: 2rem;
    margin-top: 2.4rem;
    background-color: #525daf;
    order: 2;
}
.feacher_item_01_table thead::after {
    content: "";
    display: block;
    width: 4.8rem;
    height: 2.4rem;
    margin-top: -1px;
    margin-bottom: 2.4rem;
    background-color: #525daf;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    order: 3;
}
.feacher_item_01_table thead tr {
    width: 100%;
}
.feacher_item_01_table thead td {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 0.8rem;
    background-color: #FFFFFF;
    border: solid 2px #7b8cc6;
    border-radius: 1rem;
    color: #525daf;
    font-size: clamp(2.6rem, 6.6vw, 4.2rem);
    order: 1;
}
.feacher_item_01_table tbody tr {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
}
.feacher_item_01_table tbody tr > * {
    width: 100%;
    padding: 1.6rem 1rem;
    font-size: clamp(2rem, 5.1vw, 2.4rem);
    text-align: left;
}
.feacher_item_01_01 > * {
    background-color: #FFFFFF;
}
.feacher_item_01_01 th {
    border-top: solid 2px #7b8cc6;
    border-right: solid 2px #7b8cc6;
    border-bottom: dashed 2px #7b8cc6;
    border-left: solid 2px #7b8cc6;
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
    font-weight: 400;
}
.feacher_item_01_01 td {
    border-right: solid 2px #7b8cc6;   
    border-bottom: solid 1px #7b8cc6;
    border-left: solid 2px #7b8cc6;
}
.feacher_item_01_02 > * {
    background-color: #ffffdc;
}
.feacher_item_01_02 th {
    color: #665816;
    border-right: solid 2px #7b8cc6;   
    border-bottom: dashed 2px #7b8cc6;
    border-left: solid 2px #7b8cc6;
}
.feacher_item_01_02 td {
    border-right: solid 2px #7b8cc6;   
    border-bottom: solid 2px #7b8cc6;
    border-left: solid 2px #7b8cc6;
    border-bottom-left-radius: 1rem;
    border-bottom-right-radius: 1rem;
    font-weight: 700;
}

.feacher_item.feacher_item_02 h5 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 0.8rem;
    margin-top: 0;
    margin-bottom: 2.4rem;
    background-color: #FFFFFF;
    border: solid 2px #7b8cc6;
    border-radius: 1rem;
    color: #525daf;
    font-size: clamp(2.6rem, 6.6vw, 4.2rem);
    font-weight: 400;
}
.arrow_blue {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.arrow_blue::before {
    content: "";
    display: block;
    width: 2.4rem;
    height: 2rem;
    background-color: #525daf;
    order: 1;
}
.arrow_blue::after {
    content: "";
    display: block;
    width: 4.8rem;
    height: 2.4rem;
    margin-top: -1px;
    margin-bottom: 2.4rem;
    background-color: #525daf;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    order: 2;
}
.feacher_item_02 {
    display: grid;
    margin-top: 4rem;
}
.feacher_item_02 h4 {
    margin-bottom: 2.4rem;
}
.feacher_item_02 ul {
    padding: 0;
    list-style: none;
}
.feacher_item_02_list {
    display: block;
    margin: 0;
    padding: 0;
}
.feacher_item_02_list li p span {
    display: block;
    margin: 1rem 0;
    padding: 0.5rem 1rem;
    border: solid 3px #FFFFFF;
}
.feacher_item_02_list > li > p {
    display: block;
    margin: 0;
    padding: 0.5rem 1rem;
    background-color: #4c412e;
    border: solid 3px #FFFFFF;
    color: #FFFFFF;
}
.feacher_item_02_list > li > ul li {
    display: flex;
    flex-direction: column;
    position: relative;
}
.feacher_item_02_list > li > ul li p {
    display: flex;
    margin: 0;
    align-items: center;
    justify-content: flex-end;
}
@media (min-width: 1024px) {
    
    .feacher-blk h3 {
        text-align: left;
    }
    section.feacher_item.feacher_item_01 {
        display: grid;
        grid-template-columns: 1fr auto;
        grid-template-rows: 91px auto 1fr;
        grid-column-gap: 0px;
        grid-row-gap: 2rem;
        margin-top: 6.4rem;
    }
    .feacher_item_01 h4 {
        display: flex;
        justify-content: center;
        align-items: center;
        min-width: 410px;
        height: 91px;
        grid-area: 1 / 1 / 2 / 2;
    }
    .feacher_item_01 img {
        grid-area: 1 / 2 / 3 / 3;
    }
    .feacher_item_01 p {
        margin: 0;
        grid-area: 2 / 1 / 3 / 2;
    }
    .feacher_item_01 table {
        grid-area: 3 / 1 / 4 / 3;
    }
    .feacher_item_01_table tbody tr {
        flex-direction: row;
        align-items: stretch;
    }
    .feacher_item_01_table tbody th {
        display: flex;
        width: 30%;
        align-items: center;
        justify-content: center;      
        font-size: min(2.6vw, 3.6rem);
    }
    .feacher_item_01_table tbody td {
        padding: 1.6rem 3rem;
    }
    .feacher_item_01_01 th {
        border-top: solid 2px #7b8cc6;
        border-right: dashed 2px #7b8cc6;
        border-bottom: solid 1px #7b8cc6;
        border-left: solid 2px #7b8cc6;
        border-top-left-radius: 1rem;
        border-top-right-radius: unset;
    }
    .feacher_item_01_01 td {
        border-top: solid 2px #7b8cc6;
        border-right: solid 2px #7b8cc6;
        border-bottom: solid 1px #7b8cc6;
        border-left: unset;
        border-top-right-radius: 1rem;
    }
    .feacher_item_01_02 th {
        border-right: dashed 2px #7b8cc6;
        border-bottom: solid 2px #7b8cc6;
        border-left: solid 2px #7b8cc6;
        border-bottom-left-radius: 1rem;
    }
    .feacher_item_01_02 td {
        border-right: solid 2px #7b8cc6;
        border-bottom: solid 2px #7b8cc6;
        border-left: unset;
        border-bottom-left-radius: unset;
        border-bottom-right-radius: 1rem;
    }
    .feacher_item_02 {
        display: grid;
        grid-template-columns: auto 1fr;
        grid-template-rows: 91px auto auto auto auto;
        grid-column-gap: 0px;
        grid-row-gap: 0px;
        align-items: center;
        margin-top: 6.4rem;
    }
    .feacher_item_02 h4 {
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 410px;
        height: 91px;
        margin-right: 0;
        margin-bottom: 0;
        margin-left: auto;
        grid-area: 1 / 2 / 2 / 3;
    }
    .feacher_item_02 img {
        grid-area: 1 / 1 / 3 / 2;
    }
    .feacher_item_02 > p {
        grid-area: 2 / 2 / 3 / 3;
    }
    .feacher_item_02 h5 {
        grid-area: 3 / 1 / 4 / 3;
    }
    .feacher_item_02 .arrow_blue {
        margin: 1rem 0;
        grid-area: 4 / 1 / 5 / 3;
    }
    .feacher_item_02 ul {
        grid-area: 5 / 1 / 6 / 3;
    }

    .feacher_item_02_list > li > p {
        padding: 0.5rem 2rem;
    }
    .feacher_item_02_list li p span {
        padding: 0.5rem 2rem;
    }
    .feacher_item_01_table thead {
        margin-bottom: 1rem;
    }
    .feacher_item_01_table thead td {
        margin-bottom: 1rem;
    }
    .feacher_item_01_table thead::before,
    .feacher_item_01_table thead::after,
    .arrow_blue::before,
    .arrow_blue::after {
        transform: scale(2);
    }
    .feacher_item_01_table thead::after, 
    .arrow_blue::after {
        margin-top: 1rem;
    }
}
/*罫線*/
.feacher_item_02_list li {
    position: relative;
}
.feacher_item_02_list li::after {
    display: block;
    width: 3px;
    background-color: #FFFFFF;
    content: "";
    position: absolute;
}

.feacher_item_02_list > li::after {
    height: calc(32.2rem + 33px);
    top: calc(3.8rem + 6px);
    left: 2.3rem;
}

.feacher_item_02_list > li > ul li:is(.alc_01, .alc_03)::after {
    height: calc(4.05rem + 3px);
    top: calc(4.8rem + 6px);
    left: 6.2rem;
}

.feacher_item_02_list > li ul > li.alc_02::after {
    height: calc(9.9rem + 9px);
    top: calc(4.8rem + 6px);
    left: 6.2rem;
}
.feacher_item_02_list > li > ul li p::before {
    display: block;
    width: 1.6rem;
    height: 3px;
    background-color: #FFFFFF;
    content: "";
    order: 2;
}
.feacher_item_02_list > li > ul > li > p span {
    display: block;
    width: calc(100% - 4rem );
    background-color: #1636a8;
    color: #FFFFFF;
    order: 3;
}

.feacher_item_02_list > li > ul > li > ul > li > p span {
    display: block;
    width: calc(100% - 8rem );
    background-color: #bddbff;
    order: 3;
}

@media (min-width: 768px) {
    .feacher_item_02 ul {
        font-size: 2.4rem;
    }
    .feacher_item_02_list > li > ul > li > p span {
        width: calc(100% - 8rem );
    }
    .feacher_item_02_list > li > ul > li > ul > li > p span {
        width: calc(100% - 16rem );
    }
    .feacher_item_02_list > li > ul li p::before {
        width: 4rem;
    }
    .feacher_item_02_list > li > ul > li > p::before {
        width: 4.2rem;
    }
    .feacher_item_02_list > li::after {
        height: calc(37.5rem + 33px);
        top: calc(4.7rem + 6px);
        left: 3.7rem;
    }
    .feacher_item_02_list > li > ul li:is(.alc_01, .alc_03)::after {
        height: calc(4.6rem + 3px);
        top: calc(5.75rem + 6px);
        left: 12rem;
    }
    .feacher_item_02_list > li ul > li.alc_02::after {
        height: calc(11.3rem + 9px);
        top: calc(5.75rem + 6px);
        left: 12rem;
    }
}

/* -------------------------------
収録分野
------------------------------- */
.fields-blk {
    padding-bottom: 0;
}
.fields-blk_list_wrap {
    display: flex;
    flex-direction: column;
    padding: 2rem;
    background-color: #efedf4;
    border-radius: 2rem;
}
.fields-blk_list_wrap ul {
    font-size: 2rem;
}
.fields-blk img {
    max-width: 450px;
    margin: 2.4rem auto;
}

@media (min-width: 768px) {
    .fields-blk_list_wrap ul {
        column-count: 2;
    }
}

@media (min-width: 1024px) {
    .fields-blk_list_wrap {
        flex-direction: row;
        align-items: flex-start;
        gap: 4rem;
    }
    .fields-blk img {
        width: 38%;
    }
}


/* -------------------------------
目的に応じて選べる料金プランをご用意
------------------------------- */
.lineup-blk h3 {
    color: #000000;
}
.lineup-blk dl {
    position: relative;
    padding: 0;
    &::before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: -2; /* 一番下に敷く */
        border-radius: 1.6rem;
        
    }
    &::after {
        content: "";
        position: absolute;
        /* ボックスのサイズから線として出したい部分の分だけ小さくする */
        /* border-size: 2px; にしたいときは2*2px（上下or左右の分） */
        width: calc(100% - 6px);
        height: calc(100% - 6px);
        top: 3px;
        left: 3px;
        z-index: -1;  /* グラデーションの上に被せる、かつ表示したいテキストより下にする */
        border-radius: 1.3rem;
        background: white;
    }
}
.lineup-blk dl.lineup_01::before {
    background: linear-gradient(to left, #525daf 0%, #8254dd 85%, #8254dd 100%);
}
.lineup-blk dl.lineup_02::before,
.lineup-blk dl.lineup_03::before {
    background: #3a3fa0;
}
.lineup-blk dl dt {
    display: block;
    padding: 0.8rem;
    background-color: #3a3fa0;
    border-top-left-radius: 1.6rem;
    border-top-right-radius: 1.6rem;
    color: #FFFFFF;
    font-size: 2.6rem;
    font-weight: 700;
    text-align: center;
}
.lineup-blk dl.lineup_01 dt {
    background: linear-gradient(to left, #525daf 0%, #8254dd 85%, #8254dd 100%);
}
.lineup-blk dl dd {
    margin: 0;
    padding: 1rem 1.6rem 1.6rem;
    font-size: 2rem;
}
.lineup-blk dl dd p {
    margin: 0;
}

@media (min-width: 768px) {
    .lineup-blk dl {
        display: flex;
        height: 136px;
    }
    .lineup-blk dl dt {
        display: flex;
        align-items: center;
        width: 30%;
        max-width: 240px;
        padding-left: min(2.6vw, 3.2rem);
        border-top-left-radius: 1.6rem;
        border-top-right-radius: unset;
        border-bottom-left-radius: 1.6rem;
        white-space: nowrap;

    }
    .lineup-blk dl dd {
        display: flex;
        align-items: flex-start;
        flex-direction: column;
        justify-content: center;
        width: 70%;
    }
}


/* -------------------------------
CTA
------------------------------- */
.cta-blk {
    background-color: #d5d6f8;
    background-image: url(/lp/thesaurus/images/cat-bg_img.png);
    background-size: cover;
    background-position: center;
}
.cta-blk_txt {
    margin-top: 0;
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
}
.cta-blk_list {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3rem;
    margin: 0;
    padding: 0;
    list-style: none;
}
.cta-blk_list_item {
    display: flex;
    padding: 1.3rem 1.3rem 2rem;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 480px;
    background-color: rgba(255,255,255,0.8);
    border-radius: 1.6rem;
    box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.3);
}

@media (min-width: 1024px) {
    .cta-blk_list {
        flex-direction: row;
        justify-content: center;
    }
    .cta-blk_list_item {
        padding: 1.3rem 1.3rem 4rem;
        font-size: 2.2rem;
    }
    .cta-blk_list_item .btn_blue {
        border: unset;
    }
}

/*=====================================================
aside
=====================================================*/
.gsearch-summary {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 96rem;
    margin: 0 auto;
    padding: 1rem 2rem 3rem;
    border: solid 1px #d1d1d1;
    font-size: min(3.85vw, 1.8rem);
}
.gsearch-summary > * {
    margin: 0;
}
.gsearch-summary img {
    width: 239px;
    height: auto;
}

@media (min-width: 1024px) {
    .gsearch-summary {
        flex-direction: row;
        column-gap: 3rem;
        padding: 3rem 2rem;
    }
}

/*=====================================================
footer
=====================================================*/

.pageTop {
    /* margin-top: 8rem; */
    padding: 1rem 0;
    text-align: center;
}
.pageTop a {
    display: inline-block;
    height: 4.6rem;
    padding: 1rem;
}
.pageTop a span {
    position: relative;
    display: inline-block;
    height: 2.8rem;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
}
.pageTop a span::before {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 3.2rem;
    height: 3.2rem;
    margin: -.6rem 0 0 -1.6rem;
    border: .4rem solid #26406E;
    border-left-width: 0;
    border-top-width: 0;
    transform: rotate(-135deg);
    transition: .3s ease-in-out;
}
.pageTop a:hover span::before {
    border-color: #8254dd;
}
footer {
    padding: 2rem 0;
    background-color: #27406e;
    font-size: 1.4rem;
}
footer ul {
    display: table;
    margin: 0 auto 1.6rem auto;
    padding: 0;
    list-style: none;
}
footer ul li {
    display: table-cell;
    margin: 0;
    padding: 0 1.5rem;
}
footer ul li a {
    color: #FFFFFF!important;
}
footer small {
    display: block;
    font-size: 1.1rem;
    text-align: center;
    color: #FFFFFF;
}