/*
Theme Name: Monolith Child theme
Description: Theme for 黒潮生物研究所
Author: Stephan Wilms
Template: monolith_tcd042
Version: 1.0
*/

#post_title {
    margin: 0 0 30px;
}
.post_content p {
    line-height: 2.0;
    margin: 0 0 1em 0;
}
.post_content h2,
.pb-widget-headline h3 {
    font-size: 200% !important;
    font-weight: normal !important;
    color: #00698C !important;
    padding: 10px 0 10px !important;
    margin: 0 0 30px !important;
    border-bottom: 1px solid #00698C;
}
.post_content h3 {
    margin: 0 0 20px 0;
}
.tcd-pb-widget h3,
.tcd-pb-widget h4,
.tcd-pb-widget h5,
.tcd-pb-widget h6,
.uagb-column__inner-wrap h3,
.uagb-column__inner-wrap h4,
.uagb-column__inner-wrap h5,
.uagb-column__inner-wrap h6 {
    margin-top: -10px;
}
.uagb-columns__wrap,
.uagb-column__inner-wrap {
    padding: 0 !important;
}
.uagb-column__wrap:last-child {
    padding-right: 0;
    margin-right: 0;
}

/* ヘッダーメニュー */
.pc #global_menu > ul > li.current-menu-ancester > a {
    color: #00698C;
}
.pc #global_menu li.menu-item-has-children.current-menu-ancester {
    color: #00698C;
}
.pc #global_menu li.menu-item-has-children {
    cursor: default;
}
.pc #global_menu ul ul {
    top: 110px;
    left: 10px;
}
.pc #global_menu > ul > li::after {
    content: "\f0d7";
    font-family: "Font Awesome 5 Free";
    font-size: 14px;
    display: block;
    text-align: center;
    margin: -58px 0 0 0;
    color: #666;
}
.pc #global_menu > ul > li:hover::after {
    color: #00698C;
}

.pc #global_menu > ul > li:not(.menu-item-has-children)::after {
    content: "\f0d7";
    font-family: "Font Awesome 5 Free";
    font-size: 14px;
    display: block;
    text-align: center;
    margin-top: -58px;
    opacity: 0;
}

/* Try avoid sub-menus (of the main menu) to exceed the right edge of the browser */
.pc #global_menu ul ul {
    width: 13vw;
    min-width: 120px;
    max-width: 190px;
}
/* Deal with right most sub-menu */
.pc #global_menu ul li:last-child ul {
    left: auto;
    right: 20px;
}

/* ヘッダーコンテンツ */
#header_content {
  width:1250px; margin:0 auto 80px; padding:0 25px 0;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#header_content .item { float:left; width:240px; height:528px; overflow:hidden; position:relative; opacity:0; }
#header_content .item.active {
  -webkit-transform: translateY(50px); transform: translateY(50px);
  -webkit-animation: moveUp 0.65s ease forwards 1.0s; animation: moveUp 0.65s ease forwards 1.0s;
}
@-webkit-keyframes moveUp {
	0% { }
	100% { -webkit-transform: translateY(0); opacity: 1; }
}
@keyframes moveUp {
	0% { }
	100% { -webkit-transform: translateY(0); transform: translateY(0); opacity: 1; }
}
#header_content img,
#header_content source {
  display:block; width:240px; height:auto;
  -webkit-transition: all 0.75s ease; -moz-transition: all 0.75s ease; transition: all 0.75s ease;
  -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); transform: scale(1);
  -webkit-backface-visibility:hidden; backface-visibility:hidden;
}
#header_content .item:hover img,
#header_content .item:hover source {
  -webkit-transform: scale(1.2); -moz-transform: scale(1.2); -ms-transform: scale(1.2); -o-transform: scale(1.2); transform: scale(1.2);
}
#header_content .image:before {
  width:240px; height:528px; display:block; content:'';
  background:rgba(0, 105, 140, 0.5);
  position:absolute; z-index:2;
  opacity:0; -webkit-transition: opacity 0.6s; transition: opacity 0.6s;
}
#header_content .item:hover .image:before { opacity:1; }
#header_content .desc {
  display:block; width:240px; padding:0 30px; color:#fff; line-height:200%; font-size:15px; text-decoration:none; z-index:3; text-align:left;
  position:absolute; top:50%; -webkit-transform:translateY(-50%); -ms-transform:translateY(-50%); transform:translateY(-50%);
  opacity:0; -webkit-transition: opacity 0.6s; transition: opacity 0.6s;
 -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#header_content .item:hover .desc { opacity:1; }

