@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

body {
    font-family: "Noto Sans JP", sans-serif;
}

header {
    box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.1);
    margin-bottom: 24px;
    position: relative;
}

@media screen and (max-width: 480px) {
    header {
        box-shadow: none;
        margin-bottom: 0;
    }
}

header .header_content_wrapper.pc-only {
    max-width: 1000px;
    margin: 0 auto;
    padding: 24px 0 0;
}

header .header_content_wrapper.pc-only .header_content_wrapper-top {
    display: grid;
    grid-template-columns: 133px 1fr;
}

header .header_content_wrapper.pc-only h1 {
    width: 148px;
}

header .header_content_wrapper.pc-only h1 a {
    height: 100%;
    display: block;
}

header .header_content_wrapper.pc-only h1 a img {
    width: 148px;
    max-inline-size: none;
}

header .header_content_wrapper.pc-only .header_content {
    display: flex;
    justify-content: flex-end;
    padding-bottom: 16px;
    gap: 24px;
}

header .header_content_wrapper.pc-only .header_content-compatible-area {
    width: 290px;
}

header .header_content_wrapper.pc-only .header_content-contact .contact {
    background-color: #00a6b5;
    color: #FFF;
    display: grid;
    place-content: center;
    text-align: center;
    height: 54px;
    width: 230px;
    min-width: 230px;
    position: relative;
    text-align: center;
    padding-left: 10px;
    border-radius: 15px;
}

a.contact.form {
    background-color: #E2D848 !important;
    color: #3E3E3E !important;
}

header .header_content_wrapper.pc-only .header_content-contact .contact div {
    line-height: 20px;
}

header .header_content_wrapper.pc-only .header_content-contact .contact .tel-number {
    font-size: 18px;
    font-weight: bold;
    line-height: 18px;
}

header .header_content_wrapper.pc-only .header_content_line-first {
    display: flex;
    flex-wrap: nowrap;
    height: 24px;
    gap: 18px;
    margin-bottom: 10px;
}

header .header_content_wrapper.pc-only .header_content_line-second {
    display: flex;
    flex-wrap: nowrap;
    gap: 10px;
}

header .header_content_wrapper.pc-only .corresponding-area {
    display: flex;
    flex-flow: column;
    justify-content: center;
}

header .header_content_wrapper.pc-only .corresponding-area span {
    font-size: 16px;
    background: #D6AE3F;
    color: #FFF;
    border-radius: 50px;
    padding: 2px 12px;
    line-height: 24px;
    margin: 0 auto;
}

header .header_content_wrapper.pc-only .corresponding-area p {
    border-top: 2px dashed #D6AE3F;
    margin-top: 8px;
    padding-top: 8px;
    font-size: 14px;
}

header .header_content_wrapper.pc-only .catch {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    line-height: 32px;
    min-width: 528px;
    font-weight: bold;
}

header .header_content_wrapper.pc-only .catch::after,
header .header_content_wrapper.pc-only .catch::before {
    border-top: 1px solid;
    content: "";
    width: 77px;
}

header .header_content_wrapper.pc-only .catch::before {
    margin-right: 13px;
}

header .header_content_wrapper.pc-only .catch::after {
    margin-left: 13px;
}

header .header_content_wrapper.pc-only .catch .main_color {
    font-size: 24px;
}

header .header_content_wrapper.pc-only .catch .main_color {
    margin: 0 2px 5px;
}

header .header_content_wrapper.pc-only .catch .dots {
    margin-bottom: 14px;
}

header .header_content_wrapper.pc-only .form::before {
    content: url(../svg/icon-file_white.svg);
    display: inline-block;
    position: absolute;
    top: 16px;
    left: 7px;
}

header .header_content_wrapper.pc-only .form::after {
    content: url(../svg/icon-right-arrow.svg);
    display: inline-block;
    position: absolute;
    right: 8px;
    top: 16px;
}

header .header_content_wrapper.pc-only .tel::before {
    content: url(../svg/icon-tel.svg);
    display: inline-block;
    position: absolute;
    top: 12px;
    left: 8px;
}

header .header_content_wrapper.pc-only .tel::after {
    content: url(../svg/icon-right-arrow.svg);
    display: inline-block;
    position: absolute;
    right: 8px;
    top: 16px;
}

header .header_content_wrapper.sp-only {
    margin: 0 auto;
    padding: 4px 8px 0;
    display: grid;
    gap: 10px;
    grid-template-columns: 83px 1fr;
}

header .header_content_wrapper.sp-only h1 {
    display: grid;
    place-content: center;
}

header .header_content_wrapper.sp-only h1 img {
    width: 83px;
}

header .header_content_wrapper.sp-only .header_content-contact .contact {
    background-color: #00a6b5;
    color: #FFF;
    display: grid;
    place-content: center;
    text-align: center;
    height: 54px;
    width: 230px;
    min-width: 230px;
    position: relative;
    text-align: center;
    padding-left: 10px;
}

header .header_content_wrapper.sp-only .header_content-contact .contact .tel-number {
    font-size: 18px;
    font-weight: bold;
    line-height: 18px;
}

header .header_content_wrapper.sp-only .header_content_line-first {
    display: flex;
    justify-content: center;
    flex-wrap: nowrap;
    height: 15px;
    gap: 10px;
    margin-bottom: 7px;
}

header .header_content_wrapper.sp-only .header_content_line-second {
    display: grid;
    grid-template-columns: 1fr 47px;
    gap: 10px;
}

header .header_content_wrapper.sp-only .corresponding-area {
    font-size: 12px;
    display: contents;
}

header .header_content_wrapper.sp-only .corresponding-area span {
    background: #D6AE3F;
    color: #FFF;
    border-radius: 50px;
    padding: 2px 12px;
    line-height: 12px;
}

header .header_content_wrapper.sp-only .sp_contact_form {
    text-align: center;
    background: #00a6b5;
    color: #FFF;
    width: 100%;
    line-height: 18px;
    font-size: 12px;
    margin: auto;
    height: 47px;
    display: grid;
    place-content: center;
}

header .header_content_wrapper.sp-only .sp_contact_form .sp_big {
    font-size: 18px;
}

header .header_content_wrapper.sp-only .sp_contact_form a {
    width: 100%;
    height: 100%;
}

header .header_content_wrapper.sp-only .sp_contact_form.active {
    height: 51px;
    padding-bottom: 4px;
}

header .header_content_wrapper.sp-only .sp_contact_form:not(.active) {
    margin-bottom: 4px;
}

header .header_content_wrapper.sp-only .sp_header_menu {
    width: 47px;
    height: 47px;
    border: 1px solid #00a6b5;
    display: grid;
    place-content: center;
    padding-top: 5px;
}

header .header_content_wrapper.sp-only .sp_header_menu.active {
    height: 51px;
    padding-bottom: 4px;
    background: #00a6b5;
    border: none;
}

header .header_content_wrapper.sp-only .sp_header_menu img .active {
    display: block;
}

header .header_content_wrapper.sp-only .sp_header_menu img:not(.active) {
    display: none;
}

