@charset "utf-8";
/* CSS Document */

/*テンプレからの修正*/
body{background:#fff; font-family:"Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans JP", sans-serif;}
#header #logo{font-weight:700;}
#header #logo a:hover{text-decoration:none;}
#header-sns{display:none;}
#gnav{background:#074e9f;}
#gnav ul{border-left:1px solid #427bb7;}
#gnav li{border-right:1px solid #427bb7; padding:0; text-align:center; width:20%;}
#gnav li a{padding:16px 0px; color:#fff; background:#074e9f; font-size:16px; letter-spacing:2px;}
#gnav li.current-menu-item a{background:#427bb7; border-top:1px solid #fff;}
#gnav li a:hover{color:#fff; border-top:none; background:#427bb7; margin-top:0;}
.home #content,
#content,
.post-header,
.post-content{padding:0;}
.cat-content, article.post, article.page, article.wp101, article.seo101{margin-bottom:0; background:inherit; border:none;}
.pagination{margin:120px auto 0; display:table;}
.pagination .current{padding:10px 18px; background:#f1f7ff; border-radius:8px;}
.footer-02{background:#022752; color:#fff;}


h2{font-size:28px;}

/*プラグイン*/
.pdfemb-viewer{width:100% !important;}
#slb_viewer_wrap .slb_theme_slb_default .slb_controls{right:10% !important;}
#slb_viewer_wrap .slb_theme_slb_baseline .slb_container{max-width:90%;}
#slb_viewer_wrap .slb_theme_slb_baseline .slb_template_tag_item_content>* {
    max-width: 90% !important; /* 画面の幅の90%までにする */
    max-height: 90% !important; /* 画面の高さの90%までにする */
}

/*original*/
.pc{display:block !important;}/*660px以上*/
.sp{display:none !important;}/*660px以下*/

.area1200{margin:0 auto; width:calc(100% - 64px); max-width:1200px; overflow:hidden; padding:80px 0;}
.area1000{margin:0 auto; width:calc(100% - 64px); max-width:1000px; overflow:hidden; padding:80px 0;}
.area720{margin:0 auto; width:calc(100% - 64px); max-width:720px; overflow:hidden; padding:80px 0;}

.mt0{margin-top:0;}
.mt8{margin-top:8px;}
.mt16{margin-top:16px;}
.mt32{margin-top:32px;}
.mt48{margin-top:48px;}
.mt64{margin-top:64px;}
.mb0{margin-bottom:0;}
.mb8{margin-bottom:8px;}
.mb16{margin-bottom:16px;}
.mb32{margin-bottom:32px;}
.mb48{margin-bottom:48px;}
.mb64{margin-bottom:64px;}
.mb120{margin-bottom:120px;}

.text_n{text-align:justify; text-justify: inter-ideograph;}
.text_c{text-align:center;}
.text_r{text-align:right;}

.color_blue{color:#0e4f9d;}
.color_green{color:#63c5c4;}
.color_orange{color:#f2b14f;}
.color_gray{color:#999;}

/*カテゴリー関係*/
a.cat_news,
a.cat_activity,
a.cat_pick-up,
a.cat_works,
a.cat_case,
a.cat_other,
a.cat_case-study,
a.cat_translation {border-radius:8px 0 8px 0; color:#2c2c2c; font-size:11px; display:inline-block; line-height:1; margin:8px; text-align:center; padding:4px 0; width:64px;}

a.cat_news:hover,
a.cat_activity:hover,
a.cat_pick-up:hover,
a.cat_works:hover,
a.cat_case:hover,
a.cat_other:hover,
a.cat_case-study:hover,
a.cat_translation:hover {text-decoration:none;}

a.cat_news{background:rgba(66,130,184,0.5);}
a.cat_activity{background:rgba(66,130,184,0.4);}
a.cat_pick-up{background:rgba(66,130,184,0.3);}
a.cat_works{background:rgba(66,130,184,0.2);}
a.cat_case{background:rgba(66,130,184,0.1);}
a.cat_other{background:rgba(66,130,184,0.45);}
a.cat_case-study{background:rgba(66,130,184,0.35);}
a.cat_translation{background:rgba(66,130,184,0.25);}

/*投稿共通*/
p.text_single_date{font-size:14px; margin:0 auto; text-align:right !important; width:calc(100% - 64px); max-width:720px;}
.wp-singular .post-thumbnail{border:1px solid #ddd; margin-left:0; margin-bottom:48px; overflow:hidden; width:100%; aspect-ratio:16 / 9;}
.wp-singular .post-thumbnail img{display:table; margin:0 auto; width:100%; height:auto;}
.post-content p{text-align:justify; text-justify:inter-ideograph;}

/*ギャラリー*/
.gallery-columns-2{display:flex; flex-wrap:wrap; gap:48px; overflow:hidden;}
.gallery-columns-3{display:flex; flex-wrap:wrap; gap:32px; overflow:hidden;}
.gallery-columns-4{display:flex; flex-wrap:wrap; gap:24px; overflow:hidden;}
.gallery-columns-2 .gallery-item,
.gallery-columns-3 .gallery-item,
.gallery-columns-4 .gallery-item{max-width:100%; position:relative;}
.gallery-columns-2 .gallery-item{width:calc((100% - 48px) / 2);}
.gallery-columns-3 .gallery-item{width:calc((100% - 32px * 2) / 3);}
.gallery-columns-4 .gallery-item{width:calc((100% - 24px * 3) / 4);}
.gallery-columns-2 .gallery-item .gallery-icon,
.gallery-columns-3 .gallery-item .gallery-icon,
.gallery-columns-4 .gallery-item .gallery-icon{aspect-ratio: 1 / 1; padding-top:24px; box-sizing:border-box;}
.gallery-caption{position:absolute; top:0; left:0; color:#757575; font-size:13px; padding:0 !important;}

/*footer*/
.footer_area{margin:64px auto; max-width:1200px; width:calc(100% - 64px);}
.footer_add{width:50%;}
.footer_add img{}
.footer_add p{line-height:1.7;}
.footer_menu{width:calc(25% - 32px);}
ul.list_footer_menu{}
ul.list_footer_menu li{list-style-type:none; margin:0 0 12px; padding:0 0 0 16px;}
ul.list_footer_menu li:last-of-type{margin-top:0;}
ul.list_footer_menu li a{color:#2c2c2c; font-size:14px; text-decoration:none; position:relative;}
ul.list_footer_menu li a:before{content:'▲'; position:absolute; top:50%; left:-16px; transform:translate(0,-50%) rotate(90deg); color:#f6706f; font-size:10px;}
ul.list_footer_menu li a:hover{text-decoration:underline;}
a.link_footer_logo{display:block; margin:0 0 16px; width:144px;}
a.link_footer_logo:hover{opacity:0.8;}
a.link_footer_logo img{}


/*共通*/
.flex24 {display:flex; flex-wrap:wrap; gap:24px; overflow:hidden;}/*justify-content:space-between;*/ 
.flex32 {display:flex; flex-wrap:wrap; gap:32px; overflow:hidden;}
.flex48 {display:flex; flex-wrap:wrap; gap:48px; overflow:hidden;}


/*パンくず*/
.breadcrumbs{font-size:12px; margin:12px auto; width:calc(100% - 64px); max-width:1200px;}
.breadcrumbs span{margin:0 4px;}
.breadcrumbs span:nth-of-type(1){margin-left:0;}

/*タイトル*/
.cat-content .post-header,
.category .post-header{background:url(img/bg_tit_category.png) no-repeat #022752 right;}
article.page .post-header{background:url(img/bg_tit_page.png) no-repeat #022752 right;}
.wp-singular .post-header{background:url(img/bg_tit_single.png) no-repeat #fff right;}

.cat-content .post-header,
.category .post-header,
article.page .post-header,
.wp-singular .post-header{background-size:contain; padding:48px 0;}

.cat-content .post-title,
.category .post-header .post-title,
article.page .post-title{color:#fff; margin:0 auto; width:calc(100% - 64px); max-width:1200px;}
.wp-singular .post-header .post-title{margin:0 auto; width:calc(100% - 64px); max-width:1000px;}

/*home共通*/
a.link_home_more{background:#004da1; border:3px solid #004da1; box-shadow:8px 8px 0 #87a6c6; color:#fff; display:table; font-size:16px; font-weight:500; margin:64px auto 0; padding:8px 24px;}
a.link_home_more:hover{background:#fff; box-shadow:8px 8px 0 #6686a7; color:#004da1; text-decoration:none;}
.bg_home_next,
.bg_home_next2{position:relative;}
.bg_home_next:before{content:""; position:absolute; height:64px; width:100%; clip-path:polygon(50% 100%, 100% 0%, 0% 0%); background-color:#c0d2e6; left:0; top:-1px;}
.bg_home_next2:before{content:""; position:absolute; height:64px; width:100%; clip-path:polygon(50% 100%, 100% 0%, 0% 0%); background-color:#fff; left:0; top:-1px;}

/*home メイン画像*/
.home_main_img{margin:0; overflow:hidden; aspect-ratio:16 / 5;}
.home_main_img img{display:table; margin:0 auto; max-width:1920px; width:100%;}


/*home NEWS*/
.home_news_box{background:#fff; padding:32px 72px;}
.home_news_box h2{border-bottom:2px solid #407AB9; font-size:20px; margin-bottom:24px; padding:0 0 4px 0;}
a.link_home_news{background:#EB820A; border:1px solid #EB820A; border-radius:4px; color:#FFF; float:right; font-size:12px; margin:-60px 0 0 0; line-height:1; padding:6px 16px;}
a.link_home_news:hover{background:#fff; color:#EB820A; text-decoration:none;}
.list_loop_news{}
.list_loop_news li{order-radius: 8px; list-style-type:none; margin:8px 0 0;}
.list_loop_news li span.list_loop_news_date{font-size:15px;}
.list_loop_news li span.list_loop_news_tit{margin-right:16px;}

/*home 私たちについて*/
.home_about{margin:0 auto; width:100%; max-width:680px;}
.home_about p{font-size:18px; line-height:1.7; margin:0 0 16px;}
.home_about p:last-of-type{margin-bottom:0;}

/*hoem 研究メンバー*/
.home_member{display:flex; flex-wrap:wrap; /*justify-content:space-between;*/ gap:32px; overflow:hidden;}
.home_member div{background:#fff; border:2px solid #88a6c5; border-radius:8px; overflow:hidden; padding:16px 24px; width:calc((100% - 32px) / 2); max-width:100%;}
.home_member div p{font-size:18px; font-weight:500; margin:0 0 4px;}
.home_member div p:nth-of-type(2){font-size:15px; font-weight:400;}
.home_member div img{border-radius:4px; float:left; margin-right:16px; width:80px;}

/*home case共通 活動報告*/
.case_loop_report{width:calc((100% - 32px * 2) / 3);}
.case_loop_report span.post-category{float:right; margin:-32px -8px 0 0;}
.case_loop_report a.loop_img{border:1px solid #ccc; box-sizing:border-box; display:block; overflow:hidden; width:100%; aspect-ratio: 16 / 9;}
.case_loop_report a.loop_img:hover{}
.case_loop_report a img{width:100%;}
.case_loop_report p.loop_date{color:#5a5a5a; font-size:14px; line-height:1; margin:16px 0 8px;}
.case_loop_report p{}
.case_loop_report p a{line-height:1.8em;}

/*home お問い合わせ*/
p.home_text_contact{color:#fff; font-size:18px; margin:0 0 24px; text-align:center;}
a.link_home_contact{background:#fff; border:3px solid #0e4f9d; border-radius:8px; color:#0e4f9d; display:table; font-size:32px; font-weight:600; margin:0 auto; padding:16px 120px 16px 80px; position:relative;}
a.link_home_contact:hover{background:linear-gradient(160deg, #BFD2E7, #fff, #fff, #BFD2E7); box-shadow:0 0 3px; text-decoration:none;}
a.link_home_contact:after{position:absolute; top:50%; right:48px; content:''; width:48px; height:48px; background:url(img/icon_form.png) no-repeat; background-size:cover; border-radius:24px; transform: translate(0, -50%);}

/*私たちについて*/
img.img_about_c{display:table; margin:0 auto 72px; width:100%; max-width:800px;}
.bg_about_white{background:#fff; border-radius:8px; margin:64px auto 0; padding:40px 64px; overflow:hidden;}
.bg_about_white img{display:table; margin:0 auto 24px; width:80%; max-width:320px;}
.bg_about_white h3{border-left:none; margin:0 0 24px; padding:0 0 0 24px;}
.bg_about_white h3:before{content:'●'; margin:0 4px 0 -24px; font-size:32px; color:#37b8b6;}
.bg_about_white p{}
.bg_about_white a{}
.bg_about_white a:hover{text-decoration: underline;}


/*contact お問い合わせ*/
.bg_blue{background:#BFD2E7; overflow:hidden;}
.area_contact{background:#fff; border-radius:16px; margin:0 auto; padding:72px 96px; width:100%; max-width:860px;}
.area_contact p{margin:0;}
.area_contact p span{}
.area_contact p.contact_tit{font-weight:500;}
.area_contact p.contact_tit span{background:#c00; border-radius:4px; color:#fff; font-size:12px; margin:0 8px 0 0; padding:2px 4px;}
.area_contact p.contact_guide{font-size:14px; font-weight:400; margin:4px 0 32px 4px;}
.area_contact p.contact_acceptance{display:table; margin:48px auto 64px;}
input[type="text"],
input[type="email"],
input[type="tel"],
form textarea{width:100%;}
form input[type="submit"]{background:#074e9f; border:#074e9f 3px solid; border-radius:4px; display:table; margin:0 auto; width:200px;}
form input[type="submit"]:hover{background:#fff; color:#074e9f; font-weight:500;}
span.wpcf7-spinner{display:table; margin:0 auto;}


/*privacy-policy 個人情報保護方針*/
.list_privacy_number{}
.list_privacy_number li{margin-bottom:1.5em;}
.list_privacy_number li:last-of-type{margin-bottom:0;}

@media screen and (min-width:1900px){
.home_main_img{height:590px; aspect-ratio:auto;}

}

@media screen and (max-width:1000px){
.area1000{margin:0 auto; width:calc(100% - 64px); max-width:1000px; overflow:hidden; padding:80px 0;}
.list_loop_news li p a:nth-of-type(2){display:block;}
}

@media screen and (max-width:991px){
#gnav{background:#fff;}
#gnav ul li a:hover{color:#fff;}
.post-content, .cta-post-title, .post-cta, .post-cta-inner, .post-share, .post-author{padding:0 !important;}
article.page .post-header{padding:48px 0 !important;}
#header #logo{padding-right:32px;}
#gnav{margin:0; border:none; padding:0;}
#gnav ul,
#gnav li{border-right:none; border-left:none;}
#gnav ul li{width:100%;}
.home_news_box{padding:32px;}
.list_loop_news li span.list_loop_news_tit{display:block;}
.list_loop_news li span.list_loop_news_tit a{display:block;}
.footer_add{width:100%;}
.footer_menu{width: calc(50% - 32px);}
.area_contact{padding: 72px 56px;}
}

@media screen and (max-width:660px){
.pc{display:none !important;}/*660px以上*/
.sp{display:block !important;}/*660px以下*/
.home_main_img{aspect-ratio:9 / 5;}
.home_main_img img{}
.home_member{display:block;}
.home_member div{margin-bottom:16px; width:100%;}
.home_member div:last-of-type{margin-bottom:0;}
.home_loop_report{margin:0 auto 16px; width:100%; max-width:440px;}
.footer_add{width:100%;}
.footer_menu{width:calc((100% - 32px) / 2);}
.footer_area{margin:0 auto;}
.footer_area,
.area1000,
.area1200{padding:48px 0; width:calc(100% - 32px);}
.breadcrumbs{width:calc(100% - 32px);}

.area720{padding:24px 0 0;}
.wp-singular .post-header {padding:8px 0;}
.wp-singular .post-header{background-repeat: repeat-y;}


/*home*/
.bg_home_next:before{height:48px;}
p.home_text_contact{font-size:18px; text-align:justify; text-justify:inter-ideograph;}
p.home_text_contact br{display:none;}
a.link_home_contact{padding:16px 96px 16px 24px;}
a.link_home_contact:after{right:24px;}
.case_loop_report{width:100%;}
/*about*/
.bg_about_white{padding:40px 24px;}
.bg_about_white h3:before{font-size:18px;}
/*contact*/
.area_contact{border-radius:8px; padding:32px 24px;}
}