body {
    min-width: auto;
    font-size: 12px;
}

.container {
    width: 90%;
}

.pc-only {
    display: none;
}

.sp-only {
    display: block;
}

.sub-page {
    margin-top: 56px;
    padding-bottom: 30px;
}

.breadcrumb {
    margin-top: 20px;
    margin-bottom: 30px;
}

.breadcrumb ol li {
    margin-right: 7px;
}

.breadcrumb ol li:not(:first-child)::before {
    margin-right: 7px;
    margin-bottom: 1px;
}

.main-title {
    margin-bottom: 25px;
}

.main-title h1 {
    font-size: 2em;
}

.main-title h1 span {
    margin-top: 3px;
    font-size: 0.6em;
}

header {
    min-width: auto;
}

header .left-area {
    padding: 7px 10px;
}

header .left-area .catch {
    display: none;
}

header .logo {
    padding-right: 10px;
}

header .logo img {
    height: 7vw;
    min-height: 20px;
    max-height: 30px;
}

header .code-num {
    font-size: 0.8em;
    margin-top: 0;
}

.right-area .sns {
    margin-right: 10px;
    margin-top: 5px;
    display: none;
}

.right-area .sns ul li {
    margin: 0 5px;
}

.right-area .sns ul li img {
    height: 30px;
}

.navi-btn p {
    top: 26px;
}

.right-area .menu {
    width: 59px;
}

#nav {
    padding: 0;
    height: calc(100vh - 56px);
}

#nav .nav-wrap {
    display: block;
    padding: 10px 20px;
    padding-bottom: 0;
}

#nav .nav-wrap>div {
    margin: 0;
}

#nav .nav-wrap>div>div {
    margin-bottom: 0;
}

#nav .menu-title {
    margin-bottom: 0;
    padding: 12px 10px;
    font-size: 1.2em;
    border-width: 1px;
}

#nav .menu-title a {
    display: block;
    color: #333;
    text-decoration: none;
}

#nav .nav-wrap ul {
    margin-bottom: 20px;
    padding: 0 10px;
    display: none;
}

#nav .sns {
    margin-top: 30px;
    margin-bottom: 30px;
}

#nav .sns ul {
    list-style: none;
}

#nav .sns ul li {
    display: inline-block;
    margin: 0 7px;
}

#top-main {
    height: calc(100vh - 56px);
    height: calc(100dvh - 56px);
    background-position-x: 52%;
    margin-top: 56px;
}

#top-main .catch {
    padding: 0 20px;
    padding-left: 10px;
    top: 0;
    padding-top: 60px;
}

#top-main h1 {
    font-size: 5em;
    letter-spacing: 3px;
}

#top-main h1 span {
    white-space: nowrap;
    margin-bottom: 15px;
    letter-spacing: 0;
    font-size: 0.45em;
}


#top-main-g3 {
    height: calc(100vh - 56px);
    height: calc(100dvh - 56px);
    background: url(../img/top/main-sp.jpg);
	background-size: cover;
    position: relative;
    margin-top: 56px;
}

#top-main-g3 .catch {
    left: 50%;
    top: 22%;
    max-height: unset;
    max-width: 86%;
}
#top-main-g3 .catch-overlay {
    left: 50%;
    top: 22.5%;
    max-height: unset;
    max-width: 86%;
}
#top-main-g3 .main-title {
    top: 46%;
    left: 50%;
    max-height: unset;
    max-width: 90%;
}

#top-menu {
    display: block;
}

#top-menu>div {
    width: 100%;
}

#top-menu .today-race {
    padding: 30px 5%;
    padding-bottom: 20px;
}

#top-menu .today-race h2 {
    font-size: 2.5em;
    margin-bottom: 15px;
    padding-top: 5px;
}

#top-menu .today-race h2 span {
    margin-top: 0;
}

#top-menu .today-race h3 {
    font-size: 1.3em;
}

#top-menu .today-race .race-cts {
    width: 100%;
}

#top-menu .today-race .time {
    font-size: 1.2em;
}

.top-menu-area ul {
    padding: 40px 5%;
}

