
/*
Theme Name: the7dtchild
Author: Dream-Theme
Author URI: http://dream-theme.com/
Description: The7 is perfectly scalable, performance and SEO optimized, responsive, retina ready multipurpose WordPress theme. It will fit every site – big or small. From huge corporate portals to studio or personal sites – The7 will become a great foundation for your next project!
Version: 1.0.0
License: This WordPress theme is comprised of two parts: (1) The PHP code and integrated HTML are licensed under the GPL license as is WordPress itself.  You will find a copy of the license text in the same directory as this text file. Or you can read it here: http://wordpress.org/about/gpl/ (2) All other parts of the theme including, but not limited to the CSS code, images, and design are licensed according to the license purchased. Read about licensing details here: http://themeforest.net/licenses/regular_extended
Template: dt-the7
*/
/*========================================
common
========================================*/
:root {
    --the7-accent-color: #333;
    --menu-color: #add6cd;
}
.branding a img, .branding img,.logo-box img,.mobile-logo,.sticky-mobile-logo-second-switch img {
  height: 40px !important;
}
.single h4 {
    font-family: "Noto Sans JP", Helvetica, Arial, Verdana, sans-serif !important;
    font-size: 17px;
    letter-spacing: 1px;
}
.single img.aligncenter, .single img, .single p:has(img) {
    margin-top: 10px !important;
}
/*ニュースの画像リンク無効化*/
.single-post .content a:has(img) {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
}
/*アイキャッチ非表示*/
.single-post .post-thumbnail,
.single-portfolio .project-slider {
    display: none;
}
/*メニュー*/
.masthead:not(.side-header):not(.side-header-v-stroke):not(.side-header-menu-icon) .header-bar, .ph-wrap {
    max-width: 1200px;
    padding-left: 20px;
    padding-right: 20px;
}
.main-nav>li.act:not(.wpml-ls-item)>a {
    color: var(--menu-color);
}
.sticky-on .main-nav>li.act:not(.wpml-ls-item)>a,
#phantom .main-nav>li.act:not(.wpml-ls-item)>a {
    color: var(--menu-color);
    ;
}
.main-nav>li.act:not(.wpml-ls-item)>a .menu-text,
.main-nav>li.act:not(.wpml-ls-item)>a .subtitle-text {
    color: var(--menu-color);
    ;
}
.sticky-on .main-nav>li.act:not(.wpml-ls-item)>a .menu-text,
#phantom .main-nav>li.act:not(.wpml-ls-item)>a .menu-text,
.sticky-on .main-nav>li.act:not(.wpml-ls-item)>a .subtitle-text,
#phantom .main-nav>li.act:not(.wpml-ls-item)>a .subtitle-text {
    color: var(--menu-color);
    ;
}
.main-nav>li:not(.act):not(.wpml-ls-item)>a:hover .subtitle-text,
.main-nav>li:not(.act):not(.wpml-ls-item)>a:hover .menu-text,
.main-nav>li.dt-hovered:not(.act):not(.wpml-ls-item)>a .subtitle-text,
.main-nav>li.dt-hovered:not(.act):not(.wpml-ls-item)>a .menu-text {
    color: var(--menu-color);
    ;
}
.sticky-on .main-nav>li:not(.act):not(.wpml-ls-item)>a:hover .subtitle-text,
#phantom .main-nav>li:not(.act):not(.wpml-ls-item)>a:hover .subtitle-text,
.sticky-on .main-nav>li:not(.act):not(.wpml-ls-item)>a:hover .menu-text,
#phantom .main-nav>li:not(.act):not(.wpml-ls-item)>a:hover .menu-text,
.sticky-on .main-nav>li.dt-hovered:not(.act):not(.wpml-ls-item)>a .subtitle-text,
#phantom .main-nav>li.dt-hovered:not(.act):not(.wpml-ls-item)>a .subtitle-text,
.sticky-on .main-nav>li.dt-hovered:not(.act):not(.wpml-ls-item)>a .menu-text,
#phantom .main-nav>li.dt-hovered:not(.act):not(.wpml-ls-item)>a .menu-text {
    color: var(--menu-color);
}
.main-nav>li:not(.act):not(.wpml-ls-item)>a:hover,
.main-nav>li.dt-hovered:not(.act):not(.wpml-ls-item)>a {
    color: var(--menu-color);
}
.sticky-on .main-nav>li:not(.act):not(.wpml-ls-item)>a:hover,
#phantom .main-nav>li:not(.act):not(.wpml-ls-item)>a:hover,
.sticky-on .main-nav>li.dt-hovered:not(.act):not(.wpml-ls-item)>a,
#phantom .main-nav>li.dt-hovered:not(.act):not(.wpml-ls-item)>a {
    color: var(--menu-color);
}
.mobile-main-nav li.act>a {
    color: var(--menu-color);
}
.mobile-main-nav li.act>a .menu-text,
.mobile-main-nav li.act>a .subtitle-text,
.dt-mobile-header .mobile-main-nav .sub-nav>li.act>a .subtitle-text,
.dt-mobile-header .mobile-main-nav .sub-nav>li.act>a .menu-text {
    color: var(--menu-color);
}
.mobile-main-nav li:not(.act)>a:hover .subtitle-text,
.mobile-main-nav li:not(.act)>a:hover .menu-text,
.dt-mobile-header .mobile-main-nav .sub-nav>li:not(.act)>a:hover .menu-text {
    color: var(--menu-color);
}
.mobile-main-nav li:not(.act)>a:hover,
.dt-mobile-header .mobile-main-nav .sub-nav>li:not(.act)>a:hover {
    color: var(--menu-color);
}
.upwards-line>li>a .menu-item-text::before {
    background-color: var(--menu-color);
    ;
}
/*メニューEND*/
h1 {
    font-family: "Libre Baskerville", '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
    font-weight: bold;
}
h4 {
    font-family: "Libre Baskerville", "Noto Serif JP", '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
    font-weight: 600;
    letter-spacing: 0.05em;
}
h1.single-entry-title {
    font-size: 40px !important;
    line-height: 1.2em;
}
.header_page, .title_content {
    margin: 60px 0 50px;
}
.header_page h1 {
    margin-bottom: 0px;
}
.vc_section {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.vc_column_container>.vc_column-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.vc_row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.vc_row.vc_column-gap-20 {
    margin-left: -10px !important;
    margin-right: -10px !important;
}
a.nav-next::after, a.nav-prev::after {
    display: none;
}
.page-numbers.nav-next, .page-numbers.nav-prev {
    font-size: 0 !important;
}
.page-numbers.nav-next::before {
    content: '\025b6';
    font-size: 12px;
    display: block;
}
.page-numbers.nav-prev::before {
    content: '\025c0';
    font-size: 12px;
    display: block;
}
/*画像ZOOM hover*/
/*アニメーション*/
    .vc_gitem-animated-block .vc_gitem-zone img,
    .vc_gitem-animated-block .grid-hover-horizontal img,
    img.is-loaded,
    #services a img,
.accordion_header img
    /*Case Studies*/
        {
        transition: all 0.5s ease-in-out !important;
    }
    .vc_gitem-animated-block .vc_gitem-zone:hover img,
    .vc_gitem-animated-block .grid-hover-horizontal:hover img,
    img.is-loaded:hover,
    #services a:hover img,
.accordion_header img:hover
    /*Case Studies*/
        {
        transform: scale(1.05) !important;
        /*opacity: 0.35 !important;*/
    }
    .vc_gitem-animated-block, a.rollover,
.open_btn.wpb_single_image .vc_figure {
        overflow: hidden;
    }
    .vc_grid-item-mini.vc_is-hover {
        border: 1px solid rgba(0, 0, 0, 0.2);
        box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 10px;
        background-color: #add6cd;
    }
/*.vc_grid-item-mini:has(.vc_gitem-link:hover) {
     border: 1px solid rgba(0, 0, 0, 0.2);
        box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 10px;
        background-color: #add6cd;
}*/
/*表示成型*/
.vc_grid-item-mini {
    border: 1px solid #707070;
    transition: all 0.5s ease-in-out !important
}
.row_news .vc_gitem_row .vc_gitem-col,
.grid_top_works .vc_gitem_row .vc_gitem-col,
.grid_works .vc_gitem_row .vc_gitem-col {
    padding: 0;
}
.grid-hover .vc_gitem-row-position-top,
.grid-hover .vc_gitem-row-position-bottom,
.grid-hover-horizontal .vc_gitem-row-position-top,
.grid-hover-horizontal .vc_gitem-row-position-bottom {
    position: relative !important;
}
.grid-hover .vc_gitem-row-position-bottom,
.grid-hover-horizontal .vc_gitem-row-position-bottom {
    padding: 10px 20px 20px;
}
@media (max-width: 767px) {
    .vc_grid-item-mini {
    transition:none !important;
}
    .grid-hover .vc_gitem-row-position-bottom h4 {
        font-size: 20px;
        line-height: 28px;
    }
}
.grid-hover .vc-gitem-zone-height-mode-auto.vc-gitem-zone-height-mode-auto-4-3::before,
.grid-hover-horizontal .vc-gitem-zone-height-mode-auto.vc-gitem-zone-height-mode-auto-4-3::before {
    padding-top: 0 !important;
}
.vc_grid.vc_row .vc_grid-item.grid-hover .wpb_content_element,
.vc_grid.vc_row .vc_grid-item.grid-hover-horizontal .wpb_content_element {
    margin-bottom: 0;
}
.grid-hover .vc_gitem-row-position-bottom .vc_gitem-post-data {
    margin-bottom: 10px;
}
.grid-hover .vc_gitem-row-position-bottom .vc_gitem-post-data-source-post_date,
.grid-hover-horizontal .vc_gitem-row-position-bottom .vc_gitem-post-data-source-post_date {
    margin-bottom: 8px;
    color: #ccc;
}
/*横サムネイル*/
.grid-hover-horizontal .vc_gitem-zone-mini {
    display: flex;
}
.vc_grid-item.grid-hover-horizontal .wpb_single_image {
    width: 250px;
}
/*画像ZOOM hover END*/

.mobile-false .images-list:hover i,
.mobile-false .post-rollover:hover i,
.mobile-false .rollover:hover i,
.rollover-video:hover i,
.post-thumbnail-rollover::after {
    display: none;
}
/*該当する記事が見つかりませんでした*/
#post-0 {
  height: 30vh;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
}
#post-0 h1 {
    font-size: 23px;
}