.menu_wrapper.pc-only .menu_content-main ul {
    display: grid;
    grid-template-columns: repeat(6, auto);
    text-align: center;
}

.menu_wrapper.pc-only .menu_content-main ul li {
    cursor: pointer;
}

.menu_wrapper.pc-only .menu_content-main ul li.active {
    color: #00A6B5;
    border-bottom: 3px solid #00A6B5;
}

.menu_wrapper.pc-only .menu_content-main ul li span {
    display: inline-block;
    margin: 8px 0;
    width: 100%;
    line-height: 24px;
}

.menu_wrapper.pc-only .menu_content-main ul li span:hover {
    opacity: 0.7;
}

.menu_wrapper.pc-only .menu_content-main ul li a span:hover {
    opacity: 1;
}

.menu_wrapper.pc-only .menu_content-main ul li:not(:last-child) span {
    border-right: 1px solid #BDBDBD;
}

.menu_content-sub {
    display: none;
    position: absolute;
    top: 176px;
    background: #FFF;
    width: 100%;
    left: 0;
    z-index: 10;
}

.menu_content-sub.active {
    display: block;
    animation: fadeIn 0.3s ease 0.1s 1 normal backwards;
}

@media screen and (max-width: 480px) {
    .menu_content-sub.active {
        display: none;
    }
}

.menu_content-sub ul {
    max-width: 1000px;
    margin: 0 auto;
    padding: 30px 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.menu_content-sub li {
    text-align: center;
}

.menu_content-sub li a {
    display: inline-block;
    padding: 8px;
}

.menu_content-sub li a::after {
    content: url(../svg/icon-right-arrow_color_border.svg);
    display: inline-block;
    position: relative;
    left: 10px;
    top: 4px;
}

.menu_wrapper.sp-only {
    background: #00a6b5;
    color: #FFF;
    width: 100%;
    position: absolute;
    z-index: 1000;
}

.menu_wrapper.sp-only .menu_contact {
    padding: 40px 20px;
    margin: 0 auto;
    max-width: calc(100% - 40px);
    display: none;
}

.menu_wrapper.sp-only .menu_contact ul {
    display: flex;
    flex-flow: column;
    gap: 20px;
}

.menu_wrapper.sp-only .menu_contact li {
    position: relative;
    height: 50px;
    background: #FFF;
    color: #00a6b5;
}

.menu_wrapper.sp-only .menu_contact li a {
    display: block;
    height: 46px;
    text-align: center;
}

.menu_wrapper.sp-only .menu_page {
    padding: 34px 15px;
    margin: 0 auto;
    max-width: calc(100% - 30px);
    display: none;
}

.menu_wrapper.sp-only .menu_page .lp-link {
    display: grid;
    gap: 10px;
    grid-template-columns: 1fr 1fr;
    padding-bottom: 24px;
    border-bottom: 1px solid #c1e9ed;
}

.menu_wrapper.sp-only .menu_page .lp-link .exchange {
    background: #FFF;
    color: #00a6b5;
    text-align: center;
    font-size: 14px;
    line-height: 40px;
    border-radius: 2px;
}

.menu_wrapper.sp-only .menu_page .lp-link .exchange a {
    display: block;
}

.menu_wrapper.sp-only .menu_page .submenu-sp li {
    border-bottom: 1px solid #c1e9ed;
}

.menu_wrapper.sp-only .menu_page .submenu-sp li a {
    display: inline-block;
    padding: 16px;
}

.menu_wrapper.sp-only .menu_page .submenu-sp li a::after {
    content: url(../svg/icon-right-arrow.svg);
    display: inline-block;
    position: relative;
    right: -16px;
}

.menu_wrapper.sp-only .menu_page .submenu-sp li.has-child.active a::after {
    transform: rotate(-90deg);
}

.menu_wrapper.sp-only .menu_page .submenu-sp li.has-child ul {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    visibility: visible;
    opacity: 1;
    display: none;
    transition: none;
    padding-bottom: 16px;
}

.menu_wrapper.sp-only .menu_page .submenu-sp li.has-child ul li {
    border-bottom: none;
}

.menu_wrapper.sp-only .menu_page .submenu-sp li.has-child ul li a {
    padding: 8px 16px;
}

.menu_wrapper.sp-only .menu_page .submenu-sp li.has-child ul li a::after {
    content: "";
}

.menu_wrapper.sp-only .menu_page .submenu-sp li.has-child ul li a::before {
    content: "-";
    margin-right: 16px;
}

.page_header {
    background-color: #e0f4f6;
    min-height: 200px;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    position: relative;
    margin-bottom: 45px;
    padding: 40px 0 30px;
}

@media screen and (max-width: 1024px) {
    .page_header {
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 480px) {
    .page_header {
        min-height: 150px;
    }
}

.page_header .title-jp {
    color: #00A4B3;
    text-align: center;
    font-size: 28px;
    font-weight: bold;
    line-height: 40px;
    margin: 0 !important;
}

@media screen and (max-width: 480px) {
    .page_header .title-jp {
        font-size: 22px;
        line-height: 32px;
    }
}

.page_header .title-jp::before {
    content: "";
    width: 2px;
    height: 11px;
    position: absolute;
    top: 30px;
    left: 50%;
    right: 50%;
    background-color: #00A4B3;
}

@media screen and (max-width: 480px) {
    .page_header .title-jp::before {
        top: 20px;
    }
}

.page_header .title-en {
    color: #333333;
    text-align: center;
    line-height: 34px;
    font-size: 14px;
}

.page_header .single-post-date {
    color: #333333;
    text-align: center;
    line-height: 34px;
    font-size: 14px;
    margin-bottom: 5px;
}

.page_header .post_category a {
    background: #00A4B3;
    color: #FFF;
    padding: 6px 14px;
}

.post_content {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 60px;
}

@media screen and (max-width: 1024px) {

    .post_content p,
    .post_content img,
    .post_content table,
    .post_content ul,
    .post_content form {
        padding: 0 10px;
    }
}

.post_content .single-post-thumbnail img {
    height: auto;
}

.post_content p {
    padding-bottom: 2rem;
    padding-top: 0;
    margin-top: 0;
    margin-bottom: 0;
    letter-spacing: 0.05em;
    line-height: 1.8em;
    font-size: 1em;
}

.post_content a {
    color: #00A6B5;
    text-decoration: underline;
}

.post_content a:hover {
    opacity: 0.7;
}

.post_content a[target=_blank]:after {
    content: url(../svg/icon-link.svg);
    margin: 0px 3px;
}

.post_content img {
    padding-bottom: 2rem;
}

.post_content strong {
    font-weight: bold;
}

.post_content ol,
.post_content ul {
    padding-bottom: 2rem;
    padding-top: 0;
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 1.5em;
    margin-right: 1.5em;
    letter-spacing: 0.05em;
    line-height: 1.8em;
    font-size: 1em;
    list-style: auto;
}

@media screen and (max-width: 1024px) {

    .post_content ol,
    .post_content ul {
        padding-bottom: 1rem;
    }
}

.post_content ol ol,
.post_content ol ul,
.post_content ul ol,
.post_content ul ul {
    padding-bottom: 0;
}

.post_content ul {
    list-style: disc;
}

.post_content .wp-block-table,
.post_content .wp-block-columns {
    padding-bottom: 2rem;
}

.post_content .is-layout-flex {
    gap: 2rem;
}

.post_content table thead {
    border: 5px solid #FFF;
}

.post_content table thead th {
    border: 5px solid #FFF;
    background-color: #00A4B3;
    color: #FFF;
}

.post_content table tbody {
    border: 5px solid #FFF;
}

.post_content table tbody td {
    border: 5px solid #FFF;
    background-color: #F2F2F2;
}

.post_content table th,
.post_content table td {
    padding: 16px;
}

.post_content .container_grid {
    display: grid;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 80px;
}

.post_content .container_grid.container_grid_three-blocks {
    grid-template-columns: repeat(3, 300px);
    justify-content: center;
}

@media screen and (max-width: 1024px) {
    .post_content .container_grid.container_grid_three-blocks {
        grid-template-columns: repeat(1, 1fr);
        margin-left: 20px;
        margin-right: 20px;
    }
}

.post_content .container_grid.container_grid_two-blocks {
    grid-template-columns: repeat(2, 300px);
    justify-content: center;
}

@media screen and (max-width: 1024px) {
    .post_content .container_grid.container_grid_two-blocks {
        grid-template-columns: repeat(1, 1fr);
        margin-left: 20px;
        margin-right: 20px;
    }
}

.post_content .container_grid .container_grid_box:not(:last-child) {
    position: relative;
}

.post_content .container_grid .container_grid_box:not(:last-child)::after {
    position: absolute;
    top: 50%;
    right: -40px;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 0 30px 20px;
    border-color: transparent transparent transparent #00a6b5;
}

.post_content .post_share {
    margin-bottom: 45px;
    display: flex;
    gap: 40px;
    border: 1px solid #919191;
    padding: 20px 10px;
}

@media screen and (max-width: 1024px) {
    .post_content .post_share {
        margin: 0 10px;
        gap: 20px;
    }
}

@media screen and (max-width: 480px) {
    .post_content .post_share {
        flex-flow: column;
        text-align: center;
    }
}

.post_content .post_share .post_share_links {
    display: flex;
    gap: 2px;
    margin-top: 3px;
}

.post_content .back_post_list {
    margin: 45px auto 90px;
    max-width: 264px;
    width: 100%;
    background: #AAAAAA;
    text-align: center;
    height: 50px;
    line-height: 50px;
    position: relative;
}

.post_content .back_post_list a {
    display: block;
    color: #FFF;
    text-decoration: none;
}

.post_content .back_post_list a::after {
    content: url(../svg/icon-right-arrow.svg);
    transform: scale(-1, 1);
    display: inline-block;
    position: absolute;
    left: 20px;
    top: 3px;
}

article.post h2 {
    color: #010101;
    font-size: 50px;
    margin-bottom: 16px;
    margin-left: 10px;
    margin-right: 10px;
}

article.post h3 {
    color: #010101;
    font-size: 40px;
    margin-bottom: 16px;
    margin-left: 10px;
    margin-right: 10px;
}

article.page h3 {
    background-color: #00a6b5;
    color: #FFF;
    min-height: 56px;
    line-height: 25px;
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 16px;
    padding: 1em;
}

.breadcrumbs {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 45px;
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}

@media screen and (max-width: 480px) {
    .breadcrumbs {
        font-size: 14px;
    }
}

@media screen and (max-width: 1024px) {
    .breadcrumbs {
        padding: 0 10px;
        gap: 8px;
        margin-bottom: 30px;
    }
}

.breadcrumbs a {
    color: #00A6B5;
}

.breadcrumbs a span {
    text-decoration: underline;
}

.breadcrumbs a:hover {
    opacity: 0.7;
}

.breadcrumbs a::after {
    content: ">";
    text-decoration: none;
    color: #333;
    margin-left: 16px;
}

@media screen and (max-width: 1024px) {
    .breadcrumbs a::after {
        margin-left: 8px;
    }
}

#return_top {
    scroll-behavior: smooth;
    z-index: 99999;
    position: fixed;
    right: 15px;
    bottom: 15px;
}

@media screen and (max-width: 1024px) {
    #return_top {
        right: 15px;
        bottom: 15px;
    }
}

