/*
Theme Name: habakiri Child
Theme URI: http://habakiri.2inc.org/en/
Template: habakiri
Author: inc2734
Author URI: http://2inc.org
Description: Habakiri is the simple theme based on Bootstrap 3. This theme's goal is to create a responsive, bootstrap based WordPress theme quickly. The design is very simple, easy to create of child theme. Features are, 100% responsive layouts, the Glyphicons, Genericons, Font Awesome icons, 7 page templates, 8 header design patterns, many color settings, a lot of hooks, related posts, minified CSS and JavaScript, Sass and PHP Class in functions.php.
Tags: white,fixed-layout,fluid-layout,responsive-layout,one-column,two-columns,left-sidebar,right-sidebar,editor-style,sticky-post,microformats,featured-images,custom-colors,custom-menu,custom-background,custom-colors
Version: 2.5.2.1692343699
Updated: 2023-08-18 16:28:19

*/


/* .............................

    index

 ............................. */
/*
    base

    header.php
        nav

    page.php

    page-home.php
        mv
        news
        greeting

    page-about.php
        about
        access

    archive-business.php
        business
        business-all
        
    single-business.php

    page-lawyer.php
        lawyer-partner
        lawyer-counsel
        lawyer-associate

    page-lawyer-araki.php,
    page-lawyer-kadomatsu.php,
    page-lawyer-abe.php

    page-recruit.php
        recruit
        recruit-all

    page-recruit-sihousyusyusei.php
    page-recruit-lawyer.php
    page-recruit-intership.php

    page-faq.php

    page-inquiry.php

    page-inquiry-confirm.php

    page-inquiry-complete.php

    page-privacy.php

    page-news_blog_all.php

    single-news.php

    404.php

    footer

 */

/*------------------------------
   base
 -------------------------------*/
:root {
    --main-color: #a776ad;
    --sub-color: #BD98C1;
    --link: #385898;
    --bg01: #F6F6F6;
    --bg02: #E9E9E9;
    --gray01: #707070;
    --gray02: #B7B7B7;
    --default-txt-color: #000000;
    --white: #fff;
    --red: #FF0000;
}

html {
    font-size: 62.5%;
    scroll-behavior: smooth;
}

body {
    font-family: "Noto Serif JP", serif;
    color: var(--default-txt-color);
    line-height: normal;
}

h1 {
    font-size: 3.0rem;
}

h2 {
    font-size: 25px;
    margin: 0 0 100px;
    font-weight: normal;
}

h3 {
    font-size: 2.2rem;
}

p {
    font-size: 1.6rem;
    margin: 0;
}

span {
    font-size: 1.6rem;
}

a {
    font-size: 1.6rem;
}

a:hover {
    text-decoration: none;
    color: var(--main-color) !important;
}

ul {
    margin: 0;
    padding-left: 0;
    list-style: none;
}

li {
    list-style: none;
}

img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.view_pc {
    display: block;
}

.view_sp {
    display: none;
}

.home_inner {
    width: 70%;
    margin: 0 auto;
    padding: 100px 0;
}

.lower_inner {
    width: 70%;
    margin: 0 auto;
}


[lang=en] a.view_ja {
    display: none !important;
}

[lang=auto] a.view_en,
[lang=ja] a.view_en {
    display: none !important;
}

.breadcrumbs {
    margin: 20px auto 0;
    width: 80%;
    color: var(--default-txt-color);
}

/*btn*/
a.more_btn {
    display: block;
    position: relative;
    color: var(--default-txt-color);
    border-bottom: solid 1px var(--default-txt-color);
    padding: 0 20px 10px 0;
    margin: 0 auto;
    font-size: 20px;
}

a.more_btn:hover {
    color: var(--main-color) !important;
    border-bottom: solid 1px var(--main-color);
}

a.more_btn::after {
    position: absolute;
    right: 5px;
    top: 10px;
    display: block;
    content: "";
    width: 11px;
    height: 11px;
    border-right: 1px solid var(--default-txt-color);
    border-top: 1px solid var(--default-txt-color);
    transform: rotate(45deg);
}


a.more_btn:hover::after {
    border-right: 1px solid var(--main-color) !important;
    border-top: 1px solid var(--main-color) !important;
}


@media screen and (max-width: 768px) {
    .view_pc {
        display: none;
    }

    .view_sp {
        display: block;
    }

    h1 {
        font-size: 2.4rem;
    }

    h2 {
        font-size: 2.2rem;
        margin: 0 0 50px;
    }

    h3 {
        font-size: 1.8rem;
    }

    p {
        font-size: 1.6rem;
        margin: 0;
    }

    span {
        font-size: 1.6rem;
    }

    a {
        font-size: 1.6rem;
    }

    .home_inner {
        width: 80%;
        padding: 50px 0;
    }

    .lower_inner {
        width: 80%;
        margin: 0 auto;
    }

}

/* =============================

    header.php

  ==============================*/
#header-wrapper.header {
    width: 100%;
}

.site-branding {
    padding: 5px 0;
}

#header-wrapper .header__content {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 90%;
    margin: 0 0 0 auto;
}

#header-wrapper .container {
    width: 100%;
    padding: 0;
}

#header-wrapper .heading_link {
    margin: 0 30px 0 0;
    font-size: 20px;
    width: 250px;
}

#header-wrapper .site-branding__heading {
    display: none;
}

.col-xs-10.col-md-4.header__col {
    width: fit-content;
    margin: 0 auto 0 0;
}

#header-wrapper .site-branding a {
    font-size: 20px;
}

.sub-page-contents {
    padding-bottom: 15vh;
}

#container {
    min-height: 100vh;
    position: relative;
    box-sizing: border-box;
}

/*------------------------------
   page-header
 -------------------------------*/
.page-header {
    position: relative;
    margin-top: 50px;
    width: 80%;
    margin: 0 auto;
    border-radius: 10px;
    padding: 0;
}

.page-header img {
    border-radius: 10px;
    height: 30vh;
}



@media screen and (max-width: 1222px) {
    #header-wrapper .header__content {
        margin: 30px auto;
        width: 80%;
    }
}

@media screen and (max-width: 937px) {
    #header-wrapper .header__content {
        width: 90%;
    }
}

@media screen and (max-width: 768px) {
    #header-wrapper .header__content {
        width: 100%;
        justify-content: space-between;
        position: fixed;
        z-index: 99;
        background: var(--white);
        padding: 50px 5%;
        margin: 0;
        height: 50px;
        width: 100%;
        top: 0;
    }

    #header-wrapper .heading_link {
        margin-left: 0px;
        width: 200px;
    }

    .col-xs-2 {
        width: auto;
    }

    .page-header {
        margin-top: 100px;
    }
}



