@charset "UTF-8";
/*==================================================================================================
	TOP
==================================================================================================*/
#top .mv_inner {
    height: 100svh;
    position: relative;
}
#top .mv_img {
    height: 100svh;
}
#top .mv_img .uk-slideshow-items {
    height: 100svh;
}
#top .mv_nav {
    position: absolute;
    right: 20px;
    bottom: 20px;
}
#top .mv_nav li {
    padding-left: 6px;
}
#top .mv_nav li a {
    width: 50px;
    height: 6px;
    border-radius: 0;
    background-color: #fff;
}
@media (max-width: 700px) {
    #top .mv_nav li a {
        width: 25px;
    }
}
#top .mv_nav li.uk-active a {
    background-color: #19839C;
}
#top .mv_mark {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    text-align: center;
}
#top .mv_mark img {
    width: clamp(250px, 30vw, 348px);
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}
#top .mv_mark .txt {
    display: none;
}
@media (max-width: 1024px) {
    #top .mv_mark .txt {
        display: block;
        font-size: clamp(3rem, 4vw, 4.4rem);
        letter-spacing: 0.2em;
        font-weight: 500;
        color: #fff;
        line-height: 1.45;
    }
}
#top .mv_catch {
    position: absolute;
    top: 50%;
    left: 80px;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
}
@media (max-width: 1024px) {
    #top .mv_catch {
        display: none;
    }
}
#top .mv_catch span {
    font-size: clamp(3rem, 4vw, 4.4rem);
    letter-spacing: 0.2em;
    font-weight: 500;
    color: #fff;
    line-height: 1.45;
}
#top .mv_text {
    position: absolute;
    width: calc(100% - min(160px, 10%));
    display: block;
    z-index: 1;
}
#top .mv_text.-white {
    top: calc(100% + clamp(8px, 1.5vw, 24px));
    left: min(80px, 5%);
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
}
#top .mv_text.-white span {
    color: #fff;
    text-align: left;
}
#top .mv_text.-navy {
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
    bottom: 0;
    right: min(80px, 5%);
}
#top .mv_text.-navy span {
    color: #0F2C3D;
    text-align: right;
}
#top .mv_text span {
    font-family: "Crimson Text", multi-display, sans-serif;
    font-size: clamp(4rem, 7vw, 12rem);
    letter-spacing: 0.2em;
    font-weight: 500;
    line-height: 1;
    display: block;
}
@media (max-width: 540px) {
    #top .mv_text span {
        letter-spacing: 0.1em;
    }
}
#top .about {
    z-index: 0;
}
#top .about_inner {
    position: relative;
    height: 100svh;
}
@media (max-width: 700px) {
    #top .about_inner {
        height: 80svh;
    }
}
#top .about_content {
    background-color: #E7F1F8;
    width: 100%;
    max-width: 600px;
    border-radius: 50%;
    aspect-ratio: 1/1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    top: 40%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
}
@media (max-width: 840px) {
    #top .about_content {
        width: 90%;
    }
}
@media (max-width: 540px) {
    #top .about_content {
        width: 100%;
    }
}
#top .about_content_inner {
    text-align: center;
}
@media (max-width: 700px) {
    #top .about_content_inner {
        padding: 0 20px;
    }
}
#top .about_txt {
    font-size: clamp(1.6rem, 1.8vw, 2rem);
}
#top .about_img .img {
    position: absolute;
    z-index: -1;
}
#top .about_img .img.-img01 {
    top: -27%;
    left: 0;
}
@media (max-width: 700px) {
    #top .about_img .img.-img01 {
        width: 100%;
        top: -15%;
    }
}
#top .about_img .img.-img02 {
    bottom: 0;
    left: 10%;
}
@media (max-width: 700px) {
    #top .about_img .img.-img02 {
        top: 25%;
    }
}
#top .about_img .img.-img03 {
    top: -20%;
    right: -2%;
}
@media (max-width: 1280px) {
    #top .about_img .img.-img03 {
        bottom: 0;
        top: inherit;
    }
}
#top .business_inner {
    display: flex;
    align-items: center;
}
@media (max-width: 1280px) {
    #top .business_inner {
        flex-wrap: wrap;
    }
}
#top .business_content {
    width: 50%;
}
@media (max-width: 1280px) {
    #top .business_content {
        width: 100%;
    }
}
#top .business_ttl {
    align-items: start;
}
#top .business_list {
    display: flex;
    flex-direction: column;
    gap: 10px 0;
    position: relative;
    z-index: 1;
}
@media (max-width: 1280px) {
    #top .business_list {
        flex-wrap: wrap;
        gap: 1em;
        flex-direction: row;
    }
}
#top .business_item {
    display: flex;
    align-items: stretch;
}
@media (max-width: 1280px) {
    #top .business_item {
        width: calc(50% - 0.5em);
    }
}
@media (max-width: 840px) {
    #top .business_item {
        width: 100%;
    }
}
#top .business_item a {
    width: 100%;
    padding: 1.5em;
    background-color: #fff;
    position: relative;
}
#top .business_item a:before {
    content: "";
    background-image: url(../img/01_top/sea_bg.jpg);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: 0.5s;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}
