@charset "utf-8";
/*
Theme Name: ABiS
Version: 1.0.2
*/

* { margin: 0; padding: 0; box-sizing: border-box; vertical-align: middle; }
*::before { vertical-align: middle; }
*::after { vertical-align: middle; }
html { color: #000; line-height: 1.5; }
body { font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: normal; }
img { max-width: 100%; height: auto; border: none; }
table { border-collapse: collapse; }
td, th { text-align: left; vertical-align: top; font-weight: normal; line-height: 1.5; }
ul, ol { list-style-type: none; }
a { text-decoration: none; color: inherit; }
input[type="text"], input[type="email"] { font-size: inherit; border: 1px solid #cccccc; padding: 5px 10px; }
button, input[type="button"], input[type="submit"] { cursor: pointer; border: none; background: transparent; outline: none; appearance: none; -webkit-appearance: none; }
textarea { font-size: inherit; font-family: inherit; }
video { filter: drop-shadow(0px 0px rgba(0,0,0,0)); outline: none; border: none; }
sup { vertical-align: super; }
sub { vertical-align: sub; }

#page { overflow: hidden; }
.clearfix::after { content: ""; display: block; clear: both; }

.news-category-button { display: inline-block; text-align: center; }
.news-category-button-latest { background: #3cef00; }
.news-category-button-training { background: #c097cc; }
.news-category-button-event { background: #85cdf4; }
.news-category-button-achievement { background: #ff6151; }
.news-category-button-information { background: #fdd134; }
.news-category-button-gbi { color: #fff; border: 2px solid #e2e2e2; }
.news-category-button-gbi span { display: block; background: #0f2549; }
.news-years ul { display: flex; flex-wrap: wrap; align-items: center; }
.news-years ul > li:not(:last-child)::after { content: "|"; }
.news-years a { display: inline-block; text-decoration: underline; }
.news-posts .category { display: inline-block; text-align: center; }
.news-posts .category-latest { background: #3cef00; }
.news-posts .category-training { background: #c097cc; }
.news-posts .category-event { background: #85cdf4; }
.news-posts .category-achievement { background: #ff6151; }
.news-posts .category-information { background: #fdd134; }
.news-posts .category-gbi-news { color: #fff; background: #0f2549; }
.news-post .date { color: #797979; }
.news-post-single h3 { background: #f5f5f5; }
.news-post-single h4 { display: inline-block; color: #fff; text-align: center; background: #0060ff; }
.news-post-single ul > li { position: relative; padding-left: 1.0em; }
.news-post-single ul > li::before { content: "・"; position: absolute; left: 0; top: 0; }
.news-post-single dl > dt { display: inline-block; color: #fff; text-align: center; background: #0060ff; }
.news-post-single > *:not(:last-child) { margin-bottom: 1.0em; }
.news-link { display: block; position: relative; background: #212121; color: #fff; text-align: center; text-decoration: underline; }
.news-link::after { content: ""; display: block; position: absolute; left: 0; bottom: -5px; width: 100%; height: 5px; background: #a6a6a6; }

.search-post .date { color: #797979; }

.equipment-search-buttons { position: relative; background: #414349; }
.equipment-search-buttons::before { content: ""; display: block; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-image: url(images/equipment-accessory01.png); background-repeat: no-repeat; background-position: left; background-size: 76px; pointer-events: none; }
.equipment-search-buttons::after { content: ""; display: block; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-image: url(images/equipment-accessory02.png); background-repeat: no-repeat; background-position: right; background-size: 112px; pointer-events: none; }
.equipment-search-button { display: block; position: relative; z-index: 10; text-align: center; background: #e4e7ec; }
.equipment-search-button::before { content: ""; display: block; position: absolute; left: 0; top: 0; width: 8px; height: 10px; background-image: url(images/arrow02.png); background-repeat: no-repeat; background-position: center; background-size: 100%; pointer-events: none; }
.equipment-search-button::after { content: ""; display: block; position: absolute; left: 0; bottom: -5px; width: 100%; height: 5px; background: #bababa; }
.equipment-category-buttons { display: flex; flex-wrap: wrap; justify-content: space-between; }
.equipment-category-button { text-align: center; background-repeat: no-repeat; background-position: center; background-size: cover; }
.equipment-category-button:nth-child(1) { background-image: url(images/equipment-button01.png); }
.equipment-category-button:nth-child(2) { background-image: url(images/equipment-button02.png); }
.equipment-category-button:nth-child(3) { background-image: url(images/equipment-button03.png); }
.equipment-category-button:nth-child(4) { background-image: url(images/equipment-button04.png); }
.equipment-title-container { background: #97b3de; }
.equipment-sub-title { position: relative; color: #ff2704; padding: 0.25em 2.0em; }
.equipment-sub-title::before { content: ""; display: block; position: absolute; left: 0; top: 0; width: 16px; height: 100%; background: #ff2704; }
.equipment-item:nth-child(2n+2) { background: #f4f8ff; }
.equipment-item a { position: relative; text-decoration: underline; padding-left: 22px; }
.equipment-item a::before { content: ""; display: block; position: absolute; left: 0; top: 0; width: 12px; height: 15px; background: url(images/arrow03.png) no-repeat center; background-size: 100%; }
.equipment-table .maker { font-weight: bold; }
.equipment-table a { display: block; text-decoration: underline; }

.institution-item a { text-decoration: underline; }
.institution-item > a { position: relative; padding-left: 1.5em; }
.institution-item > a::before { content: ""; display: block; position: absolute; left: 0; top: 0; width: 12px; height: 15px; background: url(images/arrow03.png) no-repeat center; background-size: 100%; }

.section-title { position: relative; }
.section-title::before { content: ""; display: block; position: absolute; left: 0; top: 0; width: 29px; height: 29px; background: url(images/icon02.png) no-repeat center; background-size: 100%; }
.section-title-container .buttons a { display: inline-block; color: #fff; text-align: center; background: #653a71; border: 1px solid #515151; border-radius: 2px; }

.navigation ul { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; }
.navigation ul > li > * { display: inline-block; text-align: center; border: 1px solid #565656; border-radius: 2px; }
.navigation ul > li > a.prev { background: transparent; border: none; }
.navigation ul > li > a.next { background: transparent; border: none; }
.navigation ul > li > span.current { color: #fff; background: #33cc00; border: none; }
.navigation ul > li > span.dots { background: transparent; border: none; }
.navigation h2 { display: none; }

.header-logo { border-bottom: 2px solid #33cc00; }
.header-logo .actions .search { display: flex; justify-content: stretch; align-items: stretch; }
.header-logo .actions .search button { display: flex; align-items: center; background: #5787f4; color: #fff; padding: 0 10px; }
.header-logo .actions .search button::before{ content: ""; display: block; background: url(images/icon01.png) no-repeat center; width: 19px; height: 19px; margin-right: 5px; }

.breadcrumb { background: #000000; }
.breadcrumb ul { display: flex; flex-wrap: wrap; color: #fff; }
.breadcrumb ul > li:not(:last-child)::after { content: ">"; }

.footer-links ul { display: flex; justify-content: center; }
.footer-links ul > li:not(:last-child)::after { content: "|"; }
.footer-description { background: #33cc00; color: #ffffff; text-align: center; }
.footer-logo { text-align: center; }
.footer-copyright { background: #33cc00; color: #ffffff; text-align: center; }

.gbi-banner .banner { text-align: center; }

.contact-box .box-header { text-align: center; background: #d7dbe1; }
.contact-box .box-body { background: #f5f5f5; border: 1px solid #d7dbe1; }
.contact-box .box-body p { color: #0a2a59; }
.contact-box .box-body a { display: block; color: #fefeff; text-align: center; background: #000000; }
.contact-box .box-body > *:not(:last-child) { margin-bottom: 1.0em; }

.home-slider { position: relative; }
.home-slider .movie { position: absolute; z-index: 10; left: 0; top: 0; width: 100%; height: 100%; background: #fff; opacity: 1; transition: opacity 0.5s; }
.home-slider .movie.hide { opacity: 0; }
.home-slider .movie video { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
.home-buttons { background: #ebebeb; }
.home-buttons .buttons { display: flex; justify-content: space-between; align-items: stretch; flex-wrap: wrap; }
.home-buttons .button-container { background: #f3f3f3; }
.home-buttons .button { border-bottom-style: solid; border-bottom-color: #36d700; transition-property: border, transform; transition-duration: 0.5s; }
.home-buttons .button a { display: flex; justify-content: center; align-items: center; font-weight: bold; text-align: center; background-color: #fff; border-style: solid; border-color: #3cef00; background-repeat: no-repeat; transform: translateY(2px); transition-property: color, background-color; transition-duration: 0.5s; }
.home-buttons .button a span { display: block; }
.home-news h2 { background: #212121; color: #fff; text-align: center; }
.home-banners .banners { display: flex; flex-wrap: wrap; justify-content: space-between; }
.home-banners .banner { background: #212121; color: #fff; text-align: center; }

/* ADDED [22/05/03] */
.home-banners .banner a {
    overflow: hidden;
    display: block;
}

.home-banners .banner a img {
    transition: transform .3s ease-out;
}

.home-banners .banner a:hover img {
    transform: scale(1.075);
    opacity: 1;
}
/* end - ADDED [22/05/03] */

/**
 * SP
 */
@media screen and (max-width: 767px) {

    html { font-size: 3.9vw; }

    .visible-pc { display: none; }
    .wrapper { padding: 0 1.56vw; }

    .news-category-buttons { text-align: center; }
    .news-category-button { width: 30.75vw; padding: 0.07vw; margin-bottom: 1.56vw; }
    .news-category-button-gbi { font-size: 2.81vw; padding: 2px; border-radius: 3.12vw; }
    .news-category-button-gbi span { padding: 0.07vw; border-radius: 3.12vw; }
    .news-years ul > li { margin-bottom: 1.56vw; }
    .news-years ul > li:not(:last-child)::after { margin: 0 3.12vw; }
    .news-post { margin-bottom: 3.12vw; }
    .news-post .category { font-size: 3.12vw; width: 22.5vw; margin-right: 3.12vw; }
    .news-post .category-gbi-news { font-size: 2.18vw; }
    .news-post .date { font-size: 3.12vw; }
    .news-post .title { display: block; margin-top: 1.56vw; }
    .news-post-single h3 { padding: 0.78vw 1.56vw; margin-left: -1.56vw; margin-right: -1.56vw; }
    .news-post-single h4 { min-width: 15.62vw; border-radius: 1.56vw; padding: 0.31vw 1.56vw; }
    .news-post-single dl > dt { min-width: 15.62vw; border-radius: 1.56vw; padding: 0.31vw 1.56vw; margin-bottom: 1.0em; }
    .news-post-single dl > dd { margin-bottom: 1.0em; }
    .news-post-single img.alignleft { display: block; margin: 0 auto 1.0em; }
    .news-post-single img.alignright { display: block; margin: 0 auto 1.0em; }
    .news-link { width: 64.37vw; padding: 2.34vw 0; margin: 0 auto; }
    .news-link::after { height: 0.78vw; bottom: -0.78vw; }

    .search-post { margin-bottom: 3.12vw; }
    .search-post .date { font-size: 3.12vw; }
    .search-post .title { display: block; margin-top: 1.56vw; }

    .equipment-search-buttons { border-radius: 1.56vw; padding: 3.12vw 9.37vw; margin-bottom: 6.25vw; }
    .equipment-search-buttons::before { background-position: -1.56vw; background-size: 11.87vw; }
    .equipment-search-buttons::after { background-position: right -4.68vw center; background-size: 17.5vw; }
    .equipment-search-button { padding: 1.56vw; }
    .equipment-search-button:not(:last-child) { margin-bottom: 4.68vw; }
    .equipment-search-button::before { left: 15.62vw; top: 3.0vw; width: 2.5vw; height: 2.81vw; }
    .equipment-search-button::after { height: 0.78vw; bottom: -0.78vw; }
    .equipment-category-buttons { margin-bottom: 4.68vw; }
    .equipment-category-button { width: 49%; padding: 1.56vw; margin-bottom: 4.68vw; }
    .equipment-title-container { padding: 0 1.56vw; margin: 0 -1.56vw; }
    .equipment-title { padding: 0.78vw 1.56vw; margin-bottom: 4.68vw; }
    .equipment-sub-title { margin-bottom: 4.68vw; }
    .equipment-sub-title::before { width: 2.5vw; }
    .equipment-items { margin: -4.68vw 0 9.37vw; }
    .equipment-item:nth-child(2n+1) { padding: 4.68vw 1.56vw; }
    .equipment-item:nth-child(2n+2) { padding: 0.78vw 3.12vw; margin: 0 -1.56vw; }
    .equipment-item a { padding-left: 3.43vw; }
    .equipment-item a::before { top: 1.31vw; width: 1.87vw; height: 2.34vw; }
    .equipment-table { display: block; border: none; margin-bottom: 14.06vw; }
    .equipment-table thead { display: block; margin-bottom: 3.12vw; }
    .equipment-table tbody { display: block; }
    .equipment-table tr { display: block; }
    .equipment-table tbody tr { margin-bottom: 4.68vw; }
    .equipment-table th { display: block; background: #f5f5f5; border: 1px solid #dddddd; padding: 1.56vw 3.12vw; }
    .equipment-table th:not(:last-child) { border-bottom: none; }
    .equipment-table td { display: block; border: 1px solid #dddddd; padding: 1.56vw 3.12vw; }
    .equipment-table td:not(:last-child) { border-bottom: none; }
    .equipment-table td:nth-child(1) { background: #ffeae7; }
    .equipment-table .maker { margin-bottom: 1.56vw; }

    .institution-items { margin-bottom: 9.37vw; }
    .institution-item a { display: block; margin-bottom: 4.68vw; }
    .institution-item > a { display: block; background: #f4f8ff; padding-left: 10.93vw; margin-left: -1.56vw; margin-right: -1.56vw; }
    .institution-item > a::before { left: 6.25vw; top: 1.31vw; width: 1.87vw; height: 2.34vw; }
    .institution-item > ul { padding-left: 9.37vw; }

    .section-title { padding-left: 7.81vw; margin-bottom: 4.68vw; }
    .section-title::before { top: 0.78vw; width: 4.53vw; height: 4.53vw; }
    .section-title-container .buttons { margin-bottom: 7.81vw; }
    .section-title-container .buttons a { display: block; padding: 3.12vw; margin-bottom: 1.56vw; }

    .navigation ul > li > * { width: 40px; height: 40px; line-height: 40px; margin: 0 5px 10px; }
    .navigation ul > li > a.prev { margin-left: 0; margin-right: 0; }
    .navigation ul > li > a.next { margin-left: 0; margin-right: 0; }
    .navigation ul > li > span.dots { margin-left: 0; margin-right: 0; }

    #header { position: relative; background: #33cc00; }
    .header-logo .wrapper { padding: 0; }
    .header-logo .actions { padding: 1.56vw 7.82vw; }
    .header-logo .actions .language { display: none; }
    .header-logo .actions .search input { width: 100%; }
    .header-logo .actions .search button { flex-grow: 0; flex-shrink: 0; }
    .header-logo .logo { background: #fff; width: 85.0vw; }
    .header-logo .logo img { width: 95%; }
    .header-navi .wrapper { padding: 0; }
    .header-navi .menu { background: #000; overflow: hidden; max-height: 0; transition: max-height 0.5s; }
    .header-navi .menu.show { max-height: 200vh; }
    .header-navi .menu ul { color: #fff; }
    .header-navi .menu ul a { display: block; border-bottom: 1px solid #333; padding: 1.56vw 3.12vw; }
    .header-navi .menu li > ul { margin-left: 3.12vw; }
    .header-navi .menu li > ul > li { background: #333; }
    .header-navi .menu li > ul > li a { border-bottom: 1px solid #666; }
    .header-navi .menu-open { display: flex; justify-content: center; align-items: center; position: absolute; right: 0.6vw; top: 10.0vw; width: 13.28vw; height: 13.28vw; }
    .header-navi .menu-open img { max-width: 80%; }

    .breadcrumb { margin-bottom: 6.25vw; }
    .breadcrumb ul { font-size: 2.81vw; padding: 0.78vw 0; }
    .breadcrumb ul > li:not(:last-child)::after { margin: 0 1.56vw; }

    #footer { margin-top: 12.5vw; }
    .footer-links { margin-bottom: 1.56vw; }
    .footer-links a { margin: 0 1.56vw; }
    .footer-description { padding: 1.56vw 0; }
    .footer-logo img { width: 93.75%; }
    .footer-copyright { padding: 1.56vw 0; }

    #google_translate_element_pc { display: none; }
    #google_translate_element_sp { padding: 1.56vw 3.12vw; }

    .news-archive .news-category-buttons { margin-bottom: 4.68vw; }
    .news-archive .news-years { margin-bottom: 4.68vw; }
    .news-archive .news-posts { margin-bottom: 12.5vw; }
    .news-archive .navigation { margin-bottom: 14.06vw; }
    .news-single { margin-bottom: 9.37vw; }
    .news-single .news-years { margin-bottom: 4.68vw; }
    .news-single .news-post { margin-bottom: 14.06vw; }
    .news-latest { margin-bottom: 26.56vw; }
    .news-latest .news-posts { margin-bottom: 14.06vw; }

    .gbi-archive .news-category-buttons { margin-bottom: 4.68vw; }
    .gbi-archive .news-posts { margin-bottom: 9.37vw; }
    .gbi-archive .navigation { margin-bottom: 9.37vw; }
    .gbi-banner { margin-bottom: 9.37vw; }
    .gbi-banner .banner img { margin-bottom: 1.56vw; }

    .search-results .search-posts { margin-bottom: 9.37vw; }

    .achievement-archive { margin-bottom: 12.5vw; }
    .achievement-archive .news-years { margin-bottom: 4.68vw; }
    .achievement-archive .news-posts-single { margin-bottom: 9.37vw; }
    .achievement-archive .news-post-single { margin-bottom: 9.37vw; }

    .contact-box .box-header { padding: 1.56vw; }
    .contact-box .box-body { padding: 4.68vw 1.56vw; }
    .contact-box .box-body a { max-width: 60.93vw; padding: 0.78vw 0; margin: 0 auto; }

    .home-slider .wrapper { padding: 0; }
    .home-slider .slide img { object-fit: cover; width: 100%; height: 71.87vw; }
    .home-buttons { padding: 2.34vw; }
    .home-buttons .button-container { width: 49%; padding: 1.56vw; border-radius: 1.56vw; margin-bottom: 2.34vw; }
    .home-buttons .button { border-bottom-width: 0.93vw; border-radius: 1.56vw; }
    .home-buttons .button a { font-size: 4.68vw; height: 20.78vw; border-width: 0.93vw; border-radius: 1.56vw; }
    .home-news { margin-bottom: 7.81vw; }
    .home-news h2 { margin: 0 -1.56vw 3.12vw; }
    .home-news .news-category-buttons { margin: 0 -1.56vw 3.12vw; }
    .home-news .news-posts { margin-bottom: 7.81vw; }
    .home-banners .banner { width: 49%; padding: 1.25vw; margin-bottom: 3.12vw; }
    .home-banners .banner .picture { margin-bottom: 1.25vw; }

}

/**
 * PC・タブレット
 */
@media screen and (min-width: 768px) {

    html { font-size: 16px; }
    a img { transition: opacity 0.5s; }
    a:hover img { opacity: 0.7; }
    button img { transition: opacity 0.5s; }
    button:hover img { opacity: 0.7; }

    .visible-sp { display: none; }
    .wrapper { max-width: 1024px; padding: 0 10px; margin: 0 auto; }

    .news-category-button { font-size: 14px; width: 128px; padding: 5px; margin-bottom: 10px; transition: opacity 0.5s; }
    .news-category-button:hover { opacity: 0.7; }
    .news-category-button:not(:last-child) { margin-right: 30px; }
    .news-category-button-gbi { font-size: 12px; padding: 2px; border-radius: 20px; }
    .news-category-button-gbi span { padding: 5px; border-radius: 20px; }
    .news-years ul > li { margin-bottom: 10px; }
    .news-years ul > li:not(:last-child)::after { margin: 0 15px; }
    .news-post { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 30px; }
    .news-post a:hover { text-decoration: underline; }
    .news-post .category { flex-grow: 0; flex-shrink: 0; font-size: 14px; width: 144px; margin-right: 20px; }
    .news-post .date { flex-grow: 0; flex-shrink: 0; font-size: 14px; margin-right: 30px; }
    .news-post .title { flex-grow: 1; flex-shrink: 1; }
    .news-post-single h3 { padding: 5px 500%; margin-left: -500%; margin-right: -500%; }
    .news-post-single h4 { font-size: 14px; min-width: 130px; border-radius: 10px; padding: 2px; }
    .news-post-single dl { display: flex; flex-wrap: wrap; align-items: flex-start; }
    .news-post-single dl > dt { font-size: 14px; min-width: 130px; border-radius: 10px; padding: 2px; margin-bottom: 1.0em; }
    .news-post-single dl > dd { flex-grow: 1; flex-shrink: 1; width: calc(100% - 150px); padding-left: 20px; margin-bottom: 1.0em; }
    .news-post-single p::after { content: ""; display: block; clear: both; }
    .news-post-single img.alignleft { float: left; margin-right: 20px; }
    .news-post-single img.alignright { float: right; margin-left: 20px; }
    .news-link { border-bottom-width: 5px; width: 412px; padding: 15px 0; margin: 0 auto; transform: translateY(-5px); transition: transform 0.5s; }
    .news-link::after { transition-property: height, bottom; transition-duration: 0.5s; }
    .news-link:hover { transform: translateY(0px); }
    .news-link:hover::after { height: 0; bottom: 0; }

    .search-post { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 30px; }
    .search-post a:hover { text-decoration: underline; }
    .search-post .date { flex-grow: 0; flex-shrink: 0; font-size: 14px; margin-right: 30px; }
    .search-post .title { flex-grow: 1; flex-shrink: 1; }

    .equipment-search-buttons { display: flex; justify-content: center; border-radius: 10px; padding: 15px 30px; margin-bottom: 40px; }
    .equipment-search-buttons::before { background-position: -10px 5px; background-size: 76px; }
    .equipment-search-buttons::after { background-position: right top; background-size: 112px; }
    .equipment-search-button { width: 45%; padding: 10px; margin: 0 10px; transition-property: background, color, transform; transition-duration: 0.5s; }
    .equipment-search-button::before { left: 3.0vw; top: 18px; }
    .equipment-search-button::after { transition-property: background, height, bottom; transition-duration: 0.5s; }
    .equipment-search-button:hover { color: #fff; background: #5787f4; transform: translateY(5px); }
    .equipment-search-button:hover::before { background-image: url(images/arrow01.png); }
    .equipment-search-button:hover::after { background: #3562c8; height: 0; bottom: 0; }
    .equipment-category-buttons { margin-bottom: 40px; }
    .equipment-category-button { width: 23%; padding: 10px; }
    .equipment-title-container { padding: 0 500%; margin: 0 -500%; }
    .equipment-title { padding: 10px 0; margin-bottom: 30px; }
    .equipment-sub-title { font-size: 20px; margin-bottom: 30px; }
    .equipment-items { margin: -30px 0 60px; }
    .equipment-item:nth-child(2n+1) { padding: 30px 0; }
    .equipment-item:nth-child(2n+2) { padding: 5px 500%; margin: 0 -500%; }
    .equipment-item a::before { top: 2px; }
    .equipment-table { width: 100%; margin-bottom: 90px; border: 1px solid #dddddd; }
    .equipment-table th { text-align: center; line-height: 2.0; background: #f5f5f5; border: 1px solid #dddddd; padding: 10px; }
    .equipment-table th:nth-child(1) { width: 20%; }
    .equipment-table th:nth-child(2) { width: 50%; }
    .equipment-table th:nth-child(3) { width: 15%; }
    .equipment-table th:nth-child(4) { width: 15%; }
    .equipment-table td { font-size: 14px; line-height: 2.0; border: 1px solid #dddddd; padding: 20px 10px; }
    .equipment-table tbody tr:nth-child(2n+2) td { background: #fff4f3; }

    .institution-items { margin: -30px 0 60px; }
    .institution-item:nth-child(2n+2) { background: #f4f8ff; }
    .institution-item { display: flex; }
    .institution-item:nth-child(2n+1) { padding: 30px 0; }
    .institution-item:nth-child(2n+2) { padding: 5px 500%; margin: 0 -500%; }
    .institution-item > a { width: 35%; margin-right: 5%; }
    .institution-item > a::before { top: 2px; }
    .institution-item > ul { display: flex; flex-wrap: wrap; }
    .institution-item > ul > li { margin-right: 50px; }

    .section-title { font-size: 18px; padding-left: 50px; margin-bottom: 30px; }
    .section-title-container { position: relative; }
    .section-title-container .buttons { position: absolute; right: 0; top: 0; max-width: 75%; text-align: right; }
    .section-title-container .buttons a { font-size: 14px; padding: 5px 10px; margin-bottom: 10px; }
    .section-title-container .buttons a:not(:first-child) { margin-left: 10px; }

    .navigation ul > li > * { width: 40px; height: 40px; line-height: 40px; margin: 0 5px 10px; }
    .navigation ul > li > a.page-numbers:hover { background: #e5ffdc; }
    .navigation ul > li > a.prev { margin-left: 0; margin-right: 0; }
    .navigation ul > li > a.next { margin-left: 0; margin-right: 0; }
    .navigation ul > li > a.prev:hover { color: #000; background: transparent; border: none; }
    .navigation ul > li > a.next:hover { color: #000; background: transparent; border: none; }
    .navigation ul > li > span.dots { margin-left: 0; margin-right: 0; }

	.header-logo { border-top: 20px solid #33cc00; }
	.header-logo .wrapper { max-width: 1040px; }
    .header-logo .header-logo-content { display: flex; justify-content: space-between; align-items: center; flex-direction: row-reverse; }
    .header-logo .actions { text-align: right; padding: 10px 0; }
    .header-logo .actions .language { display: inline-block; margin-bottom: 10px; }
    .header-logo .logo { display: flex; align-items: center; max-width: 55%; }
    .header-logo .logo img { margin-right: 10px; }
    .header-logo .logo .text span { display: block; }
    .header-logo .logo .text .jp { font-size: 18px; }
    .header-navi { background: #f8f9f2; }
    .header-navi .wrapper { max-width: 1200px; padding: 0; }
    .header-navi .menu ul { display: flex; justify-content: center; align-items: stretch; }
    .header-navi .menu ul > li { width: 14.28%; }
    .header-navi .menu ul > li:not(:last-child) { border-right: 1px solid #d3d4ce; }
    .header-navi .menu ul a { display: block; font-size: 14px; text-align: center; padding: 10px; }
    .header-navi .menu ul a:hover { color: #fff; background: #33cc00; }
    .header-navi .menu .menu-close { display: none; }
    .header-navi .menu-open { display: none; }

    .breadcrumb { margin-bottom: 40px; }
    .breadcrumb .wrapper { max-width: 1100px; }
    .breadcrumb ul { font-size: 12px; padding: 5px 0; }
    .breadcrumb ul > li:not(:last-child)::after { margin: 0 10px; }

    #footer { margin-top: 60px; }
    .footer-links { margin-bottom: 5px; }
    .footer-links a { margin: 0 10px; }
    .footer-links a:hover { text-decoration: underline; }
    .footer-description { padding: 5px 0; }
    .footer-description p { font-size: 14px; }
    .footer-logo .logo a { display: block; }
    .footer-copyright { padding: 10px 0; }

    #google_translate_element_sp { display: none; }

    .news-archive .news-category-buttons { margin-bottom: 30px; }
    .news-archive .news-years { margin-bottom: 30px; }
    .news-archive .news-posts { margin-bottom: 80px; }
    .news-archive .navigation { margin-bottom: 90px; }
    .news-single { margin-bottom: 60px; }
    .news-single .section-title { margin-bottom: 50px; }
    .news-single .news-years { margin-bottom: 30px; }
    .news-latest { margin-bottom: 160px; }
    .news-latest .news-posts { margin-bottom: 60px; }

    .gbi-archive .news-category-buttons { margin-bottom: 30px; }
    .gbi-archive .news-posts { margin-bottom: 60px; }
    .gbi-archive .navigation { margin-bottom: 60px; }
    .gbi-banner { margin-bottom: 60px; }
    .gbi-banner .banner img { margin-bottom: 10px; }
    .gbi-banner .banner p { font-size: 14px; }

    .search-results .search-posts { margin-bottom: 60px; }

    .achievement-archive { margin-bottom: 80px; }
    .achievement-archive .section-title { margin-bottom: 50px; }
    .achievement-archive .news-years { margin-bottom: 30px; }
    .achievement-archive .news-posts-single { margin-bottom: 60px; }
    .achievement-archive .news-post-single { margin-bottom: 50px; }

    .contact-box .box-header { font-size: 20px; padding: 10px; }
    .contact-box .box-body { padding: 30px; }
    .contact-box .box-body p { max-width: 860px; margin: 0 auto; }
    .contact-box .box-body a { max-width: 280px; padding: 5px 0; margin: 0 auto; }

    .home-slider .wrapper { max-width: none; padding: 0; }
    .home-slider .slide img { object-fit: cover; width: 100%; height: 40.0vw; max-height: 420px; }
    .home-buttons { padding: 10px 10px 20px; }
    .home-buttons .wrapper { max-width: 1140px; }
    .home-buttons .button-container { width: 23%; padding: 10px; border-radius: 10px; }
    .home-buttons .button { border-bottom-width: 6px; border-radius: 10px; }
    .home-buttons .button:hover { transform: translateY(6px); border-bottom: none; }
    .home-buttons .button a { font-size: 2.0vw; height: 10.83vw; max-height: 110px; border-width: 6px; border-radius: 10px; }
    .home-buttons .button a:hover { color: #fff; background-color: #33cc01; }
    .home-news { margin-bottom: 50px; }
    .home-news h2 { font-size: 20px; padding: 5px 500%; margin: 0 -500% 30px; }
    .home-news .news-category-buttons { margin-bottom: 30px; }
    .home-news .news-posts { margin-bottom: 50px; }
    .home-banners .wrapper { max-width: 1200px; }
    .home-banners .banner { width: 32.5%; padding: 8px; margin-bottom: 20px; }
    .home-banners .banner .picture { margin-bottom: 10px; }

}

/**
 * PC
 */
@media screen and (min-width: 1200px) {

    .wrapper { padding: 0; }

    .header-navi .menu ul a { font-size: 16px; }

    .home-buttons .button a { font-size: 24px; }

}