/*------------------------------
   nav
 -------------------------------*/
#header-wrapper label {
    display: none;
}

#header-wrapper nav ul {
    display: flex;
    justify-content: space-around;
    align-items: center;
}

#header-wrapper nav ul li {
    text-align: center;
    width: 100%;
}

#header-wrapper nav ul li:last-child {
    background: var(--main-color);
    padding: 30px 15px;
}

#header-wrapper nav ul li:last-child a {
    color: var(--white);
}

#header-wrapper nav ul li:last-child:hover {
    background: var(--white);
    border: solid 1px var(--main-color);
    color: var(--main-color);
}

#header-wrapper nav ul li:last-child:hover a {
    color: var(--main-color);
}


#header-wrapper nav ul li a {
    font-size: 1.6rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    color: var(--default-txt-color);
}


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

    #header-wrapper nav ul li:last-child {
        background: none;
        padding: 0;
        border-top: 1px solid #878787;
    }

    #header-wrapper nav ul li:last-child a {
        color: var(--default-txt-color);
    }

    #header-wrapper nav ul li:last-child:hover {
        background: none;
        border: none;
        border-top: 1px solid #878787;
    }

    #header-wrapper nav ul li:last-child:hover a {
        color: var(--main-color);
    }

}


/*====================================

   page.php

==================================== */

#page-wrapper {
    margin-bottom: 100px;
}

.page_ttl {
    text-align: center;
    margin: 100px 0 50px;
}

@media screen and (max-width: 768px) {
    #page-wrapper {
        margin-bottom: 50px;
    }

    .page_ttl {
        text-align: center;
        margin: 50px 0 50px;
    }

    #page-wrapper a {
        font-size: inherit;
        overflow-wrap: break-word;
    }

    #page-wrapper #cmplz-cookies-overview .cmplz-dropdown summary h3,
    #cmplz-document .cmplz-dropdown summary h3,
    .editor-styles-wrapper .cmplz-unlinked-mode .cmplz-dropdown summary h3 {
        font-size: 13px;
    }
}

/* =============================

    page-home.php

  ==============================*/
/*------------------------------
   mv
 -------------------------------*/

.splide__arrow svg {
    fill: var(--white) !important;
    height: 50px !important;
    width: 50px !important;
}

.splide__arrow {
    background: none !important;
    opacity: 1 !important;
}

#header-wrapper .splide__arrow--prev {
    left: 12% !important;
}

#header-wrapper .splide__arrow--next {
    right: 12% !important;
}

.mv_wrap {
    position: relative;
}

.mv_wrap .mv_contain_pic {
    position: relative;
}

.mv_wrap .mv_contain_pic::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: var(--gray01);
    mix-blend-mode: multiply;
    border-radius: 10px;
    margin: 0 auto;
}

.mv_contain_pic img {
    width: 100%;
    height: 500px;
    border-radius: 10px;
}

.mv_wrap .mv_contain_txt {
    position: absolute;
    top: 0;
    margin: 40px;
    width: 70%;
    font-size: 25px;
    font-weight: normal;
    letter-spacing: 0.5rem;
    color: var(--white);
}

.mv_box {
    position: absolute;
    z-index: 2;
    top: 0;
    right: 0;
    bottom: -50px;
    left: 0;
    display: flex;
    justify-content: space-around;
    align-items: center;
    color: var(--white);
    width: fit-content;
    height: fit-content;
    margin: auto;
    padding: 30px;
    border: solid 3px var(--white);
}

.mv_sub-box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--white);
}

.mv_sub-box p {
    font-size: 25px;
}

.mv_sub-box:first-child {
    border-right: solid 3px var(--white);
    padding-right: 20px;
}

.mv_sub-box:last-child {
    margin-left: 20px;
    display: block;
    width: 450px;
}

.mv_sub-box p {
    color: var(--white);
}

.mv_sub-box:last-child p {
    text-indent: -1em;
    padding-left: 1em;
    width: fit-content;
    margin: 0 auto;
}

.mv_icon_pic {
    margin-right: 15px;
}

.mv_icon_pic img {
    width: 60px !important;
    height: auto;
}

.slide {
    width: 80%;
    margin: 0 auto;
}

.splide__pagination.splide__pagination--ltr {
    width: 80%;
    margin: 0 auto;
}

.splide__pagination__page {
    background: var(--white) !important;
    margin: 0 10px !important;
    bottom: 20px;
}

.splide__pagination__page.is-active {
    background: var(--main-color) !important;
}


@keyframes sdl03 {
    0% {
        transform: scale(1, 0);
        transform-origin: 0 0;
    }

    30% {
        transform: scale(1, 1);
        transform-origin: 0 0;
    }

    70% {
        transform: scale(1, 1);
        transform-origin: 0 100%;
    }

    100% {
        transform: scale(1, 0);
        transform-origin: 0 100%;
    }
}

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

    .slide {
        width: 90%;
    }

    #header-wrapper .splide__arrow svg {
        display: none !important;
    }

    .mv_wrap .mv_contain_txt {
        font-size: 18px;
        margin: 20px;
        letter-spacing: normal;
        left: 5%;
        width: 85%;
        text-align: left;
        top: 0;
    }

    .mv_wrap .mv_contain img {
        height: 350px;
    }

    .mv_box {
        width: fit-content;
        top: 0;
        bottom: -40px;
        padding: 10px;
    }

    .mv_sub-box p {
        font-size: 1.6rem;
        margin-bottom: 5px;
    }

    .mv_icon_pic img {
        width: 40px !important;
        height: auto !important;
    }
}

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

    .slide {
        margin-top: 100px;
    }

    .mv_box {
        top: 25%;
        width: 80%;
    }

    .mv_sub-box {
        flex-direction: column-reverse;
        justify-content: center;
        align-items: flex-start;
    }

    .mv_wrap .mv_contain_txt {
        top: 20%;
    }
}

/*------------------------------
   news
 -------------------------------*/

#home-wrapper .news_ttl {
    text-align: center;
    margin-bottom: 50px;
}

#home-wrapper .news_txt {
    margin: 16px auto;
    text-align: center;
    display: block;
}

#home-wrapper .news_txt ul {
    display: inline-block;
    width: 100%;
    margin: 0 auto 30px;
}

#home-wrapper .news_txt ul li {
    text-align: left;
    border-bottom: solid 1px var(--gray02);
    padding: 30px 10%;
}

#home-wrapper .news_txt ul li:first-child {
    border-top: solid 1px var(--gray02);
}

#home-wrapper .news_txt ul li a {
    color: var(--default-txt-color);
    display: flex;
    justify-content: left;
    align-items: center;
}

#home-wrapper .news_txt ul li a div:first-child {
    margin-right: 100px;
}