#header_content .catch {
  display:block;
  width: 80%;
  margin: 0 10%;
  background-color: rgba(0, 105, 140, 0.8);
  padding:0 30px; color:#fff; line-height:200%; font-size:15px; text-decoration:none; z-index:4; text-align:center; position:absolute; bottom:10%; font-weight:200; opacity:1; -webkit-transition: opacity 0.6s; transition: opacity 0.6s;
 -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#header_content .item:hover .catch { opacity:0; }

#index_project {
    margin: 0 auto 90px;
}
#index_project .catchphrase {
    margin: 0 0 25px 0;
}
#index_news,
#index_blog {
    padding: 0 25px 0;
}

/* Top Page - Zukan Banner */
#index_zukan-banner_block {
    text-align: center;
    width: 100%;
    padding: 50px 0;
    margin-bottom: 60px;
    background-color: #f2f2f2;
}
#index_zukan-banner_image {
    width: 1200px;
    margin: 0 auto;
    position: relative;
    box-sizing: border-box;
}
#index_zukan-banner_image img {
    width: 1200px;
}
#index_zukan-banner_block a::before {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    background-color: rgba(30, 75, 110, 0);
    transition-property: background-color;
    transition-duration: .4s;
}
#index_zukan-banner_block a:hover::before {
    background-color: rgba(15, 36, 55, 0.7);
}

/* Top Page - Feature (Video background) */
#index_feature_block {
    width: 100%;
    padding: 50px 0;
    margin-bottom: 100px;
    background-color: #f2f2f2;
}
#index_feature_video {
    width: 1250px;
    padding: 0 25px 0;
    margin: 0 auto;
    position: relative;
    box-sizing: border-box;
}
#index_feature_video a::before {
    content: '';
    width: 1200px;
    height: 100%;
    background-color: rgba(0, 105, 140, 0.5);
    display: block;
    position: absolute;
    transition-property: background-color;
    transition-duration: .4s;
}
#index_feature_video a:hover::before {
    background-color: rgba(0, 105, 140, 0.8);
}
#index_feature_video h2 {
    position: absolute;
    top: 21%;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    color: white;
    text-align: center;
    font-size: 55px;
    letter-spacing: normal;
    text-shadow: 4px 4px 10px rgba(0, 0, 0, .3);
    transition-property: letter-spacing;
    transition-duration: 1s;
}
#index_feature_video a:hover h2 {
    letter-spacing: 4px;
}
#index_feature_video a #index_feature_video_catch {
    width: 1200px;
    height: 120px;
    position: absolute;
    bottom: 0;
    left: 25px;
    background-color: rgba(0, 0, 0, 0.3);
    transition-property: background-color;
    transition-duration: 1s;
}
#index_feature_video a:hover #index_feature_video_catch {
    background-color: rgba(255, 255, 255, 0.7);
}
#index_feature_video p {
    padding: 18px 20px;
    color: rgba(158, 235, 217, 1);
    text-align: center;
    font-size: 22px;
    line-height: 2;
    transition-property: color, background-color;
    transition-duration: 0.6s;
}
#index_feature_video a:hover p {
    color: #00698C;
}
#index_feature_video h2::before,
#index_feature_video h2::after {
    font-style: normal;
    font-variant: normal;
    font-family: "Font Awesome 5 Free";
    font-size: 60px;
    font-weight: 900;
    -webkit-font-smoothing: antialiased;
    text-rendering: auto;
    color: rgba(158, 235, 217, 1);
    transition-property: color;
    transition-duration: .6s;
}
#index_feature_video h2::before {
    content: "\f4d6";
    margin-right: 15px;
}
#index_feature_video h2::after {
    content: "\f0a9";
    margin-left: 15px;
}
#index_feature_video a:hover h2::before,
#index_feature_video a:hover h2::after {
    color: white;
}
#index_feature_bgd {
    background-color: #00698C;
}

#index_blog_image {
    margin: 0 auto 80px;
}

#index_blog .index_blog_link {
    top: 18px;
}


/* 一般 ---------------------------------------------------------------------- */

