@charset "UTF-8";
/* CSS Document */

/*
	 各ページの共通
-----------------------------------------------------------------------------------------------*/
/* ボタン
============================== */
.walkCmnBtnArea {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 50px;
	margin-top: 50px;
}
.walkCmnBtnArea .walkCmnBtnBase {
	font-size: 3.4rem;
	padding: 40px 140px 40px 65px;

}
/* ボタングレー */
.walkCmnBtnArea .btnGrey {
    position: relative;
    font-size: 3.4rem;
    font-weight: 700;
    color: var(--colorWhite);
    background-color: var(--colorGrey50);
    line-height: 1;
    border-radius: 100px;
    padding: 40px 140px 40px 65px;
}
.btnGrey::before {
    position: absolute;
    content: "";
    width: 50px;
    height: 50px;
    background-color: var(--colorWhite);
    border-radius: 30px;
    top: 50%;
    right: 40px;
    transform: translateY(-50%);
}
.walkCmnBtnArea .btnGrey::after {
	background: url(../images/item_btnGrey.svg) no-repeat center center / cover;
}
.btnGrey::after {
    position: absolute;
    content: "";
    width: 20px;
    height: 20px;
	background: url(../images/item_btnGrey.svg) no-repeat center center / cover;
    top: 50%;
	right: 55px;
	transform: translateY(-50%);
}

@media screen and (max-width:812px){
	/*
		各ページの共通
	-----------------------------------------------------------------------------------------------*/
	/* ボタン
	============================== */
	.walkCmnBtnArea {
        flex-direction: column;
        gap: 15px;
        max-width: 300px;
        margin: 35px auto 0 auto;
	}
	.walkCmnBtnArea .btnBase {
		font-size: 2.3rem;
		padding: 25px 60px 25px 35px;
	}
	/* ボタングレー */
	.walkCmnBtnArea .btnGrey {
		font-size: 2.3rem;
		padding: 25px 60px 25px 35px;
	}
	.btnGrey::before {
		width: 28px;
		height: 28px;
		right: 19px;
	}
	.walkCmnBtnArea .btnGrey::after {
		background: url(../images/item_btnGrey.svg) no-repeat center center / cover;
	}
	.btnGrey::after {
        right: 26px;
        width: 13px;
        height: 13px;
	}
}


/*
	 walk両方で共通
-----------------------------------------------------------------------------------------------*/
.walkAreaCmn {
    margin-top: -100px;
    padding-block: 130px 210px;
	background: var(--bgGdPink);
}
.walkAreaCmn .walkCtsArea .mainImg {
	border-radius: 30px 30px 0 0 ;
}
.walkAreaCmn .walkList {
	flex-direction: column;
	gap: 95px;
}
.walkReadBox {
	position: relative;
	padding: 60px;
}
.walkAreaCmn .walkReadBox .No {
	position: absolute;
	top: -40px;
    left: -10px;
}
/* eventInfo
============================== */
.eventInfo {
	display: flex;
	justify-content: space-between;
	margin-top: 40px;
}
/* h2 */
.walkReadBox .tit {
	font-size: 3.8rem;
}
/* アクセス */
.infoList .access {
	align-items: flex-start;
}
.value03 {
	position: relative;
	font-size: 2rem;
}
.value03 .train::before {
	position: absolute;
	content: "";
	width: 10px;
	height: 10px;
	background-color: var(--colorMainGreen);
	border-radius: 40px;
	top: 13px;
	left: 0;
}
.value03 .train {
	font-size: 1.6rem;
	margin-left: 15px;
}

