/*
Theme Name: GENESIS Child
Theme URI:
Description:WordPressテーマ「GENESIS」の子テーマです。
Template: genesis_tcd103
Author: esu2
Author URI: 
Version: 1.0
*/

/* ----------------------------------------------------------------------
 トップページ ヘッダースライダー
---------------------------------------------------------------------- */
#header_slider .bg_image img { width:100%; height:auto; display:block; margin:0; object-fit:cover; }

/* ----------------------------------------------------------------------
　ページ上部　ヘッダー
---------------------------------------------------------------------- */
#header { z-index:300; position:sticky; top:0px; left:0px; width:100%; height:100px; border-bottom:none; background:url(img/bg_header.jpg)no-repeat; background-size: cover; transform: translate3d(0,0,0); transition: transform 0.5s ease, opacity 0.7s ease 0.1s; }
.header_img {
    width: 100%;
}
.home #header {
    background: none;
}
@media screen and (min-width:600px) {
    .sp_only {display: none;}
}
@media screen and (max-width:599px) {
    .pc_only {display: none;}
}

/* グローバルメニュー */
.home #global_menu > ul > li > a { color:#fff;}
#global_menu > ul > li > a {color: #fff; height: 100px; line-height: 100px;}
/* 検索フォーム */
#header_search {
    height: 100px;
}
#header_search .input_area {
    top: 30px;
}
#header_search .search_button input{
    height: 100px;
}
.home #header_search .search_button:before {
    display:block; font-family:'design_plus'; color:#ae962f; font-size:14px; content:'\e94c'; pointer-events:none; font-weight:600;
    left:calc(50% - 2px); top:calc(50% + 1px); transform: translate(-50%, -50%); position:absolute; transition: color 0.2s ease;
}
#header_search .search_button:before,
#header_search .search_button:hover:before {
    color: #fff !important;
}
/* レイアウト */
#container { background:#f5f5f1 !important;}

/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */
/* ロゴエリア */
#footer { border-top:none; }

/* TOP改修 */

body {
    background: #f5f5f1 !important;
}
#header_logo .logo_image {
    filter: brightness(0) saturate(100%) invert(91%) sepia(99%) saturate(38%) hue-rotate(254deg) brightness(107%) contrast(100%);
}


body #bread_crumb {
    max-width: none;
    padding: 20px;
    height: auto;
    margin-bottom:5rem;
}

#bread_crumb li.home a span {
    margin-left: -2em;
}

/* パンくずリストの折り返し表示 */
#bread_crumb {
    overflow: visible !important;
}
#bread_crumb ul {
    white-space: normal !important;
    overflow: visible !important;
    height: auto !important;
    min-height: 60px;
    line-height: 1.5 !important;
    word-wrap: break-word;
    overflow-wrap: break-word;
}
#bread_crumb li {
    word-wrap: break-word;
    overflow-wrap: break-word;
}
#bread_crumb li a{
    display: inline;
}
/* ホームアイコンの位置調整 */
#bread_crumb li.home a:before {
    vertical-align: middle !important;
    top: 0 !important;
}
@media screen and (max-width: 599px) {
    #bread_crumb {
        overflow: visible !important;
        overflow-y: visible !important;
    }
    #bread_crumb ul {
        height: auto !important;
        min-height: 50px;
        line-height: 1.5 !important;
    }
}
.header_mv {
    position: relative;
    z-index: 1;
}
.header_lead {
    position: relative;
    margin-top: -12rem;
    background: url(img/bg_lead.png) top center no-repeat;
    background-size: contain;
    width: 100%;
    min-height: 700px;
    aspect-ratio: 2568/1361;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10rem 0;
}

@media screen and (max-width:1100px) {
    .header_lead {
        background: url(img/bg_lead_sp.png) bottom no-repeat;
        aspect-ratio: 1280/951;
        background-size: contain;
        margin-top: -3rem;
        min-height: auto;
        padding: 2rem;
    }
    .header_lead_txt {
        max-width: 70%;
    }
}


#content_builder {
    margin-top: -8rem;
    position: relative;
}
@media screen and (max-width:1100px) {
    #content_builder {
        margin-top: 0;
    }
}

/* PICKUPバナー */
.cb_design_content {
    width: 100%;
    background: url(img/bg_pickup.svg) top center no-repeat;
    background-size: contain;
    padding: 100px 5rem 0;
    aspect-ratio: 643/344;
}
@media screen and (max-width:1100px) {
    .cb_design_content {
        padding: 3rem 3rem 0;
    }
}

.cb_design_content .title_area {
    background: url(img/tit_pickup.svg) top center no-repeat;
    margin: 0 auto;
    width: 100% !important;
    height: auto !important;
    display: block;
}
@media screen and (max-width:1100px) {
    .cb_design_content .title_area {
        background: url(img/tit_pickup.svg) top center no-repeat;
        background-size: contain;
        margin-bottom: 1rem;
    }
}
#cb_content_1 h3.large_headline span {
    text-indent: -9999px !important;
}
.cb_design_content .cb_design_header {
    margin-bottom: 0;
}
.cb_design_content .item_list{
    padding: 0;
}