/* Submenu*/
#side_col nav {
    background-color: #f7f7f7;
    padding-top: 20px;
    padding-left: 20px;
    border-top: 10px solid #00698C;
    border-bottom: 2px solid #00698C;
}
#side_col {
    width: 250px;
}
#side_col nav .sub-menu {
    padding-top: 15px;
    padding-left: 20px;
}
nav.submenu li {
    margin-bottom: 20px;
}
#side_col nav .sub-menu li {
    margin-bottom: 15px;
}
#side_col nav .sub-menu li:last-child {
    margin-bottom: 20px;
}
nav.submenu li ul.sub-menu li a {
    color: initial;
    font-size: 80%;
}
nav.submenu li.current-menu-item a {
    color: #00698C;
}
nav .submenu-title {
    font-size: 1.2rem;
    margin-bottom: 20px;
}
/* Zukan Search */
#zukan-search {
    background-color: #f7f7f7;
}
#zukan-search h3 {
    color: white;
    background-color: #00698C;
    font-size: 120%;
    padding: 20px;
    font-weight: normal;
    text-align: center;
    line-height: 1.5;
}
#zukan-search .textwidget {
    font-size: 0.8rem;
    line-height: 1.5;
    padding: 20px;
}
#searchform {
    text-align: center;
    border-top: 4px solid #00698C;
    border-bottom: 4px solid #00698C;
}
#searchform label {
    display: none;
}
#searchform input[type="text"] {
    width: 90%;
    height: 30px;
    margin-top: 20px;
    border: 1px solid #d2d2d2;
    border-radius: 2px;
    padding: 0 15px;
    font-size: 1.1rem;
}
#searchform input[type="submit"] {
    width: 40%;
    height: 30px;
    color: white;
    background-color: #00698C;
    border-radius: 15px;
    border: 1px solid #00698C;
    margin: 20px auto;
    padding-top: 0.25em;
}
#searchform input[type="submit"]:hover {
    color: #00698C;
    background-color: white;
}

/* Blog Categories Widget */
#sidebar-blog {
    background-color: #f7f7f7;
}
#sidebar-blog h3 {
    color: white;
    background-color: #00698C;
    font-size: 120%;
    padding: 20px;
    font-weight: normal;
    text-align: center;
}
#sidebar-blog ul {
    padding: 20px;
}
#sidebar-blog ul li {
    padding: 5px 0;
}
#sidebar-blog .sidebar-html {
    border-top: 4px solid #00698C;
    border-bottom: 4px solid #00698C;
}
#sidebar-blog .sidebar-link {
    /* color: #00698C; */
    padding: 10px 20px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 4px 2px;
    cursor: pointer;
}
#sidebar-blog .sidebar-link:hover {
    color: #00698C;
}
#sidebar-blog .sidebar-link::after {
    content: "\f35d";
    margin-left: 5px;
    font-size: 80%;
    font-style: normal;
    font-variant: normal;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    -webkit-font-smoothing: antialiased;
    text-rendering: auto;
}

/*   */
.wp-block-image figcaption {
    line-height: 1.7;
}
.wp-block-file a::before {
    font-style: normal;
    font-variant: normal;
    content: "\f1c1";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    -webkit-font-smoothing: antialiased;
    text-rendering: auto;
    margin-right: 10px;
}

/* Footer */
#footer_menu {
    margin: 0 25px 0 0;
}
#footer_menu a:hover {
    text-decoration: none !important;
}
#footer_widget {
    width: auto;
    margin-right: 25px;
}
#footer_widget .footer_headline {
    margin: 0 0 18px 0;
    cursor: default;
}
#footer_widget li {
    padding: 0;
    margin: 0 0 3px;
}
#footer_widget li a {
    color: #666;
}
#footer_widget li a:hover {
    color: #00698C;
}

/* プロジェクト (single) ------------------------------------------------------ */
#project_side_content,
#project-donation {
    background: #f4f4f4;
    padding: 35px 25px 10px;
}
#project_side_content h3,
#project-donation h3 {
    margin: -35px -25px 30px;
}
#project_side_content .post_content p {
    line-height: 2;
}
#project-donation {
    line-height: 2.0;
    margin-top: 30px;
}
#project-donation h3 {
    background-color: #00698C;
    height: 45px;
    line-height: 45px;
    color: white;
    text-align: center;
}
#project-donation h2.give-form-title {
    text-align: center;
}
#project-donation button.give-btn {
    font-size: 1em;
    font-weight: bold;
    color: white;
    width: 110%;
    padding: 8px 0px;
    margin: 0 0 0 -5%;
    line-height: 1.4em;
    background-color: #ff530d;
    border: 4px solid #fff;
    border-radius: 24px;
    transition-property: background-color;
    transition-duration: 0.3s;
}
#project-donation button.give-btn:hover {
    background-color: #00698C;
}