/* gogoleMap
============================== */
.mapBox iframe {
	border-radius: 10px;
	overflow: hidden;
}
/* 募集要項・注意事項
============================== */
.noticeArea {
	background: var(--colorbgMain);
	border-radius: 60px 60px 0 0 ;
	padding-block: 100px;
	margin-top: -60px;
}
/* h2 */
.noticeTit {
	font-size: 2.8rem;
	font-weight: 700;
	text-align: center;
}
/* h3 */
.noticeSubTit {
	font-size: 2.3rem;
	font-weight: 700;
	letter-spacing: .2rem;
	text-align: center;
	padding-block: 10px;
	color: var(--colorWhite);
	background-color: var(--colorMainOrange);
}
/* Table */
.noticeListBox {
	margin-top: 30px;
}
.noticeTable {
	border-collapse: collapse;
}
.noticeTable th {
	font-size: 1.8rem;
	font-weight: 600;
	text-align: center;
	min-width: 300px;
	padding: 30px;
	border-right: 2px dotted var(--colorGrey50);
	border-bottom: 1px solid var(--colorGrey50);
	vertical-align: middle;
}
.noticeTable tr:last-child th,
.noticeTable tr:last-child td {
	border-bottom: 0;
}
.noticeTable td {
	width: 100%;
	padding: 30px;
	border-bottom: 1px solid var(--colorGrey50);
}
.noticeTable .urlBox {
	margin-bottom: 20px;
}
.noticeTable .orangeUrl {
	color: var(--colorMainOrange);
	border-bottom: 1px solid var(--colorMainOrange);
	list-style: 2;
}
.noticeArea .orangeColor {
	color: var(--colorMainOrange);
}
.priceBox {
	display: flex;
	gap: 20px;
}

.notice1clmBox {
	padding: 30px;
}

.priceListTb {
	width: 100%;
	text-align: center;
	font-size: 1.8rem;
}
.priceListTb tr > *{
	padding: 15px 0px;
	border-right: 2px dotted var(--colorGrey50);
	border-bottom: 1px solid var(--colorGrey50);
	vertical-align: middle;
}
.priceListTb tr td:last-of-type,
.priceListTb tr th:last-of-type{
	border-right: none;
}
.priceListTb tr td:first-of-type,
.priceListTb tr th:first-of-type{
	max-width: 80px;
	white-space: nowrap;
}
.priceListTb tr th{
	font-weight: 800;
}
.priceTxtArea{
	margin: 5px 0 30px;
}

@media screen and (max-width:812px){
	/*
		walk両方で共通
	-----------------------------------------------------------------------------------------------*/
	.walkAreaCmn {
		padding-block: 85px 120px;
	}
	.walkAreaCmn .walkCtsArea .mainImg {
		border-radius: 20px 20px 0 0 ;
	}
	.walkAreaCmn .walkReadBox .No {
		top: -20px;
		left: -5px;
	}
	.walkReadBox {
		padding: 35px 20px;
	}
	.walkAreaCmn .walkList {
		gap: 30px;
	}
	/* eventInfo
	============================== */
	.eventInfo {
		flex-direction: column;
		margin-top: 15px;
		gap: 15px;
	}
	/* h2 */
	.walkReadBox .tit {
		font-size: 2.4rem;
	}
	/* h3 */
	.noticeSubTit {
		font-size: 1.8rem;
		padding-block: 5px;
	}
	.noticeTable {
		width: 100%;
	}
	/* gogoleMap
	============================== */
	.mapBox iframe {
		width: 100%;
	}
	/* 募集要項・注意事項
	============================== */
	.noticeArea {
		background: var(--colorbgMain);
		border-radius: 30px 30px 0 0 ;
		padding-block: 50px;
	}
	/* h2 */
	.noticeTit {
		font-size: 2.3rem;
	}
	/* アクセス */
	.value03 .train::before {
		top: 12px;
	}
	.value03 {
		position: relative;
		font-size: 1.6rem;
	}
	.value03 .train::before {
		width: 5px;
		height: 5px;
	}
	.value03 .train {
		display: inline-flex;
		line-height: 1.5;
		font-size: 1.2rem;
		margin-left: 10px;
	}
	/* Table */
	.noticeTable th,
	.noticeTable td {
		display: block;
	}
	.noticeTable th {
		font-size: 1.5rem;
		min-width: 100%;
		padding: 10px;
		border-right: 0px;
		border-bottom: 2px dotted var(--colorGrey50);
	}
	.noticeTable td {
		width: 100%;
		padding: 10px 25px 15px;
		border-bottom: 1px solid var(--colorGrey50);
	}
	.noticeTable tr:last-child th {
		border-bottom: 2px dotted var(--colorGrey50);
	}
	
	.noticeTable .orangeUrl {
		font-size: 1.3rem;
		line-height: 2;
	}
	.notice1clmBox {
		padding: 20px;
	}
	.priceListTb tr th {
		font-size: 1.5rem;
	}
	.priceListTb tr > *{
		font-size: 1.3rem;
	}
}


/* 1. 全体の囲み */
.tokyoWalkArea .scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  position: relative;
  display: block;
}

/* 2. テーブル */
.tokyoWalkArea .scroll table {
  width: max-content;
  display: table;
}