/*========= タイトルスライド ===============*/

.title_content{
  overflow: hidden;/*左右アニメーションで画面からはみ出る際に出る横スクロールバーを隠す*/
}

/*全共通*/

.slide-in,.title_content .wpb_wrapper {
  overflow: hidden;
  display: inline-block;
}
.title_content h1 {
  display: inline-block;
}
.title_content .wpb_wrapper {
    opacity: 0;
}
.slideAnimeLeft-to-Right {
  animation-name:slideTextX100;
  animation-duration:1s;
  animation-delay: 0.3s;
  animation-fill-mode:forwards;
  opacity: 0;
}

@keyframes slideTextX100 {
  from {
  transform: translateX(-100%);
        opacity: 0;
  }

  to {
  transform: translateX(0);
    opacity: 1;
  }
}
.slideAnimeRightLeft {
  animation-name:slideTextX-100;
  animation-duration:1s;
  animation-delay: 0.3s;
  animation-fill-mode:forwards;
    opacity: 0;
}
@keyframes slideTextX-100 {
  from {
  transform: translateX(100%);
    opacity: 0;
  }
  to {
  transform: translateX(0);
    opacity: 1;
  }
}

/*========================================
CONTACT
========================================*/
@media screen and (max-width: 767px) {
    .table_contact td, .table_contact th {
        display: block;
        width: 100% !important;
    }
    table.table_contact th {
        padding-bottom: 0 !important;
    }
    .no-required {
        display: none;
    }
}
table.table_contact, table.table_contact td, table.table_contact th {
    border-color: transparent !important;
    padding: 8px 0 15px;
}
table.table_contact th {
    font-weight: normal;
    width: 35%;
}
table.table_contact th dl {
    display: flex;
}
table.table_contact th dt {
    width: 60px;
    margin-right: 20px;
    height: fit-content;
}
table.table_contact th dt.required {
    background-color: #ADD6CD;
    text-align: center;
    padding: 0 7px;
}
table.table_contact th dd {
    width: 75%;
}
table.table_contact th span {
    font-size: 12px;
    background-color: #ADD6CD;
    padding: 2px 4px;
}
input[type="text"], .widget_search input[type="text"].searchform-s, input[type="search"], input[type="tel"], input[type="url"], input[type="email"], input[type="number"], input[type="date"], input[type="range"], input[type="password"], select, textarea, .wpcf7-number, .woocommerce div.elementor .the7-elementor-widget form.cart table.variations td.value select, .the7-elementor-product-comments .elementor-field-textual, .elementor-field-group .elementor-field-textual, .elementor-field-group .elementor-select-wrapper select {
    border-color: #BBB;
    background-color: #E8E8E8;
    border-radius: 5px;
    padding: 15px 10px;
    width: 100%;
    color: #333;
}
input[type="submit"].but_send.but_grey {
    background-color: #ccc !important;
}
.but_send {
    margin: 20px auto;
    display: block !important;
}
.form_note {
    font-size: 11px;
    line-height: 1.8em;
    margin: 20px auto;
    width: fit-content;
}
/* ラジオボタン */
.visibility-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}
.mwform-radio-field-text {
    cursor: pointer;
    display: inline-block;
    padding: 5px 0 5px 30px;
    position: relative;
}
input[type=radio]:checked+.mwform-radio-field-text::after {
    opacity: 1;
}
.mwform-radio-field-text::before {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    position: absolute;
    left: 5px;
    top: 50%;
    transform: translateY(-50%);
    border: 1px solid #707070;
    background-color: #E8E8E8;
    border-radius: 50%;
}
.mwform-radio-field-text::after {
    content: "";
    display: block;
    width: 16px;
    /*12px*/
    height: 16px;
    /*12px*/
    border-radius: 50%;
    background-color: #ADD6CD;
    border: 2px solid #FFF;
    position: absolute;
    top: 50%;
    left: 6px;
    /*10px;*/
    transform: translateY(-50%);
    opacity: 0;
}
.preview_view {
    display: none;
}
.mw_wp_form_preview .preview_view {
    display: block;
    text-align: center;
    margin-bottom: 40px;
}
.mw_wp_form_preview .preview_hide {
    display: none;
}
/*========================================
TOPPAGE
========================================*/
.title_content h1 {
    margin-bottom: 0;
}
#services.vc_section {
    padding-bottom: 30px !important;
}
#services .grid-title {
    margin-bottom: 15px;
}
.grid_news_title,
.grid_news_title h3 {
    margin-bottom: 0 !important;
}
.grid_news_2col.vc_grid-item-zone-c-right .vc_gitem-zone-c {
    float: right;
    width: 57.5%;
}
.grid_news_2col.vc_grid-item-zone-c-right .vc_gitem-animated-block {
    float: left;
    width: 42.5%;
}
.project-list-content p {
    margin-bottom: 20px;
}
.grid_works_concept {
    font-size: 13px;
    margin-bottom: 10px;
    line-height: 20px;
}
.slider-wrapper .owl-next, .slider-wrapper .owl-prev {
    opacity: 1;
}
.slider-wrapper .owl-prev {
    left: -20px !important;
    top: 150px;
}
.slider-wrapper .owl-next {
    right: -20px !important;
    top: 150px;
}
.col_but_v_center {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}
.casestudy_num {
    font-size: 15px;
    margin-bottom: 10px !important;
    font-family: "Roboto", Helvetica, Arial, Verdana, sans-serif;
    font-weight: bold;
}