.top-menu-area ul li .menu-title span {
    font-size: 12px;
}

.top-menu-area ul li:first-child a {
    border-top: 1px solid #ccc;
}

#top-calendar {
    padding: 30px 5%;
}

#top-calendar .wheel-img {
    display: none;
}

#top-calendar h2 {
    font-size: 2.5em;
    margin-bottom: 20px;
    padding-top: 5px;
}

.calendar-wrap table {
    min-width: 1040px;
}

.calendar-wrap table thead td {
    min-width: 44px;
}

.calendar-wrap table td a {
    padding: 5px 3px;
}

.calendar-wrap table th .month {
    min-width: 130px;
}

.icon-guide ul {
    flex-wrap: wrap;
}

.icon-guide ul li {
    margin: 5px;
}

.icon-guide {
    margin-top: 10px;
}

#top-calendar .btn-wrap {
    margin-top: 20px;
}

#top-calendar .satellite-link {
    margin-top: 20px;
}

#top-calendar .satellite-link ul li {
    margin: 10px 0;
    width: 100%;
}

#top-calendar .satellite-link ul li a {
    display: block;
    width: 100%;
    padding: 10px;
    padding-top: 17px;
}

#top-information {
    display: block;
    min-height: auto;
}

#top-information>div {
    width: 100%;
}

#top-information .img-area {
    position: relative;
}

#top-information .cts-area .inner {
    max-width: 100%;
    padding: 30px 5%;
}

#top-information h2 {
    position: relative;
    transform: unset;
    -webkit-transform: unset;
    -ms-transform: unset;
    font-size: 2.5em;
    letter-spacing: 2px;
    writing-mode: inherit;
    width: 100%;
    left: 0;
    text-align: center;
    margin-bottom: 20px;
    padding-top: 5px;
}

#top-information h2 span {
    font-size: 14px;
    font-weight: normal;
}

#top-information .cts-area .tab li span {
    font-size: 12px;
    margin-left: 5px;
}

#top-information .info-list {
    height: auto;
    max-height: 400px;
}

#top-information .info-list-wrap {
    margin-top: 10px;
}

#top-information .btn-wrap {
    margin-top: 30px;
    margin-bottom: 5px;
}

#top-movie {
    padding: 30px 5%;
    padding-bottom: 40px;
}

#top-movie .wheel {
    height: auto;
    width: 30%;
}

#top-movie h2 {
    font-size: 2.5em;
    position: relative;
    z-index: 2;
    margin-bottom: 20px;
    padding-top: 5px;
}

#top-slider {
    padding: 30px 5%;
}

#foot-link {
    padding: 20px 5%;
}

#foot-link ul {
    margin: 0;
    justify-content: flex-start;
    flex-wrap: wrap;
}

#foot-link ul li {
    padding: 7px;
}

#foot-btm {
    padding-bottom: 20px;
}

#foot-btm .page-top-area {
    padding-top: 95px;
}

#foot-btm .page-top-area .bank {
    width: 90%;
}

#foot-btm .page-top-area .bat {
    left: 60px;
}

#foot-btm .page-top-area .bat img {
    height: 45px;
}

#foot-btm .page-top-area .tamachan {
    top: 55%;
    right: 21%;
}

#foot-btm .page-top-area .tamachan img {
    height: 60px;
}

footer .copyright img {
    height: 30px;
}

#player .tab {
    flex-wrap: wrap;
    margin: 0;
}

#player .tab li {
    width: calc(100%/3);
    margin: 0;
    border: 1px solid #fff;
    font-size: 1.2em;
}

#player .tab li.active img {
    display: none;
}

#player .player-list-wrap {
    margin-top: 30px;
}

#player .player-list {
    display: block;
    margin: 0;
}

#player .player-list>div {
    width: 100%;
    padding: 0;
    margin-bottom: 20px;
}

#player .player-list>div:last-child {
    margin-bottom: 0;
}

#player .player-box {
    padding: 15px;
}

#player .player-box .name-area {
    display: block;
    text-align: center;
    margin-bottom: 15px;
}