.uagb-timeline-content h4 {
    font-size: 130%;
}
.uagb-timeline-content a:hover {
    text-decoration: none;
}
.uagb-timeline-content a::after {
    content: "\f0a9";
    margin-left: 5px;
    font-style: normal;
    font-variant: normal;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    -webkit-font-smoothing: antialiased;
    text-rendering: auto;
    transition-property: margin-left;
    transition-duration: .6s;
}
.uagb-timeline-content a:hover::after {
    margin-left: 15px;
}

/* 情報公開 ------------------------------------------------------------------- */
.table-info td {
    line-height: 1.6;
    border: 2px solid #fff;
}
.table-info tr:nth-child(odd) {
    background-color: #f2f2f2;
}
.table-info tr:nth-child(even) {
    background-color: #fafafa;
}
.table-info tr:nth-child(odd) td:first-child {
    background-color: #e7e7e7;
}
.table-info tr:nth-child(even) td:first-child {
    background-color: #efefef;
}
.table-info td:first-child {
    font-weight: bold;
}

.table-info-2col td:first-child {
    width: 170px;
}

.table-info-3col td:first-child {
    width: 130px;
}
.table-info-3col td:nth-child(2) {
    width: 170px;
}

.table-info-4col td:first-child {
    width: 70px;
}
.table-info-4col td:nth-child(2) {
    width: 55px;
}
.table-info-4col td:nth-child(3) {
    width: 160px;
}

/* 施設 ---------------------------------------------------------------------- */
#template-facilities .post_content .wp-block-image {
    float: left;
}
#template-facilities .post_content .wp-block-image:last-of-type {
    float: right;
    margin-bottom: 50px;
}
#template-facilities .post_content section {
    padding-left: 0;
    padding-right: 0;
}
#template-facilities .post_content section .wp-block-media-text {
     align-items: start;
}
#template-facilities .post_content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
     padding-left: 0;
}
#template-facilities .post_content .wp-block-media-text.has-media-on-the-left .wp-block-media-text__content {
     padding-right: 0;
}
#template-facilities .post_content div.divider-border-bottom {
    border-bottom: 1px solid #666;
    margin-bottom: 1em;
}

#template-facilities p.has-small-font-size {
    color: #999;
    margin-bottom: 20px;
}
#template-facilities .post_content .wp-block-table {
    background-color: #eee;
}
#template-facilities .post_content .wp-block-table td {
    border: 2px solid white;
}
#template-facilities .post_content .wp-block-table td:first-child {
    width: 170px;
    background-color: #e2e2e2;
}
#template-facilities .post_content .wp-block-table td:nth-child(2) {
    width: 90px;
}
#template-facilities .post_content .facilities-equipment {
    padding-top: 10px;
    padding-bottom: 5px;
    margin-bottom: 40px;
}
#template-facilities .post_content section.uagb-section__wrap p {
    font-weight: bolder;
}
#template-facilities .post_content .wp-block-file {
    float: left;
    background-color: #eee;
    padding: 15px 10px;
    margin-right: 5px;
}
#template-facilities .post_content .wp-block-file:last-of-type {
    margin-right: 0;
}
#template-facilities .post_content section.uagb-section__wrap::after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    font-size: 0.1em;
    line-height: 0;
    visibility: hidden;
    overflow: hidden;
}

/* 刊行物 -------------------------------------------------------------------- */
#template-research h3 {
    margin: 50px 0 10px;
}
#template-research .wp-block-file.excel-file a::before {
    font-style: normal;
    font-variant: normal;
    content: "\f56d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    -webkit-font-smoothing: antialiased;
    text-rendering: auto;
    margin-right: 10px;
}

