/*SCSSではない追加用CSS*/
dl.styleList > dt, dl.styleList> dd {
position: relative;
padding-left: 1.25rem;
}
dl.styleList > dt.noindent {
padding-left: 0;
}
dl.styleList > dd + dt {
margin-top:0.5em;
}
dl.styleList> dt:before,
dl.styleList> dd:before {
position: absolute;
top: 0;
left: 0;
width: 1rem;
text-align: center;
}
dl.styleList > dt.square:before {
content: "\0025A0";
}
dl.styleList > dt.circle:before {
content: "\0025CB";
}
dl.styleList > dt.bullet:before {
content: "\0025CF";
}
dl.styleList > dt.diamond:before {
content: "\0025C6";
}
dl.styleList > dt.kome:before {
content: "\00203B";
}
dl.styleList > dt.astrisk:before {
content: "\002A";
}
dl.styleList > dd.dot:before {
content: "\0030FB";
font-weight: bold;
}
dl.styleList > dd.arrowR:before {
content: "\002192";
}
dl.styleList > dd.astrisk:before {
content: "\002A";
}


dl.countDtList {
  counter-reset: numbering;
}
dl.countDtList > dt {
  font-weight: normal;
}
dl.countDtList > dt:before {
  counter-increment: numbering;
  content: counter(numbering) ".";
  padding-right: 0.5rem;
  display: inline-block;
  text-align: right;
  width: 1.5rem;
}
dl.countDtList > dd {
  padding-left: 2rem;
}


/*TOP　バナー類*/
.confirming {display: none;}
.bannerInfo {
width: 80%;
margin-left: auto;
margin-right: auto;
text-align: center;
}
.bannerEntry figure{
border: 1px solid #000;
box-sizing: border-box;
}

@media screen and (min-width: 721px){
.bannerEntry{
margin-top: 5%;
display: flex;
justify-content: center;
}
.bannerEntry figure{
width: 36%;
max-width: 500px;
margin:1%;
}
.bannerInfo{
display: flex;
margin-top: 2.5%;
justify-content: center;
flex-wrap: wrap;
}
.bannerInfo .bannerInfoBnrs  {
width: 31%;
margin: 0 1%;
}
}
@media screen and (max-width: 720px) {
.bannerEntry{
margin-top: 7%;
display: block;
}
.bannerEntry figure{
width: 80%;
margin: 0 auto 20px;
}
.bannerInfo{
display: block;
margin-top: 3.5%;
}
.bannerInfo .bannerInfoBnrs:not(:last-of-type){
margin-bottom: 8%;
}
}

/*CTAボタン*/
.cta-area{
	text-align:center;
}
.cta-btn .catch{
color: #095287;
font-weight: bold;
line-height: 140%;
}
.cta-area .cta-btn a{
display: block;
text-decoration: none;
color: #fff;
font-size:1.25rem;
font-weight: bold;
/*font-family: "M PLUS 1p";*/
background-color:#034ea2;
border-radius: 4px;
padding: 5% 1.5%;
box-sizing: border-box;
}
.cta-area .cta-btn:nth-child(2) a{
background-color: #ab0303;
}
@media screen and (min-width: 769px) {
.cta-area {
display: flex;
margin-top:5%;
justify-content: center;
flex-wrap: wrap;
}
.cta-area .cta-btn{
width: 45%;
margin: 0 1%;
}
.cta-btn .catch{
font-size:1.1rem;
min-height: 2.8em;
margin-bottom: 5px;
}
}

@media screen and (max-width: 768px) {
.cta-area{
display: block;
margin-top: 9%;	
width: 100%;
}
.cta-area .catch{
width:96%;
font-size: 1.05rem;
margin: 0 auto 15px;
}
.cta-area .cta-btn:not(:last-of-type){
margin-bottom: 8%;
}
.cta-area .cta-btn a{
width:80%;
margin: 0 auto;
}
}

