@charset "UTF-8";
/*==========================================================================
	TOP
==========================================================================*/
.top .mv {
    width: 100%;
    height: 100svh;
    position: relative;
}
.top .mv_line {
    position: absolute;
}
.top .mv_line-h {
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left;
    transform-origin: left;
    background: #999999;
}
.top .mv_line-v {
    top: 0;
    left: 50%;
    width: 1px;
    height: 100%;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: top;
    transform-origin: top;
    background-image: linear-gradient(180deg, #999999, #FFF);
}
.top .mv_inner {
    height: 100%;
    width: 100%;
    margin: 0 auto;
    padding: 40px 5%;
}
@media (max-width: 540px) {
    .top .mv_inner {
        padding-bottom: 20px;
    }
}
.top .mv_hero {
    display: flex;
    height: 100%;
    align-items: end;
    justify-content: space-between;
    position: relative;
    z-index: 2;
}
@media (max-width: 1024px) {
    .top .mv_hero {
        flex-direction: column-reverse;
        align-items: flex-start;
        padding-top: 70px;
    }
}
@media (max-width: 840px) {
    .top .mv_hero {
        padding-top: 60px;
    }
}
@media (max-width: 540px) {
    .top .mv_hero {
        padding-top: 40px;
    }
}
.top .mv_hero_main .hero_en .char {
    opacity: 0;
    -webkit-filter: blur(4px);
    filter: blur(4px);
    display: inline-block;
    font-size: clamp(2.5em, 7vw, 6.5em);
    font-family: "Figtree", sans-serif;
    line-height: 1.5;
    font-weight: 600;
    line-height: 1em;
}
.top .mv_hero_main .hero_en .word {
    margin-right: 1em;
}
@media (max-width: 1024px) {
    .top .mv_hero_main .hero_en .word {
        margin-right: 0.5em;
    }
}
.top .mv_hero_main .hero_ja {
    font-size: 1.5em;
    font-weight: 400;
    margin-top: 1em;
    opacity: 0;
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
}
@media (max-width: 700px) {
    .top .mv_hero_main .hero_ja {
        font-size: 1.25em;
    }
}
.top .mv_hero_sub {
    opacity: 0;
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
}
.top .mv_hero_sub p {
    font-size: 1em;
    font-family: "Figtree", sans-serif;
    line-height: 1.5;
    text-align: right;
    line-height: 1.25em;
}
@media (max-width: 1024px) {
    .top .mv_hero_sub p {
        text-align: left;
    }
}
.top .about {
    text-align: center;
    background-image: linear-gradient(#ffffff, #d9d9d9);
    padding: 50px 5% 100px;
}
.top .about .cmn_secttl .en {
    color: #006934;
    font-size: 3em;
    font-weight: 600;
}
@media (max-width: 700px) {
    .top .about .cmn_secttl .en {
        font-size: 2em;
    }
}
.top .about .txt {
    font-size: 1.2em;
}
@media (max-width: 700px) {
    .top .about .txt {
        font-size: 1em;
    }
}
@media (min-width: 1025px) {
    .top .service .cmn_inner {
        display: flex;
    }
}
@media (min-width: 1025px) {
    .top .service .cmn_secttl {
        width: 30%;
        padding-top: 30px;
    }
}
@media (min-width: 1025px) {
    .top .service_list {
        width: 70%;
    }
}
.top .service_list {
    counter-reset: number;
}
.top .service_item {
    position: relative;
    border-bottom: solid 0.5px #999999;
    counter-increment: number;
}
.top .service_item::before {
    content: counter(number, decimal-leading-zero);
    position: absolute;
    left: 20px;
    top: 35px;
    color: #006934;
    font-size: 2em;
    font-family: "Figtree", sans-serif;
    line-height: 1.5;
    pointer-events: none;
}
@media (max-width: 540px) {
    .top .service_item::before {
        left: 5px;
        top: 16px;
        font-size: 1.5em;
    }
}
.top .service_item a {
    display: block;
    padding: 40px 20px 40px 90px;
    transition: all 0.4s;
}
@media (max-width: 540px) {
    .top .service_item a {
        padding: 20px 10px 20px 40px;
    }
}
.top .service_item a:hover {
    background-color: #f5f5f5;
    padding: 40px 20px 70px 90px;
}
.top .service_item a:hover .ttl .en {
    font-size: 2.4em;
}
.top .service_item .ttl {
    margin-bottom: 20px;
    display: flex;
    flex-direction: column;
    color: #006934;
}
.top .service_item .ttl .en {
    font-size: 2em;
    font-family: "Figtree", sans-serif;
    line-height: 1.5;
    line-height: 1.25;
    transition: all 0.3s;
}
@media (max-width: 540px) {
    .top .service_item .ttl .en {
        font-size: 1.5em;
    }
}
.top .service_item .txt:not(:first-of-type) {
    margin-top: 20px;
}
@media (min-width: 1025px) {
    .top .projects .cmn_inner {
        display: flex;
    }
}
@media (min-width: 1025px) {
    .top .projects .cmn_secttl {
        width: 30%;
    }
}
@media (min-width: 1025px) {
    .top .projects_body {
        width: 70%;
    }
}
.top .projects_event {
    margin-bottom: 30px;
}
.top .projects_list {
    gap: 60px;
}
@media (max-width: 1024px) {
    .top .projects_list {
        gap: 15px;
    }
}
.top .projects_item {
    width: calc(50% - 30px);
}
@media (max-width: 1024px) {
    .top .projects_item {
        width: calc(50% - 7.5px);
    }
}

.projects .groupttl {
    font-size: 2em;
    font-family: "Figtree", sans-serif;
    line-height: 1.5;
    color: #006934;
}
@media (max-width: 540px) {
    .projects .groupttl {
        font-size: 1.5em;
    }
}
.projects_list {
    margin: 20px 0;
    display: flex;
    flex-wrap: wrap;
}
.projects_list .projects_thumb {
    aspect-ratio: 3/2;
    overflow: hidden;
}
.projects_list .projects_thumb img {
    display: block;
    -o-object-fit: cover;
    object-fit: cover;
    transition: all 0.4s;
}
.projects_list .projects_ttl {
    position: relative;
    margin-top: 0.75em;
    margin-bottom: 1em;
}
.projects_list .projects_ttl::after {
    content: "";
    position: absolute;
    bottom: -1em;
    left: 0;
    width: 2em;
    height: 2px;
    background-color: #006934;
    transition: all 0.3s;
}
@media (max-width: 540px) {
    .projects_list .projects_ttl::after {
        bottom: -0.5em;
        width: 1.5em;
        height: 1.5px;
    }
}
.projects_link:hover .projects_thumb img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
}
.projects_link:hover .projects_ttl::after {
    width: 5em;
}

/*==============================================
	ABOUT
=================================================*/
@media (min-width: 841px) {
    #about .about .cmn_inner {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
    }
}
#about .about .cmn_inner .subtxt {
    font-size: 0.85em;
    font-family: "Figtree", sans-serif;
    line-height: 1.5;
    text-align: right;
    line-height: 1.25em;
    color: #999999;
}
@media (max-width: 840px) {
    #about .about .cmn_inner .subtxt {
        text-align: left;
        margin-top: 60px;
    }
}
@media (min-width: 1025px) {
    #about .profile .cmn_inner {
        display: flex;
    }
}
@media (min-width: 1025px) {
    #about .profile .cmn_secttl {
        width: 30%;
    }
}
@media (min-width: 1025px) {
    #about .profile .cmn_data {
        width: 70%;
    }
}

