@charset "UTF-8";

.pc {
	display: none;
}

.tablet {
	display: none;
}

p,
li,
dt,
dd {
	/*Androidブラウザフォントバグ対策*/
	max-height: 999999px;
}

/*
#MvArea {
	background: url(../../img/sponsors/sponsors_mvimg_sp.jpg) no-repeat center;
	background-size: cover;
	min-height: 100vh;
	margin-bottom: 0;
	
	@supports (-webkit-touch-callout: none) {
		height: -webkit-fill-available;
	}
}
.mvWrap {
	width: 90%;
	height: 100%;
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: relative;
	z-index: 5;
}
.mvInner {
	color: #ffffff;
	line-height: 1.0;
}
*/
/* 既存のファーストビューを非表示 */
#MvArea {
	display: none;
}

/* 動画ラッパー設定 */
#youtubeWrap {
	position: fixed;
	/*ローディング画像などを表示す際の基点とするため指定*/
	width: 100%;
	height: 100vh;
	/*高さを全画面にあわせる*/
	overflow: hidden;
}

@supports (-webkit-touch-callout: none) {
	#youtubeWrap {
		height: 100vh;
		height: -webkit-fill-available;
	}
}

/* youtube設定 */
#youtube-area {
	position: fixed;
	z-index: 1;
	/*最背面に設定*/
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	overflow: hidden;
	opacity: 0;
}

#youtube {
	/*天地中央配置*/
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	/*縦横幅指定*/
	/* width: 177.77777778vh; */
	/* 16:9 の幅→16 ÷ 9＝ 177.77% */
	/* height: 56.25vw; */
	/* 16:9の幅 → 9 ÷ 16 = 56.25% */
	min-height: 100%;
	min-width: 100%;
	background: url(../../img/memorial/fv_sp.jpg) center top no-repeat;
	background-size: cover;
}

/*youtubeがクリックされないためのマスク*/
#youtube-mask {
	position: absolute;
	z-index: 2;
	/*下から2番目に表示*/
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.4);
}

/* ファーストビュー */
#memorialfv {
	width: 100%;
	height: 100vh;
	position: relative;
	z-index: 4;
}

@supports (-webkit-touch-callout: none) {
	#memorialfv {
		height: 100vh;
		height: -webkit-fill-available;
	}
}

#memorialfvInner {
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
	opacity: 0.8;
}

#memorialfvYear {
	margin-bottom: 20px;
	line-height: 1;
	color: #FFFFFF;
	text-align: center;
}

#memorialfvYearNum {
	font-size: 9.1rem;
	letter-spacing: 0.1em;
}

#memorialfvYearTh {
	font-size: 5.0rem;
	letter-spacing: 0.1em;
}

#memorialfvText {
	margin-bottom: 20px;
	font-size: 3rem;
	line-height: 1;
	letter-spacing: 0.16em;
	color: #FFFFFF;
	text-align: center;
}

#memorialfvTitle {
	width: 228px;
	margin: 0 auto;
	padding: 10px 0;
	border-top: solid 1px #FFFFFF;
	border-bottom: solid 1px #FFFFFF;
	font-size: 1.1rem;
	line-height: 1.45455;
	letter-spacing: 0.54em;
	color: #FFFFFF;
	font-weight: bold;
	text-align: center;
}

/* パンくず */
.pankuzuArea {
	display: none;
}

/* scroll */
.scrollWrap {
	width: 100%;
	height: 100vh;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 6;
}

.scroll {
	position: absolute;
	bottom: 40px;
	left: 50%;
}

.scroll span {
	position: absolute;
	font-size: 1.2rem;
	color: #ffffff;
	top: -30px;
	left: -27px;
	z-index: 9;
}

.scrollInner {
	position: absolute;
	width: 1px;
	height: 40px;
	left: calc(90% - 2px);
	background: #ffffff;
	z-index: 5;
	overflow: hidden;
}

.scrollInner p {
	position: absolute;
	width: 1px;
	height: 40px;
	top: -80px;
	background: #5c5c5c;
	z-index: 9;
	-webkit-animation-name: mv-slide;
	animation-name: mv-slide;
	-webkit-animation-duration: 3s;
	animation-duration: 3s;
	-webkit-animation-timing-function: liner;
	animation-timing-function: liner;
	-webkit-animation-delay: 1s;
	animation-delay: 1s;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}

@-webkit-keyframes mv-slide {
	0% {
		top: -100px;
	}

	80% {
		top: 100px;
	}

	100% {
		top: 100px;
	}
}

@keyframes mv-slide {
	0% {
		top: -100px;
	}

	80% {
		top: 100px;
	}

	100% {
		top: 100px;
	}
}