.cta-area .cta-btn.carpark a{
background: #087b00;
}
.cta-area .cta-btn.carpark a:before {
content: '';
display: inline-block;
width: 1.5em;
height: 1.5em;
background: url('/2025/img/common/carpark_icon.svg') no-repeat center center;
background-size: contain;
margin: 0 0.5em 0 0;
}


/*TOP当日サービスバナー追加に伴う修正*/
@media screen and (min-width: 721px) 
{  
.bannerInfo.racedaybefore-2ols {
display: flex;
margin-top: 5%;
justify-content: center;
flex-wrap: wrap;
}
.bannerInfo.racedaybefore-2ols .bannerInfoBnrs  {
width: 40%;
margin: 0 1%;
}
.bannerInfo.racedaybefore-2ols .bannerInfoBnrs figcaption {
font-size: 2.5vw;
}
}

/*@media screen and (max-width: 720px) 
{  
.bannerInfo.racedaybefore-2ols {
display: flex;
margin-top: 5%;
justify-content: center;
flex-wrap: wrap;
}
.bannerInfo.racedaybefore-2ols .bannerInfoBnrs  {
width: 48%;
margin: 0 1%;
}
.bannerInfo.racedaybefore-2ols .bannerInfoBnrs figcaption {
font-size: 2.5vw;
}
}*/


/*TOPのTTATTA*/
@media screen and (min-width: 769px){
.tattaInfo {
/*max-width: 720px;*/
/*margin: 60px auto;*/
/*margin: 20px auto;*/
/*width: 50%;*/
margin: 0 auto;
}
}
.top_tatta_run_register {
width: 95%;
margin: 30px auto;
box-sizing: border-box;
border: 4px solid #deebf7;
padding: 15px;
}



/*----TATTA RUN----*/
section[class*="tattaRun"] .txtImg .img {
	align-self: flex-start;
}
section[class*="tattaRun"] .txtImg .img.uc {
	align-self: stretch;
	color: #eee;
}
section[class*="tattaRun"] .txtImg .img.uc:before {
	font-weight: bold;
}
section[class*="tattaRun"] .txtImg .img.uc:after {
	background-color: #aaa;
	opacity: 0.85;
}
@media screen and (min-width: 769px) {
section[class*="tattaRun"] .txtImg .img.uc {
	width: 300px;
	height: 350px;
}
section[class*="tattaRun"] .txtImg .img.uc:before {
	font-size: 2.5em;
}
}
@media screen and (max-width: 769px){
section[class*="tattaRun"] .txtImg .img.uc {
	width: 100%;
	display: block;
	max-width: 420px;
	height: min(320px, 50vw);
}
section[class*="tattaRun"] .txtImg .img.uc:before {
	font-size: min(3em, 8vw);
}
}