/*========================================
行数制限
========================================*/
.grid_works_explanation,
.grid_news_explanation_2,
.casestudy_sp .entry-excerpt,
.news_sp .entry-excerpt {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    /* 任意の行数を指定 */
}
.grid_news_explanation_3 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    margin: 10px 0;
    /* 任意の行数を指定 */
}
/*========================================
ボタン
========================================*/
.vc_btn3.vc_btn3-size-md {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}
.btn-triangle-gray a {
  position: relative;
  display: block;
  padding: 5px 0;
  background-color: #FFF;
  border-radius: 30px;
  font-size: 12px;
  color: #333;
  text-decoration: none;
  text-align: center;
  width: 160px;
  margin: 0 auto;
  border: 1px solid #333;
}
.btn a::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 27px;
    width: 0;
    height: 0;
    margin: auto;
    border-top: 6px solid transparent;
    border-right: 0 solid transparent;
    border-left: 9px solid #333;
    border-bottom: 6px solid transparent;
    box-sizing: border-box;
}
.btn a:hover::after {
    transition: 0.5s;
    border-left: 9px solid #FFF;
}
.btn.noarrow a::after {
    display: none;
}
/*カテゴリーリスト*/
.container_cat {
    display: flex;
}
.cat_name {
    width: 120px;
    font-size: 17px;
    margin-top: 2px;
    font-family: "Noto Sans JP", Helvetica, Arial, Verdana, sans-serif;
    font-weight: normal;
    font-style: normal;
}
em.cat_name {
    margin-left: 20px;
}
@media (max-width: 767px) {
    em.cat_name {
        display: block;
        margin-left: 0;
    }
}
.container_cat .cat_list ul {
    margin: 0;
}
.container_cat li {
    list-style: none;
    display: inline-block;
    padding: 0 4px;
}
.container_cat li a {
    position: relative;
    padding: 0 20px 0 10px;
    border: solid 1px #4A4A4A;
    font-size: 11px;
    color: #FFF;
    text-decoration: none;
    background: #4A4A4A;
}
.container_cat li a::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 8px;
    width: 0;
    height: 0;
    margin: auto;
    border-top: 4px solid transparent;
    border-right: 0 solid transparent;
    border-left: 6px solid #FFF;
    border-bottom: 4px solid transparent;
    box-sizing: border-box;
}
.btn-triangle-gray a:hover,
.container_cat li a:hover {
    background: #333;
    color: #FFF;
    transition: 0.5s;
}
.container_cat li a:hover::after {
    border-left: 6px solid #000;
    transition: 0.5s;
}
/*カテゴリーボタン*/
.category-news .container_cat li.category-news a,
.category-works .container_cat li.category-works a, 
.term-facility-development .container_cat li.facility a,
.term-brand-development .container_cat li.brand a, 
.term-business-development .container_cat li.business a,
.term-store-design .container_cat li.store a,
.term-promotion-2 .container_cat li.promotion a, 
.term-proposal-support .container_cat li.proposal a,
.term-consulting .container_cat li.consulting a,
.term-graphic-design-2 .container_cat li.graphic a, 
.term-web-design .container_cat li.web a,
.page-id-10843 .container_cat li.facility a,
.page-id-10836 .container_cat li.brand a, 
.page-id-10845 .container_cat li.business a,
.page-id-10834 .container_cat li.store a,
.page-id-10841 .container_cat li.promotion a, 
.page-id-10838 .container_cat li.proposal a,
.page-id-10832 .container_cat li.consulting a,
.page-id-10830 .container_cat li.graphic a, 
.page-id-10828 .container_cat li.web a
{
    background: #FFF;
    color: #333;
}
.category-news .container_cat li.category-news a::after,
.category-works .container_cat li.category-works a::after, 
.term-facility-development .container_cat li.facility a::after,
.term-brand-development .container_cat li.brand a::after, 
.term-business-development .container_cat li.business a::after,
.term-store-design .container_cat li.store a::after,
.term-promotion-2 .container_cat li.promotion a::after, 
.term-proposal-support .container_cat li.proposal a::after,
.term-consulting .container_cat li.consulting a::after,
.term-graphic-design-2 .container_cat li.graphic a::after, 
.term-web-design .container_cat li.web a::after,
.page-id-10843 .container_cat li.facility a::after,
.page-id-10836 .container_cat li.brand a::after, 
.page-id-10845 .container_cat li.business a::after,
.page-id-10834 .container_cat li.store a::after,
.page-id-10841 .container_cat li.promotion a::after, 
.page-id-10838 .container_cat li.proposal a::after,
.page-id-10832 .container_cat li.consulting a::after,
.page-id-10830 .container_cat li.graphic a::after, 
.page-id-10828 .container_cat li.web a::after {
    border-left: 6px solid #000;
}