#return_top .pagetop {
    height: 70px;
    width: 70px;
    background: #FFF;
    border: solid 3px #00A4B3;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    display: flex;
    flex-flow: column;
    font-size: 16px;
    font-weight: bold;
    color: #00A4B3;
}

@media screen and (max-width: 1024px) {
    #return_top .pagetop {
        height: 60px;
        width: 60px;
        font-size: 14px;
    }
}

#return_top .pagetop__arrow {
    height: 12px;
    width: 12px;
    border-top: 3px solid #00A4B3;
    border-right: 3px solid #00A4B3;
    transform: translateY(10%) rotate(-45deg);
}

footer {
    background: #f5f5f5;
    padding: 60px 0 0;
    color: #333333;
    font-size: 16px;
}

.footer_sns img{
	width:38px!important;
}

@media screen and (max-width: 1024px) {
    footer {
        padding: 20px 20px 0;
        font-size: 14px;
        clear: both;
    }
}

footer .footer_content {
    max-width: 1000px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 30% 70%;
    place-content: center;
}

@media screen and (max-width: 1024px) {
    footer .footer_content {
        grid-template-columns: 1fr;
    }
}

footer .footer_company p {
    margin-bottom: 16px;
}

footer .footer_company .footer_logo {
    margin-bottom: 16px;
}

footer .footer_company .company_name-en {
    font-weight: bold;
    font-size: 18px;
}

footer small {
    display: block;
    padding: 16px 0;
    text-align: center;
    font-size: 14px;
}

