@charset "UTF-8";
/*
Theme Name: kosi-kanri-05
Theme URI: https://sougoukouen.kosi-kanri.com/
Description:  https://sougoukouen.kosi-kanri.com/
Author: kosi-kanri
*/
/*------------------------------
    RESET
--------------------------------*/
* {
    box-sizing: border-box;
}
html {
    font-size: 62.5%;
}
body {
    -webkit-text-size-adjust: 100%;
    font-size: 1.5rem;
    line-height: 1.7;
    word-wrap: break-word;
    font-family: 'Helvetica Neue', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, sans-serif;
}
body.temp-culture {
    font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝", YuMincho, "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

@media screen and (max-width: 767px) {
body {
    font-size: 1.4rem;
}
}
body, div, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, ul, ol, li, figure {
    margin: 0;
    padding: 0;
}
h1, h2, h3, h4, h5, h6 {
    font-weight: normal;
    font-size: 100%;
}
img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}
table {
    border-collapse: collapse;
}
table th, table td {
    text-align: left;
}
ul {
    list-style: none;
}
a:hover img {
    opacity: 0.8;
}
/*------------------------------
    LAYOUT
--------------------------------*/
.container {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 20px;
}
.main {
    padding: 60px 0;
}

@media screen and (max-width: 767px) {
.main {
    padding: 20px 0;
}
}
body.fixed .main {
    padding-top: 152px;
}

@media screen and (max-width: 767px) {
body.fixed .main {
    padding-top: 70px;
}
}
/*------------------------------
    HEADER
--------------------------------*/
.header {
    position: relative;
    z-index: 99;
    width: 100%;
    height: 92px;
    box-shadow: 0 2px 1px rgba(0, 0, 0, 0.1);
    background-color: #fff;
}
.fixed .header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99;
}
.temp-culture .header {
    height: 86px;
}

@media screen and (max-width: 767px) {
.temp-culture .header {
    height: auto;
}
}

@media screen and (max-width: 767px) {
.header {
    height: auto;
}
.header .container {
    padding: 0;
}
}
.header .header-logo {
    position: relative;
    z-index: 2;
}

@media screen and (max-width: 767px) {
.header .header-logo {
    z-index: 0;
    text-align: center;
    padding: 0;
    height: 50px;
    background: #000;
    background-size: cover;
}
}
.header .header-logo img {
    position: absolute;
    top: 0;
    left: 50px;
    width: 210px;
}

@media screen and (max-width: 767px) {
.header .header-logo img {
    position: relative;
    width: auto;
    height: 50px;
    top: auto;
    left: auto;
    margin: 0 auto;
}
}
.header .header-logo a:hover img {
    opacity: 1.0;
}
.site-ttl {
    font-size: 0.9rem;
    line-height: 18px;
    text-align: right;
    background-color: #D7D7D7;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media screen and (max-width: 767px) {
.site-ttl {
    background-color: #000;
    color: #fff;
}
}
.header-lang {
    width: 100%;
    height: 35px;
    font-size: 1.2rem;
    overflow: hidden;
    background: #fff;
    padding: 7px 0;
    position: absolute;
    top: 0;
    left: 0;
}

@media screen and (max-width: 767px) {
.header-lang {
    position: relative;
    padding: 7px;
}
}
.temp-culture .header-lang {
    height: 46px;
}

@media screen and (max-width: 767px) {
.temp-culture .header-lang {
    height: auto;
}
}
.temp-sports .header-lang {
    height: 52px;
}

@media screen and (max-width: 767px) {
.temp-sports .header-lang {
    height: auto;
}
}
.header-lang ul {
    display: flex;
    justify-content: flex-end;
}

@media screen and (max-width: 767px) {
.header-lang ul {
    justify-content: space-around;
}
}
.header-lang ul li {
    line-height: 21px;
    text-align: center;
    width: 76px;
}

@media screen and (max-width: 767px) {
.header-lang ul li {
    width: 23%;
}
}
.header-lang ul li + li {
    margin-left: 5px;
}

@media screen and (max-width: 767px) {
.header-lang ul li + li {
    margin-left: 0;
}
}
.header-lang ul li a {
    display: block;
    background-color: #000;
    color: #fff;
    text-decoration: none;
    border-radius: 3px;
}
.header-lang ul li a:hover {
    opacity: 0.8;
}

@media screen and (max-width: 767px) {
.header-nav {
    display: none;
}
}
.toggle-btn {
    display: none;
}

@media screen and (max-width: 767px) {
.toggle-btn {
    display: block;
}
}
.gnav-btn {
    display: block;
    width: 40px;
    height: 37px;
    padding: 0 5px 5px;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -18px;
    background-color: #fff;
    border-radius: 6px;
    cursor: pointer;
    line-height: 12px;
    white-space: nowrap;
}

@media screen and (min-width: 768px) {
.gnav-btn {
    display: none;
}
}
.gnav-btn .ttl {
    font-size: 1.0rem;
}
.gnav-btn-bars {
    display: block;
    width: 100%;
    height: 20px;
    position: relative;
}
.gnav-btn-bars .bar {
    display: block;
    position: relative;
    top: 9px;
    right: 0;
    width: 100%;
    height: 3px;
    background: #818181;
    border-radius: 50px;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}