/*=========================================================
	SERVICE
==========================================================*/
.service_catch, .service_lead, .service_txt {
    overflow: hidden;
}
.service_catch span, .service_lead span, .service_txt span {
    display: block;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
}
.service_catch {
    font-size: 1.75em;
    margin-bottom: 40px;
}
.service_catch span {
    font-weight: 500;
}
.service_lead {
    font-size: 1.25em;
    margin-bottom: 70px;
}
.service_lead span {
    font-weight: 500;
}
.service_txt {
    margin: 30px 0;
}

@media (min-width: 1025px) {
    .flow_flex {
        display: flex;
        align-items: flex-start;
    }
}
@media (min-width: 1025px) {
    .flow_imgs {
        width: 35%;
        aspect-ratio: 4/3;
        position: sticky;
        top: 20px;
    }
}
@media (max-width: 1024px) {
    .flow_imgs {
        display: none;
    }
}
@media (min-width: 1025px) {
    .flow_imgs_inner {
        position: relative;
        height: 200px;
    }
}
.flow_img {
    -webkit-transform: scale(1.03);
    transform: scale(1.03);
    opacity: 0;
    transition: opacity 0.6s, -webkit-transform 1s;
    transition: opacity 0.6s, transform 1s;
    transition: opacity 0.6s, transform 1s, -webkit-transform 1s;
    position: absolute;
    inset: 0;
}
.flow_img.is-active {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
}
@media (min-width: 1025px) {
    .flow_body {
        width: 65%;
    }
}
.flow_list {
    counter-reset: step;
    min-height: 120vh;
}
.flow_item {
    border-bottom: solid 0.5px #999999;
    padding: 100px 15px 70px;
    position: relative;
    counter-increment: step;
}
@media (min-width: 1025px) {
    .flow_item {
        -webkit-transform: translateY(1rem);
        transform: translateY(1rem);
        transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
        transition: opacity 0.8s ease, transform 0.8s ease;
        transition: opacity 0.8s ease, transform 0.8s ease, -webkit-transform 0.8s ease;
        opacity: 0.3;
    }
}
@media (max-width: 1024px) {
    .flow_item {
        padding: 50px 10px;
    }
}
.flow_item.is-active {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}
.flow_item::before {
    content: "STEP " counter(step, decimal-leading-zero);
    position: absolute;
    left: 15px;
    top: 60px;
    color: #006934;
    font-size: 1.25em;
    font-family: "Figtree", sans-serif;
    line-height: 1.5;
}
@media (max-width: 540px) {
    .flow_item::before {
        left: 10px;
        top: 20px;
        font-size: 1.5em;
    }
}
.flow_item .ttl {
    font-size: 1.5em;
    color: #006934;
    font-weight: 500;
    margin-bottom: 30px;
}
@media (max-width: 1024px) {
    .flow_item .ttl {
        margin-bottom: 15px;
    }
}
.flow_item .subttl {
    margin: 20px 0 10px;
    font-weight: 500;
}
@media (min-width: 1025px) {
    .flow_img_sp {
        display: none;
    }
}
@media (max-width: 1024px) {
    .flow_img_sp {
        max-width: 480px;
        margin: 0 auto;
    }
}