.news_view-more {
    width: fit-content;
    margin: 0 auto;
}

.news_view-more:hover {
    background: var(--main-color);
}

.news_view-more a {
    display: block;
    position: relative;
    color: var(--main-color);
    width: fit-content;
    border: solid 1px var(--main-color);
    padding: 20px 50px;
    text-align: center;
    margin: 0 auto;
}

.news_view-more a:hover {
    color: var(--white) !important;
}

.news_view-more a::after {
    position: absolute;
    right: 23px;
    top: 28px;
    display: block;
    content: "";
    width: 11px;
    height: 11px;
    border-right: 1px solid var(--main-color);
    border-top: 1px solid var(--main-color);
    transform: rotate(45deg);
}

.news_view-more a:hover::after {
    border-right: 1px solid var(--white) !important;
    border-top: 1px solid var(--white) !important;
}



@media screen and (max-width: 768px) {
    #home-wrapper .news_txt ul li a div:first-child {
        margin-right: 20px;
    }

    #home-wrapper .news_txt {
        width: 100%;
    }

    #home-wrapper .news_txt ul {
        width: 100%;
    }

    #home-wrapper .news_txt ul li {
        padding: 10px;
    }

}

/*------------------------------
   greeting
 -------------------------------*/
section#home-greeting {
    background: var(--bg01);
}

h2.home-greeting_ttl {
    font-size: 35px;
    margin: 0 0 50px;
}

p.home-greeting_txt {
    margin-bottom: 50px;
    line-height: 40px;
}

.home-greeting_name {
    width: fit-content;
    margin: 0 0 0 auto;
}

.home-greeting_name p:first-child {
    margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
    p.home-greeting_txt {
        line-height: 30px;
    }
}


/* =============================

    page-about.php

  ==============================*/
/*------------------------------
   about
 -------------------------------*/

#about {
    margin: 100px 0;
}

#about-wrapper h2.about_ttl {
    text-align: center;
    margin-bottom: 50px;
}

#about-wrapper table {
    width: 100%;
    margin: 0 auto 30px;
}

#about-wrapper table tr {
    text-align: left;
    border-bottom: solid 1px var(--gray02);
    padding: 30px 10%;
    color: var(--default-txt-color);
    display: flex;
    justify-content: left;
    align-items: center;
}

#about-wrapper table tr:first-child {
    border-top: solid 1px var(--gray02);
}


#about-wrapper table th {
    width: calc(95%/3);
}

#about-wrapper table td {
    width: fit-content;
    line-height: 20px;
}

#about-wrapper td.tel a {
    color: var(--default-txt-color);
}

#about-wrapper table td.location,
#about-wrapper table td.tel {
    padding-left: 1em;
    text-indent: -1em;
}

#about-wrapper table td.location p:first-child,
#about-wrapper table td.tel p:first-child {
    margin-bottom: 20px;
}

#about-wrapper table td span {
    color: var(--main-color);
}

@media screen and (max-width: 768px) {
    #about {
        margin: 50px 0;
    }

    #about-wrapper table tr {
        flex-direction: column;
        align-items: start;
    }

    #about-wrapper table th {
        margin-bottom: 10px;
        width: auto;
    }
}

/*------------------------------
   access
 -------------------------------*/
#about-access {
    background: var(--bg01);
    padding: 100px 0;
}

.about-access_wrap {
    margin: 0 auto;
}

.about-access_contain {
    display: flex;
    justify-content: space-between;
    align-items: start;
    margin-bottom: 100px;
}

.about-access_subttl {
    color: var(--main-color);
    padding-bottom: 10px;
    border-bottom: solid 2px var(--main-color);
    margin: 0 0 20px;
}

.about-access_contain:last-child {
    margin-bottom: 0;
}

.about-access_box {
    width: calc(95%/2);
}

.about-access_map_box {
    position: relative;
    padding-bottom: 50vh;
    height: 0;
    overflow: hidden;
    width: calc(95%/2);
}

.about-access_map_box iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.about-access_sub-box {
    margin-bottom: 20px;
}

.about-access_sub-box a {
    color: var(--default-txt-color);
}

.about-access_sub-box span {
    color: var(--white);
    background: var(--main-color);
    padding: 5px 10px;
    display: inline-block;
    margin-bottom: 10px;
}

.about-access_sub-box p {
    margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
    .about-access_contain {
        flex-direction: column;
    }

    .about-access_box {
        width: 100%;
    }

    .about-access_map_box {
        width: 100%;
    }
}

/* =============================

    archive-business.php

  ==============================*/
/*------------------------------
   busines
 -------------------------------*/
#business-slide {
    margin: 100px 0;
}

h2.business_ttl {
    text-align: center;
}

h3.business_contain_txt {
    font-size: 25px;
    margin: 20px 0 30px;
    font-weight: bold;
}

.business_sub-box p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
    overflow: hidden;
    margin-bottom: 50px;
}

#business-slide .slide {
    display: flex;
    justify-content: space-between;
    align-items: start;
    width: 100%;
}

#business-slide .splide__arrow svg {
    fill: var(--gray01) !important;
    height: 50px !important;
    width: 50px !important;
}

#business-slide .business_swiper_box {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#business-slide .business_swiper_sub-box {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#business-slide .splide__arrow {
    background: var(--white) !important;
    opacity: 1 !important;
    border: solid 1px var(--gray01);
    padding: 20px;
    bottom: -10rem;
    top: auto;
    width: 4em;
    height: 4em;
}


#business-slide .splide__pagination {
    bottom: -7rem;
    right: 0;
}

#business-slide .splide__pagination li {
    color: var(--gray02) !important;
}

#business-slide .splide__pagination.splide__pagination--ltr {
    width: 60%;
    margin: 0 0 0 auto;
    justify-content: left;
    padding: 0;
}

#business-slide .splide__pagination__page {
    background: var(--gray02) !important;
    margin: 0 5px !important;
    width: 6px !important;
    height: 6px !important;
}

#business-slide .splide__pagination__page.is-active {
    background: var(--main-color) !important;
}

.business_contain_pic {
    width: 35%;
}

.business_contain_pic img {
    height: 300px;
    border-radius: 10px;
}

.business_box {
    width: 60%;
}

.business_sub-box {
    height: 300px;
}

.business_view-more {
    width: fit-content;
}

.business_view-more a {
    display: block;
    position: relative;
    color: var(--default-txt-color);
    width: 15rem;
    border-bottom: solid 1px var(--default-txt-color);
    padding: 0 20px 10px 0;
    margin: 0 auto;
}

.business_view-more a:hover {
    color: var(--main-color) !important;
    border-bottom: solid 1px var(--main-color);
}