#archive-current h2,
#archive-kuroshio-biosphere h2 {
    font-size: 130%;
}
#archive-current ol,
#archive-kuroshio-biosphere ol {
    margin: 60px 0;
}
#archive-current ol li,
#archive-kuroshio-biosphere ol li {
    padding: 25px 0;
    border-top: 1px solid #ddd;
}
#archive-current ol li:last-child,
#archive-kuroshio-biosphere ol li:last-child {
    border-bottom: 1px solid #ddd;
}
#archive-current .entry-date,
#archive-kuroshio-biosphere .entry-date {
    margin-right: 25px;
}
#archive-current .title,
#archive-kuroshio-biosphere .title {
    font-size: 150%;
}

#single-publ-current {
    margin: 30px 0;
}
#single-publ-current figure {
    float: left;
    width: 25%;
}
#single-publ-current table {
    float: right;
    width: 70% !important;
}
#single-publ-current table td:last-child {
    width: 6em;
}
#single-publ-current table td {
    border: 0;
}
#single-publ-current table tr {
    border-top: 1px solid #e2e2e2;
}
#single-publ-current table tr:last-child {
    border-bottom: 1px solid #e2e2e2;
}
#single-publ-current .wp-block-file {
    float: left;
    background-color: #eee;
    padding: 15px 10px;
    margin-left: 5%;
}

#single-publ-biosphere section.uagb-section__wrap {
    padding-left: 0;
    border-bottom: 1px solid #e2e2e2;
}
#single-publ-biosphere section.uagb-section__wrap::after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    font-size: 0.1em;
    line-height: 0;
    visibility: hidden;
    overflow: hidden;
}
#single-publ-biosphere .uagb-section__inner-wrap p {
    border-left: 4px solid #00698C;
    padding-left: 1em;
}
#single-publ-biosphere .wp-block-file {
    float: left;
    background-color: #eee;
    padding: 15px 10px;
    margin-bottom: 0.5em;
}

/* 研究員について ------------------------------------------------------------- */
#template-institute .wp-block-columns {
    flex-wrap: nowrap;
}
#template-institute .wp-block-column {
    margin: 0;
}

/* 研究員 -------------------------------------------------------------------- */
figure.quote-overlay-right,
figure.quote-overlay-left {
    position: relative;
}
figure.quote-overlay-right figcaption,
figure.quote-overlay-left figcaption {
    position: absolute;
    max-width: 38%;
    color: white;
    font-size: 1.4em;
    line-height: 1.7;
    padding: 1em;
    background-color: rgba(0, 105, 140, 0.8);
}
figure.quote-overlay-right figcaption {
    right: 8%;
    bottom: 0;
    -webkit-transform:translateY(-60%);
    -ms-transform:translateY(-60%);
    transform:translateY(-0%);
}
figure.quote-overlay-left figcaption {
    left: 8%;
    bottom: 0;
    -webkit-transform:translateY(-30%);
    -ms-transform:translateY(-30%);
    transform:translateY(-0%);
}
.researcher-cv ul {
    list-style: none;
    margin: 0;
}
.researcher-cv li {
    line-height: 1.4;
    padding: 3px 0;
}

/* いきもの図鑑 --------------------------------------------------------------- */
#zukan-intro {
    padding-bottom: 5px;
    margin-bottom: 30px;
    border-bottom: 1px solid #ccc;
}

#blog_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 30px;
}
#blog_list li {
    width: 100%;
    background-color: black;
}
#blog_list li,
#blog_list li:nth-child(3n) {
    margin: 0;
}
#blog_list .image {
    width: 100%;
    height: 230px;
}
#blog_list .image img,
#blog_list li .image img,
#blog_list li .zukan-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#blog_list li .zukan-image img {
    object-fit: contain;
}

.single-creature #post_image {
    margin-top: 30px;
}
.single-creature #post_image img {
    width: auto;
    height: auto;
}
#single-creature section.zukan-images .uagb-section__inner-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto;
    grid-gap: 10px;
    align-items: end;
}
#single-creature h3 {
    font-size: 1.5rem;
    margin: 0 0 5px 0;
}
#single-creature h4 {
    font-size: 1.3rem;
    margin: 0 0 25px 0;
}