#top .business_item a:after {
    content: "";
    height: 85%;
    max-height: 100px;
    width: auto;
    aspect-ratio: 1/1;
    display: block;
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    right: 1.5em;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    opacity: 0;
    transition: 0.5s;
}
@media (max-width: 1280px) {
    #top .business_item a:after {
        max-height: 80px;
        top: inherit;
        bottom: 1em;
        right: 1em;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        opacity: 1;
    }
}
#top .business_item a .item_img {
    margin-bottom: 30px;
    width: 100%;
}
@media (min-width: 1281px) {
    #top .business_item a .item_img {
        display: none;
    }
}
#top .business_item a .item_img img {
    -o-object-fit: cover;
    object-fit: cover;
    aspect-ratio: 16/9;
}
#top .business_item a .item_body {
    display: flex;
    flex-direction: column;
    padding-right: 110px;
}
#top .business_item a .sub_ttl {
    font-size: clamp(1.6rem, 1.8vw, 2rem);
}
#top .business_item a .main_ttl {
    font-size: clamp(2.4rem, 2.6vw, 3.2rem);
    line-height: 1.2;
    padding: 0.25em 0;
}
#top .business_item a:hover {
    background-color: transparent;
}
#top .business_item a:hover:before {
    opacity: 1;
}
#top .business_item a:hover:after {
    opacity: 1;
}
#top .business_item a:hover span {
    color: #fff;
}
#top .business_item.-list01 a:after {
    background-image: url(../img/01_top/business_icon_01.png);
}
#top .business_item.-list02 a:after {
    background-image: url(../img/01_top/business_icon_02.png);
}
#top .business_item.-list03 a:after {
    background-image: url(../img/01_top/business_icon_03.png);
}
#top .business_item.-list04 a:after {
    background-image: url(../img/01_top/business_icon_04.png);
}
#top .business_img {
    width: 65%;
    margin-right: calc(50% - 50vw);
    aspect-ratio: 4/3;
    margin-left: -5%;
    position: relative;
    z-index: 0;
}
@media (max-width: 1280px) {
    #top .business_img {
        display: none;
    }
}
#top .business_img .img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    transition: 1s;
}
#top .business_img .img.-img00 {
    background-image: url(../img/01_top/business_00.jpg);
}
#top .business_img .img.-img01 {
    background-image: url(../img/01_top/business_01.jpg);
    opacity: 0;
}
#top .business_img .img.-img02 {
    background-image: url(../img/01_top/business_02.jpg);
    opacity: 0;
}
#top .business_img .img.-img03 {
    background-image: url(../img/01_top/business_03.jpg);
    opacity: 0;
}
#top .business_img .img.-img04 {
    background-image: url(../img/01_top/business_04.jpg);
    opacity: 0;
}
#top .news_inner {
    max-width: 1160px;
    display: flex;
    position: relative;
}
@media (max-width: 840px) {
    #top .news_inner {
        flex-wrap: wrap;
    }
}
#top .news_ttl {
    width: 300px;
    align-items: start;
}
@media (max-width: 840px) {
    #top .news_ttl {
        margin-bottom: 0;
    }
}
#top .news_ttl .ja {
    font-size: clamp(2.8rem, 3.8vw, 4rem);
}
#top .news_content {
    width: calc(100% - 300px);
}
@media (max-width: 840px) {
    #top .news_content {
        width: 100%;
        margin-bottom: 20px;
    }
}
@media (min-width: 841px) {
    #top .news_btn {
        position: absolute;
        top: 80px;
    }
}
#top .profile_inner {
    display: flex;
}
@media (max-width: 1024px) {
    #top .profile_inner {
        flex-wrap: wrap;
    }
}
#top .profile_img {
    width: 55%;
    margin-left: calc(50% - 50vw);
    aspect-ratio: 2/1;
    background-image: url(../img/01_top/company.jpg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
@media (max-width: 1024px) {
    #top .profile_img {
        width: 100%;
    }
}
#top .profile_content {
    width: 45%;
    padding: clamp(40px, 6vw, 80px);
}
@media (max-width: 1024px) {
    #top .profile_content {
        width: 100%;
    }
}
@media (max-width: 700px) {
    #top .profile_content {
        padding: 40px 0 0 0;
    }
}
#top .profile_ttl {
    align-items: start;
}
#top .profile_btn {
    margin-top: 20px;
}

/* ===============================================
    下層ページタイトル
=============================================== */
.title.cmn.-page + .cmn.-page {
    margin-top: 0;
}

/*==================================================================================================
	事業紹介
==================================================================================================*/
#business .business {
    padding-bottom: clamp(80px, 12vw, 150px);
}
#business .business_inner {
    display: flex;
}
@media (max-width: 1024px) {
    #business .business_inner {
        flex-wrap: wrap;
    }
}
#business .business_list {
    display: -ms-grid;
    display: grid;
    row-gap: 40px;
}
#business .business_item {
    container-type: inline-size;
}
#business .business_img {
    width: 46%;
    margin-left: calc(50% - 50vw);
    aspect-ratio: 794/611;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