.business_view-more a::after {
    position: absolute;
    right: 5px;
    top: 10px;
    display: block;
    content: "";
    width: 11px;
    height: 11px;
    border-right: 1px solid var(--default-txt-color);
    border-top: 1px solid var(--default-txt-color);
    transform: rotate(45deg);
}

.business_view-more a:hover::after {
    border-right: 1px solid var(--main-color) !important;
    border-top: 1px solid var(--main-color) !important;
}

#business-slide .splide__arrows {
    width: fit-content;
    bottom: 0;
    position: absolute;
    right: 10%;
}

#business-slide .splide__arrow--next {
    left: 1em !important;
    right: auto !important;
}

#business-slide .splide__arrow--prev {
    right: 1em !important;
    left: auto !important;
}


@media screen and (max-width: 768px) {
    #business-slide {
        margin: 50px 0;
    }

    #business-slide .slide {
        flex-direction: column;
        margin: 0;
    }

    .business_contain_pic {
        width: 100%;
    }

    .business_contain_pic img {
        height: 100px;
        border-radius: 10px;
    }

    .business_box {
        width: 100%;
    }

    p.business_sub-box_txt {
        height: auto;
    }

    .business_sub-box p {
        margin-bottom: 20px;
    }

    #business-slide .splide__arrows {
        bottom: 35px;
        right: 15%;
    }

    #business-slide .splide__arrow {
        padding: 10px;
        width: 2.5em;
        height: 2.5em;
        bottom: -10px;
    }

    #business-slide .splide__pagination {
        bottom: 30px;
    }

    #business-slide .splide__pagination.splide__pagination--ltr {
        width: 50%;
        overflow-wrap: anywhere;
        margin: 0 auto 0 0;
    }
}

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

    #business-slide .splide__arrow {
        bottom: -60px;
    }

    #business-slide .splide__pagination {
        bottom: -30px;
    }
}

/*------------------------------
   business-all
 -------------------------------*/

#business-all {
    margin: 150px 0 70px;
}

#business-all ul {
    display: flex;
    justify-content: space-between;
    align-items: end;
    flex-wrap: wrap;
}

#business-all li {
    width: calc(90%/3);
    color: var(--default-txt-color);
    margin-bottom: 30px;
}

#business-all li a {
    display: block;
    position: relative;
    color: var(--default-txt-color);
    border-bottom: solid 1px var(--default-txt-color);
    padding: 0 20px 10px 0;
    margin: 0 auto;
}

#business-all li a:hover {
    color: var(--main-color) !important;
    border-bottom: solid 1px var(--main-color);
}

#business-all li a::after {
    position: absolute;
    right: 5px;
    top: 10px;
    display: block;
    content: "";
    width: 11px;
    height: 11px;
    border-right: 1px solid var(--default-txt-color);
    border-top: 1px solid var(--default-txt-color);
    transform: rotate(45deg);
}


#business-all li a:hover::after {
    border-right: 1px solid var(--main-color) !important;
    border-top: 1px solid var(--main-color) !important;
}


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

    #business-all {
        margin: 60px 0 70px;
    }

    #business-all li {
        width: calc(95%/2);
    }
}

/* =============================

    single-business.php

  ==============================*/

/*------------------------------
   single-business
 -------------------------------*/
#single-business {
    margin: 100px 0;
}

.single-business_ttl {
    text-align: center;
    margin: 100px 0 50px;
}

.single-business_wrap p {
    line-height: 40px;
}

@media screen and (max-width: 768px) {
    #single-business {
        margin: 50px 0;
    }
}

/*------------------------------
   business-all
 -------------------------------*/
#single-business-wrapper #business-all {
    padding: 100px 0;
    margin: 0;
    background: var(--bg01);
}

@media screen and (max-width: 768px) {
    #single-business-wrapper #business-all {
        padding: 50px 0;
    }
}

/* =============================

    page-lawyer.php

  ==============================*/

.lawyer_ttl {
    text-align: center;
    margin: 100px 0 50px;
}

.lawyer_subttl {
    color: var(--main-color);
    padding-bottom: 10px;
    border-bottom: solid 2px var(--main-color);
    margin: 0 0 20px;
}

.lawyer_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 90%;
    margin: 50px auto 0;
}

.lawyer_contain {
    width: calc(95% / 2);
}

.lawyer_contain a {
    width: fit-content;
    margin: 0 auto 0 0;
    font-size: 16px;
    padding: 0 50px 10px 0;
}

.lawyer_name {
    margin-bottom: 30px;
    font-size: 20px;
    font-weight: bold;
}


@media screen and (max-width: 768px) {
    .lawyer_ttl {
        text-align: center;
        margin: 50px 0 50px;
    }


    .lawyer_wrap {
        flex-direction: column;
        margin: 20px auto 0;
    }

    .lawyer_contain {
        width: 100%;
        margin-bottom: 50px;
    }

    .lawyer_contain:last-child {
        margin-bottom: 0;
    }

    .lawyer_contain a {
        font-size: 14px;
    }

    .lawyer_name {
        margin-bottom: 20px;
    }

    .lawyer_name span {
        font-size: 14px;
    }

}

/*------------------------------
   lawyer-partner
 -------------------------------*/
#lawyer-partner {
    margin: 0 0 100px;
}

@media screen and (max-width: 768px) {
    #lawyer-partner {
        margin: 50px 0;
    }
}

/*------------------------------
   lawyer-counsel
 -------------------------------*/
#lawyer-counsel {
    padding: 100px 0;
    background: var(--bg01);
}

@media screen and (max-width: 768px) {
    #lawyer-counsel {
        padding: 50px 0;
    }
}


/*------------------------------
   lawyer-associate
 -------------------------------*/
#lawyer-associate {
    margin: 100px 0;
}

@media screen and (max-width: 768px) {
    #lawyer-associate {
        margin: 50px 0;
    }
}

/* =============================

    page-lawyer-araki.php,
    page-lawyer-kadomatsu.php,
    page-lawyer-abe.php

  ==============================*/
.lawyer-sub_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 100px 0 50px;
}

.lawyer-sub_pic {
    width: calc(95% / 2);
}

.lawyer-sub_pic img {
    border-radius: 10px;
    width: auto;
    height: 300px;
}

.lawyer-sub_name {
    width: calc(95%/2);
    font-weight: bold;
    font-size: 25px;
}

.lawyer-sub_message {
    margin-bottom: 50px;
}

.lawyer-sub_contain {
    margin-bottom: 100px;
    border-bottom: solid 1px var(--gray02);
}

#lawyer-araki-sub-wrapper .lawyer-sub_contain {
    margin-bottom: 50px;
}

.lawyer-sub_view-more {
    width: fit-content;
    margin: 0 auto 100px;
}

.lawyer-sub_view-more:hover {
    background: var(--main-color);
}