#player .player-box .name-area .number {
    display: none;
}

#player .player-box .name-area .name {
    font-size: 1.6em;
    display: inline-block;
}

#player .player-box .name-area .name-kana {
    margin-left: 10px;
}

#player .prof-area .img-area {
    margin-right: 0;
    text-align: center;
}

#player .prof-area .link-btn {
    margin-bottom: 20px;
}

#player .prof-area {
    display: block;
}

/* レースガイド */

#race-guide h2 {
    font-size: 1.6em;
    margin-bottom: 25px;
}

#race-guide h2 span {
    margin: 0 15px;
}

#race-guide .guide-box .detail {
    padding: 0;
}

#race-guide .guide-box .detail dl {
    display: block;
}

#race-guide .guide-box .detail dl dt {
    width: 100%;
    padding: 10px 15px;
}

#race-guide .guide-box .detail dl dd {
    width: 100%;
    padding: 10px 15px;
}

/* 競輪場外車券売り場 */

#satellite .satellite-link ul {
    display: block;
    margin: 0;
    padding: 0;
}

#satellite .satellite-link li {
    display: block;
    margin: 0;
    margin-bottom: 15px;
}

#satellite .satellite-link li {
    width: 100%;
    padding: 10px;
}

#satellite .satellite-box-inner {
    padding: 20px 0;
}

#satellite h2 {
    font-size: 1.6em;
}

#satellite h2 span {
    margin: 0 15px;
}

#satellite .satellite-box {
    padding-top: 20px;
    margin-top: 0;
}

#satellite .satellite-box .lead {
    font-size: 1.2em;
}

#satellite .facility-overview {
    margin-top: 20px;
    display: block;
}

#satellite .facility-overview .img-area {
    width: 100%;
}

#satellite .facility-overview .img-area .sub {
    margin-top: 20px;
}

#satellite .facility-overview .detail-area {
    width: 100%;
    margin-top: 30px;
}

#satellite h3 {
    font-size: 1.4em;
}

#satellite h3 img {
    height: 20px;
}

#satellite .facility-overview .detail dl {
    display: block;
}

#satellite .facility-overview .detail dl dt {
    width: 100%;
    padding: 10px 15px;
}

#satellite .facility-overview .detail dl dd {
    width: 100%;
    padding: 10px 15px;
}

#satellite .facility-overview .detail-area .btn-wrap {
    text-align: center;
    margin-top: 30px;
}

#satellite .map-area {
    margin-top: 30px;
}

/* 開催カレンダー */

#schedule .tab {
    flex-wrap: wrap;
    margin: 0;
    justify-content: left;
}

#schedule .tab li {
    width: calc(100%/3);
    margin: 0;
    border: 1px solid #fff;
    font-size: 1.1em;
    padding: 10px 5px;
}

#schedule .tab li.active img {
    display: none;
}

#schedule .calendar-list-wrap {
    margin-top: 20px;
}

#schedule .calendar-box {
    padding-top: 30px;
    margin-top: 0;
}

#schedule .calendar-box h2 {
    font-size: 1.4em;
    margin-bottom: 5px;
}

#schedule ul.tab_jyou {
    display: block;
    margin: 0;
    padding: 0;
	margin-top: 30px;
}
#schedule .tab_jyou li {
    display: block;
    margin: 0;
    margin-bottom: 15px;
}
#schedule .tab_jyou li {
    width: 100%;
    padding: 10px;
}
/* 開催情報 */

#holding h2 {
    font-size: 1.6em;
    margin-bottom: 25px;
}

#holding h2 span {
    margin: 0 15px;
}

#holding .detail {
    padding: 0;
    padding-bottom: 20px;
}

#holding .detail>div:not(:last-child) {
    margin-bottom: 30px;
}

#holding .detail h3 {
    font-size: 1.4em;
    align-items: flex-start;
    margin-bottom: 10px;
}

#holding .detail h3 img {
    height: 20px;
    margin-top: 2px;
}

#holding .detail dl {
    display: block;
}