/*システムボタン成型*/
.vc_btn3.vc_btn3-color-turquoise, .vc_btn3.vc_btn3-color-turquoise.vc_btn3-style-flat, input[type="submit"]:not([name="update_cart"]) {
    background-color: #ADD6CD !important;
    color: #333 !important;
    font-weight: normal !important;
    font-size: 14px !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
    padding-left: 30px !important;
    padding-right: 30px !important;
    border: none;
    border-radius: 30px !important;
}
.vc_general.vc_btn3:focus,
.vc_general.vc_btn3:hover,
.vc_btn3.vc_btn3-color-turquoise:hover,
input[type="submit"]:not([name="update_cart"]):hover {
    color: #f7f7f7 !important;
    background-color: #00a4b0 !important;
    border: none !important;
}
.vc_btn3.vc_btn3-color-grey, .vc_btn3.vc_btn3-color-grey.vc_btn3-style-flat {
    color: #fff !important;
    background-color: #4A4A4A !important;
    border: none !important;
}
.vc_btn3.vc_btn3-color-grey, .vc_btn3.vc_btn3-color-grey.vc_btn3-style-flat:hover {
    color: #333 !important;
    background-color: #ccc !important;
}
/*========================================
menu
========================================*/
.main-nav>li>a .menu-text {
    text-transform: uppercase;
}
.subtitle-text {
    display: none;
}
/*========================================
footer
========================================*/
.footer .widget {
    margin-bottom: 10px;
}
.footer a {
    text-decoration: none;
}
#before-footer1, #before-footer2 {
    text-align: center;
}
#before-footer1 a, #before-footer2 a {
    display: block;
    text-decoration: none;
    padding: 50px 0 40px;
}
#before-footer1 a {
    background-color: #F7F4EA;
}
#before-footer1 a:hover {
    background-color: #F3D268;
}
#before-footer2 a {
    background-color: #add6cd;
}
#before-footer2 a:hover {
    background-color: #00a4b0;
    color: #FFF;
}
/*#before-footer2 a:hover .ft_title span {
        border-left: 1px solid #FFF;
    }*/