.gnav-btn.active .gnav-btn-bars .bar {
    background: transparent;
}
.gnav-btn-bars .bar:before, .gnav-btn-bars .bar:after {
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 3px;
    border-radius: 50px;
    background: #818181;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}
.gnav-btn-bars .bar:before {
    top: -7px;
    right: 0;
}
.gnav-btn.active .gnav-btn-bars .bar:before {
    -moz-transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
    top: 0;
    right: 0;
}
.gnav-btn-bars .bar:after {
    bottom: -7px;
    right: 0;
}
.gnav-btn.active .gnav-btn-bars .bar:after {
    -moz-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    bottom: 0;
    right: 0;
}
/*------------------------------
    FOOTER
--------------------------------*/
.footer {
    padding-top: 10px;
    background-color: #ececec;
}
.footer-sitemap {
    margin-bottom: 10px;
    display: table;
    table-layout: fixed;
    width: 100%;
    font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
.footer-sitemap {
    font-size: 1.3rem;
    display: block;
}
}
.footer-sitemap .inner {
    display: table-cell;
    border-left: 2px solid #000;
    padding: 5px 15px;
}

@media screen and (max-width: 767px) {
.footer-sitemap .inner {
    display: block;
    border: none;
    padding: 5px 0;
}
.footer-sitemap .inner + .inner {
    border-top: 1px solid #000;
}
}
.footer-dl .footer-nav {
    margin-left: 1em;
}
.footer-nav > li::before {
    content: '→';
    margin-right: 5px;
}
.footer-dl .footer-nav > li::before {
    content: '・';
}
.footer-nav > li + li {
    margin-top: 0.3em;
}
.footer-nav > li a {
    color: #000;
    text-decoration: none;
}
.footer-nav > li a:hover {
    text-decoration: underline;
}
.footer-nav > li > ul > li::before {
    content: '・';
    margin-right: 5px;
}
.footer-dl dt {
    margin-bottom: 0.5em;
}
.footer-info {
    font-size: 1.3rem;
}
.footer-info .ttl {
    font-size: 1.6rem;
    line-height: 1.5;
}
.copyright {
    background: #000;
    color: #fff;
    text-align: center;
    font-size: 1.2rem;
    padding: 10px 0;
}

@media screen and (max-width: 767px) {
.copyright {
    font-size: 1.1rem;
    padding: 5px 0;
}
}

/*------------------------------
    GNAV
--------------------------------*/
@media screen and (max-width: 767px) {
.gnav .gnav-inner > ul {
    padding: 10px;
}
.gnav .gnav-inner > ul > li {
    position: relative;
}
.gnav .gnav-inner > ul > li + li {
    border-top: 1px solid #ccc;
}
.gnav .gnav-inner > ul > li a {
    display: block;
    padding: 10px;
    color: #000;
    text-decoration: none;
}
.gnav .gnav-inner > ul > li.child::before, .gnav .gnav-inner > ul > li.child::after {
    content: '';
    background-color: #000;
    position: absolute;
    right: 20px;
    top: 23px;
    transition: all 500ms ease 0ms;
}
.gnav .gnav-inner > ul > li.child::before {
    width: 1px;
    height: 13px;
    margin-top: -6px;
}
.gnav .gnav-inner > ul > li.child::after {
    width: 13px;
    height: 1px;
    margin-right: -6px;
}
.gnav .gnav-inner > ul > li.child.active::before {
    opacity: 0;
    transform: rotate(90deg);
}
.gnav .gnav-inner > ul > li.child .child-nav {
    display: none;
}
.gnav .gnav-inner > ul > li .child-nav li {
    padding-left: 1em;
    border-top: 1px dotted #ccc;
}
}

@media print {
.gnav {
    display: none;
}
}

@media screen and (min-width: 768px) {
.gnav {
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
}
.gnav .gnav-inner {
    position: relative;
}
.gnav .gnav-inner > ul {
    margin-left: 240px;
    padding: 9px 0;
    float: right;
    display: flex;
    margin-right: -13px;
    height: 57px;
}
.temp-culture .gnav .gnav-inner > ul, .temp-sports .gnav .gnav-inner > ul {
    height: 40px;
}
.gnav .gnav-inner > ul > li {
    cursor: pointer;
    line-height: 1;
    position: relative;
    align-self: center;
}
.gnav .gnav-inner > ul > li > a {
    display: block;
    padding: 13px;
    color: #000;
    text-decoration: none;
}
.temp-culture .gnav .gnav-inner > ul > li > a, .temp-sports .gnav .gnav-inner > ul > li > a {
    padding: 6px 13px;
}
.temp-sports .gnav .gnav-inner > ul > li > a {
    font-weight: bold;
}
.gnav .gnav-inner > ul > li > a:hover {
    background-color: #D2E5F7;
    border-radius: 5px;
}
.gnav .gnav-inner > ul > li + li > a::before {
    content: '';
    display: block;
    width: 1px;
    height: 15px;
    background: #000;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -8px;
}
.gnav .gnav-inner > ul > li > ul {
    display: none;
}
.gnav .gnav-inner > ul > li .child-nav {
    display: block;
    text-overflow: ellipsis;
    white-space: nowrap;
    position: absolute;
    top: 100%;
    left: 0;
    opacity: 1;
    padding-top: 6px;
    height: 0;
    overflow: hidden;
}
.gnav .gnav-inner > ul > li .child-nav ul {
    background-color: rgba(255, 255, 255, 0.6);
    padding: 9px;
    border: 1px solid #ccc;
    border-top: none;
}
.gnav .gnav-inner > ul > li .child-nav li {
    width: auto;
    height: 0;
    line-height: 40px;
    transition: 0.2s;
}
.gnav .gnav-inner > ul > li .child-nav li a {
    padding: 0 13px;
    display: block;
    color: #000;
    text-decoration: none;
}
.gnav .gnav-inner > ul > li .child-nav li a:hover {
    background-color: #D2E5F7;
    border-radius: 5px;
}
.gnav .gnav-inner > ul > li:hover .child-nav {
    opacity: 1;
    overflow: visible;
}
.gnav .gnav-inner > ul > li:hover .child-nav li {
    height: 39px;
}
}
/*------------------------------
    COMMON STYLE
--------------------------------*/
/*Decoration*/
.img-fl {
    float: left;
    margin-right: 1em;
}
.img-fr {
    float: right;
    margin-left: 1em;
}
.text-center {
    text-align: center;
}
.visible-pc {
    display: block;
}

@media screen and (max-width: 767px) {
.visible-pc {
    display: none;
}
}
.visible-sp {
    display: none;
}

@media screen and (max-width: 767px) {
.visible-sp {
    display: block;
}
}
.table {
    width: 100%;
    font-size: 1.4rem;
}
.table th, .table td {
    line-height: 1.5;
    padding: 10px;
    border: 1px solid #C3C3C3;
    font-weight: normal;
    vertical-align: top;
}
.table th {
    background-color: #FFE2E4;
}
.table caption {
    text-align: left;
    color: #6E1D38;
    margin-bottom: 5px;
}
.table caption::before {
    content: '●';
}
/*Slider*/
.slider-pro {
    margin-top: -60px;
    margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
.slider-pro {
    margin-top: -20px;
    margin-bottom: 30px;
}
}
.slider-pro.slider-pro__mbs {
    margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
.slider-pro.slider-pro__mbs {
    margin-bottom: 20px;
}
}
.slider-pro .sp-layer {
    padding: 10px 10px 35px 10px;
    line-height: 1.5;
    color: #fff;
    background-color: rgba(0, 0, 0, 0.4);
}
.slider-pro.not-slider .sp-layer {
    padding: 10px;
}
.slider-pro .sp-buttons {
    position: absolute;
    bottom: 0;
}
.slider-pro.sp-horizontal .sp-arrows {
    margin-top: -20px;
}
.slider-pro.sp-horizontal .sp-previous-arrow {
    left: 50%;
    right: auto;
    margin-left: -480px;
}
.slider-pro.sp-horizontal .sp-next-arrow {
    right: 50%;
    left: auto;
    margin-right: -480px;
}
.slider-pro .sp-arrow {
    width: 40px;
    height: 40px;
    background-color: rgba(0, 0, 0, 0.4);
    border-radius: 50%;
    padding: 10px;
}
.slider-pro .sp-arrow:hover {
    background-color: black;
}
.slider-pro .sp-arrow::after {
    left: 40%;
    top: 50%;
    -webkit-transform: skew(-140deg, 0deg);
    -ms-transform: skew(-140deg, 0deg);
    transform: skew(-140deg, 0deg);
}
.slider-pro .sp-arrow::before {
    left: 40%;
    top: 20%;
    -webkit-transform: skew(140deg, 0deg);
    -ms-transform: skew(140deg, 0deg);
    transform: skew(140deg, 0deg);
}
.slider-pro .sp-next-arrow::after, .slider-pro .sp-next-arrow::before, .slider-pro .sp-previous-arrow::after, .slider-pro .sp-previous-arrow::before {
    width: 10%;
    height: 30%;
}
.slider-pro .sp-button {
    width: 12px;
    height: 12px;
    background-color: #fff;
    border: none;
}
.slider-pro .sp-selected-button {
    background-color: #818181;
}
.slider-pro.slider-2item .sp-button:nth-child(3), .slider-pro.slider-2item .sp-button:nth-child(4) {
    background-color: transparent;
}
.slider-pro.slider-2item .sp-button:nth-child(3).sp-selected-button, .slider-pro.slider-2item .sp-button:nth-child(4).sp-selected-button {
    background-color: #818181;
}
.slider-pro.slider-2item .sp-button:nth-child(3) {
    margin-left: -36px;
}
.lead-text {
    margin-bottom: 1em;
}
/*Block*/
.section + .section {
    margin-top: 60px;
}

@media screen and (max-width: 767px) {
.section + .section {
    margin-top: 30px;
}
}
.row + .row {
    margin-top: 30px;
}

@media screen and (max-width: 767px) {
.row + .row {
    margin-top: 20px;
}
}
.group-2 {
    display: flex;
    justify-content: space-between;
}
.group-2 .col, .group-2 li {
    width: calc(100% / 2 - 20px);
}
.group-3 {
    display: flex;
    justify-content: space-between;
}
.group-3 .col, .group-3 li {
    width: calc(100% / 3 - 20px);
}
.group-4 {
    display: flex;
    justify-content: space-between;
}
.group-4 .col, .group-4 li {
    width: calc(100% / 4 - 15px);
}

@media screen and (max-width: 767px) {
.group-sp-block {
    display: block;
}
.group-sp-block .col {
    width: 100%;
}
.group-sp-block .col + .col {
    margin-top: 1em;
}
}
/*Title*/
.main-ttl {
    font-size: 1.8rem;
    line-height: 1;
    color: #fff;
    font-weight: bold;
    background: #6E1D38;
    padding: 8px 10px;
    margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
.main-ttl {
    font-size: 1.6rem;
    margin-bottom: 15px;
}
}
.main-ttl .tag {
    display: inline-block;
    background-color: #555;
    border-radius: 4px;
    padding: 5px 15px;
    margin-right: 10px;
}

@media screen and (max-width: 767px) {
.main-ttl .tag {
    font-size: 1.3rem;
    padding: 5px 10px;
}
}
.main-ttl .modify-time {
    float: right;
    font-size: 1.5rem;
    padding-top: 5px;
}

@media screen and (max-width: 767px) {
.main-ttl .modify-time {
    font-size: 1.2rem;
}
}
.page-ttl {
    font-size: 2.2rem;
    line-height: 1.3;
    font-weight: bold;
    color: #fff;
    background: #6E1D38;
    border-top: 10px solid #E6C3C5;
    padding: 6px 15px;
    margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
.page-ttl {
    font-size: 1.8rem;
    margin-bottom: 10px;
}
}
.sub-ttl {
    font-size: 1.8rem;
    font-weight: bold;
    color: #6E1D38;
    border-bottom: 1px solid #E6C3C5;
    margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
.sub-ttl {
    font-size: 1.6rem;
    margin-bottom: 15px;
}
}
.sub-ttl::before {
    content: '■';
    margin-right: 5px;
}
.sub-ttl.sub-ttl__mbs {
    margin-bottom: 10px;
}
/*News*/
.news-wrap {
    position: relative;
    border: 1px solid #C3C3C3;
    background-color: #fff;
}
.news-wrap dl {
    padding: 15px 15px 0;
    height: 289px;
    overflow-y: scroll;
}

@media screen and (max-width: 767px) {
.news-wrap dl {
    padding: 10px;
    height: auto;
    max-height: 289px;
}
}
.news-wrap dl dt {
    font-size: 1.4rem;
    width: 85px;
    text-align: center;
    color: #fff;
    clear: left;
    float: left;
    background-color: #6E1D38;
    border-radius: 3px;
}

@media screen and (max-width: 767px) {
.news-wrap dl dt {
    float: none;
    font-size: 1.3rem;
    margin-bottom: 5px;
}
}
.news-wrap dl dd {
    margin-left: 95px;
    margin-bottom: 2em;
}

@media screen and (max-width: 767px) {
.news-wrap dl dd {
    font-size: 1.4rem;
    margin-left: 0;
    margin-bottom: 20px;
}
}
.news-wrap dl dd .cat {
    margin-right: 5px;
}
.news-wrap .link-all {
    text-align: right;
    margin: 0 20px 0 15px;
    padding: 10px 0;
    border-top: 1px solid #C3C3C3;
    line-height: 1;
}
.news-wrap .link-all a {
    display: inline-block;
    font-size: 1.1rem;
    background: #B3B3B3;
    color: #fff;
    text-decoration: none;
    padding: 5px;
    border-radius: 3px;
}
.news-wrap .link-all a:hover {
    opacity: 0.8;
}
.news-container {
    padding: 40px 0;
}

@media screen and (max-width: 767px) {
.news-container {
    padding: 20px 0;
}
}
.news-container .news-block {
    display: table;
    width: 100%;
}

@media screen and (max-width: 767px) {
.news-container .news-block {
    display: block;
}
}
.news-container .news-block .news-ttl {
    display: table-cell;
    width: calc(150px + 60px);
    vertical-align: middle;
}

@media screen and (max-width: 767px) {
.news-container .news-block .news-ttl {
    display: block;
    width: 100%;
}
.news-container .news-block .news-ttl img {
    width: 70px;
    display: block;
    margin: 0 auto 10px;
}
}
.news-container .news-block .news-wrap {
    display: table-cell;
    vertical-align: top;
}

@media screen and (max-width: 767px) {
.news-container .news-block .news-wrap {
    display: block;
}
}
.news-container .news-block .news-wrap dl {
    padding: 30px 30px 0;
}

@media screen and (max-width: 767px) {
.news-container .news-block .news-wrap dl {
    padding: 10px 10px 0;
}
}
.news-list dt {
    width: 100px;
    text-align: center;
    color: #fff;
    background-color: #6E1D38;
    border-radius: 3px;
    margin-bottom: 5px;
}

@media screen and (max-width: 767px) {
.news-list dt {
    font-size: 1.4rem;
}
}
.news-list dd {
    padding: 0 10px 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #6E1D38;
}
.temp-culture .news-list dd {
    font-size: 1.8rem;
}

@media screen and (max-width: 767px) {
.news-list dd {
    font-size: 1.4rem;
    padding: 0 10px 10px;
    margin-bottom: 10px;
}
}
.news-list dd .cat {
    margin-right: 5px;
}
.lead-container {
    margin: 50px 0;
    padding: 30px 0;
}

@media screen and (max-width: 767px) {
.lead-container {
    margin: 0;
    padding: 20px 0;
}
}
.lead-container .lead-block {
    display: table;
    width: 100%;
}

@media screen and (max-width: 767px) {
.lead-container .lead-block {
    display: block;
}
}
.lead-container .lead-block .inner {
    display: table-cell;
    vertical-align: middle;
}

@media screen and (max-width: 767px) {
.lead-container .lead-block .inner {
    display: block;
}
}
.lead-container .lead-block .inner .ttl {
    font-size: 3.6rem;
    line-height: 1.3;
    font-weight: bold;
}

@media screen and (max-width: 767px) {
.lead-container .lead-block .inner .ttl {
    font-size: 2.0rem;
}
}
.lead-container .lead-block .inner .catch {
    font-size: 1.7rem;
}

@media screen and (max-width: 767px) {
.lead-container .lead-block .inner .catch {
    font-size: 1.6rem;
}
}

@media screen and (max-width: 767px) {
.entry {
    font-size: 1.4rem;
}
}
.entry .entry-date {
    margin-top: -10px;
}

@media screen and (max-width: 767px) {
.entry .entry-date {
    margin-top: 0;
}
}
.entry .entry-content {
    overflow: hidden;
    margin: 1.5em 0;
}
.entry .entry-content p + p {
    margin-top: 1em;
}
.entry .entry-content .aligncenter {
    display: block;
    margin: 0 auto;
}
.entry .entry-content .alignright {
    float: right;
    margin-right: 1em;
    margin-bottom: 1em;
}
.entry .entry-content .alignleft {
    float: left;
    margin-right: 1em;
    margin-bottom: 1em;
}
.entry .entry-content img[class*="wp-image-"], .entry .entry-content .entry-content img[class*="attachment-"] {
    height: auto;
    max-width: 100%;
}
.entry .entry-content ol, .entry .entry-content ul {
    margin: 1em 0;
    padding-left: 40px;
}
.entry .entry-content li {
    display: list-item;
}
.entry .entry-content ul li {
    list-style: disc;
}
.table-responsive {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    border: 1px solid #C3C3C3;
}
.table-responsive .table {
    border-collapse: separate;
    border-spacing: 0;
}
.table-responsive .table th, .table-responsive .table td {
    line-height: 1.5;
    border: none;
    border-right: 1px solid #C3C3C3;
    border-bottom: 1px solid #C3C3C3;
    white-space: nowrap;
}

@media screen and (max-width: 767px) {
.table-responsive .table th, .table-responsive .table td {
    white-space: nowrap;
}
}
.table-responsive .table th:last-child, .table-responsive .table td:last-child {
    border-right: none;
}
.table-responsive .table tbody tr:last-child th, .table-responsive .table tbody tr:last-child td {
    border-bottom: none;
}
.table-responsive .table-sticky thead .blank {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    left: 0;
}
.table-responsive .table-sticky tbody th:first-child {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    left: 0;
}
.table-responsive-caution {
    font-size: 1.2rem;
}

@media screen and (min-width: 768px) {
.table-responsive-caution {
    display: none;
}
}
.table-time td {
    padding-right: 1.5em;
}

@media screen and (max-width: 767px) {
.table-time td {
    display: block;
}
}
.table-time td::first-letter {
    margin-right: 3px;
}
.link-manmaru {
    margin: 1.5em 0 1em;
}
.link-manmaru img {
    border: 1px solid #919191;
    margin-bottom: 5px;
}
.dl-basic dt {
    color: #6E1D38;
    font-weight: bold;
}
.dl-basic dd {
    margin-bottom: 15px;
}
.dl-basic dd strong {
    font-weight: normal;
    color: #6E1D38;
}
.ol-basic {
    list-style: none;
    counter-reset: list;
}
.ol-basic li {
    position: relative;
    padding-left: 1em;
}
.ol-basic li::before {
    counter-increment: list;
    content: counter(list) ".";
    position: absolute;
    left: 0;
}
.link-btn {
    font-weight: bold;
    display: inline-block;
    min-width: 220px;
    text-align: center;
    margin: 5px 0 1em;
    color: #fff;
    text-decoration: none;
    background-color: #6E1D38;
    line-height: 1;
    padding: 10px;
}

@media screen and (max-width: 767px) {
.link-btn {
    margin-left: auto;
    margin-right: auto;
}
}
.link-btn:hover {
    opacity: 0.8;
}
.contact-wrap {
    padding: 0 60px;
}

@media screen and (max-width: 767px) {
.contact-wrap {
    padding: 0;
}
}
.contact-buttons {
    display: flex;
    justify-content: center;
}

@media screen and (max-width: 767px) {
.contact-buttons {
    display: block;
}
}
.contact-buttons .inner {
    width: 390px;
}

@media screen and (max-width: 767px) {
.contact-buttons .inner {
    width: 100%;
}
}
.contact-buttons .inner + .inner {
    margin-left: 60px;
}

@media screen and (max-width: 767px) {
.contact-buttons .inner + .inner {
    margin-top: 1em;
    margin-left: 0;
}
}

.contact-tel{
	line-height: 3;
	font-size: 1.2em;
}

.contact-buttons .contact-tel img, .contact-buttons .contact-mail img {
    border-radius: 6px;
}
.contact-buttons .contact-tel::before, .contact-buttons .contact-mail::before {
    font-size: 1.7rem;
    display: block;
    font-weight: bold;
}
.temp-culture .contact-buttons .contact-tel::before, .temp-culture .contact-buttons .contact-mail::before {
    font-weight: normal;
}

@media screen and (max-width: 767px) {
.contact-buttons .contact-tel::before, .contact-buttons .contact-mail::before {
    font-size: 1.4rem;
}
}
.contact-buttons .contact-tel::after, .contact-buttons .contact-mail::after {
    font-size: 1.3rem;
    text-align: center;
    margin-top: 5px;
    display: block;
}

/*設備仕様*/
.facility-icon {
    display: flex;
    justify-content: center;
}

@media screen and (max-width: 767px) {
.facility-icon {
    display: block;
}
}
.facility-icon .col + .col {
    margin-left: 30px;
}

@media screen and (max-width: 767px) {
.facility-icon .col + .col {
    margin-left: 0;
    margin-top: 20px;
}
}
.facility-icon .parking-caution {
    display: block;
    font-size: 1.6rem;
    width: 260px;
    background-color: #1056A4;
    color: #fff;
    padding: 10px;
    line-height: 1.4;
}

@media screen and (max-width: 767px) {
.facility-icon .parking-caution {
    width: 100%;
}
.facility-icon .parking-caution br {
    display: none;
}
}
.facility-icon .parking-caution .ttl {
    font-weight: bold;
    text-align: center;
    font-size: 1.8rem;
    margin-bottom: 5px;
}
.facility-icon .icon {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: -1em;
}
.facility-icon .icon li {
    text-align: center;
    margin-top: 1em;
}

@media screen and (max-width: 767px) {
.facility-icon .icon li {
    width: 33.333333%;
    padding: 0 10px;
}
}
.facility-icon .icon li + li {
    margin-left: 20px;
}

@media screen and (max-width: 767px) {
.facility-icon .icon li + li {
    margin-left: 0;
}
}

@media screen and (max-width: 767px) {
.facility-icon .icon.icon__parking li {
    width: 50%;
}
}
.facility-icon .icon.icon__parking img {
    display: inline-block;
    width: 65px;
    height: 65px;
    padding: 2px;
    background-color: #1056A4;
    border-radius: 6px;
}
.facility-icon .icon.icon__top {
    font-size: 1.4rem;
    line-height: 1.3;
}
.facility-icon .icon.icon__top img {
    display: block;
    margin: 0 auto 5px;
}
.facility-icon .icon.icon__top li.aed {
    text-align: left;
    font-size: 1.0rem;
}

@media screen and (max-width: 767px) {
.facility-icon .icon.icon__top li.aed br {
    display: none;
}
}
.facility-icon .icon.icon__top li.aed img {
    border: 1px solid #555;
}
.facility-icon .icon.icon__top li.babybed img {
    border: 1px solid #000;
}
.facility-icon .icon.icon__top li.nosmorking {
    text-align: center;
    font-size: 1.4rem;
}
.facility-icon.facility-icon__art {
    justify-content: flex-start;
}
.facility-icon.facility-icon__art .icon {
    justify-content: flex-start;
}
.facility-icon.facility-icon__art .icon.icon__parking {
    margin-bottom: 10px;
}
.facility-icon.facility-icon__art .icon.icon__parking img {
    background-color: #4672B4;
    vertical-align: middle;
}
.page-top {
    display: none;
    width: 64px;
    height: 64px;
    border-radius: 50px;
    position: fixed;
    right: 20px;
    bottom: 20px;
    background: #6E1D38 url(https://www.kosi-kanri.com/lib/images/pagetop.svg);
}

@media screen and (max-width: 767px) {
.page-top {
    width: 40px;
    height: 40px;
    right: 10px;
    bottom: 10px;
}
}
.wp-pagenavi {
    margin-top: 3em;
    font-size: 1.6rem;
    text-align: center;
}
.wp-pagenavi a, .wp-pagenavi .current {
    display: inline-block;
    border: 1px solid #6E1D38;
    text-align: center;
    width: 30px;
    line-height: 30px;
    margin: 0 5px;
}
.wp-pagenavi a {
    text-decoration: none;
    color: #6E1D38;
}
.wp-pagenavi a:hover {
    background-color: #FFE2E4;
}
.wp-pagenavi a.previouspostslink, .wp-pagenavi a.nextpostslink {
    background-color: #6E1D38;
    color: #fff;
}
.wp-pagenavi a.previouspostslink:hover, .wp-pagenavi a.nextpostslink:hover {
    opacity: 0.8;
}
.wp-pagenavi .current {
    background-color: #FFE2E4;
    color: #6E1D38;
}
/*アクセス*/
.access-method {
    display: flex;
    flex-wrap: wrap;
    line-height: 1.3;
}
.access-method dt {
    width: 50%;
    min-height: 65px;
    position: relative;
    display: table;
    margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
.access-method dt {
    width: 100%;
    min-height: 40px;
}
}
.access-method dt .ttl {
    display: table-cell;
    vertical-align: middle;
    background-color: #FFE2E4;
    font-weight: bold;
    font-size: 1.6rem;
    padding: 3px 10px;
}
.access-method dt::before {
    content: '';
    display: table-cell;
    width: 65px;
    height: 65px;
    background-color: #6E1D38;
    border-right: 10px solid #fff;
    background-image: url(https://www.kosi-kanri.com/lib/images/icon_train.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

@media screen and (max-width: 767px) {
.access-method dt::before {
    width: 40px;
}
}
.access-method dt.car::before {
    background-image: url(https://www.kosi-kanri.com/lib/images/icon_car.svg);
}
.access-method dd {
    width: 50%;
    font-size: 1.3rem;
    align-self: center;
    padding-left: 10px;
    margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
.access-method dd {
    width: 100%;
    padding-left: 0;
}
}
.temp-sports .access-method dd {
    font-weight: bold;
}
.access-method.access-method__dark dt .ttl {
    background-color: #6E1D38;
    color: #fff;
}
.gmap-wrap .address {
    font-weight: bold;
    font-size: 1.6rem;
}
.gmap-wrap .gmap {
    width: 100%;
    height: 500px;
    border: none;
}

@media screen and (max-width: 999px) {
.gmap-wrap .gmap {
    height: 50vw;
}
}

@media screen and (max-width: 767px) {
.gmap-wrap .gmap {
    height: 300px;
}
}
/*関連サイト*/
.link-list {
    display: flex;
    flex-wrap: wrap;
    margin-top: -3.125%;
}

@media screen and (max-width: 767px) {
.link-list {
    margin-top: -2%;
}
}
.link-list li {
    width: 31.25%;
    margin-right: 3.125%;
    margin-top: 3.125%;
}
.link-list li:nth-child(3n) {
    margin-right: 0;
}

@media screen and (max-width: 767px) {
.link-list li {
    width: 49%;
    margin-right: 2%;
    margin-top: 2%;
}
.link-list li:nth-child(3n) {
    margin-right: 2%;
}
.link-list li:nth-child(even) {
    margin-right: 0;
}
}
.other-links .page-ttl {
    border-top: none;
}
.other-links ul li {
    font-size: 1.8rem;
}

@media screen and (max-width: 767px) {
.other-links ul li {
    font-size: 1.6rem;
}
}
.other-links ul li a {
    text-decoration: none;
}
.other-links ul li a::before {
    content: '＞';
}
/*各種ダウンロード*/
.download-list dt {
    clear: left;
    float: left;
    font-size: 1.8rem;
    color: #6E1D38;
    border-bottom: 1px solid #6E1D38;
    width: 48.4375%;
    /*465px*/
    line-height: 1.3;
    padding-bottom: 10px;
    font-weight: bold;
}

@media screen and (max-width: 767px) {
.download-list dt {
    width: 100%;
    float: none;
    font-size: 1.6rem;
    margin-bottom: 10px;
}
}
.download-list dd {
    margin-left: 51.5625%;
    /*495px*/
    height: 75px;
    margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
.download-list dd {
    margin-left: 0;
    margin-bottom: 20px;
    height: 60px;
}
}
.download-list dd a {
    display: block;
    position: relative;
    line-height: 55px;
    padding: 10px 83px 10px 20px;
    font-weight: bold;
    text-decoration: none;
    color: #fff;
    background-color: #6E1D38;
    border-radius: 6px;
    font-family: 'Helvetica Neue', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, sans-serif;
    font-size: 23px;
}

@media screen and (max-width: 999px) {
.download-list dd a {
    font-size: 23px;
    font-size: 2.3958333333vw;
    padding: 1vw 8.3vw 1vw 2vw;
}
}

@media screen and (max-width: 767px) {
.download-list dd a {
    font-size: 15px;
    line-height: 40px;
    padding-top: 10px;
    padding-bottom: 10px;
}
}
.download-list dd a:hover {
    opacity: 0.8;
}
.download-list dd a::before {
    content: '→';
    margin-right: 5px;
}

@media screen and (max-width: 999px) {
.download-list dd a::before {
    margin: 0vw 0.5vw 0vw 0vw;
}
}
.download-list dd a::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 10px;
    display: block;
    margin-top: -33px;
    width: 63px;
    height: 66px;
    background-image: url(https://www.kosi-kanri.com/lib/images/icon_pdf.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

@media screen and (max-width: 999px) {
.download-list dd a::after {
    width: 6.3vw;
    height: 6.6vw;
    margin: -3.3vw 0vw 0vw 0vw;
    right: 1vw;
}
}

@media screen and (max-width: 767px) {
.download-list dd a::after {
    width: 45px;
    height: 50px;
    margin-top: -25px;
    right: 10px;
}
}
.download-list dd:last-child {
    margin-bottom: 0;
}
/*大会情報一覧*/
.event-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    line-height: 1.5;
    margin-top: -40px;
}

@media screen and (max-width: 767px) {
.event-list {
    display: block;
    margin-top: 0;
}
}
.event-list li {
    font-size: 1.4rem;
    width: calc(50% - 20px);
    margin-top: 40px;
    background: #FFE2E4;
    position: relative;
}

@media screen and (max-width: 767px) {
.event-list li {
    width: 100%;
    margin-top: 10px;
}
}
.event-list li a {
    display: block;
    text-decoration: none;
    color: #000;
}
.event-list li a::after {
    content: '→ 詳細';
    position: absolute;
    right: 15px;
    bottom: 15px;
    background-color: #6E1D38;
    color: #fff;
    border-radius: 4px;
    line-height: 1;
    padding: 5px 10px;
}
.event-list li a:hover::after {
    opacity: 0.8;
}
.event-list li:hover .thumb {
    opacity: 0.8;
}
.event-list li .inner {
    display: table;
    width: 100%;
    min-height: 243px;
}

@media screen and (max-width: 767px) {
.event-list li .inner {
    min-height: inherit;
}
}
.event-list li .thumb, .event-list li .desc {
    display: table-cell;
    vertical-align: top;
}
.event-list li .thumb {
    width: 47%;
    background-color: #ccc;
    background-image: url(https://www.kosi-kanri.com/lib/images/default.jpg);
    background-size: cover;
    background-position: center;
}

@media screen and (max-width: 767px) {
.event-list li .thumb {
    width: 30%;
}
}
.event-list li .thumb + .desc {
    width: 53%;
}

@media screen and (max-width: 767px) {
.event-list li .thumb + .desc {
    width: 70%;
}
}
.event-list li .desc {
    padding: 10px 20px 50px;
}

@media screen and (max-width: 767px) {
.event-list li .desc {
    padding: 10px 10px 50px 10px;
}
}
.event-list li .desc .date {
    display: block;
    font-size: 1.6rem;
    font-weight: bold;
    color: #6E1D38;
    margin-bottom: 0.5em;
}

@media screen and (max-width: 767px) {
.event-list li .desc .date {
    font-size: 1.4rem;
    margin-bottom: 5px;
}
}
.event-list li .desc .ttl {
    display: block;
    font-weight: bold;
    margin-bottom: 1em;
}

@media screen and (max-width: 767px) {
.event-list li .desc .ttl {
    font-size: 1.4rem;
    margin-bottom: 5px;
}
}
.event-list li .desc .spec {
    display: block;
}
.event-end {
    color: #ff0000;
    font-weight: bold;
}
.event-overview {
    font-weight: bold;
    margin-bottom: 1.5em;
}
.table-event-detail th {
    width: 150px;
    white-space: nowrap;
}

@media screen and (max-width: 767px) {
.table-event-detail th {
    width: 50px;
}
}
.table-event-detail .date {
    color: #6E1D38;
    font-size: 1.6rem;
    font-weight: bold;
}
.entry-content-head {
    display: flex;
    justify-content: space-between;
    margin-bottom: 2em;
}

@media screen and (max-width: 767px) {
.entry-content-head {
    display: block;
}
}
.entry-content-head .thumb {
    width: 43.75%;
    /*420px*/
    margin-right: 3.125%;
/*30px*/ }

@media screen and (max-width: 767px) {
.entry-content-head .thumb {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
    text-align: center;
}
}
.entry-content-head .summary {
    width: 53.125%;
/*510px*/ }

@media screen and (max-width: 767px) {
.entry-content-head .summary {
    width: 100%;
}
}
.entry-content-head.entry-content-head__not-thumb .summary {
    width: 100%;
}
/*サイトマップ*/
#sitemap_list > li {
    border-bottom: 1px solid #ccc;
    padding: 10px;
}
#sitemap_list > li .children {
    margin-left: 1em;
}
#sitemap_list > li .children > li {
    padding: 10px;
}

@media screen and (max-width: 767px) {
#sitemap_list a {
    display: block;
}
}
.home-nav {
    display: flex;
    justify-content: space-between;
    font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
.home-nav {
    display: block;
    text-align: center;
}
}
.home-nav li {
    width: calc(100% / 3 - 20px);
}

@media screen and (max-width: 767px) {
.home-nav li {
    width: 100%;
    margin-top: 1em;
}
}
.home-nav li a {
    color: #000;
    text-decoration: none;
}
.home-nav li img {
    display: block;
    margin: 0 auto 5px;
}

/*------------------------------
    EXPANSION STYLE
--------------------------------*/
@media screen and (max-width: 767px) {
.site-ttl__kyuudoujyou {
    background-color: #1A2638;
}
}

@media screen and (max-width: 767px) {
.header__kyuudoujyou .header-logo {
    background: #59A3EB url("images/common/logo-sp-bg.jpg") center;
}
}
.header__kyuudoujyou .header-lang {
    background: #EEEFE7 url("images/common/bg_header-lang.jpg") center;
}
.header__kyuudoujyou .header-lang ul li a {
    background-color: #6E1D38;
}
.header__kyuudoujyou .gnav-btn {
    background-color: #D9E9FF;
}
.footer__kyuudoujyou .footer-sitemap {
    table-layout: auto;
}
.footer__kyuudoujyou .footer-sitemap .inner {
    width: 22.666666%;
    border-color: #6E1D38;
}
.footer__kyuudoujyou .footer-sitemap .inner:last-child {
    width: 32%;
}

@media screen and (max-width: 767px) {
.footer__kyuudoujyou .footer-sitemap .inner {
    width: 100%;
}
.footer__kyuudoujyou .footer-sitemap .inner:last-child {
    width: 100%;
}
.footer__kyuudoujyou .footer-sitemap .inner + .inner {
    border-color: #6E1D38;
}
}
.footer__kyuudoujyou .copyright {
    background: #6E1D38;
}

@media screen and (min-width: 768px) {
.gnav__kyuudoujyou {
    background: #D2E5F7 url("images/common/bg.jpg") center;
}
.gnav__kyuudoujyou .gnav-inner > ul > li > a {
    color: #fff;
}
.gnav__kyuudoujyou .gnav-inner > ul > li > a:hover {
    color: #000;
    background: #D2E5F7;
}
.gnav__kyuudoujyou .gnav-inner > ul > li + li > a::before {
    background-color: #D2E5F7;
}
.gnav__kyuudoujyou .gnav-inner > ul > li .child-nav li a:hover {
    background-color: #D2E5F7;
}
}
/*------------------------------
    COMMON EXPANSION STYLE
--------------------------------*/

.news-wrap dl dt {
    background-color: #C999B1;
}
.main-ttl {
    background-color: #FA8D94;
}
.main-ttl .tag__school {
    background: #C999B1;
}
.news-list dt {
    background-color: #E6C3C5;


/*
.news-wrap dl dt {
    background-color: #6E1D38;
}
.main-ttl {
    background-color: #FA8D94;
}
.main-ttl .tag__school {
    background: #6E1D38;
}
.news-list dt {
    background-color: #97AAC4;
}

*/

/*------------------------------
    PAGES
--------------------------------*/
/*トップページ*/
.school-nav {
    display: flex;
    justify-content: space-between;
    font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
.school-nav {
    display: block;
    text-align: center;
}
}
.school-nav li {
    width: calc(100% / 3 - 20px);
}

@media screen and (max-width: 767px) {
.school-nav li {
    width: 100%;
    margin-top: 1em;
}
}
.school-nav li a {
    color: #000;
    text-decoration: none;
}
.school-nav li img {
    display: block;
    margin: 0 auto 5px;
}
/*施設案内*/
.guide-wrap {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
.guide-wrap {
    display: block;
}
}
.guide-wrap .inner {
    width: 48.4375%;
/*465px*/ }

@media screen and (max-width: 767px) {
.guide-wrap .inner {
    width: 100%;
}
.guide-wrap .inner + .inner {
    margin-top: 1em;
}
}
.guide-wrap .images {
    width: 48.02083333%;
/*461px*/ }

@media screen and (max-width: 767px) {
.guide-wrap .images {
    width: 100%;
}
}
.guide-wrap .images p + p {
    margin-top: 30px;
}

@media screen and (max-width: 767px) {
.guide-wrap .images p + p {
    margin-top: 20px;
}
}
.guide-wrap .row + .row {
    margin-top: 1em;
}
.rental-ttl {
    color: #6E1D38;
}
.rental-ttl::before {
    content: '○';
}
.table-enteki-sche {
    table-layout: fixed;
    margin-bottom: 1em;
}
.table-enteki-sche th, .table-enteki-sche td {
    text-align: center;
    padding: 7px 10px;
}
.table-enteki-sche thead th, .table-enteki-sche thead td {
    border-bottom: 1px solid #6E1D38;
}
.table-enteki-sche thead th {
    background-color: #FFE2E4;
}
.table-enteki-sche tbody th {
    background: none;
}
.table-enteki-sche .month {
    display: inline-block;
    text-align: right;
    width: 35px;
}
.guide-caution {
    font-size: 1.4rem;
    margin-left: 1.3em;
}
.guide-caution strong {
    font-weight: normal;
    color: #f00;
}
.guide-price dt {
    color: #6E1D38;
}
.guide-price dd {
    margin-bottom: 1em;
}

/*お問い合わせ*/
/*.contact-wrap{
	display: flex;
	justify-content: center;
	@include mq(medium, max, true) {
		display: block;
	}
	.inner{
		padding: 0 30px;
		@include mq(medium, max, true) {
			padding: 0 20px;
			&+.inner{
				margin-top: 1em;
			}
		}
	}
	
	.ttl{
		font-size: 1.7rem;
		@include mq(medium, max, true) {
			font-size: 1.5rem;
		}
		&::before{
			content: '・';
		}
	}
	.com{
		font-size: 1.3rem;
		text-align: center;
		margin-top: 5px;
	}
}*/