#holding .detail dl dt {
    width: 100%;
    padding: 10px 15px;
}

#holding .detail dl dd {
    width: 100%;
    padding: 10px 15px;
}

#holding .cast_dl dd {
    gap: 10px 20px;
}

#holding .detail dl .flex .date {
    width: 80px;
}

#holding .detail dl dd .btn-wrap {
    text-align: center;
}

#holding .detail dl dd .btn {
    font-size: 1em;
}

#holding .destination>div {
    margin-bottom: 10px;
}

#holding .detail .player ul {
    margin: 0 -5px;
}

#holding .detail .player ul li {
    width: calc(100%/3);
    padding: 5px;
}

#holding .detail .player ul li a p {
    font-size: 0.9em;
}

#holding .detail .link {
    margin-top: 15px;
}

#holding .detail .link ul {
    margin: 0;
}

#holding .detail .link ul li {
    width: 100%;
    padding: 0;
}

#holding .detail .link ul li a {
    padding: 15px;
    padding-top: 20px;
}

#holding .detail .link ul li:first-child a {
    border-top: 1px solid #ccc;
}

#holding .detail .link ul li .menu-title span {
    font-size: 12px;
    margin-top: 5px;
}

#holding .time table th {
    padding: 10px 0px;
}
#holding .time table td {
    padding: 10px 0px;
}
#holding .cast_dl dd p {
	font-size: 0.8rem;
}
#holding .table img {
	width: 100%;
}

/* 前検インタビュー */

#interview .cts-area {
    margin-bottom: 10px;
}

#interview .detail {
    padding: 0;
    background: unset;
}

#interview .detail .update-date {
    text-align: left;
    margin-bottom: 7px;
}

#interview .detail .title {
    font-size: 1.4em;
    padding-bottom: 5px;
    border-width: 2px;
    margin-bottom: 10px;
}

.interview-list {
    margin-top: 40px;
}

#interview h2 {
    font-size: 1.6em;
}

#interview h2 span {
    margin: 0 15px;
}

.interview-list ul {
    padding: 0;
    padding-top: 20px;
}

.interview-list ul li {
    margin-bottom: 10px;
}

.interview-list ul li a .material-icons {
    margin-right: 5px;
}

.interview-list ul li a .title {
    margin-top: 1px;
}

.pager {
    margin-top: 20px;
}

/* ミッドナイトe-SHINBUN */

#eshinbun .cts-area {
    margin-bottom: 10px;
}

#eshinbun .lead {
    margin-bottom: 20px;
}

#eshinbun h2 {
    font-size: 1.6em;
    margin-bottom: 20px;
}

#eshinbun h2 span {
    margin: 0 15px;
}

.eshinbun-list {
    padding: 0;
}

.eshinbun-list ul li {
    margin-bottom: 15px;
}

.eshinbun-list ul li a {
    flex-wrap: wrap;
    align-items: center;
}

.eshinbun-list ul li a .title {
    width: 100%;
    margin-top: 5px;
}

#eshinbun .pager {
    margin-top: 30px;
}

#eshinbun .tab {
    flex-wrap: wrap;
    margin: 0;
}

#eshinbun .tab li {
    width: calc(100%/3);
    margin: 0;
    border: 1px solid #fff;
    font-size: 1.2em;
    padding: 13px;
}

#eshinbun .detail {
    padding: 0;
}

#eshinbun .tab li.active img {
    display: none;
}

#eshinbun .comment-list {
    margin-top: 30px;
}

#eshinbun .comment-box {
    padding: 0;
    background: unset;
}

#eshinbun .comment-box h3 {
    font-size: 1.6em;
    border-width: 2px;
    margin-bottom: 25px;
}

#eshinbun .comment table th {
    display: block;
}

#eshinbun .comment table td {
    display: block;
    padding-left: 0;
    padding-top: 10px;
    line-height: 1.6;
}

#eshinbun .comment table th .num {
    width: 20px;
    height: 20px;
}

#eshinbun .comment table th>div {
    align-items: center;
}

#eshinbun .comment-box .img-area {
    margin-top: 20px;
}