/* ブログ -------------------------------------------------------------------- */
#blog-intro {
    width: 1250px;
    padding: 0 25px 0;
    margin: -20px auto 30px;
    box-sizing: border-box;
}
#blog-intro p {
    font-size: 0.8rem;
    display: inline-block;
    padding: 5px 8px 4px;
    background-color: rgba(0, 105, 140, 0.1);
    border: 1px solid rgba(0, 105, 140, 0.3);
    border-radius: 3px;
    transition-property: background-color;
    transition-duration: 0.2s;
}
#blog-intro p:hover {
    background-color: rgba(0, 105, 140, 0.3);
}
#blog-intro p a {
    color: #00698C;
}

/* 寄付 ---------------------------------------------------------------------- */

/* Overriding a properties on the donation page that are different from the plugin/widget */
#donation-settings.as-page,
#payjp-form.as-page {
    background-color: #f2f2f2;
    padding: 20px;
    margin-bottom: 10px;
}

#donation-settings.as-page ul {
    margin: 0 10px 20px;
}
#donation-settings.as-page #amount-button {
    margin: 15px 0;
}
#donation-settings.as-page p#message {
    font-size: 1.1rem;
}

#payjp-form.as-page input#simplepayjppayment-mail[name=user_mail],
#payjp-form.as-page input#simplepayjppayment-name[name=user_name] {
    margin: 5px 0 25px;
}
#payjp-form.as-page input {
    width: 240px;
}
#payjp-form.as-page input[type=button] {
    width: 157px;
}
#payjp-form.as-page #payjp_checkout_box {
    text-align: left;
}


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

    .pc #global_menu > ul > li > a {
        padding: 0 20px;
    }

    body,
    #header {
        min-width: 100%;
    }
    #header_inner,
    #main_contents {
        width: 1020px;
        margin: 0 auto;
    }
    #header_content {
        width: 1020px;
        margin: 0 auto 80px;
        padding: 0 25px 0;
    }
    #header_content .item {
        width: 194px;
        height: 427px;
    }
    #header_content img,
    #header_content source {
        width: 100%;
    }
    #header_content .image:before {
        width: 100%;
        height: 100%;
    }
    #header_content .desc {
        width: 194px;
    }
    #header_content .catch {
        width: 80%;
        margin: 0 10%;
        padding: 0 5px;
    }

    #bread_crumb {
        margin: 15px 25px 0;
        min-width: 90%;
    }

    #main_col {
        width: 100%;
    }
    #left_col {
        width: 75%;
    }
    #side_col {
        width: 20%;
    }

    #index_news,
    #index_project,
    #index_blog {
        width: 100%;
    }

    #index_project {
        margin: 50px auto 50px;
    }
    .index_news_list {
        margin: 0 0 20px 0;
    }
    #index_event_list {
        padding: 0 0 20px 0;
    }

    #project_list li {
        width: 242px;
        height: 242px;
    }

    #index_zukan-banner_block {
        margin-bottom: 4vw;
    }
    #index_zukan-banner_image,
    #index_zukan-banner_image img {
        width: calc(100% - 25px);
    }

    #index_feature_block {
        margin-bottom: 4vw;
    }
    #index_feature_video {
        width: 100%;
    }
    #index_feature_video a::before {
        width: calc(100% - 50px);
    }

    #index_feature_video h2 {
        font-size: 40px;
        top: 23%;
    }
    #index_feature_video h2::before,
    #index_feature_video h2::after {
        font-size: 40px;
    }
    #index_feature_video a #index_feature_video_catch {
        width: calc(100% - 50px);
        height: 100px;
    }
    #index_feature_video p {
        font-size: 18px;
        padding: 13px 14px;
    }

    #blog_list {
        grid-template-columns: repeat(3, 32%);
        grid-gap: 20px;
    }
    #blog_list .image {
        width: 100%;
        height: 15vw;
    }

    #footer_top {
        min-width: 100%;
    }
    #footer_top_inner {
        width: auto;
        margin: 0 25px;
    }
    #footer_menu_widget_area {
        width: auto;
    }
    #footer_bottom {
        min-width: 100%;
    }
    #footer_bottom_inner {
        width: 100%;
    }

}

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

    #header_inner,
    #header_content,
    #main_contents {
        width: 100%;
    }

    #header_content .item {
        width: 20%;
        height: calc(20vw * 2.0);
    }

    #index_project .catchphrase {
        margin: 0 0 60px 0;
    }

    #index_project .catchphrase .headline {
        font-size: 30px !important;
    }

    #project_list li {
        width: calc(25vw - 13px);
        height: calc(25vw - 13px);
    }

    #index_feature_video h2 {
        font-size: 4vw;
        top: 23%;
    }
    #index_feature_video a h2::before,
    #index_feature_video a h2::after {
        font-size: 4vw;
    }
    #index_feature_video a #index_feature_video_catch {
        width: calc(100% - 50px);
        height: 100px;
    }
    #index_feature_video p {
        font-size: 1.8vw;
        padding: 14px 14px;
    }

}