@media (max-width: 1600px) {
    #business .business_img {
        width: 50%;
    }
}
@media (max-width: 1024px) {
    #business .business_img {
        width: 100%;
    }
}
#business .business_img.-list01 {
    background-image: url(../img/02_business/business_01.jpg);
}
#business .business_img.-list02 {
    background-image: url(../img/02_business/business_02.jpg);
}
#business .business_img.-list03 {
    background-image: url(../img/02_business/business_03.jpg);
}
#business .business_img.-list04 {
    background-image: url(../img/02_business/business_04.jpg);
}
#business .business_content {
    position: relative;
    width: 54%;
    padding: clamp(55px, 8vw, 110px);
    display: -ms-grid;
    display: grid;
    row-gap: clamp(16px, 2vw, 32px);
}
@media (max-width: 1024px) {
    #business .business_content {
        width: 100%;
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 1fr max-content;
        grid-template-columns: 1fr -webkit-max-content;
        grid-template-columns: 1fr max-content;
    }
}
@media (max-width: 700px) {
    #business .business_content {
        padding: 40px 0 0 0;
    }
}
#business .business_content:after {
    content: "";
    height: max(80px, 10cqi);
    width: auto;
    aspect-ratio: 1/1;
    display: block;
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
@media (max-width: 1024px) {
    #business .business_content:after {
        position: relative;
        top: unset;
        left: unset;
        -webkit-transform: unset;
        transform: unset;
        -ms-grid-column: 2;
        -ms-grid-column-span: 1;
        grid-column: 2/3;
        -ms-grid-row: 1;
        -ms-grid-row-span: 1;
        grid-row: 1/2;
    }
}
#business .business_content.-list01:after {
    background-image: url(../img/01_top/business_icon_01.png);
}
#business .business_content.-list02:after {
    background-image: url(../img/01_top/business_icon_02.png);
}
#business .business_content.-list03:after {
    background-image: url(../img/01_top/business_icon_03.png);
}
#business .business_content.-list04:after {
    background-image: url(../img/01_top/business_icon_04.png);
}
@media (max-width: 1024px) {
    #business .business_top {
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-column: 1/2;
        -ms-grid-row-align: center;
        align-self: center;
    }
}
#business .business_bottom {
    display: -ms-grid;
    display: grid;
    row-gap: 17px;
    max-width: 640px;
}
@media (max-width: 1024px) {
    #business .business_bottom {
        -ms-grid-column: 1;
        -ms-grid-column-span: 2;
        grid-column: 1/3;
    }
}
#business .business_txt {
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
}
#business .business_txt.-l {
    font-size: clamp(1.6rem, 2vw, 2.4rem);
    font-weight: 500;
}
#business .business_ttl {
    font-size: clamp(2.4rem, 3vw, 4rem);
    line-height: 1.4;
    font-weight: 500;
}
#business .business_btn {
    margin-top: 20px;
}

/* ===============================================
    事業紹介 - 伊豆中央水産株式会社　他
=============================================== */
#detail .mv {
    color: #fff;
    background: linear-gradient(to bottom, rgba(15, 44, 61, 0.5), rgba(15, 44, 61, 0.5)), url(../img/02_business/business_01.jpg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
#detail .mv.-primeestate {
    background: linear-gradient(to bottom, rgba(15, 44, 61, 0.5), rgba(15, 44, 61, 0.5)), url(../img/02_business/business_02.jpg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
#detail .mv.-sankai {
    background: linear-gradient(to bottom, rgba(15, 44, 61, 0.5), rgba(15, 44, 61, 0.5)), url(../img/02_business/business_03.jpg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
#detail .mv.-suwakane {
    background: linear-gradient(to bottom, rgba(15, 44, 61, 0.5), rgba(15, 44, 61, 0.5)), url(../img/02_business/business_04.jpg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
#detail .mv_inner {
    display: -ms-grid;
    display: grid;
    place-content: center;
    padding-top: min(194px, 30vh);
    padding-bottom: min(316px, 30vh);
    padding-inline: 5%;
}
#detail .mv_img {
    width: max(80px, 8.3333333333vw);
    aspect-ratio: 1;
    border-radius: 50%;
    background-image: url(../img/01_top/business_icon_01.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-inline: auto;
}
#detail .mv_img.-primeestate {
    background-image: url(../img/01_top/business_icon_02.png);
}
#detail .mv_img.-sankai {
    background-image: url(../img/01_top/business_icon_03.png);
}
#detail .mv_img.-suwakane {
    background-image: url(../img/01_top/business_icon_04.png);
}
#detail .mv_txt {
    margin-top: clamp(20px, 3vw, 40px);
    font-size: clamp(2rem, 2vw, 2.4rem);
    letter-spacing: 0;
    text-align: center;
}
@media (max-width: 840px) {
    #detail .mv_txt {
        font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    }
}
#detail .mv_ttl {
    font-size: clamp(3.2rem, 4.2vw, 4.8rem);
    line-height: 1.4;
    letter-spacing: 0;
    text-align: center;
    color: #fff;
    margin-top: 8px;
}
#detail .mv_ttl span {
    display: inline-block;
}
#detail .mv .breadcrumb {
    margin-top: clamp(20px, 3vw, 40px);
}
#detail .intro_heading {
    --_intro-border-radius: clamp(50px, 5.5vw, 100px);
    background-color: #fff;
    padding: min(60px, 15%) min(40px, 5%);
    display: -ms-grid;
    display: grid;
    row-gap: 34px;
    border-radius: var(--_intro-border-radius) 0 var(--_intro-border-radius) 0;
    box-shadow: 16px 16px 0 rgb(134, 170, 179);
    margin-top: -14vh;
}
#detail .intro .txt {
    text-align: center;
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
}
#detail .intro .txt.-blue {
    font-size: clamp(2.4rem, 2.6vw, 3.2rem);
    line-height: 1.6;
    letter-spacing: 0.1em;
    color: #19839C;
}
@media (max-width: 840px) {
    #detail .intro .txt.-blue {
        font-size: clamp(2rem, 2vw, 2.4rem);
    }
}
#detail .intro .txt span {
    display: inline-block;
}
#detail .intro_list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
    margin-top: 89px;
}
@media (max-width: 1024px) {
    #detail .intro_list {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        row-gap: 40px;
    }
}
#detail .intro_list.-twocol {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    row-gap: 40px;
}
@media (max-width: 1024px) {
    #detail .intro_list.-twocol {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
}
#detail .intro_item {
    background-color: #fff;
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: subgrid;
    grid-template-rows: subgrid;
    grid-row: span 3;
}
@media (max-width: 1024px) {
    #detail .intro_item {
        -ms-grid-columns: 1fr 2fr;
        grid-template-columns: 1fr 2fr;
        -ms-grid-rows: unset;
        grid-template-rows: unset;
        grid-row: unset;
    }
}
@media (max-width: 700px) {
    #detail .intro_item {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
}
#detail .intro_img {
    width: 100%;
    aspect-ratio: 360/279;
}
@media (max-width: 1024px) {
    #detail .intro_img {
        aspect-ratio: unset;
    }
}
#detail .intro_img img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
#detail .intro .list_inner {
    display: -ms-grid;
    display: grid;
    row-gap: 16px;
    margin-top: 24px;
    padding: 0 32px 24px;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
}
#detail .intro .list_heading {
    padding: 24px 32px 0;
    font-size: clamp(2.2rem, 3vw, 2.8rem);
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0.05em;
    color: #19839C;
}
#detail .intro .list_txt {
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
}
#detail .outline {
    padding-bottom: clamp(80px, 12vw, 150px);
}
#detail .outline_inner {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
    margin-top: clamp(20px, 3vw, 40px);
}
@media (max-width: 700px) {
    #detail .outline_inner {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        row-gap: 40px;
    }
}
#detail .outline_list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: max-content 1fr;
    grid-template-columns: -webkit-max-content 1fr;
    grid-template-columns: max-content 1fr;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
}
@media (max-width: 700px) {
    #detail .outline_list {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
}
#detail .outline_term {
    display: -ms-grid;
    display: grid;
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    font-weight: 400;
    line-height: 1.6;
    color: #6C6C6C;
    padding-block: clamp(2rem, 2vw, 2.4rem);
    padding-right: clamp(20px, 3vw, 40px);
    border-bottom: solid 1px #CCCCCC;
}
@media (max-width: 700px) {
    #detail .outline_term {
        border: none;
        padding-bottom: 0;
    }
}
@media (max-width: 700px) {
    #detail .outline_term br {
        display: none;
    }
}
#detail .outline_def {
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    font-weight: 400;
    line-height: 1.6;
    color: #0F2C3D;
    padding-block: clamp(2rem, 2vw, 2.4rem);
    border-bottom: solid 1px #CCCCCC;
}
#detail .outline_def span {
    display: inline-block;
    font-weight: 400;
}
@media (max-width: 700px) {
    #detail .outline_def {
        padding-top: 5px;
    }
}
#detail .outline_map {
    position: relative;
    width: 100%;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    aspect-ratio: 560/420;
}
#detail .outline_map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#detail .outline .def_list {
    display: -ms-grid;
    display: grid;
    row-gap: 10px;
}
#detail .outline .def_item {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 72px 1fr;
    grid-template-columns: 72px 1fr;
    align-items: center;
    -webkit-column-gap: 16px;
    -moz-column-gap: 16px;
    column-gap: 16px;
}
#detail .gallery_list {
    margin-top: 30px;
    display: flex;
    flex-wrap: wrap;
    gap: 1em 1em;
}
#detail .gallery_item {
    width: calc((100% - 3em) / 4);
}
@media (max-width: 840px) {
    #detail .gallery_item {
        width: calc((100% - 2em) / 3);
    }
}
@media (max-width: 540px) {
    #detail .gallery_item {
        width: calc((100% - 1em) / 2);
    }
}
#detail .gallery_item img {
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    aspect-ratio: 1/1;
}
#detail .gallery_img {
    border: none;
    padding: 0;
    transition: 0.5s opacity;
}
#detail .gallery_img:hover {
    opacity: 0.8;
}
#detail .gallery_caption {
    margin-top: 0.5em;
    font-size: 14px;
    display: block;
    text-align: center;
}