#eshinbun .comment-box .img-area img {
    width: 100%;
}

#eshinbun .list-btn {
    margin-top: 30px;
}

#eshinbun .number-list{
    flex-wrap: wrap;
    margin: 0;
    margin-bottom: 30px;
}

#eshinbun .number-list li{
    width: calc(100%/3);
}

#eshinbun .number-list li a{
    margin: 0;
    border: 1px solid #fff;
    font-size: 1.2em;
    padding: 13px;
}

#eshinbun .item.ui-tabs-panel{
    padding: 0;
    background: unset;
}

#eshinbun .txt_b{
    margin-top: 20px;
    margin-bottom: 10px;
}

/* 予想紙のレース予想 */

#prediction .detail {
    padding: 15px 0px;
}

#prediction .pdf-box {
    padding: 0.5rem
}

#prediction .pdf-box ul {
    flex-wrap: wrap;
    margin: 0 -5px;
}

#prediction .pdf-box ul li .btn {
    padding: 8px;
    font-size: 1.2em;
    border-radius: 10px;
}

#prediction .pdf-box ul li {
    width: calc(100%/3);
    padding: 0 4px;
}

#prediction .detail h3 {
    display: block;
    margin-bottom: 5px;
}

#prediction .pdf-box ul li .btn img {
    height: 16px;
    padding-left: 0px;
}

#racepdf h2 {
    font-size: 1.6em;
    margin-bottom: 25px;
}

#racepdf h2 span {
    margin: 0 15px;
}

#racepdf .inner {
    margin-top: inherit;
}

#racepdf .detail {
    padding: 15px 0px;
}

#racepdf .pdf-box {
    padding: 0.5rem
}

#racepdf .pdf-box ul {
    flex-wrap: wrap;
    margin: 0 -5px;
}

#racepdf .pdf-box ul li .btn {
    padding: 8px;
    font-size: 1.2em;
    border-radius: 10px;
}

#racepdf .pdf-box ul li {
    width: calc(100%/3);
    padding: 0 4px;
}

#racepdf .detail h3 {
    display: block;
    margin-bottom: 5px;
}

#racepdf .pdf-box ul li .btn img {
    height: 16px;
    padding-left: 0px;
}

.c-menu-anchor ul li {
    width: 100%;
}

.c-menu-anchor ul li:nth-child(1) {
    border-right: none;
    margin-bottom: 1px solid #fff;
}

.c-menu-anchor ul li:nth-child(2) {
    border-right: none;
    margin-bottom: 1px solid #fff;
}

.c-menu-anchor ul li:nth-child(3) {
    border-right: none;
    margin-bottom: 1px solid #fff;
}

.map-img-box {
    display: block;
}

.map-img-box>div:first-child {
    margin-right: 0px;
}

.map-img-box>div {
    width: 100%;
    padding: 1rem;
}

/* 三熊記述 */
#map .back-style {
    display: block;
    padding-bottom: 120px;
}

#map .back-style img {
    display: block;
    margin: auto;
    max-width: 300px;
}

#map .back-style .border-img {
    max-width: 200px;
}

#map .back-style .img-wrap {
    margin-bottom: 15px;
}

#map .content-wrap {
    display: block;
}

#map .content-wrap ul {
    margin-bottom: 20px;
}

#map .content-wrap ul li {
    padding: 5px;
    font-size: 18px;
    line-height: 1;
}

#map .detail {
    padding: 0;
    padding-bottom: 20px;
}
#map .lead {
    width: 100%;
    text-align: left;
}
#map div.contents {
    margin-top: 30px;
    margin-bottom: 30px;
}
#map h3 {
    font-size: 1.4em;
}
#map h3 img {
    height: 20px;
}
#map #stadium-guide{
	margin-top: 30px;
    margin-bottom: 30px;
}
#stadium-guide .stadium-guide-img {
    display: block;
    flex-wrap: nowrap;
}

#stadium-guide .stadium-img-wrap {
    width: 100%;
    padding: 0px;
}