/* 3. スマホ用（iOS/Android）のカスタムバー設定 */
@media (max-width: 812px) {
  .tokyoWalkArea .scroll::-webkit-scrollbar {
    display: none !important;
  }
  .tokyoWalkArea .scroll table {
    margin-bottom: 12px;
	}

  /* 薄いグレーのレール（画面下部に固定されてついてくる） */
  .tokyoWalkArea .scroll .custom-scrollbar-track {
    display: block;
    position: sticky;
    left: 0;
    bottom: 0;
    width: 100%;       
    height: 6px;
    background: #eee;
    border-radius: 999px;
    pointer-events: none; 
  }

  /* オレンジ色のつまみ（30px固定） */
  .tokyoWalkArea .scroll .custom-scrollbar-thumb {
    width: 30px;        
    height: 100%;
    background: var(--colorMainOrange);
    border-radius: 999px;
    will-change: transform;
  }
}

/* 4. PC用（従来通りの動くスクロールバー） */
@media (min-width: 813px) {
  .tokyoWalkArea .scroll .custom-scrollbar-track {
    display: none;
  }
  .tokyoWalkArea .scroll::-webkit-scrollbar {
    height: 6px;
  }
  .tokyoWalkArea .scroll::-webkit-scrollbar-track {
    background: #eee;
    border-radius: 999px;
  }
  .tokyoWalkArea .scroll::-webkit-scrollbar-thumb {
    background: var(--colorMainOrange);
    border-radius: 999px;
  }
}



/*
	tokyoWalkのみ
-----------------------------------------------------------------------------------------------*/
/* コース概要
============================== */
/* .walkAreaCmn .scroll {
	padding-bottom: 5px;
} */
.causeArea {
	margin-top: 45px;
}
.causeArea .dot {
	background-size: var(--bgDotsSizeS);
	border: 2px solid var(--colorMainOrange);
	border-radius: var(--br30);
	background-color: #ffffff;
	background-image: radial-gradient(circle, var(--colorMainOrange) 0.5px, transparent 0.5px), radial-gradient(circle,  var(--colorMainOrange) 0.5px, transparent 0.5px);
	background-position: 0 0, 3px 6px;
	background-size: 6px 12px;
}
.causeTit,
.sideEventTit {
	font-size: 3rem;
	font-weight: 900;
	text-align: center;
	color: var(--colorMainOrange);
	-webkit-text-stroke: 1px var(--colorWhite);
	line-height: 1;
    letter-spacing: .2rem;
    padding-block: 10px;
}
.causeTable {
	font-size: 1.5rem;
	text-align: center;
	margin-top: 20px;
	width: 100%;
	border-radius: var(--br30);
	overflow: hidden;
}
table tr:nth-child(even) {
	background: var(--colorOrange20);
}
.causeTable th {
	font-weight: 700;
	padding-block: 20px;
	color: var(--colorWhite);
	background-color: var(--colorMainOrange);
	padding-inline: 10px;
}
.causeTable .place {
	text-align: left;
	padding: 15px;
}
.causeTable td {
	background-color: var(--colorGrey5);
	padding-inline: 10px;
}
.causeTable td,
.causeTable th {
	border-left: 2px solid var(--colorWhite);
	border-bottom: 2px solid var(--colorWhite);
}
.causeTable th:first-child{
	border-left: 0;
}
.causeTable tr:last-child th,
.causeTable tr:last-child td {
	border-bottom: 0;
}

/* .tokyoWalkArea .scroll::-webkit-scrollbar {
	height: 6px;
}

.tokyoWalkArea .scroll::-webkit-scrollbar-track {
	background: #eee;
	border-radius: 999px;
}

.tokyoWalkArea .scroll::-webkit-scrollbar-thumb {
	background: var(--colorMainOrange);
	border-radius: 999px;
} */