.projects_btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    border: solid 1px #1a1a1a;
    width: 100%;
    height: 200px;
    max-width: 600px;
    margin: 0 auto;
}
.projects_btn a::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #f2f2f2;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left;
    transform-origin: left;
    transition: -webkit-transform 0.4s ease;
    transition: transform 0.4s ease;
    transition: transform 0.4s ease, -webkit-transform 0.4s ease;
}
.projects_btn a:hover {
    border-color: #f2f2f2;
}
.projects_btn a:hover::before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}
.projects_btn a .txt {
    font-size: 2.375em;
    font-family: "Figtree", sans-serif;
    line-height: 1.5;
    z-index: 1;
}
.projects_btn a .arrow {
    position: absolute;
    top: 50%;
    right: 30px;
    width: 2.5rem;
    height: 1.5px;
    background: currentColor;
    transition: -webkit-transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), -webkit-transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
    -webkit-transform: translateX(-7px);
    transform: translateX(-7px);
}
.projects_btn a .arrow::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 1rem;
    height: 1rem;
    border-top: 1.5px solid currentColor;
    border-right: 1.5px solid currentColor;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
}

/*========================================================
	SCENT
=========================================================*/
#scent .features_list {
    counter-reset: number;
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    padding-top: 30px;
}
@media (max-width: 700px) {
    #scent .features_list {
        gap: 20px;
        padding-top: 20px;
    }
}
#scent .features_item {
    counter-increment: number;
    position: relative;
    flex: 1 1 300px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
    padding: 40px 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