#stadium-guide .stadium-img-wrap img {
    max-width: 90%;
}

#premium-room .img-wrap {
    flex-wrap: wrap;
}

#premium-room .img-wrap img {
    width: 50%;
}


/* ここまで */

.pc-block {
    display: inline;
}

#deme .satellite-link li.man {
    margin-bottom: 10px;
}

#deme .table {
    padding: 0;
}

#deme .table ul li {
    padding: 0.5rem;
    font-size: 90%;
}

#deme .table ul.contents li {
    padding: 0.3rem;
    font-size: 90%;
}

#deme .table ul.contents li.deme span {
    width: 14px;
    height: 14px;
    margin: 1px;
    font-size: 85%;
}

#deme .table ul li:nth-child(1) {
    width: 13%;
}

#deme .table ul li:nth-child(2) {
    width: 25%;
}

#cm .slider-3 .slick-slide .slide-img {
    width: 300px;
    height: auto;
}

#cm .slider-3 .slick-arrow {
    opacity: 0.3;
    width: 30px;
    height: 30px;
}

#cm .slider-3 .slick-arrow::before {
    top: 9px;
}

#cm .slider-3 .slick-next::before {
    left: 5px;
}

#cm .slider-3 .slick-prev::before {
    right: 7px;
}

#cm h2 {
    font-size: 1.6em;
    margin-bottom: 25px;
}

#cm h2 span {
    margin: 0 15px;
}

#cm .detail {
    padding: 0;
    padding-bottom: 20px;
}

#cm .contents {
    width: 100%;
    margin: 0 auto;
}

#cm .lead {
    width: 100%;
    text-align: left;
}

#tel h2 {
    font-size: 1.6em;
    margin-bottom: 25px;
}

#tel h2 span {
    margin: 0 15px;
}

#tel .detail {
    padding: 0;
    padding-bottom: 20px;
}

#tel .contents {
    width: 100%;
    margin: 0 auto;
}

#tel .lead {
    width: 100%;
    text-align: left;
}

#tel h4 {
    margin-left: 16px;
}

#tel table {
    width: 100%;
}

#privacy h2 {
    font-size: 1.6em;
    margin-bottom: 25px;
}

#privacy h2 span {
    margin: 0 15px;
}

#privacy .detail {
    padding: 0;
    padding-bottom: 20px;
}

#privacy .contents {
    width: 100%;
    margin: 0 auto;
}

#privacy .lead {
    width: 100%;
    text-align: left;
}

#privacy h3 {
    font-size: 1.4em;
}

#privacy h3 img {
    height: 20px;
}

/* お問い合わせ */

#contact h2 {
    font-size: 1.6em;
    margin-bottom: 20px;
}

#contact h2 span {
    margin: 0 15px;
}

#contact .detail {
    padding: 0;
}

#contact .detail dl {
    display: block;
}

#contact .detail dl dt {
    width: 100%;
    padding: 10px 15px;
}

#contact .detail dl dd {
    width: 100%;
    padding: 10px 15px;
}

#contact .lead {
    margin-bottom: 20px;
}

#contact .event-msg {
    margin-top: 0;
    margin-bottom: 30px;
}

.form-area {
    padding: 0;
    background: unset;
    margin-top: 30px;
    margin-bottom: 10px;
}

.form-area .text-input {
    border: 1px solid #ccc;
}

.form-area .select {
    border: 1px solid #ccc;
}

.form-area table th {
    display: block;
    width: 100%;
    padding: 0;
    padding-bottom: 10px;
}

.form-area table td {
    display: block;
    width: 100%;
    padding: 0;
    padding-bottom: 15px;
}

.form-area .btn-area {
    margin-top: 10px;
}

.form-area .wpcf7 form .wpcf7-response-output {
    text-align: left;
}

/* 応援メッセージ */

#message h2 {
    font-size: 1.6em;
    margin-bottom: 20px;
}

#message h2 span {
    margin: 0 15px;
}

#message .lead h3 {
    font-size: 1.1em;
    margin-bottom: 10px;
}

#message .detail {
    padding: 0;
}