.ft_title {
    font-size: 20px;
}
.footer-left img {
    margin-bottom: 20px;
}
.copyright {
    font-size: 0.9em;
}
.footer-content, .footer-sns ul {
    display: flex;
    justify-content: flex-end
}
.footer-content li {
    text-align: center;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
    .footer-content li {
  margin: 0 20px;
}
}
.footer-sns {
    display: flex;
}
.footer-sns li {
    margin-right: 10px;
}
.footer-sns li.googlemap {
    margin-top: 14px;
}
.footer-sns .vc_icon_element.vc_icon_element-outer .vc_icon_element-inner.vc_icon_element-size-md .vc_icon_element-icon {
    font-size: 2.8em !important;
}
.vc_icon_element.vc_icon_element-outer .vc_icon_element-inner {
  width: 3em !important;
  height: 3em !important;
}
.footer-sns .vc_icon_element {
    margin-bottom: 0 !important;
}
.footer-googlemap {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}
.footer-googlemap a img {
    width: 100%;
    max-width: 300px;
    margin-top: 40px;
    transition:0.5s;
}
.footer-googlemap a:hover img {
    opacity: 0.6
}
.ft_title span {
    font-family: "Libre Baskerville", Helvetica, Arial, Verdana, sans-serif;
}
@media screen and (max-width: 767px) {
    .footer-googlemap {
  align-items: inherit;
  justify-content: inherit;
}
    .footer-googlemap img {
  max-width: none;
  margin-top: 20px;
}
}
/*========================================
Case Studies / News / Works
========================================*/
.post_metadata {
    font-family: "Roboto", Helvetica, Arial, Verdana, sans-serif;
    font-size: 14px;
}
.list_news .post-entry-content {
    display: flex;
    flex-direction: column;
}
.list_news .entry-meta {
    order: 1;
}
.list_news .entry-title {
    order: 2;
    margin-bottom: 20px !important;
}
.list_news .entry-excerpt {
    order: 3;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    /* 任意の行数を指定 */
}
.list_news .details-type-link {
    order: 4;
    margin-top: 10px;
    width: fit-content;
}
.page-numbers.act {
    font-size: 1.4em !important;
    margin-top: -0.2em !important;
}
.paginator:not(.paginator-more-button) a, .paginator:not(.paginator-more-button) span {
    padding: 1px 4px !important;
}
@media screen and (min-width: 768px) {
    .list_casestudy .dt_portfolio {
        display: flex !important;
        flex-direction: row !important;
        margin-bottom: 50px;
    }
    .list_casestudy .post-thumbnail-wrap {
        width: 50%;
    }
    .list_casestudy .post-entry-content {
        width: 50%;
    }
}
@media screen and (max-width: 767px) {
    .post-entry-content {
        padding: 10px 0 25px !important;
    }
}
/*========================================
WORKS
========================================*/
body.single-dt_team #page {
    overflow: visible !important;
    /*sticky表示に必要*/
}
.works-info {
    position: sticky !important;
    top: 140px;
    height: 100%;
    margin-bottom: 80px;
}
.container_works_col .works-col:first-child {
    padding-right: 40px;
}
.works-col {
    width: 50%;
    margin-bottom: 80px;
}
.explanation {
    margin: 40px 0;
}
.single-dt_team dl {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.single-dt_team dt {
    width: 20%;
}
.single-dt_team dd {
    width: 80%;
}
.works-featureimg.forsp {
    margin: 0 -20px;
}
@media screen and (max-width: 767px) {
    .container_works_col {
        display: inherit !important;
    }
    .works-info {
        position: relative !important;
        height: inherit;
        top: 0;
        margin-bottom: 0;
    }
    .works-col {
        width: 100%;
    }
    .container_works_col .works-col:first-child {
        padding-right: 0;
    }
    .single-dt_team dl {
        display: inherit;
    }
    .single-dt_team dt {
        margin-top: 10px;
    }
}
/*========================================
スクロールダウン
========================================*/
.container-scrooldown {
    width: 100%;
    height: calc(100vh - 240px);
    display: flex;
    justify-content: center;
    position: absolute;
    align-items: flex-end;
    left: -2px;
}
.scrolldown {
    display: inline-block;
    vertical-align: middle;
    color: #333;
    line-height: 1;
    position: relative;
    width: 0.15em;
    height: 4em;
    background: currentColor;
    animation: arrowmove 3s ease-in-out infinite;
}
.scrolldown::before {
    content: '';
    width: 1.5em;
    height: 1.5em;
    border: 0.15em solid currentColor;
    border-top: 0;
    border-right: 0;
    transform: rotate(-45deg);
    transform-origin: bottom left;
    position: absolute;
    left: 50%;
    bottom: -0.05em;
    box-sizing: border-box;
}
@media screen and (max-width: 767px) {
     .container-scrooldown {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 10px;
         background-color:rgba(255,255,255,0.80);
    left: inherit;
    right: 10px;
    top: 64vh;
    align-items: flex-end;
         z-index: 999;
  }
    .scrolldown {
  height: 2em !important;
  animation: arrowmove-sp 3s ease-in-out infinite;
        margin-bottom: 8px;
}
    .scrolldown::before {
  width: 1em !important;
  height: 1em !important;
}
}
.container-scrooldown.hide {
    transition: all 1s;
    opacity: 0;
}
/*下からの距離が変化して全体が下→上→下に動く*/
@keyframes arrowmove {
    0% {
        bottom: 0%;
    }
    25% {
        bottom: 3%;
    }
    50% {
        bottom: 3%;
    }
    75% {
        bottom: 3%;
    }
    100% {
        bottom: 0%;
    }
}
@keyframes arrowmove-sp {
    0% {
        bottom: 0%;
    }
    25% {
        bottom: 25%;
    }
    50% {
        bottom: 25%;
    }
    75% {
        bottom: 25%;
    }
    100% {
        bottom: 0%;
    }
}
/*========================================
レスポンシブ
========================================*/
/*SP*/
@media (max-width: 767px) {
    body {
        font-size: 14px !important;
    }
    .vc_column-gap-20 .vc_col-sm-1\/5,
    .vc_column-gap-20 .vc_col-sm-3,
    .vc_column-gap-20 .vc_col-sm-2,
    .grid_top_works .vc_col-sm-3 {
        width: 50% !important;
    }
    .grid_top_works.vc_basic_grid .vc_grid.vc_row .vc_grid-item.vc_visible-item,
    .vc_column-gap-20 .vc_col-sm-3 {
        display: inline-block !important;
    }
    .container_cat {
        display: block !important;
    }
    .content ol, .content ul {
        margin: 0 0 10px 0 !important;
    }
    .grid_works_explanation {
        display: none;
    }
    .ft_title span {
        display: block;
        margin-top: 10px;
    }
    .footer-content {
        display: block !important;
        overflow: auto;
    }
    .news_pc, .casestudy_pc, .forpc {
        display: none !important;
    }
    .news_sp h3.entry-title, .casestudy_sp h3.entry-title {
        font-family: "Noto Sans JP", Helvetica, Arial, Verdana, sans-serif !important;
        line-height: 1.4em !important;
        margin-bottom: 0.8em !important;
    }
    /*トップページ*/
    .header_page, .title_content {
        margin: 30px 0 30px !important;
    }
    #services .grid-title {
        margin-bottom: 0;
    }
    /*aboutus*/
    .staff-post {
        display: block !important;
        height: auto !important;
    }
    /*フッター*/
    .footer-content li {
        text-align: left !important;
        margin-bottom: 5px;
        width: 50%;
        float: left;
    }
    .footer-sns li.googlemap {
        margin-right: calc(100vw - 290px) !important;
    }
    .footer-sns li {
        margin-right: 0 !important;
    }
    .vc_btn3.vc_btn3-size-md {
        padding-left: 5px;
        padding-right: 5px;
    }
    .footer-sns {
        display: block !important;
        height: auto !important;
        margin: 20px 0 !important;
    }
    .ft_title {
        font-size: 16px !important;
        margin-bottom: 20px;
    }
    .ft_title span {
        font-size: 20px;
    }
    /*サービス*/
    .wpb_tabs.tab-style-two.tab_workflow {
        padding: 10px !important;
        margin: 0 -25px !important;
    }
    .tab-style-two.wpb_tabs .wpb_tabs_nav {
        padding-left: 0 !important;
    }
    .tab-style-two.wpb_tabs .wpb_tabs_nav li a {
        font-size: 12px !important;
    }
    .links ul {
        font-size: 0.9em;
    }
    #footer .wf-container {
        display: flex;
        flex-wrap: wrap;
    }
    #footer #block-7 {
        order: 2;
    }
    #footer #block-8 {
        order: 1;
    }
    #footer #block-9 {
        order: 3;
    }
    /*調整20240402*/
    .container_cat li {
        padding-right: 5px;
        padding-bottom: 2px;
    }
    .cat_name {
        margin-bottom: 10px;
    }
    #before-footer1 a, #before-footer2 a {
        padding: 40px 0 30px !important;
    }
    .wpb_text_column.wpb_content_element.bg_semicircle_text {
        margin-bottom: 10px;
    }
}
/*TB*/
@media screen and (min-width:768px) and (max-width:1199px) {
    #main>.wf-wrap {
        padding: 0 20px 0 20px;
    }
}
@media screen and (min-width:768px) and (max-width:991px) {
    #services .vc_col-sm-6 {
        width: 33.333333%;
    }
    #services .title_content {
        margin-top: 0;
    }
    #services .col_but_v_center {
        margin: 20px auto 15px;
    }
    #services .forpc {
        display: none !important;
    }
}
/*TB&PC*/
@media screen and (min-width: 768px) {
    .single .project-slider,
    .single .post-thumbnail {
        margin-top: 100px;
    }
    .single-post .post_metadata,
    .single-post .single-entry-title,
    .single-portfolio .single-entry-title {
        padding: 0 200px;
    }
    .single .project-slider,
    .single .project-content,
    .single .post-thumbnail,
    .single .entry-content {
        padding: 20px 200px;
    }
    .articles-list {
        padding: 20px 100px;
    }
    .forsp {
        display: none !important;
    }
    .vc_section {
        padding-top: 50px !important;
        padding-bottom: 0 !important;
    }
    /*.ft_title span {
        border-left: 1px solid #333;
        margin-left: 20px;
        padding-left: 20px;
        font-size: 0.9em;
    }*/
}
/*sp menu*/
@media screen and (max-width: 1070px) {
    .menu-top {
        display: none !important;
    }
    .subtitle-text {
        display: block !important;
        font-size: 14px !important;
        margin-top: 10px;
    }
}
/*LANG SELECTOR*/
.lang-selector {
  display: flex;
  height: 90px;
  align-items: center;
  justify-content: flex-end;
  color: #929193;
}
.lang-selector a {
    text-decoration: none;
}

.lang-selector span::after {
  content: '';
  width: 20px;
  height: 3px;
  display: block;
  background-color: #929193;
  position: absolute;
}
@media screen and (min-width: 1400px) {
.lang-selector {
  position: absolute;
  right: -80px;
}
}
.ph-wrap .menu-box {
    position: relative;
}
.ph-wrap .menu-box .lang-selector {
    height: 60px;
}
.lang-selector.forsp {
    position: absolute;
    right: 65px;
    height: 60px;
    z-index: 999;
}
.slash {
  margin: 0 0.4em;
  font-size: 0.9em;
  line-height: 1;
}