footer .footer_menu {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

@media screen and (max-width: 480px) {
    footer .footer_menu {
        grid-template-columns: repeat(2, 1fr);
        margin-top: 24px;
    }
}

footer .footer_menu .footer_menu-title {
    font-weight: bold;
    font-size: 17px;
}

footer .footer_menu .footer_menu-title::before {
    content: "-";
    margin-right: 4px;
}

footer .footer_menu li {
    padding: 8px;
    font-size: 15px;
}

footer .footer_menu li:not(.footer_menu-title) {
    margin-left: 10px;
}

.main_color {
    color: #00a6b5;
    font-weight: bold;
}

span.sub_color_kome {
	color: #D74645;
	vertical-align: top;
	font-size: .65em;
}

.kome_detail {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 30px auto;
}

/* 文字の上に点 */
.dots {
    background-image: radial-gradient(circle at center, #00a6b5 20%, transparent 20%);
    background-position: top right;
    background-repeat: repeat-x;
    background-size: 1em 0.3em;
    padding-top: 0.4em;
}

@media screen and (max-width: 1024px) {
    .pc-only {
        display: none !important;
    }
}

@media screen and (min-width: 1025px) {
    .sp-only {
        display: none !important;
    }
}

.not-show {
    display: none !important;
}

.not-found a {
    display: block;
    width: 264px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    margin: 0 auto;
    background: #00a6b5;
    color: #FFF;
}

a:hover {
    opacity: 0.7;
}

.page-footer-link-content {
    width: 100%;
    background-color: #00A4B3;
    display: grid;
}

.page-footer-link-content .page-footer-link-wrapper {
    padding: 24px 0;
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

@media screen and (max-width: 1024px) {
    .page-footer-link-content .page-footer-link-wrapper {
        grid-template-columns: 1fr;
        gap: 12px;
        width: 80%;
    }
}

.page-footer-link-content .page-footer-link {
    background-color: #FFF;
    color: #00A4B3;
    text-align: center;
    line-height: 80px;
    position: relative;
}

@media screen and (max-width: 1024px) {
    .page-footer-link-content .page-footer-link {
        line-height: 47px;
    }
}

.page-footer-link-content .page-footer-link::after {
    content: url(../svg/icon-right-arrow_color.svg);
    display: inline-block;
    position: absolute;
    right: 20px;
    top: 6px;
}

@media screen and (max-width: 1024px) {
    .page-footer-link-content .page-footer-link::after {
        right: 26px;
        top: 2px;
    }
}

.pagination {
    margin: 32px auto;
}

.pagination .nav-links {
    text-align: center;
}

.pagination .nav-links .current {
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: 8px;
    background: #00A4B3;
    color: #fff;
    font-size: 16px;
    line-height: 30px;
}

.pagination .nav-links .dots {
    display: inline-block;
    margin: 8px;
    font-size: 16px;
    font-weight: bold;
    line-height: 30px;
}

.pagination .nav-links a.page-numbers {
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: 8px;
    border-radius: 50%;
    font-size: 16px;
    text-decoration: none;
    line-height: 30px;
    color: #CDCDCD;
}

.pagination .nav-links a.page-numbers:hover {
    opacity: 0.7;
    transition: all 0.3s ease;
}

.pagination .nav-links a.prev.page-numbers,
.pagination .nav-links a.next.page-numbers {
    width: auto;
    padding-right: 6px;
    padding-left: 6px;
}

.pagination .nav-links a.prev.page-numbers:hover,
.pagination .nav-links a.next.page-numbers:hover {
    opacity: 0.7;
}

.category-list {
    max-width: 1000px;
    margin: 0 auto 16px;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    text-align: center;
    position: relative;
    cursor: pointer;
}

.category-list > a,
.category-list p {
    position: relative;
    display: inline-block;
    margin: 0 0 1.5em;
    padding: 7px 10px;
    font-size: 16px;
    height: 60px;
    line-height: 44px;
    box-sizing: border-box;
}

.category-list > a:hover,
.category-list p:hover {
    opacity: 0.7;
}

@media screen and (max-width: 480px) {

    .category-list > a,
    .category-list p {
        font-size: 14px;
        margin: 0.5em 0;
        padding: 0 5px;
        height: 41px;
        line-height: auto;
        display: flex;
        flex-flow: column;
        justify-content: center;
    }
}

.category-list > a span,
.category-list p span {
    margin-top: inherit;
    margin-bottom: inherit;
    display: block;
    position: relative;
    font-size: 18px;
    font-weight: bold;
}

@media screen and (max-width: 480px) {

    .category-list > a span,
    .category-list p span {
        line-height: 0.9;
        font-size: 15px;
        font-weight: normal;
    }
}

.category-list > a.active:before,
.category-list p.active:before {
    content: "";
    position: absolute;
    bottom: -24px;
    left: 50%;
    margin-left: -15px;
    border: 12px solid transparent;
    border-top: 12px solid #FFF;
    z-index: 2;
}

.category-list > a.active:after,
.category-list p.active:after {
    content: "";
    position: absolute;
    bottom: -30px;
    left: 50%;
    margin-left: -17px;
    border: 14px solid transparent;
    border-top: 14px solid #555;
    z-index: 1;
}

.category-list > a.all,
.category-list p.all {
    border: solid 3px #00A6B5;
    background: #00A6B5;
    color: #FFF;
}

.category-list > a.all.active:before,
.category-list p.all.active:before {
    border-top: 12px solid #00A6B5;
}

.category-list > a.all.active:after,
.category-list p.all.active:after {
    border-top: 14px solid #00A6B5;
}

.category-list > a.life-hack,
.category-list p.life-hack {
    border: solid 3px #53B47E;
    background: #53B47E;
    color: #FFF;
}

.category-list > a.life-hack.active:before,
.category-list p.life-hack.active:before {
    border-top: 12px solid #53B47E;
}

.category-list > a.life-hack.active:after,
.category-list p.life-hack.active:after {
    border-top: 14px solid #53B47E;
}

.category-list > a.life-hack span::before,
.category-list p.life-hack span::before {
    content: url(../svg/icon-home.svg);
    margin-right: 10px;
    vertical-align: -3px;
}

@media screen and (max-width: 480px) {

    .category-list > a.life-hack span::before,
    .category-list p.life-hack span::before {
        content: "";
        margin: 0;
    }
}

.category-list > a.eco-cute,
.category-list p.eco-cute {
    border: solid 3px #5265EB;
    background: #5265EB;
    color: #FFF;
}

.category-list > a.eco-cute.active:before,
.category-list p.eco-cute.active:before {
    border-top: 12px solid #5265EB;
}

.category-list > a.eco-cute.active:after,
.category-list p.eco-cute.active:after {
    border-top: 14px solid #5265EB;
}

.category-list > a.eco-cute span::before,
.category-list p.eco-cute span::before {
    content: url(../svg/icon-ecocute_white.svg);
    margin-right: 10px;
    vertical-align: -3px;
}

@media screen and (max-width: 480px) {

    .category-list > a.eco-cute span::before,
    .category-list p.eco-cute span::before {
        content: "";
        margin: 0;
    }
}

.category-list > a.waterheater,
.category-list p.waterheater {
    border: solid 3px #E05C4F;
    background: #E05C4F;
    color: #FFF;
}

.category-list > a.waterheater.active:before,
.category-list p.waterheater.active:before {
    border-top: 12px solid #E05C4F;
}

.category-list > a.waterheater.active:after,
.category-list p.waterheater.active:after {
    border-top: 14px solid #E05C4F;
}

.category-list > a.waterheater span::before,
.category-list p.waterheater span::before {
    content: url(../svg/icon-water-heater_white.svg);
    margin-right: 10px;
    vertical-align: -3px;
}

@media screen and (max-width: 480px) {

    .category-list > a.waterheater span::before,
    .category-list p.waterheater span::before {
        content: "";
        margin: 0;
    }
}

.category-list > a.news,
.category-list p.news {
    border: solid 3px #E4923C;
    background: #E4923C;
    color: #FFF;
}

.category-list > a.news.active:before,
.category-list p.news.active:before {
    border-top: 12px solid #E4923C;
}

.category-list > a.news.active:after,
.category-list p.news.active:after {
    border-top: 14px solid #E4923C;
}

.category-list > a.news span::before,
.category-list p.news span::before {
    content: url(../svg/icon-infomation_white.svg);
    margin-right: 10px;
    vertical-align: -3px;
}


.category-list > a.aircon span::before,
.category-list p.aircon span::before {
    content: url(../svg/icon-aircon.svg);
    margin-right: 10px;
    vertical-align: -3px;
}

@media screen and (max-width: 480px) {

    .category-list > a.news span::before,
    .category-list p.news span::before {
        content: "";
        margin: 0;
    }
}

.posts_list_content {
    max-width: 1000px;
    margin: 0 auto;
}

@media screen and (max-width: 480px) {
    .posts_list_content {
        padding: 0 8px;
    }
}

.posts_list_content .post-wrap {
    display: flex;
    gap: 16px;
    padding: 16px;
    width: 100%;
    margin-bottom: 20px;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.15);
}

.posts_list_content .post-wrap:last-child {
    margin-bottom: 30px;
}

.posts_list_content .post-wrap .post-thumbnail {
    min-width: 260px;
}

@media screen and (max-width: 480px) {
    .posts_list_content .post-wrap .post-thumbnail {
        min-width: 90px;
    }
}

.posts_list_content .post-wrap .post-thumbnail img {
    object-fit: cover;
    width: 260px;
}

@media screen and (max-width: 480px) {
    .posts_list_content .post-wrap .post-thumbnail img {
        width: 90px;
        height: 90px;
    }
}

.posts_list_content .post-wrap .post-wrap-inner {
    margin-top: 8px;
    height: 100%;
}

.posts_list_content .post-wrap .post-wrap-inner a:hover {
    opacity: 0.7;
}

.posts_list_content .post-wrap .post-category a {
    padding: 2px 8px;
}

.posts_list_content .post-wrap .post-meta {
    display: inline-flex;
    gap: 16px;
    margin-bottom: 8px;
}

.posts_list_content .post-wrap .post-title {
    font-size: 18px;
    font-weight: bold;
    margin: 8px 0 16px;
}

@media screen and (max-width: 480px) {
    .posts_list_content .post-wrap .post-content {
        display: none;
    }
}

.cat_sub_menu {
    display: none;
    background: #FFF;
    position: absolute;
    top: 65px;
    width: 20%;
    z-index: 3;
}

@media screen and (max-width: 480px) {
    .cat_sub_menu {
        top: 53px;
        width: calc(100% - 20px) !important;
        left: 10px !important;
    }
}

.cat_sub_menu.active {
    display: block;
}

.cat_sub_menu.childe-menu__ecocute {
    left: 20%;
    border: solid 3px #5265EB;
}

.cat_sub_menu.childe-menu__waterheater {
    left: 40%;
    border: solid 3px #E05C4F;
}

.cat_sub_menu.childe-menu__lifehack {
    left: 60%;
    border: solid 3px #53B47E;
}

.cat_sub_menu a {
    display: block;
    width: 100%;
    padding: 12px 4px;
    text-decoration: underline;
    line-height: 1.4;
}

.not-post {
    margin-bottom: 60px;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeOut {
    from {
        opacity: 0;
        transform: translateY(0);
    }

    to {
        opacity: 1;
        transform: translateY(20px);
    }
}

.special-two-column {
    position: relative;
    height: 380px;
    margin-bottom: 2rem;
}

.special-two-column .wp-block-column:first-child {
    width: 425px;
    position: absolute;
    bottom: 0;
    padding-top: 40px;
    padding-left: 20px;
    opacity: 0.7;
    filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.16));
}

@media screen and (max-width: 480px) {
    .special-two-column .wp-block-column:first-child {
        width: 90%;
        padding-top: 30px;
        padding-left: 30px;
    }
}

.special-two-column .wp-block-column:first-child p {
    opacity: 1;
    line-height: 40px;
    font-size: 20px;
}

.special-two-column .wp-block-column:last-child {
    max-width: 716px;
    margin-left: auto;
}

.special-two-column .wp-block-column:last-child img {
    padding: 0 !important;
}

.special-two-column .decoration-business-content-headertext {
    border: 1px solid #e2e2e2;
    padding: 40px 40px 40px 20px;
    width: 484px !important;
}

@media screen and (max-width: 480px) {
    .special-two-column .decoration-business-content-headertext {
        width: 90% !important;
        padding: 30px;
    }
}

.special-two-column .decoration-business-content-headertext hr {
    height: 1px;
    width: 92px;
    background-color: #919191;
}

.special-two-column .decoration-business-content-headertext p.has-text-color:first-child {
    font-weight: bold;
}

@media screen and (max-width: 480px) {
    .special-two-column .decoration-business-content-headertext p.has-text-color:first-child {
        padding-bottom: 0;
    }
}

.special-two-column .decoration-business-content-headertext p.has-text-color:last-child {
    padding-bottom: 0;
    font-size: 16px;
}

.special-two-column .decoration-business-content-headertext p.has-text-color:last-child::before {
    content: "";
    display: block;
    height: 1px;
    width: 92px;
    background-color: #919191;
    margin-bottom: 25px;
}

@media screen and (max-width: 480px) {
    .special-two-column .decoration-business-content-headertext p.has-text-color:last-child::before {
        margin: 1rem 0;
    }
}

@media screen and (max-width: 480px) {
    .special-two-column.decoration-business-content-colmun {
        height: 403px;
    }
}

.decoration-message {
    position: relative;
}

.decoration-message::before {
    content: "";
    display: block;
    height: 1px;
    width: 92px;
    background-color: #919191;
    margin-bottom: 42px;
}

@media screen and (max-width: 480px) {
    .decoration-message::before {
        margin-left: 10px;
    }
}

.decoration-message::after {
    content: "MESSAGE";
    position: absolute;
    top: -66px;
    right: 0;
    color: #F7F7F7;
    font-size: 130px;
    font-weight: bold;
    z-index: -1;
}

@media screen and (max-width: 480px) {
    .decoration-message::after {
        font-size: 66px;
        top: -42px;
        right: 10px;
    }
}

.decoration-business-content-header {
    padding-top: 24px !important;
}

.decoration-business-content {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 30px;
    padding-bottom: 50px;
}

.decoration-business-content .wp-block-group__inner-container {
    position: relative;
}

.decoration-business-content .wp-block-group__inner-container::before {
    content: "SERVICE";
    position: absolute;
    top: -100px;
    left: 0;
    color: #B4DCE0;
    font-size: 100px;
    font-weight: bold;
}

@media screen and (max-width: 480px) {
    .decoration-business-content .wp-block-group__inner-container::before {
        font-size: 66px;
        top: -54px;
        left: 10px;
    }
}

.decoration-business-content .wp-block-column {
    margin-bottom: 2rem;
    border: 2px solid #26B1BE;
    padding: 20px;
    position: relative;
    height: 400px;
}

.decoration-business-content .wp-block-column p {
    padding-bottom: 0 !important;
}

@media screen and (max-width: 480px) {
    .decoration-business-content .wp-block-column {
        height: auto;
        margin-left: 10px;
        margin-right: 10px;
    }
}

@media screen and (max-width: 480px) {
    .decoration-business-content .wp-block-column:last-child {
        margin-bottom: 40px;
    }
}

.decoration-business-content .business-content-no {
    background-color: #26B1BE;
    height: 35px;
    width: 35px;
    text-align: center;
    line-height: 35px;
    color: #FFF;
    position: absolute;
    top: -18px;
    left: calc(50% - 18px);
    padding: 0 !important;
}

.decoration-business-content h3 {
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    line-height: 30px;
    background: none !important;
    color: #26B1BE !important;
    border-bottom: 2px dotted #00a4b3;
    width: 60%;
    margin-left: auto;
    margin-right: auto;
    padding: 6px !important;
    min-height: auto !important;
    display: flex;
    flex-flow: column;
    margin-top: 8px;
}

.decoration-business-content .business-content1::before {
    content: url(../svg/icon-business-content1.svg);
}

.decoration-business-content .business-content2::before {
    content: url(../svg/icon-business-content2.svg);
}

.decoration-business-content .business-content3::before {
    content: url(../svg/icon-business-content3.svg);
}

.decoration-business-content .business-content4::before {
    content: url(../svg/icon-business-content4.svg);
    margin-bottom: 16px;
}

.decoration-business-content .business-content5::before {
    content: url(../svg/icon-business-content5.svg);
}

.full-width {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    margin-bottom: -15px;
}

.trivia-panel {
    border-bottom: 1px solid #00A6B5;
}

.trivia-panel:first-child {
    border-top: 1px solid #00A6B5;
}

.trivia-panel h3 {
    background-color: unset !important;
    color: unset !important;
    font-weight: normal !important;
    margin-bottom: 0 !important;
    line-height: 34px !important;
    position: relative;
}

.trivia-panel h3::before {
    content: url(../svg/icon-light.svg);
    display: inline-block;
    position: relative;
    top: 4px;
    margin-right: 12px;
}

.trivia-panel h3.question::before {
    content: url(../svg/icon-question.svg);
    top: 8px;
}

.trivia-panel h3::after {
    content: url(../svg/icon-plus.svg);
    display: inline-block;
    position: absolute;
    top: 22px;
    right: 25px;
}

@media screen and (max-width: 480px) {
    .trivia-panel h3::after {
        right: -24px;
    }
}

@media screen and (max-width: 480px) {
    .trivia-panel h3 {
        margin-right: 50px;
        line-height: 30px !important;
        padding-left: 20px;
        text-indent: -20px;
        margin-left: 40px;
    }
}

.trivia-panel h4 {
    font-size: 16px;
    line-height: 30px;
    font-weight: bold;
    color: #00A6B5;
    padding: 0 10px 10px 0;
}

@media screen and (max-width: 480px) {
    .trivia-panel h4 {
        padding: 0 10px 10px;
    }
}

.trivia-panel.active {
    background: #E0F4F6;
}

.trivia-panel.active h3::after {
    content: url(../svg/icon-minus.svg);
}

.trivia-panel .trivia-panel-content {
    display: none;
    padding: 0 50px;
}

@media screen and (max-width: 480px) {
    .trivia-panel .trivia-panel-content {
        padding: 0 10px;
    }
}

.Instructions-buttons {
    gap: 8px !important;
}

@media screen and (max-width: 480px) {
    .Instructions-buttons {
        padding: 0 10px 30px !important;
    }
}

.Instructions-buttons a {
    text-decoration: none;
    font-size: 18px;
    font-weight: bold;
    background: #FFF;
    opacity: 1 !important;
}

@media screen and (max-width: 480px) {
    .Instructions-buttons a {
        padding: 0 10px;
        font-size: 14px !important;
    }
}

.Instructions-buttons .tab-button1,
.Instructions-buttons .tab-button2,
.Instructions-buttons .tab-button3,
.Instructions-buttons .tab-button4,
.Instructions-buttons .tab-button5,
.Instructions-buttons .tab-button6 {
    position: relative;
    border: 2px solid #00A6B5;
    box-sizing: content-box;
    height: 74px;
    background: #FFF;
    display: grid;
    place-content: center;
}

.Instructions-buttons .tab-button1 a,
.Instructions-buttons .tab-button2 a,
.Instructions-buttons .tab-button3 a,
.Instructions-buttons .tab-button4 a,
.Instructions-buttons .tab-button5 a,
.Instructions-buttons .tab-button6 a {
    padding: 0 !important;
}

.Instructions-buttons .tab-button1.active,
.Instructions-buttons .tab-button2.active,
.Instructions-buttons .tab-button3.active,
.Instructions-buttons .tab-button4.active,
.Instructions-buttons .tab-button5.active,
.Instructions-buttons .tab-button6.active {
    background: #00A6B5;
}

.Instructions-buttons .active::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -10px;
    border: 10px solid transparent;
    border-top: 12px solid #00A6B5;
}