/* 視聴者プレゼント */

#present h2 {
    font-size: 1.6em;
    margin-bottom: 20px;
}

#present h2 span {
    margin: 0 15px;
}

#present .detail {
    padding: 0;
}

#present .present-detail {
    margin-bottom: 20px;
}

#present .present-detail ul {
    margin-top: 10px;
}

#present .detail dl {
    display: block;
}

#present .detail dl dt {
    width: 100%;
    padding: 10px 15px;
}

#present .detail dl dd {
    width: 100%;
    padding: 10px 15px;
}

/* イベント */

#event h2 {
    font-size: 1.6em;
    margin-bottom: 20px;
}

#event h2 span {
    margin: 0 15px;
}

.event-list {
    padding: 0;
}

.event-list ul li {
    margin-bottom: 15px;
}

.event-list ul li a {
    flex-wrap: wrap;
    align-items: center;
}

.event-list ul li a .title {
    width: 100%;
    margin-top: 5px;
}

.event-box {
    padding: 0;
    background: unset;
}

#event .update-date {
    text-align: left;
    margin-bottom: 7px;
}

#event h3 {
    font-size: 1.4em;
    padding-bottom: 5px;
    border-width: 2px;
    margin-bottom: 10px;
}

#event .list-btn {
    margin-top: 30px;
}

#event .pager {
    margin-top: 30px;
}

/* お知らせ */

#news h2 {
    font-size: 1.6em;
    margin-bottom: 20px;
}

#news h2 span {
    margin: 0 15px;
}

.news-list {
    padding: 0;
}

.news-list ul li {
    margin-bottom: 15px;
}

.news-list ul li a {
    flex-wrap: wrap;
    align-items: center;
}

.news-list ul li a .title {
    width: 100%;
    margin-top: 5px;
}

.news-box {
    padding: 0;
    background: unset;
}

#news .update-date {
    text-align: left;
    margin-bottom: 7px;
}

#news h3 {
    font-size: 1.4em;
    padding-bottom: 5px;
    border-width: 2px;
    margin-bottom: 10px;
}

#news .list-btn {
    margin-top: 30px;
}

#news .pager {
    margin-top: 30px;
}

/* 地元選手出走情報 */

#run-info h2 {
    font-size: 1.6em;
    margin-bottom: 20px;
}

#run-info h2 span {
    margin: 0 15px;
}

#run-info .detail {
    padding: 0;
}

#run-info table {
    font-size: 1em;
    table-layout: auto;
}

#run-info table td {
    padding: 5px;
    border-width: 5px;
}

#run-info table td img {
    height: 60px;
}

/* 新人選手紹介 */

#new-player h2 {
    font-size: 1.6em;
    margin-bottom: 20px;
}

#new-player h2 span {
    margin: 0 15px;
}

#new-player .detail {
    padding: 0;
}

#new-player .player-list {
    margin-top: 30px;
}

#new-player .player-list>div {
    padding: 20px;
    padding-bottom: 75px;
    margin-bottom: 40px;
}

#new-player .player-list .prof-area {
    display: block;
}

#new-player .player-list .pickup {
    font-size: 1.6em;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

#new-player .player-list .prof-area .left {
    margin-right: 0;
}

#new-player .player-list .prof-area .link-btn {
    margin-top: 0;
    position: absolute;
    bottom: 20px;
    width: 100%;
    left: 0;
    text-align: center;
    padding: 0 20px;
}

#new-player .player-list .prof-area .right {
    margin-top: 20px;
}

#new-player .player-list h3 {
    margin-bottom: 10px;
    text-align: center;
}

#new-player .player-list .prof {
    margin: -1px;
}

#new-player .player-list .prof dl {
    width: 50%;
    padding: 1px;
}

#new-player .player-list .date {
    display: block;
}

#new-player .player-list .date table:first-child {
    margin-right: 0;
    margin-bottom: 10px;
}

/* 初心者ガイド */

#beginner h2 {
    font-size: 1.6em;
    margin-bottom: 20px;
}

#beginner h2 span {
    margin: 0 15px;
}

