@charset "utf-8";






.search-glossary-title {
    display:flex;
}
.glossary-details__summary p {
    line-height: 1.2 !important;
    margin-bottom:0  !important;
}
.glossary-details__content.active {
    margin-bottom:10px;
}
dl.glossary-details__row {
    display: flex;
    flex-wrap: wrap;
}
dl.glossary-details__row dt {
    width: 20%;
}
@media only screen and (max-width: 767px){
    dl.glossary-details__row dt {
        width: 25%;
    }
}
dl.glossary-details__row dd {
    width: 78.5%;
    margin-left:1.5%;
}
@media only screen and (max-width: 767px){
    dl.glossary-details__row dd {
        width: 73.5%;
    }
}
dl.glossary-details__row dt ,
dl.glossary-details__row dd {
    background:#EAF6FD;
    padding-left:1.5% !important;
    padding-right:1.5% !important;
}
.search-abbr dl.glossary-details__row dt ,
.search-abbr dl.glossary-details__row dd {
    background:#e6f3ee;
    padding-left:1.5% !important;
    padding-right:1.5% !important;
}

.glossary-details {
    line-height: 0.2;
    margin: 0 auto;
}
.glossary-details__summary {
    position: relative;
    cursor: pointer;
    background: #bae3f9;
    margin: 0;
    padding: 10px 16px;
    border-radius: 5px;
}
.glossary-details__summary.active {
    background:#004a90;
    color:#fff;
}

.glossary-details__summary:first-child {
    margin-top: 0;
}
.glossary-details__summary::before {
    display: block;
    box-sizing: border-box;
    content: '';
    width: 10px;
    height: 10px;
    border: 0;
    border-top: solid 2px #333;
    border-right: solid 2px #333;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    right: 20px;
    bottom: 0;
    margin: auto;
    transition: all 0.4s ease-out;
    transform-origin: 3px 6px;
}
.glossary-details__summary.active::before {
    transform: rotate(135deg);
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    top: -7px;
}

.search-abbr .glossary-details__summary {
    position: relative;
    cursor: pointer;
    background: #a6d7c5;
    margin: 0;
    padding: 10px 16px;
    border-radius: 5px;
}
.search-abbr .glossary-details__summary.active {
    background:#005d61;
    color:#fff;
}

.search-abbr .glossary-details__summary:first-child {
    margin-top: 0;
}
.search-abbr .glossary-details__summary::before {
    display: block;
    box-sizing: border-box;
    content: '';
    width: 10px;
    height: 10px;
    border: 0;
    border-top: solid 2px #333;
    border-right: solid 2px #333;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    right: 20px;
    bottom: 0;
    margin: auto;
    transition: all 0.4s ease-out;
    transform-origin: 3px 6px;
}
.search-abbr .glossary-details__summary.active::before {
    transform: rotate(135deg);
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    top: -7px;
}


.glossary-details__content {
    overflow: hidden;
    margin: 10px 0 0 0;
    padding: 0 16px;
}
@media only screen and (max-width: 767px){
    .glossary-details__content {
        padding: 0 ;
    }
}
.glossary-details__content * {
    transition: all 0.4s ease-out;
    line-height: 0;
    opacity: 0;
    margin: 0;
    padding: 0;
}
.glossary-details__content.active * {
    border-width: 0 1px 1px;
    line-height: 2;
    opacity: 1;
    padding: 5px;
}
@media only screen and (max-width: 767px){
    .glossary-details__content.active * {
        line-height:1.5;
    }
}



/*  検索結果枠
========================================================================== */
.search-glossary .search-term {
    border:solid 10px #004a90;
    padding:50px 20px 40px 20px;
    background-color:#fff;
}
.search-glossary .search-abbr {
    border:solid 10px #20a0a7;
    padding:50px 20px 40px 20px;
    background-color:#fff;
}



/*  検索タブ
========================================================================== */
.search-glossary-title a {
    color:#fff !important;
}
.search-glossary-title a:hover {
    text-decoration:none;
}
#term , #abbr {
    font-size: 23px;
    font-family: "Lucida Sans Unicode", "Lucida Grande", Arial, Helvetica, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Osaka, メイリオ, sans-serif !important;
    padding: 13px 23px 8px 23px;
    color:#fff !important;
}
#term {
    background-color:#004a90;
}
#abbr{
    background-color:#20a0a7;
}



/*  検索　入力・ボタン
========================================================================== */
.search-glossary-input {
    margin-bottom:10px;
    font-size: 1.2em;
}
.search-glossary-input input[type="text"] {
    width : -webkit-calc(100% - 165px) ;
    width : calc(100% - 165px) ;
    border:none ;
    border-radius: 5px;
    background-color:#efefef;
    padding: 7px 15px;
}
@media only screen and (max-width: 767px){
    .search-glossary-input input[type="text"] {
        width : 100% ;
        margin-bottom:10px;
    }
}
.search-glossary-input input[type="text"]:focus{
    outline:0;
}
.search-glossary-input input[type="submit"]  {
    width:165px;
    cursor: pointer;
}
.search-glossary-input .submit-btn-wrap{
    width:165px;
    float:right;
    text-align:right;
}
@media only screen and (max-width: 767px){
    .search-glossary-input .submit-btn-wrap{
        width:100%;
        display: flex;
        align-items: center;
        justify-content: center;
        float: none !important;
    }
}



/*  ページネーション
========================================================================== */
.tsds_search_pagination {
    text-align:center;
    margin-top:30px;
}
.tsds_search_pagination li{
    display: inline;
}
.tsds_search_pagination a {
    padding: 3px 8px !important;
    margin:0 3px;
    background-color: #CAEDFF;
}
.tsds_search_pagination a:hover {
    background-color: #053EA7;
    color:#fff;
}
.tsds_search_pagination .page_current {
    padding: 3px 8px !important;
    margin:0 3px;
    background-color: #053EA7;
    color:#fff;
}
.tsds_search_pagination .page_current {
    background-color: #004a90 !important;
}