.Instructions-buttons .active a {
    color: #FFF;
    background: #00A6B5;
}

.instructions-page .tab-content-gas {
    display: none;
}

@media screen and (max-width: 480px) {

    .instructions-page .tab-content-gas,
    .instructions-page .tab-content-ecocute {
        padding: 0 10px;
    }
}

.instructions-page .tab-content-gas h2,
.instructions-page .tab-content-ecocute h2 {
    font-weight: bold;
    font-size: 18px;
}

.instructions-page .tab-content-gas h2 + p,
.instructions-page .tab-content-ecocute h2 + p {
    margin-left: 45px;
}

.instructions-page .tab-content-gas .num,
.instructions-page .tab-content-ecocute .num {
    color: #FFF;
    background: #00A6B5;
    border-radius: 50%;
    height: 35px;
    width: 35px;
    margin-right: 20px;
    display: inline-block;
    text-align: center;
    line-height: 35px;
    margin-bottom: 1em;
}

.instructions-page .tab-content-gas .tips,
.instructions-page .tab-content-ecocute .tips {
    border-top: 1px solid #00A6B5;
    padding: 30px 10px 0;
}

.instructions-page .tab-content-gas .tips:last-of-type,
.instructions-page .tab-content-ecocute .tips:last-of-type {
    border-bottom: 1px solid #00A6B5;
    margin-bottom: 30px;
}