/* ===============================================
    お知らせ
=============================================== */
#news .archive {
    margin-bottom: clamp(80px, 12vw, 150px);
}
#news .article {
    margin-bottom: clamp(80px, 12vw, 150px);
}
#news .article_date {
    color: #6C6C6C;
}
#news .article_content {
    margin-top: 40px;
}
#news .article_content img {
    width: auto;
    margin: 1em 0;
}
#news .article_btn {
    margin-top: clamp(20px, 3vw, 40px);
}

/* ===============================================
    企業情報
=============================================== */
#profile {
    /* 代表メッセージ */
    /* 企業理念 */
    /* 組織図 */
    /* 会社概要 */
    /* 沿革 */
}
#profile .profile_ttl {
    text-align: center;
}
#profile .profile_ttl .en {
    font-family: "Crimson Text", multi-display, sans-serif;
    font-size: clamp(4rem, 6vw, 8rem);
    letter-spacing: 0.1em;
    font-weight: 400;
    line-height: 1;
    text-transform: capitalize;
}
@media (max-width: 700px) {
    #profile .profile_ttl .en {
        font-size: 32px;
    }
}
#profile .profile_ttl .ja {
    display: block;
    font-size: clamp(2rem, 2vw, 2.4rem);
    letter-spacing: 0.1em;
    font-weight: 500;
}
@media (max-width: 700px) {
    #profile .profile_ttl .ja {
        font-size: 16px;
    }
}
#profile .profile_ttl.-white {
    color: #fff;
}
#profile .message_inner {
    background-color: #fff;
    padding: min(64px, 10%) min(64px, 5%);
}
#profile .message_wrapper {
    display: -ms-grid;
    display: grid;
    row-gap: 16px;
    margin-top: 64px;
}
@media (max-width: 840px) {
    #profile .message_wrapper {
        margin-top: 32px;
    }
}
#profile .message_txt {
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
}
#profile .message_link {
    margin-top: 1em;
}
#profile .message_link span {
    display: flex;
    align-items: center;
    font-size: clamp(1.6rem, 1.8vw, 2rem);
}
#profile .message_link span:after {
    content: "";
    background-image: url(../img/00_cmn/icon_arrow.svg);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    width: 28px;
    height: 28px;
    display: block;
    padding-left: 1em;
    transition: 0.5s padding-left;
}
#profile .message_link:hover span:after {
    padding-left: 2em;
}
#profile .message_sign {
    margin-top: 16px;
    display: -ms-grid;
    display: grid;
}
#profile .message_role {
    font-family: "Noto Serif JP", serif;
    font-weight: 700;
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    text-align: right;
}
#profile .message_name {
    font-family: "Noto Serif JP", serif;
    font-weight: 700;
    font-size: clamp(2.4rem, 2.6vw, 3.2rem);
    line-height: 1.4;
    text-align: right;
}
#profile .philosophy_inner {
    display: -ms-grid;
    display: grid;
    row-gap: 24px;
    margin-top: 64px;
}
@media (max-width: 840px) {
    #profile .philosophy_inner {
        row-gap: 16px;
        margin-top: 32px;
    }
}
#profile .philosophy_txt {
    font-size: clamp(2.4rem, 2.6vw, 3.2rem);
    text-align: center;
    line-height: 2;
}
@media (max-width: 840px) {
    #profile .philosophy_txt {
        font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    }
}
#profile .philosophy_txt span {
    display: inline-block;
}
#profile .organization_inner {
    padding-block: clamp(60px, 9vw, 115px);
    padding-inline: 5%;
    background-image: url(../img/01_top/sea_bg.jpg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
#profile .organization .chart {
    margin-top: 64px;
}
@media (max-width: 840px) {
    #profile .organization .chart {
        margin-top: 32px;
    }
}
#profile .organization .chart_img {
    display: block;
    width: min(1160px, 100%);
    margin-inline: auto;
}
#profile .profile_inner {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    -webkit-column-gap: clamp(20px, 3vw, 40px);
    -moz-column-gap: clamp(20px, 3vw, 40px);
    column-gap: clamp(20px, 3vw, 40px);
    margin-top: 64px;
}
@media (max-width: 840px) {
    #profile .profile_inner {
        margin-top: 32px;
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        row-gap: 20px;
    }
}
#profile .profile_list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: max-content 1fr;
    grid-template-columns: -webkit-max-content 1fr;
    grid-template-columns: max-content 1fr;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
}
@media (max-width: 700px) {
    #profile .profile_list {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
}
#profile .profile_term {
    display: -ms-grid;
    display: grid;
    align-content: center;
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    font-weight: 400;
    line-height: 1.6;
    color: #6C6C6C;
    padding-block: clamp(2rem, 2vw, 2.4rem);
    padding-right: clamp(20px, 3vw, 40px);
    border-bottom: solid 1px #CCCCCC;
}
@media (max-width: 700px) {
    #profile .profile_term {
        border: none;
        padding-bottom: 0;
    }
}
#profile .profile_def {
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    font-weight: 400;
    line-height: 1.6;
    color: #0F2C3D;
    padding-block: clamp(2rem, 2vw, 2.4rem);
    border-bottom: solid 1px #CCCCCC;
}
#profile .profile_def span {
    display: inline-block;
}
@media (max-width: 700px) {
    #profile .profile_def {
        padding-top: 5px;
    }
}
#profile .profile_map {
    position: relative;
    width: 100%;
    height: 100%;
}
@media (max-width: 840px) {
    #profile .profile_map {
        aspect-ratio: 4/3;
    }
}
#profile .profile_map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#profile .history_list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: max-content 1fr;
    grid-template-columns: -webkit-max-content 1fr;
    grid-template-columns: max-content 1fr;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin-top: 64px;
}
@media (max-width: 840px) {
    #profile .history_list {
        margin-top: 32px;
    }
}
@media (max-width: 700px) {
    #profile .history_list {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
}
#profile .history_term {
    display: -ms-grid;
    display: grid;
    align-content: center;
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    font-weight: 400;
    line-height: 1.6;
    color: #6C6C6C;
    padding-block: clamp(2rem, 2vw, 2.4rem);
    padding-right: clamp(20px, 3vw, 40px);
    border-bottom: solid 1px #CCCCCC;
}
@media (max-width: 700px) {
    #profile .history_term {
        border: none;
        padding-bottom: 0;
    }
}
#profile .history_def {
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    font-weight: 400;
    line-height: 1.6;
    color: #0F2C3D;
    padding-block: clamp(2rem, 2vw, 2.4rem);
    border-bottom: solid 1px #CCCCCC;
}
#profile .history_def span {
    display: inline-block;
}
@media (max-width: 700px) {
    #profile .history_def {
        padding-top: 5px;
    }
}
#profile .history_current {
    margin-top: 1.5em;
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
}
#profile .history_current .current_year {
    font-weight: 400;
    line-height: 1.6;
    color: #6C6C6C;
}
#profile .history_current .current_txt {
    font-weight: 400;
    color: #0F2C3D;
}