/* 同時開催
============================== */
.tokyoWalkListBox01 .sideEventFreeArea {
	margin-top: 40px;
}
.sideEventFreeArea {
	position: relative;
	margin-top: 90px;
}
.sideEvent {
	text-align: center;
	overflow: hidden;
}
.sideEvent .infoList {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 40px;
	margin-top: 30px;
}
.stripe {
    background: var(--bgStripeOrange);
}
.sideEventTit {
	font-size: 2.6rem;
	font-weight: 600;
	letter-spacing: .2rem;
	color: var(--colorWhite);
	-webkit-text-stroke: 0;
}
.sideEventBox:nth-of-type(n + 2){
	margin: 45px 0 0;
}
/* h4 */
.sideEventSubTit {
	position: relative;
	width: fit-content;
	margin: 0 auto;
}
.sideEventSubTit p {
	position: relative;
	font-size: 3.2rem;
	font-weight: 800;
	color: var(--colorBlack);
	z-index: 2;
}
.sideEventSubTit::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 10px;
    background-color: var(--colorOrange50);
    bottom: 3px;
    left: 50%;
    transform: translateX(-50%);

}
.sideEventBox .txt {
	font-size: 1.7rem;
	font-weight: 500;
}
.bringItemBox {
	display: flex;
	gap: 10px;
}
.consentTxt {
	font-size: 1.6rem;
	font-weight: 700;
}
/* 注釈 */
.readBox {
	margin-left: 8px;
}
.walkReadBox .bottomNote {
	margin-block: 15px 7px;
}
.walkReadBox .fw400 {
	font-weight: 400;
}