.instructions-page .tab-content-gas p.explain,
.instructions-page .tab-content-ecocute p.explain {
    padding: 30px;
}

.fancybox {
    position: relative;
}

.fancybox::after {
    content: url(../svg/icon-magnifying-glass.svg);
    position: absolute;
    bottom: 27px;
    right: 5px;
}

@media screen and (max-width: 480px) {
    .fancybox::after {
        right: 15px;
    }
}

.product-page .tab-content-oil,
.product-page .tab-content-hybrid,
.product-page .tab-content-ecocute {
    display: none;
}

@media screen and (max-width: 480px) {

    .product-page .tab-content-gas,
    .product-page .tab-content-oil,
    .product-page .tab-content-hybrid,
    .product-page .tab-content-ecocute {
        padding: 0 10px;
    }
}

.product-page .tab-content-gas h2,
.product-page .tab-content-oil h2,
.product-page .tab-content-hybrid h2,
.product-page .tab-content-ecocute h2 {
    font-weight: bold;
    font-size: 18px;
}

.product-page .tab-content-gas h2 + p,
.product-page .tab-content-oil h2 + p,
.product-page .tab-content-hybrid h2 + p,
.product-page .tab-content-ecocute h2 + p {
    margin-left: 45px;
}

.product-page .tab-content-gas .num,
.product-page .tab-content-oil .num,
.product-page .tab-content-hybrid .num,
.product-page .tab-content-ecocute .num {
    color: #FFF;
    background: #00A6B5;
    border-radius: 50%;
    height: 35px;
    width: 35px;
    margin-right: 20px;
    display: inline-block;
    text-align: center;
    line-height: 35px;
    margin-bottom: 1em;
}