/*TATTA Tシャツサイズ表*/
table.tshirt-size-table th,
table.tshirt-size-table td {
padding: min(2vw, 10px) min(4vw, 20px);
text-align: center;
vertical-align: middle;
}
/*spring*/
#wrap:has(.tattaRunSpring) #pageTit {
background: url(../img/tatta/tit_bg_spring.jpg) no-repeat center bottom / cover !important;
}
.tattaRunSpring .tattaInfoTable thead tr th {
background-color: #F5A2BC;
}
.tattaRunSpring .tattaFlowList>section .tattaEntryCol2 .content dl dd a {
background-color: #F5A2BC;
border-bottom: 4px solid #d77cbd;
}
.tattaRunSpring .springBox {
background-color: #ffedf0;
border: 10px double #EF8AB6;
padding: 10px;
}
.tattaRunSpring .springBox>dt {
background-color: #ffc7df;
padding: 10px;
font-weight: bold;
margin-bottom: 20px;
}
.sec.tattaRunSpring .tit:before,
.tattaRunSpring .tattaFlowList>section h4 .num {
background-color: #F5A2BC;
}
body[id*="virtual-run-spring"] .enTattaEntryBtns li a {
background-color: #F5A2BC;
border-bottom: 4px solid #d77cbd;
}
/*summer*/
#wrap:has(.tattaRunSummer) #pageTit {
background: url(../img/tatta/tit_bg_summer.jpg) no-repeat center bottom / cover !important;
}
.tattaRunSummer .tattaInfoTable thead tr th {
background-color: #1AC9D3;
}
.tattaRunSummer .tattaFlowList>section .tattaEntryCol2 .content dl dd a {
background-color: #4de1dc;
border-bottom: 4px solid #9af1ee;
}
.tattaRunSummer .summerBox {
background-color: #e6faff;
border: 10px double #99e9f7;
padding: 10px;
}
.tattaRunSummer .summerBox>dt {
background-color: #b8eef7;
padding: 10px;
font-weight: bold;
margin-bottom: 20px;
}
.sec.tattaRunSummer .tit:before,
.tattaRunSummer .tattaFlowList>section h4 .num {
background-color: #1AC9D3;
}
body[id*="virtual-run-summer"] .enTattaEntryBtns li a {
background: #1ad3cc;
border-bottom: 4px solid #50a5a2;
}
.tattaRunSummer table.tshirt-size-table thead th {
background-color: #1ac9d3;
color: #fff;
}
.tattaRunSummer table.tshirt-size-table thead th:not(:last-of-type) {
border-right: 1px solid #fff;
}
.tattaRunSummer table.tshirt-size-table tbody tr:nth-of-type(even) {
background-color: #f1fffd;
}
.tattaRunSummer table.tshirt-size-table{
	overflow-x: auto !important;
    display: block !important;
}
.tattaRunSummer table.tshirt-size-table thead th,
.tattaRunSummer table.tshirt-size-table tbody th,
.tattaRunSummer table.tshirt-size-table tbody td {
    white-space: nowrap !important;
}
/*autumn*/
#wrap:has(.tattaRunAutumn) #pageTit {
background: url(../img/tatta/tit_bg_autumn.jpg) no-repeat center bottom / cover !important;
}
.tattaRunAutumn .tattaInfoTable thead tr th {
background-color: #bf2f2f;
}
.tattaRunAutumn .tattaFlowList>section .tattaEntryCol2 .content dl dd a {
background-color: #bf2f2f;
border-bottom: 4px solid #7d1515;
}
.tattaRunAutumn .autumnBox {
background-color: #fffdef;
border:10px double #cc3e3e;
padding: 10px;
}
.tattaRunAutumn .autumnBox>dt {
background-color: #ef7242;
color: #fff;
padding: 10px;
font-weight: bold;
margin-bottom: 20px;
}
.sec.tattaRunAutumn  .tit:before,
.tattaRunAutumn .tattaFlowList>section h4 .num {
background-color: #bf2f2f;
}
body[id*="virtual-run-autumn"] .enTattaEntryBtns li a {
background: #bf2f2f;
border-bottom: 4px solid #7d1515;
}
.tattaRunAutumn table.tshirt-size-table thead th {
background-color: #ef7242;
color: #fff;
}
.tattaRunAutumn table.tshirt-size-table thead th:not(:last-of-type) {
border-right: 1px solid #fff;
}
.tattaRunAutumn table.tshirt-size-table tbody tr:nth-of-type(even) {
background-color: #ffeae1;
}
/*winter*/
#wrap:has(.tattaRunWinter) #pageTit {
background: url(../img/tatta/tit_bg_winter.jpg) no-repeat center bottom / cover !important;
}
.tattaRunWinter .tattaInfoTable thead tr th {
background-color: #2258a5;
}
.tattaRunWinter .tattaFlowList>section .tattaEntryCol2 .content dl dd a {
background-color: #3b7fdf;
border-bottom: 4px solid #6d99d8;
}
.tattaRunWinter .winterBox {
background-color: #f2f9ff;
border:10px double #7ea7e3;
padding: 10px;
}
.tattaRunWinter .winterBox>dt {
background-color: #2258a5;
color: #fff;
padding: 10px;
font-weight: bold;
margin-bottom: 20px;
}
.sec.tattaRunWinter  .tit:before,
.tattaRunWinter .tattaFlowList>section h4 .num {
background-color: #2258a5;
}
body[id*="virtual-run-winter"] .enTattaEntryBtns li a {
background: #3b7fdf;
border-bottom:4px solid #6d99d8;
}
.tattaRunWinter table.tshirt-size-table thead th {
background-color: #2258A5;
color: #fff;
}
.tattaRunWinter table.tshirt-size-table thead th:not(:last-of-type) {
border-right: 1px solid #fff;
}
.tattaRunWinter table.tshirt-size-table tbody tr:nth-of-type(even) {
background-color: #E2E9F3;
}