#beginner .detail {
    padding: 0;
}

.beginner-guide {
    margin-bottom: 30px;
}

#beginner .beginner-guide h2 {
    margin-bottom: 25px;
}

.beginner-guide dl {
    margin-bottom: 20px;
}

.beginner-guide dl dt {
    font-size: 1.4em;
}

.beginner-guide dl dt img {
    height: 20px;
}

/* 出走表PDF出力方法 */

#pdf-output .lead {
    text-align: left;
    margin-bottom: 30px;
}

#pdf-output .lead .img-area {
    text-align: center;
}

#pdf-output .lead .notes {
    text-align: center;
}

#pdf-output .step-box {
    width: auto;
    display: block;
}

#pdf-output h2 {
    font-size: 1.6em;
    margin-bottom: 20px;
}

#pdf-output h2 span {
    margin: 0 15px;
}

#pdf-output .detail {
    padding: 0;
}

#pdf-output .step-box {
    padding: 20px;
    text-align: left;
}

#pdf-output h3 {
    font-size: 1.2em;
}

#pdf-output .step-box .explanation {
    margin-top: 5px;
    margin-bottom: 10px;
}

#pdf-output .arrow-wrap {
    margin-top: 15px;
    margin-bottom: 10px;
}

#pdf-output .arrow-wrap .arrow {
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 30px solid black;
}

#pdf-output .contact dl {
    display: block;
}

#pdf-output .contact dl dt {
    width: 100%;
    padding: 10px 15px;
}

#pdf-output .contact dl dd {
    width: 100%;
    padding: 10px 15px;
}

/* アクセス */

#access h2{
    font-size: 1.6em;
    margin-bottom: 20px;
}

#access h2 span {
    margin: 0 15px;
}

#access .detail{
    padding: 0;
}

#access .lead{
    text-align: left;
    margin-bottom: 20px;
}

#access h3{
    font-size: 1em;
    margin-bottom: 10px;
}

#access h3 .kind{
    margin-bottom: 5px;
    margin-right: 5px;
}

#access .time-table table th{
    padding: 5px;
}

#access .time-table table td{
    padding: 5px;
}

#access .time-table:not(:last-child){
    margin-bottom: 30px;
}

#access .time-table .time-detail{
    padding: 15px;
}

.access-map .map-img{
    margin-bottom: 25px;
}

.access-map dl dd ul{
    margin-left: 15px;
}

.access-map dl {
    display: block;
}

.access-map dl dt{
    width: 100%;
    padding: 10px 15px;
}

.access-map dl dd{
    padding: 10px 15px;
}

.access-map .map{
    margin-top: 25px;
}

.access-map .map iframe{
    height: 250px;
}

#commentator .detail {
    padding: 15px 0px;
}

#commentator .pdf-box {
    padding: 0.5rem
}

#commentator .pdf-box ul {
    flex-wrap: wrap;
    margin: 0 -5px;
}

#commentator .pdf-box ul li .btn {
    padding: 8px;
    font-size: 1.2em;
    border-radius: 10px;
}

#commentator .pdf-box ul li {
    width: 30%;
    padding: 0 4px;
}

#commentator .detail h3 {
    display: block;
    margin-bottom: 5px;
}

#commentator .pdf-box ul li .btn img {
    height: 16px;
    padding-left: 0px;
}

#commentator .detail > .race {
    padding: 10px;
    margin: 0.5rem;
	margin-bottom: 3rem;
}
#commentator .div-innner{
	display: flex;
}
#commentator .comment-wrap .num span{
	width: 15px;
	height: 15px;
	border-radius:0px;
}
#commentator .comment-wrap .num > p{
	font-size: 0.5rem;
}
#commentator .comment-wrap .num span p{
	top: 0px;
	font-size: 0.5rem;
}
#commentator .yosou_img{
	padding: 0px;
	margin-right: 0.3rem;
}
#commentator .detail h3 img.yosou{
	height: 50px;
}

#commentator .yosou_img h3{
    margin-bottom: 1.5rem;
	font-size: 1rem;
}