.product-page .tab-content-gas .tips,
.product-page .tab-content-oil .tips,
.product-page .tab-content-hybrid .tips,
.product-page .tab-content-ecocute .tips {
    border-top: 1px solid #00A6B5;
    padding: 30px 10px 0;
}

.product-page .tab-content-gas .tips:last-of-type,
.product-page .tab-content-oil .tips:last-of-type,
.product-page .tab-content-hybrid .tips:last-of-type,
.product-page .tab-content-ecocute .tips:last-of-type {
    border-bottom: 1px solid #00A6B5;
    margin-bottom: 30px;
}

.product-page .tab-content-gas p.explain,
.product-page .tab-content-oil p.explain,
.product-page .tab-content-hybrid p.explain,
.product-page .tab-content-ecocute p.explain {
    padding: 30px;
}

.product-page .item_container {
    background-color: #E0F4F6;
    padding: 20px;
}

.product-page .item_container .item_view {
    background-color: #FFF;
    padding: 20px;
    display: grid;
    place-content: center;
}

.product-page .item_container .item_view img {
    padding-bottom: 0 !important;
}

.product-page .item_container + .item_container {
    padding-top: 0;
}

.js-modal-open {
    background-color: #00a6b5;
    color: #FFF !important;
    text-decoration: none !important;
    display: grid;
    place-content: center;
    text-align: center;
    height: 50px;
    width: 170px;
    position: relative;
    text-align: center;
    font-size: 20px;
    margin-top: 16px;
    min-width: 120px;
}

.js-modal-open::after {
    content: url(../svg/icon-right-arrow.svg);
    display: inline-block;
    position: absolute;
    right: 10px;
    top: 10px;
}

@media screen and (max-width: 640px) {
    .js-modal-open::after {
        top: 13px;
    }
}

@media screen and (max-width: 640px) {
    .js-modal-open {
        width: 100%;
        font-size: 16px;
    }
}

.js-item-modal-open {
    cursor: pointer;
}

.js-item-modal-open-button {
    background-color: #00a6b5;
    color: #FFF !important;
    text-decoration: none !important;
    display: grid;
    place-content: center;
    text-align: center;
    height: 50px;
    width: 170px;
    position: relative;
    text-align: center;
    font-size: 20px;
    margin-top: 16px;
    min-width: 120px;
}

.js-item-modal-open-button::after {
    content: url(../svg/icon-right-arrow.svg);
    display: inline-block;
    position: absolute;
    right: 10px;
    top: 10px;
}

@media screen and (max-width: 640px) {
    .js-item-modal-open-button::after {
        top: 13px;
    }
}

@media screen and (max-width: 640px) {
    .js-item-modal-open-button {
        width: 100%;
        font-size: 16px;
    }
}

.modal {
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 100000;
    overflow: hidden;
}

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

.modal__content {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 616px;
    color: #FFF;
}

.modal__content.modal__item-content {
    width: 90%;
    max-width: 860px;
    max-height: 90%;
    overflow-y: auto;
}

@media screen and (max-width: 640px) {
    .modal__content.modal__item-content {
        overflow-y: scroll;
    }
}

.modal__content .modal__content-header {
    display: flex;
    flex-wrap: nowrap;
    height: 24px;
    gap: 10px;
    margin-bottom: 10px;
    justify-content: center;
}

@media screen and (max-width: 640px) {
    .modal__content .modal__content-header {
        margin: 0 30px 24px;
    }
}

.modal__content .modal__content-header .catch {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    line-height: 24px;
    min-width: 100%;
    margin: 0 auto;
}

.modal__content .modal__content-header .catch span {
    width: 204px;
    text-align: center;
    white-space: nowrap;
}

.modal__content .modal__content-header .catch::before {
    margin-right: 13px;
    border-top: 1px solid #FFF;
    content: "";
    width: 100%;
}

.modal__content .modal__content-header .catch::after {
    margin-left: 13px;
    border-top: 1px solid #FFF;
    content: "";
    width: 100%;
}

.modal__content .modal__item-content-wrapper {
    background-color: #FFF;
    padding: 24px;
    color: #333 !important;
}

.modal__content .modal__item-content-wrapper .option-wrapper {
    background: #E0F4F6;
    padding: 12px;
    flex-flow: column;
    gap: 16px;
    margin-bottom: 36px;
}

.modal__content .modal__item-content-wrapper .option-wrapper b {
    font-weight: bold;
}

.modal__content .modal__item-content-wrapper .option-wrapper .item-option-title {
    color: #00A6B5;
    font-weight: bold;
}

.modal__content .modal__item-content-wrapper h3 {
    color: #00A6B5;
    font-weight: bold;
}

.modal__content .modal__item-content-footer-wrapper {
    background: #00A6B5;
}

.modal__content .modal__item-content-footer-wrapper .modal__item-content-footer {
    max-width: 1000px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    padding: 16px;
    gap: 12px;
}

@media screen and (max-width: 640px) {
    .modal__content .modal__item-content-footer-wrapper .modal__item-content-footer {
        grid-template-columns: 1fr;
    }
}

.modal__content .modal__item-content-footer-wrapper a {
    display: grid;
    place-content: center;
    padding-left: 6px;
}

.modal__content .modal__content-images {
    margin-top: 16px;
    display: grid;
    gap: 16px;
    grid-template-columns: 300px 300px;
    justify-content: center;
}

@media screen and (max-width: 640px) {
    .modal__content .modal__content-images {
        grid-template-columns: 1fr;
        margin: 0 30px;
    }
}

.modal__content .modal__content-images a:hover {
    opacity: 1;
    transform: translateY(-5px);
}

.big-tab-area {
    gap: 0 !important;
    height: 85px;
    padding: 0 10px !important;
    margin-bottom: 2rem;
}

.big-tab-area .big-tab-content-2,
.big-tab-area .big-tab-content-3,
.big-tab-area .big-tab-content-4,
.big-tab-area .big-tab-content-5 {
    display: none;
}

.big-tab-area .big-tab-1,
.big-tab-area .big-tab-2,
.big-tab-area .big-tab-3,
.big-tab-area .big-tab-4,
.big-tab-area .big-tab-5 {
    background-color: #ECECEC;
    color: #6C6C6C;
    font-size: 18px;
    border-top: 1px solid #B6B6B6;
    border-left: 1px solid #B6B6B6;
    border-bottom: 3px solid #00A6B5;
    margin-top: 15px;
}