.lawyer-sub_view-more a {
    display: block;
    position: relative;
    color: var(--main-color);
    width: fit-content;
    border: solid 1px var(--main-color);
    padding: 20px 50px;
    text-align: center;
    margin: 0 auto;
}

.lawyer-sub_view-more a:hover {
    color: var(--white) !important;
}

.lawyer-sub_view-more a::after {
    position: absolute;
    right: 23px;
    top: 28px;
    display: block;
    content: "";
    width: 11px;
    height: 11px;
    border-right: 1px solid var(--main-color);
    border-top: 1px solid var(--main-color);
    transform: rotate(45deg);
}

.lawyer-sub_view-more a:hover::after {
    border-right: 1px solid var(--white) !important;
    border-top: 1px solid var(--white) !important;
}

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

    .lawyer-sub_wrap {
        flex-direction: column;
        width: fit-content;
        margin: 50px 0 50px;
    }

    .lawyer-sub_pic {
        margin-bottom: 20px;
        width: 100%;
    }

    .lawyer-sub_pic img {
        width: 100%;
        height: auto;
    }

    .lawyer-sub_name {
        width: 100%;
        font-size: 20px;
    }

    .lawyer-sub_contain {
        margin-bottom: 50px;
    }

    .lawyer-sub_box table {
        width: 100%;
    }

}


/*accordion*/
.toggle {
    display: none;
}

.lawyer-sub_label {
    padding: 2px;
    display: block;
    color: var(--default-txt-color);
    font-size: 16px;
    background: var(--bg-color05);
    margin-bottom: 0;
    text-indent: -2em;
    padding: 10px 3em 10px 4rem;
    line-height: normal;
    border-top: solid 1px var(--gray02);
    font-weight: normal;
}

.lawyer-sub_label span {
    font-size: 20px;
    margin: 0 8px;
}

.lawyer-sub_label::before {
    content: "";
    width: 10px;
    height: 10px;
    border-top: 1px solid var(--gray02);
    border-right: 1px solid var(--gray02);
    -webkit-transform: rotate(45deg);
    position: absolute;
    top: calc(50% - 8px);
    right: 20px;
    transform: rotate(135deg);
}

.lawyer-sub_label,
.lawyer-sub_box {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
    transition: all 0.3s;
}

.lawyer-sub_box {
    height: 0;
    overflow: hidden;
}

.lawyer-sub_contain p {
    padding: 10px 0 0 20px;
    font-size: 14px;
}

.lawyer-sub_contain table {
    margin: 0;
    width: 100%;
}

.lawyer-sub_contain tr {
    margin-bottom: 10px;
    display: block;
}

.lawyer-sub_contain th {
    width: 200px;
}

.lawyer-sub_contain ul {
    padding-left: 20px;
}

.lawyer-sub_contain li {
    margin-bottom: 5px;
}

.lawyer-sub_contain li:last-child {
    margin-bottom: 10px;
}

.toggle:checked+.lawyer-sub_label+.lawyer-sub_box {
    /*開閉時*/
    height: auto;
    padding: 20px 0;
    transition: all .3s;
}

.toggle:checked+.lawyer-sub_label::before {
    transform: rotate(-45deg) !important;
    top: 45%;
}

.lawyer-sub_contain tr {
    display: flex;
    justify-content: space-between;
    align-items: start;
    padding-left: 20px;
}

.lawyer-sub_box td {
    width: -webkit-fill-available;
}

.lawyer-sub_contain tr:last-child,
.lawyer-sub_contain li:last-child {
    margin-bottom: 0;
}

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

    .lawyer-sub_contain tr {
        flex-direction: column;
    }

    .lawyer-sub_contain th {
        background: var(--main-color);
        color: var(--white);
        width: auto;
    }

    .lawyer-sub_box {
        padding: 0;
    }

    .lawyer-sub_box li {
        padding-left: 20px;
    }

    .lawyer-sub_box th {
        padding: 3px 5px;
    }

    .lawyer-sub_box td {
        margin: 5px 0 5px 20px;
    }

    .toggle:checked+.lawyer-sub_label+.lawyer-sub_box {
        /*開閉時*/
        padding: 0 0 10px 0;
    }
}

/* =============================

    page-recruit.php

  ==============================*/

/*------------------------------
   recruit
 -------------------------------*/

#recruit-message {
    margin: 100px 0;
}

h2.recruit-message_ttl {
    text-align: center;
    margin-bottom: 50px;
}

.recruit-message_pic {
    margin-bottom: 50px;
}

.recruit-message_pic img {
    border-radius: 10px;
}

div#recruit-wrapper p {
    line-height: 30px;
}

#recruit-pr {
    margin-bottom: 50px;
}

#recruit-future {
    margin: 50px 0 100px;
}


section#recruit-pr p:first-of-type,
section#recruit-future p:first-of-type {
    margin-bottom: 30px;
}

#recruit-pr p span,
#recruit-future p span {
    font-weight: bold;
    color: var(--main-color);
    display: inline-block;
    margin-bottom: 10px;
}

h3.recruit_sub-ttl {
    color: var(--main-color);
    padding-bottom: 10px;
    border-bottom: solid 2px var(--main-color);
    margin: 0 0 20px;
}


@media screen and (max-width: 768px) {
    #recruit-message {
        margin: 50px 0;
    }
}


/*------------------------------
   recruit-all
 -------------------------------*/

#recruit-all {
    padding: 100px 0;
    background: var(--bg01);
}

h2.recruit-all_ttl {
    text-align: center;
    margin-bottom: 50px;
}

#recruit-all ul {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
}

#recruit-all li {
    width: calc(80%/2);
    color: var(--default-txt-color);
    margin-bottom: 50px;
}

#recruit-all li:last-child {
    margin-bottom: 0;
}

#recruit-all p {
    margin-bottom: 50px;
    text-align: center;
}

@media screen and (max-width: 768px) {
    #recruit-all {
        padding: 50px 0;
    }

    #recruit-all li {
        width: 100%;
        color: var(--default-txt-color);
        margin-bottom: 50px;
    }

    #recruit-all p {
        text-align: left;
    }
}

/* =============================

    page-recruit-sihousyusyusei.php
    page-recruit-lawyer.php
    page-recruit-intership.php

  ==============================*/

h2.recruit-sub_ttl {
    margin: 100px 0 50px;
    text-align: center;
}

#recruit-sub-table {
    margin-bottom: 100px;
}

section#recruit-sub-table table {
    margin: 0 auto 50px;
}

section#recruit-sub-table tr {
    border-top: solid 1px var(--gray02);
    padding: 20px 50px;
    display: flex;
    justify-content: start;
    align-items: start;
    width: 100%;
}

section#recruit-sub-table tr:last-child {
    border-bottom: solid 1px var(--gray02);
}