@media (max-width: 700px) {
    #scent .features_item {
        padding: 30px 20px;
    }
}
#scent .features_item::before {
    content: counter(number, decimal-leading-zero);
    position: absolute;
    left: 5px;
    top: -35px;
    color: #999999;
    font-size: 3em;
    font-family: "Figtree", sans-serif;
    line-height: 1.5;
}
@media (max-width: 700px) {
    #scent .features_item::before {
        font-size: 2.5em;
        top: -25px;
    }
}
#scent .features_item .ttl {
    font-size: 1.5em;
    text-align: center;
    padding-bottom: 0.75em;
    margin-bottom: 1em;
    position: relative;
}
@media (max-width: 840px) {
    #scent .features_item .ttl {
        font-size: 1.25em;
    }
}
#scent .features_item .ttl::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 55px;
    height: 2.5px;
    background-color: #006934;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
}
#scent .scent_btns_list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
#scent .scent_btns_list a {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: relative;
    border: solid 1px #1a1a1a;
    width: 100%;
    height: 300px;
    margin: 0 auto;
    flex: 1 1 380px;
}
@media (max-width: 840px) {
    #scent .scent_btns_list a {
        height: 220px;
    }
}
@media (max-width: 540px) {
    #scent .scent_btns_list a {
        height: 150px;
    }
}
#scent .scent_btns_list a::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #f2f2f2;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left;
    transform-origin: left;
    transition: -webkit-transform 0.5s ease;
    transition: transform 0.5s ease;
    transition: transform 0.5s ease, -webkit-transform 0.5s ease;
}
#scent .scent_btns_list a:hover {
    border-color: #f2f2f2;
}
#scent .scent_btns_list a:hover::before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}
#scent .scent_btns_list a:hover .arrow {
    -webkit-transform: translateX(4px);
    transform: translateX(4px);
}
#scent .scent_btns_list a .txt_en {
    font-size: 2em;
    font-family: "Figtree", sans-serif;
    line-height: 1.5;
    z-index: 1;
}
@media (max-width: 700px) {
    #scent .scent_btns_list a .txt_en {
        font-size: 1.5em;
    }
}
#scent .scent_btns_list a .txt_ja {
    font-size: 1.5em;
    z-index: 1;
}
@media (max-width: 700px) {
    #scent .scent_btns_list a .txt_ja {
        font-size: 1.25em;
    }
}
#scent .scent_btns_list a .arrow {
    position: absolute;
    top: 50%;
    right: 30px;
    width: 2.5rem;
    height: 1.5px;
    background: currentColor;
    transition: -webkit-transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), -webkit-transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
    -webkit-transform: translateX(-7px);
    transform: translateX(-7px);
}
#scent .scent_btns_list a .arrow::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 1rem;
    height: 1rem;
    border-top: 1.5px solid currentColor;
    border-right: 1.5px solid currentColor;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
}

/*==========================================================
	SCENT - SPATIAL
==========================================================*/
#spatial .what {
    position: relative;
    overflow: hidden;
    color: #FFF;
    padding-top: 100px;
    padding-bottom: 100px;
    background-color: #4d4d4d;
}
@media (max-width: 700px) {
    #spatial .what {
        padding-top: 50vw;
    }
}
#spatial .what::before {
    content: "";
    position: absolute;
    inset: 0;
    background: url("../img/scent/spatial_bg_pc.jpg") center/cover no-repeat;
}
@media (min-width: 701px) {
    #spatial .what::before {
        background-attachment: fixed;
    }
}
@media (max-width: 700px) {
    #spatial .what::before {
        background: url(../img/scent/spatial_bg_sp.jpg) top/contain no-repeat;
    }
}
#spatial .what .en, #spatial .what .ja {
    color: #FFF;
}
@media (min-width: 841px) {
    #spatial .what_body {
        width: max(50%, 740px);
    }
}
#spatial .what_body_list {
    margin: 60px 0 80px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px 30px;
}
@media (min-width: 701px) {
    #spatial .what_body_list {
        padding-right: 30px;
    }
}
@media (max-width: 700px) {
    #spatial .what_body_list {
        gap: 10px 50%;
    }
}
@media (max-width: 540px) {
    #spatial .what_body_list {
        margin: 40px 0 60px;
    }
}
#spatial .what_body_item {
    border-bottom: solid 1px;
}
@media (min-width: 701px) {
    #spatial .what_body_item {
        width: calc((100% - 30px) / 2);
    }
    #spatial .what_body_item:nth-child(n+3) {
        -webkit-transform: translateX(30px);
        transform: translateX(30px);
    }
}
#spatial .what_body_item .num {
    font-size: 2em;
    font-family: "Figtree", sans-serif;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.3);
    font-weight: 300;
    margin-right: 5px;
}
#spatial .what_body .txt {
    margin-top: 70px;
}
@media (max-width: 540px) {
    #spatial .what_body .txt {
        margin-top: 50px;
    }
}