/* ===============================================
    納入・取引実績
=============================================== */
#history {
    /* 沿革 */
}
#history .history_list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: max-content 1fr;
    grid-template-columns: -webkit-max-content 1fr;
    grid-template-columns: max-content 1fr;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin-top: 64px;
}
@media (max-width: 840px) {
    #history .history_list {
        margin-top: 32px;
    }
}
@media (max-width: 700px) {
    #history .history_list {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
}
#history .history_term {
    display: -ms-grid;
    display: grid;
    align-content: center;
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    font-weight: 400;
    line-height: 1.6;
    color: #6C6C6C;
    padding-block: clamp(2rem, 2vw, 2.4rem);
    padding-right: clamp(20px, 3vw, 40px);
    border-bottom: solid 1px #CCCCCC;
}
@media (max-width: 700px) {
    #history .history_term {
        border: none;
        padding-bottom: 0;
    }
}
#history .history_def {
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    font-weight: 400;
    line-height: 1.6;
    color: #0F2C3D;
    padding-block: clamp(2rem, 2vw, 2.4rem);
    border-bottom: solid 1px #CCCCCC;
}
#history .history_def span {
    display: inline-block;
}
@media (max-width: 700px) {
    #history .history_def {
        padding-top: 5px;
    }
}
#history .history_current {
    margin-top: 1.5em;
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
}
#history .history_current .current_year {
    font-weight: 400;
    line-height: 1.6;
    color: #6C6C6C;
}
#history .history_current .current_txt {
    font-weight: 400;
    color: #0F2C3D;
}