#bottomContact .bottomBnr {
flex-wrap: wrap;
max-width: 1200px;
margin-left: auto;
margin-right: auto;
}
@media screen and (min-width: 769px) {
#bottomContact .bottomBnr li{
margin-bottom: 20px;
}
}
@media screen and (max-width: 769px){
#bottomContact .bottomBnr.sponsors {
flex-wrap: wrap;
}
#bottomContact .bottomBnr.sponsors li {
width: calc(50% - 20px);
margin: 0 10px 10px;
}
}





#welcome-walking h1#pageTit,
#environment h1#pageTit {
display: none;
}
@media screen and (min-width: 769px) {
#welcome-walking h1#welcome-walking-pageTit {
max-width: 1240px;
margin-left: auto;
margin-right: auto;
}
}


#environment h1#environment-pageTit {
padding: 15% 1.5%;
display: flex;
justify-content: center;
align-items: center;
background: url('/2023/img/environment/mainvisual_environment.jpg') no-repeat center center;
background-size: cover;
font-size: min(4vw, 50px);
text-align: center;
}
#environment h1#environment-pageTit span {
color: #fff;
text-shadow: 2px 2px 5px rgba(0,25,60,0.9);
}
#environment .environmentSec h2.environmentTit {
color: #DB002A;
line-height: 1.5;
}
#environment .environmentSec h3.environmentTit {
position: relative;
color: #001D58;
line-height: 1.5;
}
#environment .environmentSec h3.environmentTit span {
position: absolute;
opacity: 0.15;
top: 0;
/*left: 35%;*/
right: 0;
font-style: italic;
text-align: right;
}
@media screen and (min-width: 769px) {
#environment .environmentSec h2.environmentTit {
font-size: 31px;
margin-bottom: 40px;
}
#environment .environmentSec h3.environmentTit {
font-size: 28px;
padding-top: 4.25rem;
margin-bottom: 20px;
}
#environment .environmentSec h3.environmentTit span {
font-size: 50px;
}
}
@media screen and (max-width: 768px) {
#environment .environmentSec h2.environmentTit {
font-size: 5vw;
margin-bottom: 4%;
}
#environment .environmentSec h3.environmentTit {
font-size: 5vw;
padding-top: 8.5vw;
margin-bottom: 3%;
}
#environment .environmentSec h3.environmentTit span {
font-size: 6vw;
}
}

.inlineblock{
display: inline-block !important;
}

.flex_environment{
display: flex;
margin-bottom: 25px;
}
.flex_environment p{
width: 62%;
margin-right: 3%;
}
.flex_environment figure{
width: 35%;
}
@media screen and (max-width: 768px){
.flex_environment{
flex-direction: column;
}
.flex_environment p{
width: 100%;
margin: 0 auto 10px;
}
.flex_environment figure{
width: 90%;
margin: 0 auto 20px;
text-align: center;
}
}
.box-value{
  padding: .5rem 1rem;
}
a.btn-bnr {
  background-color: #ef7242;
  color: #fff !important;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  outline: solid 2px #ef7242;
  outline-offset: -2px;
  padding: 1rem;
  border-radius: 5rem;
  width: 300px;
  font-size: 1rem;
  transition: all .3s linear;
}
a.btn-bnr:hover {
  background-color: #fff;
  color: #ef7242 !important;
}