@charset "utf-8";

/* main*/

main {
    max-width: 100% !important;
    flex-basis: 100% !important;
}

/* header */
header {
    /*height: 64px;*/
    display: block;
}

.navbar-dark .navbar-nav .nav-link {
    font-weight: 400;
    color: rgba(255, 255, 255, 1);
    transition: all 0.4s ease;
}

.right-section {
    display: flex;
    flex-direction: column;
}

.nav-form {
    position: absolute;
    top: 0.1%;
    right: 0.1%;
}


a#toplink {
    color: white;
}

a#navlink {
    color:  #2A80C4;
    font-size: 20px;
}

p#header {
    color: white;
}

div.site-logo img {
    height: 80px;
    transition: .2s ease-in-out transform;
}

ul.header_explain_link {
    text-align: right;
    float: right;
}

.nav-explain-link {
    position: absolute;
    top: 70%;
    bottom: 0.1%;
    right: 0.1%;
}

ul.header_explain_link li{
    font-size: 30px;
}

/* section */

section {
    padding: 60px 0;
    padding: 3.75rem 0;
    padding-bottom: 2.5rem;
    overflow: hidden;
}

section .section-title h2 {
    font-family: 'Quicksand', 'Noto Sans JP', sans-serif;
    font-weight: 700;
    color: #000;
    font-size: 42px;
    font-size: 2.625rem;
    font-size: 2.125rem;
    margin-bottom: 46px;
    margin-bottom: 2.875rem;
    margin-bottom: 2.25rem;
    margin-bottom: 2rem;

    position: relative;
    display: inline-block;
    padding: 0 55px;
}

.section-title h2:before,
.section-title h2:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 45px;
    height: 2px;
    background-color: #cecece;
}

.section-title h2:before {
    left: 0;
}

.section-title h2:after {
    right: 0;
}

section ul li {
    margin-bottom: 0.5rem;
}


/* main-banner jumbo */
section#main-banner.jumbo {
    margin-bottom: 0;
    padding-left: 0;
    padding-right: 0;
    padding: 3rem 0;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 0;
    overflow: unset;
    background-position: bottom;
}


section#main-banner.jumbo h1 .color1,
section .color1 {
    color: #147dad;
}

section#main-banner.jumbo h1 .color2,
section .color2 {
    color: #f97b05;
}

section#main-banner.jumbo h1 {
    display: flex;
    align-items: center;
    justify-content: center;

}

section#main-banner.jumbo h1 div.title-text {
    margin: 0 1rem;
    font-family: 'Meiryo', serif;
    font-weight: 700;
}

section#main-banner.jumbo h1 div img {
    height: 80px;
    transition: .2s ease-in-out transform;
}

section#main-banner h1.main-title {
    font-size: 100px;
    font-size: 5.5rem;
    font-family: 'Quicksand', sans-serif;
    font-weight: 700 !important;
    letter-spacing: -0.15rem;
    color: #000;
    margin-bottom: 0.5rem;
    line-height: 7.5rem;
}

.section-title h1:before,
.section-title h1:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 45px;
    height: 2px;
    background-color: #cecece;
}

section#main-banner.jumbo h2 div.title-text {
    margin: 0 1rem;
    font-family: 'Meiryo', serif;
    font-weight: 650;
}

section#main-banner div.main-search input {
    border-radius: 23px;
    font-size: 1.1875rem;
    font-weight: 500;
    height: 46px;
    line-height: 46px;
    padding: 0;
    padding-left: 1.375rem;
}

section#main-banner div.main-search input {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

section#main-banner div.main-search input::placeholder {
    font-family: 'Quicksand', 'Noto Sans JP', sans-serif;
    color: #757575 !important;
    color: #a2a2a2 !important;
    color: transparent;
    font-size: 1.0625rem;
    font-weight: 400 !important;
}

html:lang(ja) section#main-banner div.main-search input::placeholder {
    font-weight: 300 !important;
}

section#main-banner div.main-search .btn {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

section#main-banner div.main-search .input-group {
    max-width: 100px;
    flex: 0 1 10px;
}

.input-group>input.inputbox {
    flex: 0 1 810px;
}

section#main-banner div.main-search .btn-search {
    width: 10px;
}

section#main-banner div.main-banner-image img,
section#about div.main-banner-image img {
    transition: all 0.6s ease;
}


/* fix */
body,
main {
    background-color: #fff;
}

main .btn {
    box-shadow: none;
}

.form-control-lg {
    font-family: 'Roboto', 'Noto Sans JP', sans-serif !important;
}

.input-group-prepend button.btn {
    border-top-left-radius: 24px;
    border-bottom-left-radius: 24px;
}

.input-group-prepend span.multiselect-native-select .btn-lg {
    font-size: 1.25rem;
    font-weight: 400;
}

.input-group-append button.btn {
    border-top-right-radius: 24px;
    border-bottom-right-radius: 24px;
    width: 4rem;
}

section#main-banner.jumbo {
    background-image: url(../images/main_banner_back.png);
}

section .section-title h2 {
    color: #147dad !important;
}

.multiselect-native-select .btn-group {
    width: 200px;
}

ol {
    list-style-type: none;
}

.example-button {
    margin-left: 15%;
    display: flex;
    list-style: none;
    flex-wrap: wrap;
    padding: 0;
}

ul.example-button li {
    margin-left: 1em;
    font-size: 20px;
  }

.detail-setting {
    margin-left: 17%;
}


/* footer */
.wrapper {
    min-height: 40vh;
    display: flex;
    flex-direction: column;
}

footer div.container {
    max-width: 540px;
}

footer div.footer-logo img {
    width: 40%;
}

a#footerlink, a.footerlink, span.footerlink {
    color: white;
    font-size: 20px;
}

ul.copyright-text {
    list-style: none;
    flex-wrap: wrap;
    padding: 0;
}

ul.copyright-text li {
    margin-left: 1em;
    font-size: 15px;
    color: white;
}

ul.explain-link {
    display: flex;
    list-style: none;
    flex-wrap: wrap;
    padding: 0;
}



ul.explain-link li {
    margin-left: 1em;
    font-size: 20px;
  }

ul.publication {
    list-style: none;
    flex-wrap: wrap;
    padding: 0;
}

ul.publication li {
    margin-left: 1em;
    font-size: 20px;
    color: white;
}


/* result image */
img.w100 { 
    width: 100%;
    max-width: 1096px;
 }

/* result table */
table.w100 {
    width:100%;
    max-width: 1096px;
}

div.table {
    width:99%;
    text-align: center;
}


/* input form for filtering search*/
fieldset {
    display: inline-block;
  }

fieldset.big{
    line-height:200%;
    }

input.age {
    line-height:1.2;
    max-width: 150px;
}

/* external link result page */
ul.external-link {
    display: flex;
    list-style: none;
    flex-wrap: wrap;
}

ul.external-link li {
    margin-left: 3em;
    font-size: 20px;
  }

summary.w100 {
    width:100%;
    max-width: 1096px;
}