/* ===============================================
    採用情報
=============================================== */
#recruit .person_inner {
    display: -ms-grid;
    display: grid;
    row-gap: clamp(20px, 2vw, 24px);
    margin-top: clamp(20px, 3vw, 40px);
}
#recruit .person_txt {
    font-size: clamp(2rem, 2vw, 2.4rem);
    line-height: 2;
}
#recruit .person_img {
    width: 100%;
    height: auto;
    aspect-ratio: 1155/380;
    background-image: url(../img/08_recruit/person.jpg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    margin-top: clamp(20px, 3vw, 40px);
}
#recruit .recruitment {
    padding-bottom: clamp(80px, 12vw, 150px);
}
#recruit .recruitment_tab {
    margin-top: clamp(20px, 3vw, 40px);
}
#recruit .recruitment .tab_head {
    display: flex;
    gap: 20px 10px;
    flex-wrap: wrap;
}
#recruit .recruitment .tab_btn {
    position: relative;
    color: #19839C;
    font-size: clamp(1.6rem, 1.8vw, 2rem);
    line-height: 1;
    padding: 16px 10px;
    background-color: #E7F1F8;
    border: solid 1px #19839C;
    transition: none;
    width: calc((100% - 10px) / 2);
}
#recruit .recruitment .tab_btn.-active {
    color: #fff;
    background-color: #19839C;
}
#recruit .recruitment .tab_btn.-active:before {
    position: absolute;
    content: "";
    display: block;
    width: 18px;
    height: 11px;
    background-color: #19839C;
    -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    top: 100%;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
}
#recruit .recruitment .tab_panel {
    display: none;
}
#recruit .recruitment .tab_panel.-active {
    display: block;
}
#recruit .recruitment .tab_content {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: max-content 1fr;
    grid-template-columns: -webkit-max-content 1fr;
    grid-template-columns: max-content 1fr;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin-top: clamp(20px, 3vw, 40px);
}
@media (max-width: 700px) {
    #recruit .recruitment .tab_content {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
}
#recruit .recruitment .tab_term {
    display: -ms-grid;
    display: grid;
    align-content: center;
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    font-weight: 400;
    line-height: 1.6;
    color: #6C6C6C;
    padding-block: clamp(2rem, 2vw, 2.4rem);
    padding-right: clamp(20px, 3vw, 40px);
    border-bottom: solid 1px #CCCCCC;
}
@media (max-width: 700px) {
    #recruit .recruitment .tab_term {
        border: none;
        padding-bottom: 0;
    }
}
#recruit .recruitment .tab_def {
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    font-weight: 400;
    line-height: 1.6;
    color: #0F2C3D;
    padding-block: clamp(2rem, 2vw, 2.4rem);
    border-bottom: solid 1px #CCCCCC;
}
#recruit .recruitment .tab_def span {
    display: inline-block;
}
@media (max-width: 700px) {
    #recruit .recruitment .tab_def {
        padding-top: 5px;
    }
}
#recruit .recruitment .tab_inner {
    display: -ms-grid;
    display: grid;
    row-gap: 1lh;
}
#recruit .recruitment .tab_txt {
    font-weight: 400;
}
#recruit .recruitment_nopost {
    display: block;
    margin-top: 1em;
}