/*==========================================================
	SCENT - EVENT
==========================================================*/
#eventproduction .case {
    color: #FFF;
    background-color: #4d4d4d;
}
#eventproduction .case_body {
    position: relative;
    padding: 100px 5%;
}
@media (max-width: 700px) {
    #eventproduction .case_body {
        padding: 70px 5%;
    }
}
#eventproduction .case_body::before {
    content: "";
    position: absolute;
    inset: 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
@media (min-width: 701px) {
    #eventproduction .case_body::before {
        background-attachment: fixed;
    }
}
#eventproduction .case_body.-wedding::before {
    background-image: url("../img/scent/eventbg1_pc.jpg");
}
@media (max-width: 700px) {
    #eventproduction .case_body.-wedding::before {
        background-image: url("../img/scent/eventbg1_sp.jpg");
    }
}
#eventproduction .case_body.-expos::before {
    background-image: url("../img/scent/eventbg2_pc.jpg");
}
@media (max-width: 700px) {
    #eventproduction .case_body.-expos::before {
        background-image: url("../img/scent/eventbg2_sp.jpg");
    }
}
#eventproduction .case_body:nth-child(odd) .case_inner {
    margin-right: auto;
}
#eventproduction .case_body:nth-child(even) .case_inner {
    margin-left: auto;
}
#eventproduction .case_inner {
    max-width: 840px;
    position: relative;
}
#eventproduction .case_ttl {
    color: #FFF;
    display: flex;
    flex-direction: column;
    margin-bottom: 50px;
}
#eventproduction .case_ttl .en {
    font-size: 1em;
    font-family: "Figtree", sans-serif;
    line-height: 1.5;
    font-weight: 300;
    opacity: 0.3;
}
#eventproduction .case_ttl .ja {
    font-size: 1.5em;
    line-height: 1.25;
}
#eventproduction .who_list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 30px;
    margin-top: 40px;
}
#eventproduction .who_item {
    border: solid 1px #999999;
    padding: 1em;
}

/*==========================================================
	PROJECTS
==========================================================*/
#projects .projects_list {
    gap: 30px;
}
@media (max-width: 540px) {
    #projects .projects_list {
        gap: 20px 10px;
    }
}
#projects .projects_item {
    width: calc((100% - 60px) / 3);
}
@media (max-width: 1024px) {
    #projects .projects_item {
        width: calc((100% - 30px) / 2);
    }
}
@media (max-width: 540px) {
    #projects .projects_item {
        width: calc((100% - 10px) / 2);
    }
}

/*==========================================================
	archive
==========================================================*/
#archive .archive.-works .works_about .ttl {
    color: #1a1a1a;
}