/* リセット */
#subCont {
	margin-bottom: 0;
	padding-top: 0;
	padding-bottom: 80px;
	background-image: none;
	background-color: #FFFFFF;
	position: relative;
	z-index: 6;
}

.photoWrap,
.sponsorWrap,
#footerArea {
	background-color: #FFFFFF;
	position: relative;
	z-index: 6;
}

.copyright {
	margin-bottom: 0;
	padding-bottom: 55px;
	background-color: #FFFFFF;
}

.contTtl {
	margin-bottom: 20px;
}

.contTtlEn {
	font-size: 2.7rem;
}

.contTtlJp {
	font-size: 1.1rem;
	font-weight: bold;
	letter-spacing: 0.1em;
}

/* 共通 */
.unipara {
	font-size: 1.6rem;
	line-height: 1.625;
	letter-spacing: 0.05em;
	color: #333333;
}

/* 大分国際車いすマラソンとは？ */
#whatis {
	padding: 50px 0 35px;
	background: url(../../img/memorial/whatis_sp.jpg) left top no-repeat;
	background-size: contain;
}

#whatis .unipara {
	width: 98%;
	margin: 0 auto;
	text-align: justify;
}

/* HISTORY */
#history {
	padding: 40px 0 50px;
	background-color: #282828;
}

#history .contTtlEn,
#history .contTtlJp {
	color: #FFFFFF;
}

/* HISTORY：前段 */
#historyLead {
	margin-bottom: 40px;
	padding: 40px 25px 25px;
	background-color: #FFFFFF;
}

#historyLeadHead {
	margin-bottom: 0.5em;
	font-size: 1.7rem;
	line-height: 1;
	letter-spacing: 0.1em;
	color: #000000;
	font-weight: bold;
	text-align: center;
}

#historyLeadBody {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column-reverse;
	-ms-flex-direction: column-reverse;
	flex-direction: column-reverse;
	margin-bottom: 25px;
}

#historyLeadBodyLogo {
	width: 190px;
	margin: 0 auto;
}

#historyLeadBodyLogo img {
	width: 100%;
	height: auto;
}

#historyLeadDrPhoto img {
	width: 100%;
	height: auto;
}

#historyLeadDrBody {
	padding: 25px 20px;
	background-color: #E4E4E4;
}

#historyLeadDrBodyHead {
	font-size: 1.8rem;
	line-height: 1;
	letter-spacing: 0.1em;
	color: #000000;
	font-weight: 700;
	margin-bottom: 1em;
	text-align: center;
}

#historyLeadDrBodyText {
	font-size: 1.4rem;
	line-height: 1.60714;
	letter-spacing: 0.05em;
}

/* HISTORY：年表 */
.historyTimeline>ul>li {
	margin: 0 0 20vw 0;
	margin: 0 0 75px 0;
	position: relative;
}

.historyTimelineYear {
	width: 100%;
	margin-left: 3%;
	position: relative;
	z-index: 2;
	font-size: 3.7rem;
	line-height: 1;
	letter-spacing: 0.05em;
	color: #FF761D;
	font-style: italic;
}

.historyTimelineYear span {
	padding: 0 10px 0 0;
	background-color: #282828;
}

.historyTimelineContent {
	width: 94%;
	padding: 40px 20px 56vw;
	margin: -17px auto 0 auto;
	position: relative;
	border: solid 1px #FF761D;
}

.historyTimelineTitle {
	margin-bottom: 1em;
	font-size: 1.6rem;
	line-height: 1.4375;
	letter-spacing: 0.1em;
	font-weight: bold;
	color: #FFFFFF;
}

.historyTimelineText {
	font-size: 1.3rem;
	margin-bottom: 1em;
	color: #FFFFFF;
}

.historyTimelinePhoto {
	width: calc(94% - 10px);
	position: absolute;
	right: 0;
	bottom: -25px;
}

.historyTimelinePhoto img {
	width: 100%;
	height: auto;
}

.historyTimeline>ul>li:nth-child(2n) .historyTimelineYear {
	text-align: right;
	margin-left: 0;
	margin-right: 3%;
}

.historyTimeline>ul>li:nth-child(2n) .historyTimelineYear span {
	padding: 0 0 0 10px;
}

.historyTimeline>ul>li:nth-child(2n) .historyTimelinePhoto {
	right: auto;
	left: 0;
}

/* HISTORY：ボタン */
a.linkBtn.bgwhite {
	background-color: #FFFFFF;
}

/* 公式 */
#official {
	padding: 25px 0;
	background: url(../../img/memorial/officialbg_sp.jpg) center top no-repeat;
	background-size: cover;
}

.offitem {
	margin-bottom: 25px;
	padding: 25px 25px 0;
	background-color: #FFFFFF;
}