/* 流用上書き */
.sideEvent .infoList li {
	margin-bottom: 0;
	align-items: center;
	gap: 10px;
}
.sideEvent .infoList [class^="label0"] {
	min-width: 90px;
}
@media screen and (max-width:812px){
	/*
		tokyoWalkのみ
	-----------------------------------------------------------------------------------------------*/
	.causeArea {
		margin-top: 25px;
	}
	/* コース概要
	============================== */
	.tokyoWalkArea .scroll {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
	.causeArea .dot {
		background-position: 0 0, 2px 5px;
		background-size: 4px 10px;
	}
	.causeTable {
		min-width: 910px;
		margin-top: 10px;
		border-radius: var(--br20);
		font-size: 1.4rem;
	}
	.causeTable th {
	padding-block: 10px;
	}
	.causeTit,
	.sideEventTit {
		font-size: 2rem;
		padding-block: 8px;
	}
	.causeTable .place {
		padding: 10px;
	}
	/* 同時開催
	============================== */
	.sideEventFreeArea {
		margin-top: 60px;
	}
	.sideEvent {
		margin-top: -10px;
	}
	.sideEvent .infoList {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
		margin-top: 10px;
	}
	.sideEventSubTit p {
		font-size: 2rem;
	}
	.sideEventBox .txt {
        font-size: 1.3rem;
        margin-top: 10px;
        text-align: justify;
        letter-spacing: 0;
	}
	.bringItemBox {
		flex-direction: column;
		gap: 4px;
	}
	.consentTxt {
		font-size: 1.4rem;
		text-align: justify;
	}
	/* 注釈 */
	.walkReadBox .fw400 {
		font-size: 1.2rem;
		text-align: justify;
	}
	.walkReadBox .bottomNote {
		margin-block: 10px 3px;
	}
}


/*
	 appWalkのみ
-----------------------------------------------------------------------------------------------*/
/* cmnTop疑似要素 */
.appTitPageTitArea::after {
    background: url(../images/item_top2_01.svg) 
}
/* スージー */
.appWalkArea .walkList {
	position: relative;
}
.appWalkArea .walkList::before {
    position: absolute;
    content: "";
    width: 118px;
    height: 125px;
    background: url(../images/item_susie_app01.svg) no-repeat center center / cover;
    top: -124px;
    right: 90px;
    z-index: 2;
}


/* appWalkArea */
.appWalkPageMainTxt {
	font-size: 2.5rem;
	font-weight: 700;
	letter-spacing: .1rem;
	text-align: center;
	margin-bottom: 35px;
}
.appWalkArea {
	background: var(--bgGdBlue);
}
.appWalkArea .walkInfoBox {
	display: block;
}
.appWalkArea .walkInfoList {
	display: block;
}
.appWalkArea .walkInfoArea .tit {
	background-color: var(--colorMainEmerald);
}
.appWalkArea .walkInfoTxtBox1clm {
	background-color: var(--colorWhite);
}
.appWalkArea .walkInfoTxtBox1clm .txt {
	font-size: 2.4rem;
}
.appWalkArea .walkInfoTxtBox1clm .txt span {
	font-size: 3.6rem;
}
.appWalkArea .walkReadBox .No {
	background-color: var(--colorMainEmerald);
}
.appWalkArea .infoList [class^="label0"] {
    color: var(--colorMainEmerald);
    border: 1px solid var(--colorMainEmerald);
}
.appWalkArea .infoList .label01 {
    background-color: var(--colorEmerald15);
}

/* SPECIAL PRESENT */
.appWalkArea .walkPresentArea .itemTxt {
	color: var(--colorEmerald50);
}
.appWalkArea .PresentTxtBox {
	border: 8px solid var(--colorEmerald50);
}
.appWalkArea .presentTxt .mainTxt .blueLine::before  {
	width: 240px;

}
.appWalkArea .presentTxt .mainTxt {
	margin-bottom: 0;
}

/*  募集概要・ご注意事項 */
.appNoticeArea .noticeSubTit {
	background-color: var(--colorMainEmerald);
}
.noticeSubTitS {
	font-size: 1.4rem;
}
.titClc {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}
.appNoticeArea .freeBox {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 5px;
}
.appNoticeArea .boxCenter {
	width: fit-content;
	margin: 0 auto;
}
.walkReadBox .txt.fsM {
	font-size: 2rem;
	font-weight: 500;
	margin-top: 15px;
}
.coLocated.sideEvent {
	background: #fefae0;
	position: relative;
	overflow: initial;
	margin-top: 106px;
}
.coLocatedballoonArea {
	position: absolute;
	top: -62px;
	left: 50%;
	transform: translateX(-50%);
	text-align: center;
	width: 100%;
}
.sideEventFreeArea .coLocatedballoonArea {
	top: -55px;
}
.sideEventFreeArea .coLocatedballoonArea::after {
	position: static;
}

/* .coLocatedballoonArea::after{
	content: '';
	background: url(../images/item_susie_coLocated.png) no-repeat;
	background-position: center;
	background-size: contain;
	width: 104px;
	height: 125px;
	position: absolute;
	right: 120px;
	bottom: -50px;
} */
.coLocatedballoonArea .balloonTit{
	color: var(--colorMainOrange);
	font-size: 2.4rem;
	font-weight: 800;
	position: relative;
	display: inline;
	letter-spacing: .15rem;
}
.coLocated.sideEvent .sideEventBox .txt{
	font-size: 1.7rem;
	text-align: center;
}
.decoLinetitArea {
	border-radius: 30px 30px 0 0;
	background: var(--colorMainOrange);
}
.decoLinetit {
	line-height: 6rem;
	font-size: 2.8rem;
	font-weight: 700;
	color: #fff;
	letter-spacing: 0.1rem;
}
.sideEventBoxArea {
	padding: 40px 50px 50px 50px;
}
.decoLine::before,
.decoLine::after {
	background: var(--colorBlack);
	width: 1px;
}
.decoLineImgList {
	display: flex;
	gap: 20px;
	margin: 10px 0 0 0;
	align-items: center;
	justify-content: center;
}
.decoLineImgList li {
	max-width: 276px;
	position: relative;
}
ul.decoLineImgList li.item {
	max-width: 600px;
	position: relative;
}
.walkList .walkCtsArea .decoLineImgList img{
	border-radius: var(--br20);
}
.coLocated.sideEvent .note {
	position: absolute;
	bottom: -26px;
	left: 0;
}

/* readArea */
.sideEvent .readArea .tit {
	position: relative;
	font-size: 2.8rem;
	font-weight: 700;
	color: var(--colorWhite);
	background-color: var(--colorMainGreen);
	width: fit-content;
	border-radius: 0px 30px 30px 0;
	margin: 0 auto 25px;
	padding: 10px 30px 10px 25px;
}
.sideEvent .readArea .tit::before {
	position: absolute;
	content: "";
	width: 3px;
	height: 82px;
	background-color: var(--colorMainGreen);
	top: 0px;
	left: -6px;
}
.sideEventBox .readArea+.txt {
	text-align: left;
	width: 590px;
	margin: 50px auto 0;
}

.subBtnArea {
	margin: 15px 0 50px 0;
}
a.linkTxt{
	text-decoration: underline;
	font-size: 2rem;
	font-weight: 700;
	color: var(--colorMainOrange);
}
.subBtn{
	display: inline-block;
	font-size: 1.8rem;
	font-weight: 800;
	position: relative;
	width: 240px;
	line-height: 7rem;
	box-shadow: var(--shadowBase);
	border-radius: 4rem;
}
.subBtn::before {
	content: "";
	position: absolute;
	width: 24px;
	height: 24px;
	background-color: #fff;
	border: #000 solid 1px;
	border-radius: 30px;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
}
.subBtn::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 27px;
	transform: translateY(-50%);
	width: 8px;
	height: 10px;
	background-color: #000;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
}
@media screen and (max-width:812px){
	/*
		appWalkのみ
	-----------------------------------------------------------------------------------------------*/
	/* appWalkArea */
	.appWalkArea .walkInfoTxtBox1clm .txt {
		font-size: 1.6rem;
	}
	.appWalkArea .walkInfoTxtBox1clm .txt span {
		font-size: 2.8rem;
	}
	/* スージー */
	.appWalkArea .walkList::before {
        width: 64px;
        height: 68px;
        top: -67px;
        right: 28px;
	}
	/* appWalkArea */
	.appWalkPageMainTxt {
		font-size: 1.4rem;
		margin-bottom: 20px;
		line-height: 1.3;
		text-align: justify;
		letter-spacing: 0;
	}
	.appWalkArea .walkReadBox .No {
		font-size: 1.6rem;
		padding: 8px 20px 10px 20px;
	}
	.appWalkArea .walkReadBox .No span{
		font-size: 2rem;
	}
	.walkReadBox .txt.fsM {
		font-size: 1.4rem;
		font-weight: 500;
		line-height: 1.5;
		margin-top: 8px;
		text-align: justify;
	}

	/* SPECIAL PRESENT */
	.appWalkArea .presentTxt .mainTxt .blueLine::before {
		width: 165px;
	}

	/*  募集概要・ご注意事項 */
	.noticeSubTitS {
		font-size: 1.2rem;
	}
	.titClc {
		flex-direction: column;
		gap: 0;
	}

	.coLocated.sideEvent {
		margin-top: 66px;
	}
	.coLocatedballoonArea {
		position: absolute;
		top: -32px;
	}
	.coLocated.sideEvent .sideEventBox .txt {
		font-size: 1.3rem;
		text-align: justify;
		margin: 0 0 0 0;	
	}
	.coLocatedballoonArea .balloonTit{
		font-size: 1.6rem;
	}
	.decoLinetit {
		font-size: 2rem;
		line-height: 5rem;
	}
	.sideEventBoxArea {
		padding: 20px 20px 40px;
	}
	.sideEventBox:nth-of-type(n + 2) {
		margin: 35px 0 0;
	}
	.sideEventFreeArea .sideEvent .sideEventBox {
		padding: 20px;
		margin: 0 0 0;
	}
	.coLocated.sideEvent .note {
		bottom: -21px;
		white-space: nowrap;
	}
	.decoLinetitArea {
		border-radius: 20px 20px 0 0;
	}
	.decoLineImgList {
		display: flex;
		gap: 5px;
		margin: 10px 0 0 0;
	}
	.walkList .walkCtsArea .decoLineImgList img {
		border-radius: var(--br10);
	}
	.decoLine::before,
	.decoLine::after {
		background: var(--colorBlack);
		width: 1px;
		height: 11px;
	}
	.decoLine::after {
		height: 17px;
	}
	.coLocatedballoonArea::after{
		display: none;
	}
	.sideEvent .readArea .tit {
		font-size: 1.6rem;
		margin: 0 auto 0;
		padding: 10px 20px 10px 15px;
	}
	.sideEvent .readArea .tit::before {
		height: 57px;
	}
	.sideEventBox .readArea+.txt {
		margin: 25px 0 0 0;
		width: 100%;
	}
	.subBtn {
		font-size: 1.4rem;
		width: 100%;
		line-height: 4rem;
		border-radius: 2rem;
	}
	.sideEventFreeArea .coLocatedballoonArea {
		top: -35px;
	}
	a.linkTxt {
		font-size: 1.4rem;
	}
	.subBtnArea {
		margin: 10px 0;
	}
	.decoLineImgList li {
		max-width: 160px;
	}
	.spct {
		text-align: center;
	}
	.spct .priceBox {
		justify-content: center;
	}
	.spct .note {
		text-align: center;
		display: inline-block;
	}
}

@media (any-hover: hover){
	.walkCmnBtnArea .walkCmnBtnBase:hover {
		opacity: .8;
		transition: 0.5s;
	}
	.btnGrey:hover {
		opacity: .8;
		transition: 0.5s;
	}
}