/*==========================================================
	single
==========================================================*/
.article {
    padding-top: 150px;
    margin-top: 0;
}
.article.-projects .article_head {
    margin-bottom: 20px;
}
.article.-projects .article_head .category {
    font-size: 1em;
    font-family: "Figtree", sans-serif;
    line-height: 1.5;
    color: #006934;
    border: solid 1px #006934;
    padding: 0.25em 0.5em;
}
.article.-projects .article_head .ttl {
    font-size: 1.5em;
    margin-top: 0.75em;
}
.article_content {
    margin-bottom: 50px;
}
.article_content .article_projects_data {
    margin-bottom: 40px;
}
.article_content .article_projects_item {
    display: flex;
    border-bottom: solid 1px #999999;
    padding: 1em 0.5em;
}
@media (max-width: 700px) {
    .article_content .article_projects_item {
        flex-direction: column;
        padding: 0.5em;
    }
}
@media (min-width: 701px) {
    .article_content .article_projects_item .ttl {
        width: 10em;
    }
}
@media (max-width: 700px) {
    .article_content .article_projects_item .ttl {
        margin-bottom: 0.25em;
    }
}
@media (min-width: 701px) {
    .article_content .article_projects_item .txt {
        width: calc(100% - 10em);
    }
}
.article_content {
    word-break: break-all;
    line-height: 1.75;
}
.article_content .wp-block-image, .article_content .wp-block-gallery, .article_content .wp-block-details {
    margin: 1em auto;
}
.article_content .wp-block-pullquote {
    padding: 2em 0;
}
.article_content .wp-block-preformatted {
    font-family: YakuHanJPs, "Noto Sans JP", "Hiragino Sans", "Yu Gothic", "Meiryo", sans-serif;
}
.article_content .wp-block-details summary {
    position: relative;
    display: inline-block;
    padding-right: 1.5em;
}
.article_content .wp-block-details summary::after {
    content: "\f0140";
    position: absolute;
    font-family: "icomoon";
    transition: all 0.3s;
    top: 50%;
    right: 0;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
}
.article_content .wp-block-details summary:hover::after {
    top: 60%;
}
.article_content p {
    margin: 1.5em 0;
}
.article_content .wp-block-heading {
    margin: 2.5em auto 0;
    line-height: 1.5;
}
.article_content .wp-block-heading:first-child {
    margin-top: 0;
}
.article_content h1, .article_content h2, .article_content h3, .article_content h4, .article_content h5, .article_content h6 {
    font-weight: 400;
}
.article_content h1, .article_content h2 {
    font-size: 1.6em;
    color: #006934;
}
.article_content h3 {
    font-size: 1.5em;
}
.article_content h4 {
    font-size: 1.4em;
}
.article_content h5 {
    font-size: 1.25em;
}
.article_content h6 {
    font-size: 1.15em;
}
.article_content ul, .article_content ol {
    margin: 1em 0;
    padding-left: 1.8em;
}
.article_content ul {
    list-style: disc;
}
.article_content ol {
    list-style: decimal;
}
.article_content blockquote {
    background-color: #f2f2f2;
    padding: 1em 2em;
    font-style: italic;
}
.article_content blockquote p {
    margin: 0 0 0.5em;
}
.article_content blockquote cite {
    font-size: 0.85em;
}
.article_content figcaption {
    font-size: 0.85em;
    text-align: center;
    color: #999999;
}
.article_content a {
    text-decoration: underline;
    display: inline-block;
}

/*==================================================================================================
	プライバシーポリシー
==================================================================================================*/
#privacypolicy .sec_item {
    margin: 30px auto;
}
#privacypolicy .sec_item .ttl {
    position: relative;
    padding-left: 0.5em;
    margin-bottom: 0.5em;
}
#privacypolicy .sec_item .ttl::after {
    content: "";
    position: absolute;
    top: 2px;
    left: 0;
    background-color: #006934;
    height: 1em;
    width: 3px;
}
/*==================================================================================================
	404,サンクスページ
==================================================================================================*/
#error .sec_ttl,
#thanks .sec_ttl {
    text-align: center;
    font-size: 1.25em;
    margin-bottom: 1em;
}
@media (max-width: 700px) {
    #error .sec_ttl,
    #thanks .sec_ttl {
        text-align: left;
    }
}
#error .sec_txt,
#thanks .sec_txt {
    text-align: center;
    margin-bottom: 50px;
}
@media (max-width: 700px) {
    #error .sec_txt,
    #thanks .sec_txt {
        text-align: left;
    }
}

/*=================================================================
	確認画面
==================================================================*/
.confirm .cmn_ttl {
    font-size: 1.25em;
    margin-bottom: 2em;
}
@media (max-width: 540px) {
    .confirm .cmn_ttl {
        margin-bottom: 1em;
    }
}
.confirm_item {
    display: flex;
    width: 100%;
    border-bottom: solid 1px #999999;
}
@media (max-width: 540px) {
    .confirm_item {
        flex-direction: column;
    }
}
.confirm_item .label {
    width: 12em;
    text-align: left;
    padding: 1em;
    font-weight: 500;
    color: #999999;
}
@media (max-width: 540px) {
    .confirm_item .label {
        padding-bottom: 0;
        width: 100%;
    }
}
.confirm_item_txt {
    width: calc(100% - 12em);
    padding: 1em;
}
@media (max-width: 540px) {
    .confirm_item_txt {
        padding: 0 1em 0.75em;
        width: 100%;
    }
}