/*==================================================================================================
	お問い合わせ
==================================================================================================*/
.mailphp p {
    margin: 1em 0;
}
.mailphp .mailphp-header-inner,
.mailphp .mailphp-main-inner,
.mailphp .mailphp-footer-inner {
    max-width: 500px;
    margin: 0 auto;
    padding: 0 1em;
}
.mailphp .mailphp-header {
    text-align: center;
}
.mailphp .mailphp-header-title {
    display: inline-block;
    margin: 1.5em 0 1em;
    padding-bottom: 0.5em;
    border-bottom: 1px solid;
    font-size: 1.5em;
}
.mailphp .confirm-items,
.mailphp .error-items {
    margin: 1.5em 0;
}
.mailphp .confirm-item,
.mailphp .error-item {
    display: flex;
    margin-bottom: 1px;
}
.mailphp .confirm-item-label, .mailphp .confirm-item-body,
.mailphp .error-item-label,
.mailphp .error-item-body {
    padding: 1em;
}
.mailphp .confirm-item-label,
.mailphp .error-item-label {
    background-color: #eee;
    width: 8em;
}
.mailphp .confirm-item-body,
.mailphp .error-item-body {
    flex: 1;
}
.mailphp .error-item-label {
    background-color: #b12e2e;
    color: #fff;
}
.mailphp .error-item-body {
    color: #d00;
}
.mailphp .mailphp-main {
    flex-grow: 1;
    margin: 3em 0;
}
.mailphp .mailphp-footer {
    margin: 3em 0;
}
.mailphp .confirm-btns {
    display: flex;
    align-items: center;
    justify-content: center;
}
.mailphp .confirm-btn {
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    background-color: transparent;
    margin: 0 1em;
    border: none;
    border-radius: 0;
    font-family: inherit;
    font-size: 1.25em;
    text-decoration: none;
    cursor: pointer;
}
.mailphp .confirm-btn::-webkit-search-decoration {
    display: none;
}
.mailphp .confirm-btn:focus {
    outline-offset: -2px;
}
.mailphp .confirm-btn-submit {
    padding: 0.75em 3em;
    background-image: linear-gradient(#fff, #eee);
    border: 1px solid #eee;
    border-bottom: 1px solid #bbb;
    border-radius: 4px;
    color: #444;
}
.mailphp .confirm-btn-submit:hover {
    background-image: linear-gradient(#fff, #fafafa);
}

/*==================================================================================================
	プライバシーポリシー
==================================================================================================*/
#privacypolicy {
    --privacy_text_color: #000;
}
#privacypolicy .sec {
    padding-bottom: clamp(80px, 12vw, 150px);
}
#privacypolicy .sec_head {
    margin-top: 19px;
}
#privacypolicy .sec_head .txt {
    font-weight: 500;
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    color: var(--privacy_text_color);
}
#privacypolicy .sec_list {
    margin-top: 40px;
    display: -ms-grid;
    display: grid;
    row-gap: 40px;
}
#privacypolicy .sec_item {
    display: -ms-grid;
    display: grid;
    row-gap: 20px;
}
#privacypolicy .sec_item .ttl {
    font-size: clamp(2.4rem, 2vw, 2.8rem);
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0.05em;
}
#privacypolicy .sec_item .txt {
    font-weight: 500;
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    color: var(--privacy_text_color);
}

/*==================================================================================================
	お問い合わせ
==================================================================================================*/
#contact .contact {
    padding-bottom: clamp(80px, 12vw, 150px);
}
#contact .contact_form {
    background-color: #fff;
    padding: min(64px, 5%);
}
#contact .contact_form input {
    display: block;
    width: 100%;
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    padding: 12px 16px;
    border: solid 1px #D9D9D9;
    border-radius: 8px;
    margin-top: 8px;
}
#contact .contact_form input::-webkit-input-placeholder {
    color: #B3B3B3;
}
#contact .contact_form input::-moz-placeholder {
    color: #B3B3B3;
}
#contact .contact_form input::-ms-input-placeholder {
    color: #B3B3B3;
}
#contact .contact_form input::placeholder {
    color: #B3B3B3;
}
#contact .contact_form textarea {
    display: block;
    width: 100%;
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    padding: 12px 16px;
    border: solid 1px #D9D9D9;
    border-radius: 8px;
    margin-top: 8px;
    aspect-ratio: 1032/248;
}
@media (max-width: 700px) {
    #contact .contact_form textarea {
        aspect-ratio: 2/1;
    }
}
#contact .contact_form .cmn_btn .ja {
    -webkit-column-gap: 0.5em;
    -moz-column-gap: 0.5em;
    column-gap: 0.5em;
}
#contact .contact_form .cmn_btn .ja:after {
    padding-left: 0;
    transition: -webkit-transform 0.5s;
    transition: transform 0.5s;
    transition: transform 0.5s, -webkit-transform 0.5s;
    background-image: url(../img/00_cmn/icon_arrow_white.svg);
}
#contact .contact_form .cmn_btn:hover {
    opacity: 0.8;
}
#contact .contact_form .cmn_btn:hover .ja:after {
    -webkit-transform: translateX(0.5em);
    transform: translateX(0.5em);
}
#contact .contact .form_inner {
    display: -ms-grid;
    display: grid;
    row-gap: 24px;
}
#contact .contact .form_label {
    display: block;
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
}
#contact .contact .form_required {
    display: inline;
    color: #fff;
    font-weight: 900;
    font-size: 14px;
    background-color: #CF3E3E;
    padding: 4px 12px;
    margin-right: 12px;
}
#contact .contact .form_txt {
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    color: #0F2C3D;
    text-align: center;
    margin-top: clamp(32px, 5.2vw, 64px);
}
#contact .contact .form_link {
    display: inline-block;
    line-height: 1.2;
    border-bottom: 1px solid currentColor;
    transition: opacity 0.5s;
}
#contact .contact .form_link:hover {
    opacity: 0.8;
}
#contact .contact .form_btn {
    display: block;
    margin: 24px auto 0;
    font-size: clamp(2rem, 2vw, 2.4rem);
    line-height: 1;
    color: #fff;
    text-align: center;
    padding: 28px 32px;
    background-color: #19839C;
    border: none;
    width: min(382px, 100%);
}
@media (max-width: 700px) {
    #contact .contact .form_btn {
        padding: 16px 24px;
    }
}
#contact .contact .form_btn .ja {
    position: relative;
    justify-content: center;
    font-size: clamp(2rem, 2vw, 2.4rem);
    padding-right: 44px;
}
@media (max-width: 700px) {
    #contact .contact .form_btn .ja {
        font-size: 18px;
        padding-right: 20px;
    }
}
#contact .contact .form_btn .ja::after {
    position: absolute;
    width: 35px;
    height: 35px;
    top: 50%;
    right: 0;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
}
@media (max-width: 700px) {
    #contact .contact .form_btn .ja::after {
        width: 28px;
        height: 28px;
    }
}
#contact .contact .form_btn:hover .ja::after {
    -webkit-transform: translate(0.5em, -50%);
    transform: translate(0.5em, -50%);
}

