@charset "UTF-8";

/* 印刷用レイアウト */
@page {
    margin: 10mm;
    size: 210mm 297mm;
    /* A4縦サイズの場合 */
}

@media print {

    /* 全体設定 */
    html {
        background: unset;
        background-repeat: unset;
    }

    body {
        -webkit-print-color-adjust: exact;
        /* 印刷時でも背景色や背景画像を表示 */
        width: 100%;
        /* 印刷時の全ページ幅を統一（px数値はお好みで） */
        zoom: 0.8;
        /* なるべく多くのブラウザで切れないようにするため */
    }

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

    header,
    footer,
    .top_bt,
    .sidebar,
    .pager,
    .addtoany_shortcode {
        display: none;
    }

    section{
        margin-bottom: 100px;
    }

    .inner {
        max-width: 1300px;
        margin-left: auto;
        margin-right: auto;
    }

    main.front_page {
        margin-top: 1em;
    }

    .main_page{
        margin-top: 0px;
        background-color: unset;
    }

    .page_content {
        margin-top: 0px;
        margin-bottom: 0rem;
        border-radius: unset;
        background-color: unset;
        box-sizing: border-box;
    }

    .page_main__area {
        margin-bottom: 3em;
        padding: 0rem;
        background-color: unset;
    }

    h1.page_tit{
        font-size: 1.75em;
    }

    .editor h1,
    .editor h2,
    .editor h3,
    .editor h4,
    .editor h5,
    .editor h6 {
        font-size: 1.5em;
    }

    .page_layout,
    .archive_layout {
        display: block;
    }

    .wp-block-columns {
        display: flex;
        flex-wrap: nowrap;
    }

    .page_child__item a {
        padding: 1.5em;
    }

    .page_tit{
        border-radius: unset;
        background: unset;
        box-shadow: unset;
    }

    .single_header{
        background: unset;
    }

/*====================================
 トップページ 
====================================*/
    /* メインビジュアル */
    .mainv_area{
        display: none;
    }

    /* 共通 */
    .front_page .editor h2 {
        font-size: 2.25em;
    }

    h2.top_tit {
        margin-bottom: 1.25em;
        font-size: 2.25em;
        font-weight: 600;
        letter-spacing: 2px;
        position: relative;
    }

    .circle_arrow {
        min-width: 60px;
        width: 60px;
        height: 60px;
        border: solid 2px var(--blue);
        position: relative;
        right: initial;
    }

    .circle_arrow::before {
        content: '';
        width: 20px;
        height: 2px;
        background-color: var(--blue);
        position: absolute;
    }

    .circle_arrow::after {
        content: '';
        width: 10px;
        height: 10px;
        border-top: 2px solid var(--blue);
        border-right: 2px solid var(--blue);
        transform: rotate(45deg);
        position: absolute;
        right: 20px;
    }

    .page_header{
        padding-bottom: 3em;
    }

    /* ニュースエリア */
    .news_post {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
        border-bottom: solid 1px var(--border);
    }

    .job-list {
        display: flex;
        flex-wrap: wrap;
        gap: 1.5em;
    }

    .job-list li {
        width: calc((100% - 4.5em) / 4);
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .job-category--link{
        padding: 1.5em 0.75em;
        width: 100%;
        display: flex;
        justify-content: center;
        border-radius: 15px;
        font-weight: 600;
    }

    .frontpage_jobs .job-category--link {
        font-weight: 600;
        background: var(--white);
        color: var(--blue);
        font-size: 1.35em;
        box-shadow: var(--shadow);
    }

    /* 活動紹介 */    
    .topics{
        display: grid;
        gap: 3em;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 3em;
        justify-items: start;
        align-items: baseline;
        position: relative;
    }

    .frontpage_topics {
        padding: 6em 4em;
    }

    .frontpage_topics .bt_area{
        margin-left: auto;
        margin-right: auto;
    }

    /* アーカイブページ */
    .archive_list .topics_list{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        gap: 3em 2em;
    }

    .archive_list .topics_item{
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .archive_list .topics_item .topics_img{
        box-shadow: unset;
    }

    .archive_list .topics_item .topics_img{
        margin-bottom: 0;
        width: calc(33.33% - 1em);
    }

    .archive_list .topics_item .topics_tx{
        width: calc(66.66% - 1em);
    }
}