.offitem:last-child {
	margin-bottom: 0;
}

.offitemTitle {
	font-size: 1.8rem;
	line-height: 1.33333;
	letter-spacing: 0.1em;
	color: #000000;
	font-weight: bold;
	text-align: center;
}

.offitemCont {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column-reverse;
	-ms-flex-direction: column-reverse;
	flex-direction: column-reverse;
}

.offitemContBody {
	width: 100%;
}

.offitemContBodyHead {
	padding-bottom: 0.5em;
	margin-bottom: 0.5em;
	border-bottom: solid 1px #AD1219;
	font-size: 1.5rem;
	line-height: 1;
	letter-spacing: 0.05em;
	font-weight: bold;
	text-align: center;
}

.offitemContBodyText {
	margin-bottom: 2em;
	font-size: 1.3rem;
}

.offitemContLogo {
	width: 100%;
	text-align: center;
}

.offitemContLogo.officialsymbol img {
	width: 100%;
	max-width: 174px;
	height: auto;
}

.offitemContLogo.officiallogo img {
	width: 100%;
	max-width: 179px;
	height: auto;
	margin-top: 10px;
	margin-bottom: 25px;
}

.offitemContLogo.officialmascot img {
	width: 100%;
	max-width: 119px;
	height: auto;
	margin-top: 20px;
	margin-bottom: 16px;
}

/* メモリアル */
#memorial {
	padding: 80px 0 0;
	margin-bottom: 50px;
	background: url(../../img/memorial/memorial_bg_sp.png) center top no-repeat;
	background-size: 100% auto;
}

#memorial .contTtl {
	margin-bottom: 25px;
}

/* メモリアル：シングルカラム */
#memorial .grid {
	margin-bottom: 20px;
	display: block;
}

#memorial .grid>li {
	width: 100%;
	padding: 10px 0;
	border-top: solid 1px #C9C9C9;
}

#memorial .grid>li:last-child {
	border-bottom: solid 1px #C9C9C9;
}

/* メモリアル：イベント一覧 */
#memorial .event {
	width: 100%;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

#memorial .eventImg {
	width: 40vw;
	height: 29.33333vw;
}

#memorial .eventImg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

#memorial .eventCont {
	width: calc(100% - 40vw);
	padding: 0 0 0 15px;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
}

#memorial .eventContDate {
	margin-bottom: 0.75em;
	font-size: 1rem;
	line-height: 1;
	letter-spacing: 0.1em;
	color: #838383;
}

#memorial .eventContTitle {
	font-size: 1.3rem;
	line-height: 1.15385;
	letter-spacing: 0.1em;
	font-weight: bold;
}

#memorial .eventContText {
	display: none;
}

/* 公式記念グッズ */
#goods {
	margin-bottom: 50px;
}

#goods .contTtl {
	margin-bottom: 25px;
}

/* 公式記念グッズ：シングルカラム */
#goods .grid {
	margin-bottom: 20px;
	display: block;
}

#goods .grid>li {
	width: 100%;
	padding: 15px 0;
	border-top: solid 1px #C9C9C9;
}

#goods .grid>li:last-child {
	border-bottom: solid 1px #C9C9C9;
}

/* 公式記念グッズ：商品一覧 */
#goods .items {
	width: 100%;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

#goods .itemsImg {
	padding: 0 10px;
	width: calc(28vw + 10px*2);
	height: 26.13333vw;
}

#goods .itemsImg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

#goods .itemsCont {
	width: calc(100% - 28vw);
	padding: 0 0 0 30px;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
}

#goods .itemsContTitle {
	margin-bottom: 0.5em;
	font-size: 1.3rem;
	line-height: 1.53846;
	letter-spacing: 0.05em;
	font-weight: bold;
}

#goods .itemsContPrice {
	font-size: 1.3rem;
	line-height: 1.53846;
	letter-spacing: 0.05em;
}

#goods .itemsContNote {
	font-size: 1.3rem;
	line-height: 1.53846;
	letter-spacing: 0.05em;
}

/* 記念動画 */
#movie {
	margin-top: 60px;
}

#movie .contTtl {
	margin-bottom: 25px;
}

#movie .youtubeemb {
	width: 100%;
	padding-top: 56.25%;
	margin-bottom: 17px;
	position: relative;
}

#movie .youtubeemb iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
}

#movie .movieTitle {
	font-size: 1.3rem;
	line-height: 1.53846;
	letter-spacing: 0.05em;
	font-weight: bold;
	text-align: center;
}

/* -------------------------------------------------- */
/* English */
/* -------------------------------------------------- */
#memorialfvTitle.enOnly {
	letter-spacing: 0.2em;
}

#whatis .unipara.enOnly {
	text-align: left;
}