section#recruit-sub-table th {
    margin-right: 10px;
    width: 250px;
}

section#recruit-sub-table td {
    width: -webkit-fill-available;
    line-height: 25px;
}

section#recruit-sub-table span {
    margin-right: 10px;
    width: 50px;
    display: inline-block;
}

.recruit-sub_view-more {
    width: fit-content;
}

.recruit-sub_view-more:hover {
    background: var(--main-color);
}

.recruit-sub_view-more a {
    display: block;
    position: relative;
    color: var(--main-color);
    width: fit-content;
    border: solid 1px var(--main-color);
    padding: 20px 50px;
    text-align: center;
    margin: 0 auto;
}

.recruit-sub_view-more a:hover {
    color: var(--white) !important;
}

.recruit-sub_view-more a::after {
    position: absolute;
    right: 23px;
    top: 28px;
    display: block;
    content: "";
    width: 11px;
    height: 11px;
    border-right: 1px solid var(--main-color);
    border-top: 1px solid var(--main-color);
    transform: rotate(45deg);
}

.recruit-sub_view-more a:hover::after {
    border-right: 1px solid var(--white) !important;
    border-top: 1px solid var(--white) !important;
}

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

    h2.recruit-sub_ttl {
        margin: 50px 0;
    }

    section#recruit-sub-table tr {
        flex-direction: column;
        padding: 20px 10px;
    }

    section#recruit-sub-table th {
        margin: 0 0 10px 0;
        width: auto;
    }

    .recruit-sub_view-more {
        margin: 0 auto;
    }
}

/*====================================

   # page-faq.php

==================================== */

.faq_ttl {
    text-align: center;
    margin: 100px 0 50px;
}

.faq_wrap {
    margin: 0 auto 50px;
    border-bottom: solid 1px var(--gray02);
}

/*accordion*/
.toggle {
    display: none;
}

.faq_label {
    padding: 2px;
    display: flex;
    justify-content: left;
    align-items: baseline;
    color: var(--default-txt-color);
    font-size: 16px;
    background: var(--bg-color05);
    margin-bottom: 0;
    padding: 20px 3em 20px 10px;
    line-height: normal;
    border-top: solid 1px var(--gray02);
    font-weight: normal;
}

.faq_label span {
    font-size: 20px;
    margin: 0 8px;
}

.faq_label::before {
    content: "";
    width: 10px;
    height: 10px;
    border-top: 1px solid var(--gray02);
    border-right: 1px solid var(--gray02);
    -webkit-transform: rotate(45deg);
    position: absolute;
    top: calc(50% - 8px);
    right: 20px;
    transform: rotate(135deg);
}

.faq_label,
.faq_contain {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
    transition: all 0.3s;
}

.faq_contain {
    height: 0;
    overflow: hidden;
    display: flex;
    justify-content: left;
    align-items: baseline;
    width: fit-content;
    margin: 0 0 0 42px;
}

.faq_contain p {
    padding: 0;
    font-size: 14px;
}

p.faq_qa {
    font-size: 18px;
    margin: 0;
    color: var(--main-color);
}


.toggle:checked+.faq_label+.faq_contain {
    /*開閉時*/
    height: auto;
    padding: 10px 0 20px;
    transition: all .3s;
    width: fit-content;
    margin: 0 0 0 42px;
}

.toggle:checked+.faq_label::before {
    transform: rotate(-45deg) !important;
    top: 45%;
}


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

    .faq_ttl {
        text-align: center;
        margin: 50px 0 50px;
    }

    .faq_wrap {
        width: 100%;
        margin: 0 auto 50px;
    }
}

/* =============================

    page-inquiry.php

  ==============================*/
/*------------------------------
   inquiry
 -------------------------------*/
#inquiry {
    margin: 100px 0;
}

.inquiry_ttl {
    text-align: center;
}

#inquiry p {
    margin-bottom: 20px;
}

#inquiry .inquiry_atten_txt:last-of-type {
    margin-bottom: 50px;
}

.inquiry_atten_txt {
    text-indent: -1em;
    padding-left: 1em;
}

.inquiry_atten_txt span {
    color: var(--red);
}

@media screen and (max-width: 768px) {
    #inquiry {
        margin: 50px 0;
    }
}

/*MW WP Form*/

table.entry_table {
    width: 100%;
}

table.entry_table tr {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    border-bottom: solid 1px var(--gray02);
    padding: 20px 0;
}

table.entry_table th {
    display: flex;
    justify-content: start;
    align-items: center;
    width: 30%;
    margin: 0 auto 0 50px;
    font-weight: normal;
}

table.entry_table td {
    display: flex;
    flex-direction: column;
    justify-content: left;
    align-items: center;
    margin: 0 50px 0 auto;
    width: 60%;
}

table.entry_table td.form_td-radio {
    flex-direction: row;
    flex-wrap: wrap;
}

table.entry_table th.-required::after {
    content: "必須";
    display: inline-block;
    width: 45px;
    border-radius: 2px;
    text-align: center;
    line-height: 25px;
    font-size: 16px;
    color: var(--white);
    background: var(--main-color);
    margin-left: 10px;
}

#inquiry table {
    margin-bottom: 0;
}

input,
textarea {
    background: var(--white);
    background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0));
    border: 1px solid var(--gray02);
    -webkit-border-radius: 3px;
    border-radius: 3px;
    display: block;
    padding: 0.7em;
    width: 100%;
}

textarea {
    resize: none;
}

.submit_btn {
    display: block;
    position: relative;
    color: var(--main-color);
    width: fit-content;
    border: solid 1px var(--main-color);
    border-radius: 0;
    padding: 15px 50px;
    text-align: center;
    margin: 50px auto 0;
}

input[type="submit"]:hover {
    color: var(--white) !important;
    background: var(--main-color);
}

.submit_btn::after {
    position: absolute;
    content: "";
    right: 31px;
    top: 21px;
    display: block;
    width: 9px;
    height: 9px;
    border-right: 1px solid var(--main-color);
    border-top: 1px solid var(--main-color);
    transform: rotate(45deg);
}

.submit_btn:hover {
    color: var(--white) !important;
    background: var(--main-color);
}

.submit_btn:hover::after {
    border-right: 1px solid var(--white) !important;
    border-top: 1px solid var(--white) !important;
}

.mw_wp_form .error {
    margin: 5px auto 0 0;
}

.responsive-nav-contents {
    box-shadow: none;
}


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

    #inquiry .inquiry_atten_txt:last-of-type {
        margin-bottom: 20px;
    }

    table.entry_table tr {
        flex-direction: column;
    }

    table.entry_table th {
        width: 100%;
        margin: 0 auto 10px;
    }

    table.entry_table td {
        width: 100%;
        align-items: left;
    }

}