.big-tab-area .big-tab-1:last-child,
.big-tab-area .big-tab-2:last-child,
.big-tab-area .big-tab-3:last-child,
.big-tab-area .big-tab-4:last-child,
.big-tab-area .big-tab-5:last-child {
    border-right: 1px solid #B6B6B6;
}

.big-tab-area .big-tab-1 p,
.big-tab-area .big-tab-2 p,
.big-tab-area .big-tab-3 p,
.big-tab-area .big-tab-4 p,
.big-tab-area .big-tab-5 p {
    padding: 0 !important;
    margin: 0 !important;
    line-height: 70px;
}

.big-tab-area .big-tab-1.active,
.big-tab-area .big-tab-2.active,
.big-tab-area .big-tab-3.active,
.big-tab-area .big-tab-4.active,
.big-tab-area .big-tab-5.active {
    margin-top: 0;
    background-color: #FFF;
    color: #00A6B5;
    font-weight: bold;
    border: 3px solid #00A6B5;
    border-bottom: 3px solid #FFF;
}

.big-tab-area .big-tab-1.active p,
.big-tab-area .big-tab-2.active p,
.big-tab-area .big-tab-3.active p,
.big-tab-area .big-tab-4.active p,
.big-tab-area .big-tab-5.active p {
    margin-top: 15px;
    line-height: 85px;
}

.big-tab-area_sp {
    display: inline-block;
    width: 100%;
    padding: 0 10px;
    position: relative;
    margin-bottom: 24px;
}

.big-tab-area_sp::before {
    content: "";
    height: 100%;
    position: absolute;
    right: 10px;
    top: 0;
    width: 28px;
    background-color: #00A6B5;
}

.big-tab-area_sp::after {
    content: "";
    border-color: #FFF;
    border-style: solid;
    border-width: 0 1px 1px 0;
    display: block;
    height: 6px;
    position: absolute;
    right: 20px;
    top: calc(50% - 4px);
    transform: rotate(45deg);
    width: 6px;
}

.big-tab-area_sp .select-control__control {
    appearance: none;
    background-color: initial;
    border: 1px solid #CCC;
    cursor: pointer;
    display: inline-block;
    line-height: 1;
    width: 100%;
    outline: 0;
    padding: 12px;
    position: relative;
    font-size: 16px;
    font-weight: bold;
    color: #9B9B9B;
}

.big-tab-area_sp-label {
    font-weight: bold;
    margin-bottom: 8px;
    margin-left: 10px;
}

.tab-contents .wp-block-group {
    display: none;
}

.tab-contents .wp-block-group.active {
    display: block;
}

.errorcode-table {
    border-collapse: unset !important;
    margin: 0 10px 16px;
}

.errorcode-table tbody {
    border: 1px solid #D8D8D8 !important;
}

.errorcode-table th,
.errorcode-table td {
    border: 1px solid #D8D8D8 !important;
}

@media screen and (max-width: 640px) {

    .errorcode-table th,
    .errorcode-table td {
        padding: 8px !important;
    }
}

.errorcode-table th {
    text-align: center;
    font-weight: bold;
    width: 20%;
    background-color: #00A4B3;
    color: #FFF;
}

.errorcode-table th:last-child {
    width: 60%;
}

.errorcode-table td {
    background-color: #FFF !important;
}

.errorcode-table tr:has(td:nth-child(3)) td:first-child {
    background-color: #E0F4F6 !important;
    font-weight: bold;
}

.errorcode-table tr:has(th:nth-child(2)) th:last-child {
    width: 20%;
}

@media screen and (max-width: 640px) {
    .errorcode-table {
        margin: 0 10px;
    }

    .errorcode-table th {
        width: 40%;
    }

    .errorcode-table th:first-child {
        width: 20%;
    }
}

.maker-title {
    border-left: 4px solid #00A6B5;
    border-bottom: 1px solid #00A6B5;
    padding: 0 10px 8px;
    margin: 16px 10px;
    gap: 1rem !important;
}

@media screen and (max-width: 640px) {
    .maker-title {
        flex-wrap: wrap !important;
        gap: 2px !important;
        padding: 0 0 4px;
    }
}

.maker-title p {
    color: #00A6B5;
    padding-bottom: 0;
    font-weight: bold;
}

.maker-title img {
    padding-bottom: 0;
}

.select-maker-area {
    display: grid !important;
    background-color: #E0F4F6;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px !important;
    padding: 24px 18px;
    margin: -16px 10px 36px;
}

.maker-choice {
    grid-template-columns: repeat(5, 1fr);
}

@media screen and (max-width: 640px) {
    .select-maker-area {
        padding: 18px 20px;
        grid-template-columns: repeat(2, 1fr);
    }
}

.select-maker-area img {
    padding: 0 !important;
}

.select-maker-area-subtext {
    font-weight: bold;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .select-maker-area-subtext {
        text-align: left;
    }
}

.errorcode-subtext {
    padding: 16px !important;
    margin-bottom: 2rem !important;
}

@media screen and (max-width: 640px) {
    .errorcode-subtext {
        padding: 16px 0 !important;
        margin: 0 10px 2rem !important;
    }
}

.errorcode-subtext-color {
    background-color: #E0F4F6;
}

@media screen and (max-width: 640px) {
    .errorcode-subtext-color {
        padding: 16px !important;
    }
}

.errorcode-subtext .wp-block-group__inner-container:last-child p {
    padding-bottom: 0;
}

.errorcode-subtitle {
    background-color: #00A6B5;
    color: #FFF;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    padding: 12px 0;
    margin-bottom: 2rem !important;
}

@media screen and (max-width: 640px) {
    .errorcode-subtitle {
        padding: 12px;
    }
}

.how-to-choose-maker-title {
    display: flex !important;
    padding: 0;
    margin: 16px 0;
    border-left: 5px solid #00A6B5;
    gap: 0 !important;
}

@media screen and (max-width: 640px) {
    .how-to-choose-maker-title {
        margin-left: 10px;
    }
}

.how-to-choose-maker-title p {
    color: #00A6B5;
    padding-bottom: 0;
    font-weight: bold;
}

.how-to-choose-maker-title img {
    padding-bottom: 0;
}

.item_wrapper {
    background: #E0F4F6;
    padding: 20px;
    display: flex;
    flex-flow: column;
    gap: 20px;
}

.item_wrapper .item_container {
    background: #FFF;
    box-shadow: 2px 2px 2px 2px rgba(0, 0, 0, 0.1);
}

.item_wrapper .item_container img {
    padding-bottom: 0;
}

.item_wrapper .item_container .js-item-modal-open {
    margin: -20px auto 20px;
}

@media screen and (max-width: 640px) {
    .item_wrapper .item_container .js-item-modal-open-button {
        width: 70%;
        margin-top: -10px;
        font-size: 16px;
    }
}

/*# sourceMappingURL=style.css.map */