@media screen and (max-width:880px) {
    .pc #global_menu > ul > li > a {
        padding: 0 10px;
    }

    /* Researcher pages */
    figure.quote-overlay-right figcaption,
    figure.quote-overlay-left figcaption {
        font-size: 2.5vw;
        line-height: 1.4;
    }
}

@media screen and (min-width:1024px) {


}

/* .post_content h2, */
[id*=give-form] .give-form-title {
    color: #00698C;
    font-weight: lighter;
    margin: 0 0 15px 0;
    padding-bottom: 5px;
    border-bottom: 1px solid #00698C;
}

/* table */
.table_def td:first-child {
    width: 80px;
    font-weight: 700;
    background-color: #f2f2f2;
}
.table_donation td:first-child {
    width: 150px;
}
.table_donation td {
    line-height: 1.7;
}

@media screen and (max-width:480px) {
    .table_def td {
        padding: 5px 8px;
    }
    .table_def td:first-child {
        width: 65px;
    }
}

/* プロジェクト　--------------------------------------------------------------- */
.cat-title {
    color: #00698C;
    padding: 0 0 5px 5px;
}
#project_category_sort_field {
    margin: 0 0 15px;
}
#project_category_sort_researcher {
    margin: 0 0 50px 0;
}
#project_category_sort_field li,
#project_category_sort_researcher li {
    float: left;
    width: 200px;
    border: 1px solid #ccc;
    border-right: none;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
#project_category_sort_field .current-cat,
#project_category_sort_researcher .current-cat {
    border-color: #00698C;
}
#project_category_sort_field li a,
#project_category_sort_researcher li a {
    font-size: 12px;
    display: block;
    background: #fff;
    color: #333;
    text-decoration: none;
    text-align: center;
    height: 40px;
    line-height: 40px;
}
#project_category_sort_field li:last-child,
#project_category_sort_researcher li:last-child {
    border-right: 1px solid #ccc;
}
#project_category_sort_field li a:active,
#project_category_sort_field li.current-cat a:active,
#project_category_sort_researcher li a:active,
#project_category_sort_researcher li.current-cat a:active {
    color: #fff;
    background: #00698C;
}

/* 研究員　-------------------------------------------------------------------- */
#template-researcher .top-image img {
    width: 100%;
    max-height: 300px;
    object-fit: cover;
    margin-bottom: 30px;
}
#template-researcher section.uagb-columns__wrap {
    margin-bottom: 40px;
}

/* 寄付 ---------------------------------------------------------------------- */
h3.template-donation {
    font-size: 110%;
}
.template-donation h6::before {
    font-style: normal;
    font-variant: normal;
    content: "\f192";
    font-family: "Font Awesome 5 Free";
    /* font-size: 60px; */
    font-weight: 900;
    /* display: inline-block; */
    -webkit-font-smoothing: antialiased;
    text-rendering: auto;
    margin-right: 5px;
}
div.template-donation.uagb-section__wrap {
    background-color: #f5f5f5;
    padding: 15px 25px 5px;
    border: 1px solid #ddd;
    margin-top: 30px;
}

/* 外部リンク ----------------------------------------------------------------- */
.has-2-columns div.wp-block-column {
    flex: 2.5;
}
.has-2-columns div.wp-block-column:first-child {
    flex: 1;
}

@media (max-width: 765px) {
    .wp-block-columns.has-2-columns {
        flex-wrap: wrap;
        border-left: 5px solid #ddd;
        padding-left: 1em;
        margin-bottom: 2em;
    }
    .has-2-columns div.wp-block-column,
    .has-2-columns div.wp-block-column:first-child {
        flex: auto;
    }
    .has-2-columns div.wp-block-column,
    .has-2-columns div.wp-block-column p {
        margin: 0;
    }
}

/* -------------------------------------------------------------------------- */


/* Contact Form -- Needs to be added to TCD Theme Options in Admin */