/* =============================

    page-inquiry-confirm.php

  ==============================*/

#inquiry-confirm {
    margin: 100px 0;
}


#inquiry-confirm p {
    margin-bottom: 20px;
}

#inquiry-confirm .inquiry_atten_txt:last-of-type {
    margin-bottom: 50px;
}

#inquiry-confirm table {
    margin-bottom: 0;
}

#inquiry-confirm ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    width: fit-content;
}

#inquiry-confirm li {
    margin: 0 10px;
}

@media screen and (max-width: 768px) {
    #inquiry-confirm {
        margin: 50px 0;
    }

    #inquiry-confirm li {
        margin: 0 5px;
    }


}


/* =============================

    page-inquiry-complete.php

  ==============================*/

#inquiry-complete {
    margin: 100px 0;
}

#inquiry-complete table {
    margin-bottom: 0;
}

#inquiry-complete .txtformat_box p {
    margin: 20px;
}

#inquiry-complete .txtformat_box p:first-child {
    font-size: 18px;
    margin-bottom: 20px;
}

#inquiry-complete a.txtfotmat_a_box {
    border: solid 1px;
    padding: 10px;
    display: inline-block;
    margin: 20px 0;
}

@media screen and (max-width: 768px) {
    #inquiry-complete {
        margin: 50px 0;
    }
}

/* =============================

    page-privacy.php

  ==============================*/

.privacy_intro_wrap {
    width: 70%;
    margin: 100px auto;
}

.privacy_intro_wrap h2 {
    text-align: center;
    padding: 0;
}

.privacy01,
.privacy02 {
    width: 70%;
    margin: 0 auto 100px;
}

.privacy_wrap {
    margin-bottom: 50px;
}

.privacy_wrap p {
    margin-bottom: 20px;
}

.privacy_subttl {
    color: var(--main-color);
    padding-bottom: 10px;
    border-bottom: solid 2px var(--main-color);
    margin-bottom: 50px;
}

.privacy_no {
    display: flex;
    justify-content: left;
    align-items: baseline;
    height: fit-content;
}

.privacy_no p {
    font-size: 18px;
    font-weight: bold;
    margin-right: 10px;
}

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

/* =============================

    page-news_blog_all.php

  ==============================*/

.page-news_ttl {
    text-align: center;
    margin: 100px 0;
}

.content-blog {
    display: flex;
    justify-content: space-between;
    align-items: start;
}


div.page-news_contain {
    width: fit-content;
    margin: 0 0 0 auto;
}

.su-post-thumbnail img {
    border-radius: 10px;
    width: 150px;
    height: 120px;
}

.su-post-excerpt p {
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: normal;
    font-size: 16px;
}

.archive_pagenavi {
    width: 70%;
}

.wp-pagenavi {
    margin: 0 auto;
    width: fit-content;
    margin-top: 50px;
}

span.pages {
    display: none;
}

.wp-pagenavi a,
.wp-pagenavi span {
    border: none !important;
    padding: 3px 7px 5px 10px !important;
}

.wp-pagenavi a.first {
    color: var(--white);
    background: var(--sub-color);
    border: none;
    padding: 5px 10px;
}

.wp-pagenavi a.previouspostslink {
    color: var(--white);
    background: var(--sub-color);
    border: none;
    padding: 5px 10px;
}

.wp-pagenavi a.page.smaller {
    color: var(--white);
    background: var(--sub-color);
    border: none;
    padding: 5px 10px;
}

.wp-pagenavi span.current {
    color: var(--white);
    background: var(--main-color);
    border: none;
    padding: 5px 10px;
}

.wp-pagenavi a.page.larger {
    color: var(--white);
    background: var(--sub-color);
    border: none;
    padding: 5px 10px;
}

span.extend,
a.nextpostslink {
    color: var(--white);
    background: var(--sub-color);
    border: none;
    padding: 5px 10px;
}

.wp-pagenavi a.page.larger:hover,
.wp-pagenavi a.nextpostslink:hover {
    color: var(--white) !important;
}

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

    .page-news_ttl {
        margin: 50px 0 50px;
    }

    a.page-news_link {
        margin-left: 20px;
    }

    .page-news_wrap {
        flex-direction: column;
    }

    ul.page-news_contain {
        width: 100%;
    }

    div.page-news_contain {
        width: 100%;
    }

    .archive_pagenavi {
        width: 100%;
    }

}

/*--------------------------------------------------------------
# Short Code
--------------------------------------------------------------*/

.su-post {
    display: flex;
    justify-content: left;
    align-items: center;
    padding: 20px 0;
    border-top: solid 1px var(--gray02);
}

.su-post:last-child {
    border-bottom: 1px solid var(--gray02);

}

.su-posts-news-loop a.su-post-thumbnail {
    float: left;
    transition: unset;
    box-shadow: none;
}

.su-posts-news-loop a.su-post-thumbnail img {
    width: 180px;
    height: 150px;
    object-fit: cover;
    object-position: center;
    font-family: 'object-fit: cover; object-position: center;'
}

.su-posts-news-loop .text_area_box {
    width: 75%;
    float: right;
    display: table;
    margin-left: 30px;
}

a.su-post-title {
    font-size: 20px;
    margin: 0 0 20px;
    display: block;
    color: var(--default-txt-color);
}

.su-post-meta {
    margin: 0 0 20px;
}

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

    .su-post {
        flex-direction: column;
    }

    .su-post .view_only_pc {
        display: none;
    }

    .su-posts-news-loop .text_area_box {
        width: 90%;
        margin-left: 0;
    }

    a.su-post-title {
        margin: 0 0 10px;
    }

    .su-post-meta {
        margin: 0 0 10px;
    }

}

/*--------------------------------------------------------------
 # Archive
--------------------------------------------------------------*/

.archive h3.archive_header {
    margin: 0;
    color: var(--main-color);
    border-bottom: 2px solid var(--main-color);
    padding-bottom: 10px;
    font-size: 22px;
    font-weight: bold;
}

.content-blog {
    margin-bottom: 50px;
}

.content-blog-area {
    width: 70%;
}

.content-blog-side-area {
    width: 20%;
}

.archive-list>li:not(.acv_open)>ul {
    display: none;
}

/* 年別アーカイブリストのアイコン設定 */
.archive-list>li.acv_open::before {
    /* リストが開かれているとき */
    font-family: "Font Awesome 5 Free";
    content: '\f056';
    /* -マーク */
    font-weight: 600;
    margin-right: .5em;
    color: var(--main-color);
}

.archive-list>li:not(.acv_open)::before {
    /* リストが閉じられているとき */
    font-family: "Font Awesome 5 Free";
    content: '\f055';
    font-weight: 600;
    margin-right: .5em;
    color: var(--main-color);
}