/*==================================================================================================
	確認ページ
==================================================================================================*/
#confirm .contact {
    padding-bottom: clamp(80px, 12vw, 150px);
}
#confirm #formWrap {
    background-color: #fff;
    padding: min(64px, 5%);
}
#confirm .mailphp-header-title {
    font-size: clamp(1.6rem, 1.8vw, 2rem);
}
#confirm .mailphp-header-txt {
    font-size: clamp(1.6rem, 1.8vw, 2rem);
}
#confirm .formTable {
    margin-top: 24px;
}
#confirm .formTable tbody {
    display: -ms-grid;
    display: grid;
    width: 100%;
    row-gap: 12px;
}
#confirm .formTable tr {
    display: -ms-grid;
    display: grid;
}
#confirm .formTable th {
    display: flex;
    align-items: center;
    text-align: left;
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    font-weight: 500;
}
#confirm .formTable th:before {
    content: "必須";
    display: inline-block;
    color: #fff;
    font-weight: 900;
    font-size: 14px;
    background-color: #CF3E3E;
    padding: 2px 12px;
    margin-right: 12px;
}
#confirm .formTable td {
    font-size: clamp(1.6rem, 1.8vw, 1.8rem);
    font-weight: 500;
    padding: 12px 0;
}
#confirm .confirm-btns {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    -webkit-column-gap: 8px;
    -moz-column-gap: 8px;
    column-gap: 8px;
    max-width: 764px;
    margin-top: 24px;
}
#confirm .confirm_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    font-size: clamp(2rem, 2vw, 2.4rem);
    line-height: 1;
    color: #fff;
    text-align: center;
    padding: 28px 0;
    background-color: #19839C;
    border: none;
}
@media (max-width: 700px) {
    #confirm .confirm_btn {
        font-size: 16px;
        padding: 16px;
    }
}
#confirm .confirm_btn:hover {
    opacity: 0.8;
}
#confirm .confirm_btn .ja {
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-column-gap: 8px;
    -moz-column-gap: 8px;
    column-gap: 8px;
    position: relative;
}
#confirm .confirm_btn.-submit .ja {
    padding-right: 20px;
}
@media (max-width: 700px) {
    #confirm .confirm_btn.-submit .ja {
        padding-right: 25px;
    }
}
#confirm .confirm_btn.-submit .ja::after {
    position: absolute;
    display: inline-block;
    content: "";
    background-image: url(../img/00_cmn/icon_arrow_white.svg);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    width: 28px;
    height: 28px;
    top: 50%;
    right: -1.5em;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    transition: 0.5s -webkit-transform;
    transition: 0.5s transform;
    transition: 0.5s transform, 0.5s -webkit-transform;
}
@media (max-width: 700px) {
    #confirm .confirm_btn.-submit .ja::after {
        right: -0.5em;
    }
}
#confirm .confirm_btn.-submit:hover .ja:after {
    -webkit-transform: translate(1em, -50%);
    transform: translate(1em, -50%);
}
@media (max-width: 700px) {
    #confirm .confirm_btn.-submit:hover .ja:after {
        -webkit-transform: translate(0.5em, -50%);
        transform: translate(0.5em, -50%);
    }
}
#confirm .confirm_btn.-back {
    background-color: #aaa;
}
#confirm .confirm_btn.-back .ja {
    padding-left: 20px;
}
@media (max-width: 700px) {
    #confirm .confirm_btn.-back .ja {
        padding-left: 25px;
    }
}
#confirm .confirm_btn.-back .ja::before {
    position: absolute;
    display: inline-block;
    content: "";
    background-image: url(../img/00_cmn/icon_arrow_white.svg);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    width: 28px;
    height: 28px;
    top: 50%;
    left: -1.5em;
    transition: 0.5s -webkit-transform;
    transition: 0.5s transform;
    transition: 0.5s transform, 0.5s -webkit-transform;
    -webkit-transform: rotate(180deg) translate(0, 50%);
    transform: rotate(180deg) translate(0, 50%);
}
@media (max-width: 700px) {
    #confirm .confirm_btn.-back .ja::before {
        left: -0.5em;
    }
}
#confirm .confirm_btn.-back:hover .ja:before {
    -webkit-transform: rotate(180deg) translate(1em, 50%);
    transform: rotate(180deg) translate(1em, 50%);
}
@media (max-width: 700px) {
    #confirm .confirm_btn.-back:hover .ja:before {
        -webkit-transform: rotate(180deg) translate(0.5em, 50%);
        transform: rotate(180deg) translate(0.5em, 50%);
    }
}

/*==================================================================================================
	404,サンクスページ
==================================================================================================*/
#error .sec,
#thanks .sec {
    padding-bottom: clamp(80px, 12vw, 150px);
}
#error .sec_ttl,
#thanks .sec_ttl {
    font-size: clamp(1.6rem, 1.8vw, 2rem);
    font-weight: 500;
    margin-bottom: 0.5em;
}
#error .sec_btn,
#thanks .sec_btn {
    margin-top: clamp(20px, 3vw, 40px);
}
#error .sec_btn .ja,
#thanks .sec_btn .ja {
    display: flex;
    align-items: center;
    font-size: clamp(1.6rem, 1.8vw, 2rem);
}
#error .sec_btn .ja:after,
#thanks .sec_btn .ja:after {
    content: "";
    background-image: url(../img/00_cmn/icon_arrow.svg);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    width: 28px;
    height: 28px;
    display: block;
    padding-left: 1em;
    transition: 0.5s padding-left;
}
#error .sec_btn:hover .ja:after,
#thanks .sec_btn:hover .ja:after {
    padding-left: 2em;
}