#top_topics_list {
    padding: 0;
}
#archive_header {
    margin-bottom: 30px !important;
    margin-top: 30px;
}
#top_topics_list #archive_header .title_area {
    background: url(img/tit_topics.png) top center no-repeat;
    background-size: contain;
    margin: 0 auto;
    width: 100%;
    aspect-ratio: 2160 / 434;
    text-indent: -9999px;
    padding-right: 0;
}
#cb_content_2.cb_news_list {
    padding: 3rem 0;
}

.cb_free_space:nth-child(even){
    background: none;
}

.shutter_image.link_ver .post_list a:after{
    background:#3b9a39 !important;
}
#copyright {
    background:#3b9a39 !important;
}
#footer_img {
    background: #fff;
}
#footer {
    background: #fff;
}
#footer_inner {
    padding:0rem 3rem 2rem;
}

#body #header #global_menu > ul > li.current-menu-item > a {
    color: #fff !important;
}
#body #header #global_menu > ul > li.current-menu-item > a:hover{
    color: #ae962f !important;
}


.post_tags {
    padding: 0 0 10px 0;
    color: #ae962f;
    font-weight: bold;
    line-height: 1.6;
}
.single_post_tags {
    padding: 20px 0 10px 0;
    color: #ae962f;
    font-weight: bold;
}
.post_tags span {
    padding-right: 0.8em;
}
.single_post_tags span {
    padding-right: 1em;
}
.post_content p {
    line-height: 2;
}

/*-------------------------------------------
お問い合わせフォーム
-------------------------------------------*/
/* .form-container{
    display: flex;
    align-items: center;
    margin-bottom: 30px;
    flex-wrap: wrap;
}
.form-container p{
    margin: 0;
}
label.form-content{
    display: flex;
    align-items: center;
    width: 30%;
}
label.form-content span{
    font-weight: bold;
    margin-right: 8px;
}
div.form-content{
    width: 70%;
}
@media screen and (max-width: 750px){
    label.form-content{
        width: 100%;
    }
    div.form-content{
        width: 100%;
    }   
}
.form-content input[type="text"],
.form-content input[type="email"],
.form-content textarea{
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding: 5px 10px;
    border: 1px solid #ccc;
    background: #fff;
    box-shadow: 1px 1px 5px 0 rgb(0 0 0 / 10%) inset;
}
#contact_tel .form-content input[type="text"]{
    width: 25%;
}
.form-content textarea{
    width: 100%;
    height: 200px;
    resize: none;
}
span.require{
    line-height: 1;
    display: inline-block;
    padding: 4px;
    font-size: 12px;
    font-weight: bold;
    color: #fff;
    background: #e60000;
}
.form-content .error{
    margin-top: 8px;
}

.mwform-radio-field-text{
    margin-right: 10px;
}

#submit_comment_wrapper input[type="submit"]{
    color: #fff;
    background: #e60000;
    border: none;
    cursor: pointer;
    font-size: 14px;
    width: 200px;
    height: 50px;
    margin: 15px auto 0;
    display: block;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    font-weight: bold;
}
#submit_comment_wrapper input[type="submit"].back{
    color: #000;
    background: #eee;
}

div.grecaptcha-badge{
    bottom: 70px !important;
    z-index: 1;
} */


.interview-article-info-wrap {
    border-top: 1px solid #ddd;
    padding-top: 20px;
    padding-bottom: 5vh;
    margin-top: 10vh;
}
.interview-article-info-wrap h2{
    padding-bottom: 20px;
    font-weight: normal;
    font-family: var(--tcd-font-type1);
    font-size: 450%;
    font-weight: 600;
}
.interview-article-info {
    display: flex;
}
.interview-profile-photo-wrap {
    width: 40%;
}
.interview-company-info {
    width: 60%;
    padding: 0 20px;
    line-height: 1.6;
}
img.interview-profile-photo {
    width: 100%;
}
.interview-position {
    font-size: 120%;
    padding-bottom: 5px;
}
.interview-company-name {
    font-size: 200%;
    font-weight: bold;
}
.interview-person-name {
    font-size: 200%;
    padding-bottom: 10px;
}
.interview-detail-section {
    padding: 8px 0;
    line-height: 1.6;
}
.interview-site-link a {
    color: #ae962f;
}


.post_content h2 {
    font-size: 26px;
    padding:0.5em 1em !important;
    border-left:3px solid #ae962f;
    text-align: left;
}
.post_content h3 {
    font-size: 20px;
    color: #ae962f;
}
.post_content h4 {
    font-size: 16px;
}
body.home.header_slider_layout_type2 #header {
    position: absolute;
}
#drawer_menu_button{
    width: 60px;
    height: 60px;
    display: block;
    position: absolute;
    right: 0;
    top: 15px;
}
#drawer_menu_button span {
    background-color:#fff;
}
.home #drawer_menu_button span {
    background-color:#ae962f;
}
#main_col {
    width: 100%;
}
#side_col {
    width: 100%;
    margin: 100px auto;
}
#bread_crumb.animate,
#page_header .design_header,
#page_header .desc_area{
    max-width: 1700px; 
}
#page_contents {
    max-width: 1700px;
    margin: 0 auto;
}
body.single #bread_crumb{
    max-width: 1700px;
}
#single_post_header{
    max-width: 1700px; 
    width: 100%;
}
#footer_nav ul {
    display: flex;
    justify-content: center;
    align-items: center;
}