/* 月別アーカイブリストのアイコン設定 */
.month-archive-list>li::before {
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    /* >マーク */
    font-weight: 600;
    margin-right: .5em;
    margin-left: 3px;
    color: rgba(0, 0, 0, .54);
}

.month-archive-list>li:last-child {
    border-bottom: none;
}


ul.archive-list li.year {
    border-bottom: solid 1px var(--gray02);
    padding: 10px 0;
    font-size: 18px;
}

ul.month-archive-list li {
    margin: 5px 0;
}

ul.month-archive-list li:last-child {
    margin: 0;
}

ul.month-archive-list li a {
    margin: 5px 0;
    color: var(--default-txt-color);
}


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

    .content-blog {
        flex-direction: column;
        margin-bottom: 0;
    }

    .content-blog-area {
        width: 100%;
    }

    .content-blog-side-area {
        width: 100%;
        margin-bottom: 50px;
    }


}

/* =============================

    single-news.php

  ==============================*/

section#single-news {
    padding-bottom: 100px;
}

section#single-news .news_content {
    overflow-wrap: anywhere;
}

section#single-news .news_content h2 {
    font-size: 18px;
    font-weight: bold;
    margin: 20px 0 10px;
}

section#single-news .news_content table,
section#single-news .news_content tr,
section#single-news .news_content th,
section#single-news .news_content td {
    border: solid 1px var(--gray02);
}

section#single-news .news_content th,
section#single-news .news_content td {
    padding: 10px;
}


.single-news_ttl {
    text-align: center;
    margin: 100px 0 50px;
}

.single-news_wrap {
    display: flex;
    justify-content: space-between;
    align-items: start;
}

.single-news_contain {
    width: 70%;
}

.single-news_contain:last-child {
    width: 20%;
}

#single-news .sub-page-contents {
    padding: 0;
}

.news_title h3 {
    font-size: 20px;
    margin: 0 0 30px;
}

.news_content img {
    width: auto;
}

.single-news_sns_wrap {
    display: flex;
    justify-content: left;
    align-items: center;
    margin-top: 50px;
}

.single-news_sns_wrap a {
    margin-right: 20px;
}

.single-news_sns_wrap a:last-child {
    margin-right: 0;
}

a.single-news_sns img {
    width: 30px;
    height: auto;
}

.nav-below {
    display: flex;
    justify-content: space-between;
    margin-top: 50px;
    border-top: solid 1px var(--gray02);
    padding-top: 30px;
}

.nav-below a {
    color: var(--default-txt-color);
    padding: 0 10px;
    font-size: 16px;
}

.nav-previous,
.nav-next {
    width: calc(95%/2);
}

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

    section#single-news {
        padding-bottom: 50px;
    }

    .single-news_ttl {
        margin: 50px 0;
    }

    .single-news_wrap {
        flex-direction: column;
    }

    .single-news_contain {
        width: 100%;
    }

    .single-news_contain:last-child {
        width: 100%;
    }

}

/* =============================

    404.php

  ==============================*/
#error {
    margin: 100px 0;
}


#error p {
    margin-bottom: 20px;
}

#error p:last-child {
    margin-bottom: 0;
}

@media screen and (max-width: 768px) {
    #error {
        margin: 50px 0;
    }
}

/* =============================

    footer.php

 ==============================*/

footer#footer-wrapper {
    background: var(--bg02) !important;
}

#footer {
    position: absolute;
    bottom: 0;
    width: 100%;
}

#footer .container p {
    color: var(--default-txt-color);
    margin: 0 auto;
    text-align: center;
}

.footer_wrap {
    padding-top: 100px;
}

.footer_access_contain {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto 50px;
    width: 70%;
}

h2.footer_access_ttl {
    width: 70%;
    margin: 0 auto 20px;
    border-top: solid 1px var(--gray02);
    padding-top: 20px;
}

.footer_access_contain p {
    margin-bottom: 10px;
}

.footer_access_contain p:last-child {
    margin-bottom: 0;
}

.footer_access_box {
    width: calc(90%/2);
}

.footer_access_contain iframe {
    width: 100%;
    margin-bottom: 20px;
}

.footer_access_box a {
    color: var(--default-txt-color);
}

.footer_inquiry_btn {
    width: fit-content;
    margin: 0 auto 50px;
}

.footer_inquiry_btn a {
    display: block;
    position: relative;
    color: var(--white);
    background: var(--main-color);
    width: fit-content;
    border: solid 1px var(--main-color);
    padding: 20px 50px;
    text-align: center;
    margin: 0 auto;
}

.footer_inquiry_btn a:hover {
    color: var(--main-color) !important;
    background: var(--white);
}

.footer_inquiry_btn a::after {
    position: absolute;
    right: 23px;
    top: 28px;
    display: block;
    content: "";
    width: 11px;
    height: 11px;
    border-right: 1px solid var(--white);
    border-top: 1px solid var(--white);
    transform: rotate(45deg);
}

.footer_inquiry_btn a:hover::after {
    border-right: 1px solid var(--main-color) !important;
    border-top: 1px solid var(--main-color) !important;
}

.footer_nav {
    border-top: solid 1px var(--gray02);
    width: 70%;
    padding-top: 50px;
    margin: 0 auto;
}

.footer_main_menu {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto 30px;
}

.footer_main_menu li {
    text-align: center;
}

.footer_main_menu li a {
    color: var(--default-txt-color);
}

.footer_sns ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto 30px;
    width: fit-content;
}

.footer_sns li {
    width: fit-content;
    margin: 0 20px;
}

.footer_sns li img {
    width: 30px;
    height: auto;
}

.copyright {
    color: var(--default-txt-color);
    background: none;
    text-align: center;
}


@media screen and (max-width: 768px) {
    .footer_wrap {
        padding: 50px 5% 0 5%;
    }

    h2.footer_access_ttl {
        width: 90%;
    }

    .footer_access_contain {
        flex-direction: column;
        width: 90%;
    }

    .footer_access_box {
        width: 100%;
    }

    .footer_access_box:first-child {
        margin-bottom: 50px;
    }

    .footer_main_menu {
        text-align: left;
        justify-content: space-between;
        align-items: flex-start;
        margin: 0 auto 30px;
        flex-direction: column;
        width: fit-content;
    }

    .footer_main_menu li {
        margin-bottom: 10px;
    }

    .footer_main_menu li:last-child {
        margin-bottom: 0;
    }

    .footer_inquiry_btn {
        width: 90%;
    }

    .footer_inquiry_btn a {
        text-align: left;
    }

    .footer_inquiry_btn a::after {
        top: 45%;
    }

    .footer_nav {
        width: 90%;
    }

}