@charset "UTF-8";
/*======================-
general
======================-*/
html[lang="ja"] body {
    font-family: ヒラギノ角ゴ Pro W3,Hiragino Kaku Gothic Pro,メイリオ,Meiryo,verdana,ＭＳ\ Ｐゴシック,Osaka,sans-serif;
}

html.ja body {
    font-family: ヒラギノ角ゴ Pro W3,Hiragino Kaku Gothic Pro,メイリオ,Meiryo,verdana,ＭＳ\ Ｐゴシック,Osaka,sans-serif;
}


html[lang="en"] body {
    font-family: "Myriad Pro","Myriad Pro Web","Droid Sans","Helvetica","Arial","HiraKakuProN-W3","HiraKakuPro-W3","ヒラギノ角ゴ ProN W3","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic ProN","メイリオ","Meiryo","Lucida Grande","Lucida Sans","Lucida Sans Unicode","Trebuchet MS","ＭＳ\ Ｐゴシック","MS PGothic",sans-serif;
}

html.en body {
    font-family: "Myriad Pro","Myriad Pro Web","Droid Sans","Helvetica","Arial","HiraKakuProN-W3","HiraKakuPro-W3","ヒラギノ角ゴ ProN W3","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic ProN","メイリオ","Meiryo","Lucida Grande","Lucida Sans","Lucida Sans Unicode","Trebuchet MS","ＭＳ\ Ｐゴシック","MS PGothic",sans-serif;
}

.wp5 {width:5% !important;}
.wp10 {width:10% !important;}
.wp15 {width:15% !important;}
.wp20 {width:20% !important;}
.wp25 {width:25% !important;}
.wp30 {width:30% !important;}
.wp35 {width:35% !important;}
.wp40 {width:40% !important;}
.wp45 {width:45% !important;}
.wp50 {width:50% !important;}
.wp55 {width:55% !important;}
.wp60 {width:60% !important;}
.wp65 {width:65% !important;}
.wp70 {width:70% !important;}
.wp75 {width:75% !important;}
.wp80 {width:80% !important;}
.wp85 {width:85% !important;}
.wp90 {width:90% !important;}
.wp95 {width:95% !important;}
.wp100 {width:100% !important;}
/*======================-
layout
======================-*/.l-wrapper {
	overflow: hidden;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.l-main-block {
	height: 100%;
	width: 100%;
}

.l-main-block__first {
	margin-top: 80px;
	position: relative;
}

.l-popup {
	background: rgba(255,255,255,0.6);
	width: 100%;
}
.l-popup a {
	display: block;
	text-decoration: underline;
	font-weight: bold;
	color: #002063;
}

.l-topcis {
	height: 100%;
	width: 100%;
}

.l-topcis__inner {
	margin: 0 auto;
	max-width: 1280px;
	padding: 20px;
}

.l-countdown-2020 {
	width: 100%;
	margin-top: 0;
}

.l-countdown-2020__inner {
	align-items: center;
	display: flex;
	flex-flow: row;
	justify-content: space-around;
	margin: 0 auto;
	max-width: 1280px;
	padding: 20px;
}

.l-countdown-2020__inner--olympic,
.l-countdown-2020__inner--paralympic {
	padding: 0 20px;
}
.l-countdown-2020__inner li:last-child {
	border-bottom: none;
}

.l-countdown-2020__inner--tokyo {
	border-left: 1px solid #3aa9d6;
	border-right: 1px solid #3aa9d6;
	padding: 0 80px;
}

.hbhf-countdown-2020 {
  padding: 40px 10px;
}

.hbhf-countdown-2020 .hbhf-countdown-2020_inner {
  width: 100%;
  max-width: 640px;
  margin: 0 auto;
  background: #fff;
}

.hbhf-countdown-2020 .hbhf-countdown-2020_link {
  color: #002063;
  display: block;
  padding: 20px;
  position: relative;
  text-decoration: none;
  border: 2px solid #002063;
}

.hbhf-countdown-2020 .hbhf-countdown-2020_link:hover,
.hbhf-countdown-2020 .hbhf-countdown-2020_link:focus {
  text-decoration: none;
  opacity: .6;
  transition: .2s;
}

.hbhf-countdown-2020 .hbhf-countdown-2020_banner {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
}

.hbhf-countdown-2020 .hbhf-countdown-2020_banner_text {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: space-around;
  padding-left: 20px;
  border-left: 1px solid #999;
}

.hbhf-countdown-2020 .hbhf-countdown-2020_banner_list {
font-size: 0;
}

.hbhf-countdown-2020 .hbhf-countdown-2020_banner_list_olympic,
.hbhf-countdown-2020 .hbhf-countdown-2020_banner_list_paralympic {
  font-size: 1.6rem;
  line-height: 1.2;
}

.hbhf-countdown-2020 .hbhf-countdown-2020_banner_list_olympic span,
.hbhf-countdown-2020 .hbhf-countdown-2020_banner_list_paralympic span {
  color: #1372ea;
  font-size: 1.5em;
  font-weight: bold;
  letter-spacing: 1px;
  margin: 0 5px;
}

.hbhf-countdown-2020 .hbhf-countdown-2020_lead {
  font-size: 1.8rem;
  font-weight: bold;
  text-align: right;
  margin-right: 20px;
  position: relative;
  line-height: 1;
}

.hbhf-countdown-2020 .hbhf-countdown-2020_lead:after {
  content: "";
  border-top: 2px solid #002063;
  border-right: 2px solid #002063;
  position: absolute;
  height: 7px;
  width: 7px;
  transform: rotate(45deg);
  top: 3.5px;
  right: -20px;
}

.l-contentsbox {
	padding: 40px 10px;
	width: 100%;
}

.l-contentsbox__inner {
	margin: 0 auto;
	max-width: 1280px;
}

.l-contentsbox__inner__air {
	padding: 20px 10px 0 10px;
}

.l-contentsbox__inner__vision {
	padding: 0 10px;
}

.l-back--air {
	background: url('/tokyo2020/tokyo2020_images/pc_air_back.jpg') no-repeat left bottom;
	background-size: cover;
	display: block;
	height: 0;
	padding: 0;
	padding-bottom: 50%;
}

.l-back--air--en {
	background-size: 100% 100%;
	height: 100%;
	padding-bottom: 0;
}

.l-back--vision {
	background: url('/tokyo2020/tokyo2020_images/pc_air_back.jpg') no-repeat;
	background-size: 100% 100%;
	height: 100%;
}

.l-back__gray {
	background: #f3f3f3;
}

.l-back__white {
	background: #fff;
}

.l-back__blue {
	background: #002063;
}

.l-contents--tvBanner a img {
	width: 100%;
}

.bottomBanner {
	text-align: center;
}

.bottomBanner a {
	display: inline-block;
	margin-bottom: 20px;
}

.bottomBanner a:last-child {
	margin-bottom: 0;
}

.l-header {
	background: #002063;
	position: fixed;
	width: 100%;
	z-index: 5;
}

.l-header__inner {
	align-items: center;
	display: flex;
	height: 80px;
	justify-content: space-between;
	margin: 0 auto;
	padding: 0px 20px;
	width: 100%;
	max-width: 1280px;
}

.l-header__spinner {
	display: none;
}

.p-header-secondinner img {
	width: 100%;
}

header .u-pconly {
	display: block;
}

header .u-sponly {
	display: none;
}

.select_lang {
  width: 160px;
}

.select_lang ul {
  display: table;
  width: 100%;
  font-size: 1.4rem;
  border: 1px solid #fff;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.select_lang li {
  display: table-cell;
  width: 50%;
  font-size: 1.3rem;
}

.select_lang ul, .select_lang li{
	font-size:14px;
}

.select_lang .selectBg {
  background: #fff;
  box-shadow: 0 2px 6px 1px #363636;
  border-radius: 4px;
  color: #002063;
  font-weight: bold;
}

.select_lang li a {
  display: block;
  color: #fff;
  padding: 6px 0;
  text-decoration: none;
  line-height: 1;
}

.l-footer {
	height: 100%;
	position: relative;
	width: 100%;
}

.l-footer--lower {
	background: #002063;
	font-size: 1.2rem;
	position: relative;
}

.l-footer--lower {
    font-size: 12px;
}

.l-footer--lower__inner {
	margin: 0 auto;
	max-width: 1280px;
	padding: 20px 10px;
}

/*======================-
object
======================-*/
.c-h2heading {
	color: #fff;
	display: block;
	font-size: 4rem;
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
}

.c-h2heading > span[lang] {
	font-weight: inherit;
}

.c-h2heading--blue {
	color: #002063;
}

.c-headinglead {
	display: block;
	line-height: 1.7;
	text-align: center;
}

.c-headinglead--left {
	padding: 0 20px;
	text-align: left;
}

.c-headinglead--white {
	color: #fff;
}

.c-h2heading--margin {
	padding: 40px 0;
}

.c-h2heading--margin--rft {
	padding: 25px 0;
}

.c-headinglead--vision {
	padding: 10px 20px;
}

.c-h3heading {
	color: #333;
	font-size: 2rem;
	font-weight: bold;
	margin: 30px 20px;
	text-align: center;
}

.c-linkblock {
	display: block;
}
.c-linkblock:hover .c-link-under,
.c-linkblock:focus .c-link-under {
	text-decoration: underline;
}
.c-link-icon {
	position: relative;
	padding-left: 23px;
}
.c-link-icon:before {
	content: " ";
	position: absolute;
	display: block;
	width: 15px;
	height: 15px;
	top: 3px;
	left: 0;
	background: url('/tokyo2020/images/arr_icon_2.png') no-repeat;
}
.c-link-icon--white:before {
	background: url('/tokyo2020/images/arr_icon_3.png') no-repeat;
}

.c-btn {
	cursor: pointer;
	display: inline-block;
	position: relative;
	vertical-align: middle;
	width: 360px;
	text-decoration: none;
}

.c-btn {
	display: block;
	font-size: 1.8rem;
	padding: 15px 20px;
}

.c-btn:hover,
.c-btn:focus {
	background: rgba(255, 255, 255, 1);
	transition: .2s;
	text-decoration: none;
	color: #002063!important;
}

.c-btn .blank,
.c-btn .blank {
	padding: 0 2px;
}
.c-btn:hover.c-btn__back--thingray .blank,
.c-btn:focus.c-btn__back--thingray .blank {
	background: rgba(255, 255, 255, 1);
}



.c-btn--center {
	display: block;
	margin: 30px auto;
	text-align: center;
}

.media-wrap .thum-wrap .text .c-btn--center {
	margin: 0 auto;
}

.c-btn__back--gray {
	background: #40515f;
	color: #fff !important;
}

.c-btn__back--thingray {
	background: #e7e8ec;
	color: #002063 !important;
}

.c-btn__back--blue {
	background: #26417a;
	color: #fff !important;
}

.c-white__arrow {
	position: relative;
}

.c-white__arrow:after {
	border: 1px solid #fff;
	border-bottom: none;
	border-left: none;
	bottom: 0;
	content: "";
	height: 7px;
	margin: auto 0;
	position: absolute;
	right: 15px !important;
	top: 0;
	transform: rotate(45deg);
	width: 7px;
}
.c-btn.c-white__arrow:hover:after,
.c-btn.c-white__arrow:focus:after {
	border: 1px solid #002063;
	border-bottom: none;
	border-left: none;
}

.c-blue__arrow {
	position: relative;
}

.c-blue__arrow:after {
	border: 1px solid #002063;
	border-bottom: none;
	border-left: none;
	bottom: 0;
	content: "";
	height: 7px;
	margin: auto 0;
	position: absolute;
	right: 15px !important;
	top: 0;
	transform: rotate(45deg);
	width: 7px;
}
.c-btn.c-blue__arrow:hover:after,
.c-btn.c-blue__arrow:focus:after {
	border: 1px solid #fff;
	border-bottom: none;
	border-left: none;
}

.c-arrow--down::after {
	transform: rotate(133deg);
}

.c-btn__border--white {
	border: 2px solid #fff;
}

.c-btn__border--blue {
	border: 2px solid #002063;
}

.c-btn.c-btn__border--blue:hover,
.c-btn.c-btn__border--blue:focus {
	background: #002063;
	color: #fff!important;
}

.fadeInDown {
	-webkit-animation-duration: 1s;
	-ms-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-name: fadeInDown;
	animation-name: fadeInDown;
	visibility: visible !important;
}

.c-flexgrid {
	display: flex;
	flex-flow: row;
	justify-content: space-around;
	padding: 30px 0;
}

.c-flexgrid a {
	text-decoration: none;
}

.c-flexgrid a:hover,
.c-flexgrid a:focus {
	opacity: .6;
	transition: .2s;
}

.c-flexgrid__item {
	min-width: 0;
	padding: 0 10px;
	text-align: center;
}

.c-flexgrid__item img {
	width: 100%;
	max-width: 380px;
}

.c-flexgrid__text {
	color: #002063;
	line-height: 1.7;
	margin-top: 10px;
	text-align: left;
}

.c-flexgrid__text--white {
	color: #fff;
}

.c-flexgrid__text--white {
	color: #fff;
}

.c-flexgrid .c-flexfrid__text--width {
	max-width: 380px;
}

.c-flexgrid__item--modifeir {
	border: 1px solid #ccc;
}

.c-flexgrid--modifeir {
	flex-wrap: wrap;
}

.c-flexgrid--modifeir::after {
	content: "";
	display: block;
	padding: 0;
	width: 28%;
}

.c-flexgrid--modifeir a {
	color: #333 !important;
	display: block;
}

.c-flexgrid--modifeir__item {
	background-color: white;
	border: 1px solid #ccc;
	margin: 20px 0px;
	max-width: 28%;
	padding: 0;
	position: relative;
}

.c-flexgrid--modifeir__item__inner {
	padding: 10px 10px 25px;
	text-align: left;
}

.c-flexgrid--modifeir__item__date {
	font-size: 2rem;
	margin-bottom: 20px;
}

.c-flexgrid--modifeir__item__text {
	line-height: 1.7;
	overflow: hidden;
}

.c-flexgrid--modifeir__item--border {
	background-image: linear-gradient(-45deg, #002063 15px, transparent 0px);
}

.c-flexgrid--entop::after {
	content: "";
	display: block;
	padding: 0;
	width: 28%;
}

.c-flexgrid--entop__item {
	max-width: 28%;
	width: 28%;
}

.p-header-globalnavigation {
	margin: 0 10px;
}

.p-header__logo img {
width: 120px;
}

.p-header-navigation__item {
	border-left: 1px solid #fff;
	display: table-cell;
}

.p-header-navigation__item:first-child {
  border-left: none;
}

.p-header-navigation__link:hover,
.p-header-navigation__link:focus {
	background: rgba(255, 255, 255, .2);
}

.p-header-navigation__item--active .p-header-navigation__link {
	background: rgba(255, 255, 255, .3);
}

.p-header-navigation__link {
	color: #fff !important;
	display: block;
	/*font-size: 1.8rem;*/
	padding: 15px 20px;
	text-decoration: none;
}

.p-header-navigation__link:hover,
.p-header-navigation__link:focus {
	text-decoration: none;
}

.p-header-lang-ijclogo {
	padding: 10px 0;
	position: relative;
}

.p-header-lang-ijclogo__lang {
	display: inline-block;
	vertical-align: middle;
}

.p-header-lang-ijclogo .p-header-lang-ijclogo__link {
	color: #fff !important;
	font-size: 1.8rem;
	text-decoration: none;
}
.p-header-lang-ijclogo .p-header-lang-ijclogo__link:hover,
.p-header-lang-ijclogo .p-header-lang-ijclogo__link:focus {
	text-decoration: underline;
}

.p-header-lang-ijclogo__image {
	display: inline-block;
	margin-left: 40px;
	vertical-align: middle;
}

.p-header__arrow {
	display: inline-block;
	padding-left: 20px;
	position: relative;
}

.p-header__arrow:before {
	border: 0;
	border-right: solid 2px #fff;
	border-top: solid 2px #fff;
	content: "";
	height: 6px;
	left: 0;
	margin-top: -4px;
	position: absolute;
	top: 50%;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	width: 6px;
}

.p-main-block__centertext {
	position: absolute;
}

#playerWall {
	background-color: #fff;
	border: none;
	height: 100%;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	z-index: 100;
}

.p-movie--content {
	display: block;
	margin: 0 auto;
	max-width: 1280px;
	padding: 0 100px;
	position: relative;
	z-index: 3;
}

.p-movie--content__inner {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	position: relative;
}

.p-movie--content__caption {
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	top: 20%;
}

.p-movie--content__caption img {
	display: block;
	margin: 0 auto;
	padding: 0 10px;
	text-align: center;
	width: 70%;
}

.p-carousel--content {
	display: block;
	margin: 0 auto;
	position: relative;
	width: 100%;
	z-index: 3;
}

.p-carousel--content__inner {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	position: relative;
}

.p-carousel--content__caption {
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	top: 52%;
}

.p-carousel--content__caption img {
	display: block;
	margin: 0 auto;
	padding: 0 10px;
	text-align: center;
	width: 70%;
}

#player {
	display: inline-block;
}

.p-sp--mainblock {
	display: none;
}

.p-movie--content__inner iframe {
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.p-topics {
	position: relative;
}
.p-topics__heading {
	display: inline-block;
	margin-left: 50px;
	width: 8%;
	vertical-align: middle;
}

.p-topics__heading--label {
	color: #cf3600;
	font-size: 2.2rem;
	font-weight: bold;
}

.p-topics__accordion {
	display: inline-block;
	margin-left: 5%;
	vertical-align: middle;
	width: 75%;
}

.p-popup__link {
	display: block;
	padding: 20px 0;
	text-align: center;
}

.p-popup__link a {
	color: #16015c;
	text-decoration: none;
}

.p-popup__link a:hover,
.p-popup__link a:focus {
	text-decoration: underline;
}

.p-popup__link--arrow {
	padding-left: 20px;
	position: relative;
}

.p-popup__link--arrow a:after {
	border: 0;
	border-right: solid 2px #16015c;
	border-top: solid 2px #16015c;
	content: "";
	height: 6px;
	margin-top: -4px;
	position: absolute;
	top: 50%;
	right: 20px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	width: 6px;
}

.p-accordion__item {
	border-bottom: 1px dotted #ccc;
	padding: 0;
}

.p-accordion__item__date {
	display: inline-block;
	margin-right: 2%;
	width: 10rem;
}

.p-accordion__item__new-icon {
	background: #e80000;
    border-radius: 4px;
    width: 5rem;
    display: inline-block;
    text-align: center;
    margin-right: 1rem;
    font-size: 1.4rem;
    vertical-align: middle;
    color: #fff;
    margin-bottom: 2px;
}

.p-accordion__link {
	color: #333!important;
	font-size: 1.6rem;
	text-decoration: none;
	padding: 0;
	padding-right: 25px;
	display: block;
	line-height: 1.5;
	position: relative;
}

.p-accordion__link:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	width: 6px;
	height: 6px;
	margin: auto;
	border-top: 2px solid #333;
	border-right: 2px solid #333;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.p-accordion__item.not-link{
	color: #333!important;
	font-size: 1.6rem;
	padding-right: 25px!important;
	line-height: 1.5;
}

.p-accordion__link:hover:after,
.p-accordion__link:focus:after {
	border-color: #002063;
}

.p-accordion__link:hover,
.p-accordion__link:focus {
	color: #002063!important;
}
.p-accordion__link:hover .p-accordion__item__text,
.p-accordion__link:focus .p-accordion__item__text {
	text-decoration: underline;
}


.p-accordion .p-accordion__item {
	border-bottom: 1px dotted #ccc;
	padding: 15px 0;
	display: none;
}

.p-accordion .p-accordion__item:nth-child(-n+2) {
	display: block;
}

.p-accordion.is-active .p-accordion__item {
	display: block!important;
}

.p-wrapicon_plus-minus {
	background: #8c8c8c;
	border: 1px solid #8c8c8c;
	cursor: pointer;
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	box-sizing: border-box;
}
.p-wrapicon_plus-minus:hover,
.p-wrapicon_plus-minus:focus {
	background: #c3c3c3;
	border: 1px solid #8c8c8c;
}

.p-wrapicon_plus-minus-inner {
	display: block;
	position: relative;
	padding: 20px;
	margin: auto;
	width: 20px;
}

.p-icon_plus {
	display: block;
	position: relative;
}
.p-icon_minus {
	display: none;
	position: relative;
}

.p-icon_plus:after, .p-icon_plus:before,
.p-icon_minus:after, .p-icon_minus:before {
	background-color: #fff;
	content: "";
	display: block;
	position: absolute;
}
.p-icon_plus:after {
	height: 4px;
	left: -10px;
	top: -2px;
	width: 20px;
}
.p-icon_plus:before {
	height: 20px;
	left: -2px;
	top: -10px;
	width: 4px;
}
.p-icon_minus:after {
	height: 4px;
	left: -10px;
	top: -2px;
	width: 20px;
}

.p-wrapicon_plus-minus.active .p-icon_plus {
	display: none;
}
.p-wrapicon_plus-minus.active .p-icon_minus {
	display: block;
}

.p-countdown__text {
	color: #fff;
	font-size: 1.6rem;
	text-align: center;
	vertical-align: bottom;
}

.p-countdown__text span {
	color: #3aa9d6;
	font-size: 2.6rem;
	font-weight: bold;
	letter-spacing: 1px;
	margin-left: 20px;
}

.p-countdown__center {
	color: #3aa9d6;
	font-size: 4rem;
}

.p-back--air__text {
	color: #fff;
	font-size: 1.8rem;
	line-height: 1.7;
	margin-bottom: 20px;
	padding-left: 15%;
}

.p-back--air__text--first {
	padding-top: 5%;
}

.p-back--air__bold {
	font-size: 2rem;
}

.p-back--vision__text {
	color: #fff;
	display: blok;
	font-size: 1.6rem;
	line-height: 1.7;
	text-align: center;
	background: rgba(0, 13, 39, .5);
	margin: 0 15%;
	padding: 30px;
}

.p-sp--slider a {
	color: #002063 !important;
	text-decoration: none !important;
}

.p-slick {
	margin-top: 30px;
}

.p-slick .slick-track {
	display: flex !important;
}

.p-slick .slick-slide {
	margin: 0 10px;
	height: auto;
	background: #fff;
}

.p-slick .slick-slide > div {
	height: 100%;
}

.p-slick-item {
	background: #fff;
	display: flex !important;
	flex-direction: column;
	height: 100%;
}
.p-slick-item a {
	transition: .2s;
	text-decoration: none;
	flex-shrink: 0;
}
.p-slick-item a:hover,
.p-slick-item a:focus {
	opacity: 0.7;
}


.p-slick--caption {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 15px 10px 10px;
	position: relative;
	height: 100%;
}

.p-slick--caption h3 {
	font-size: 1.6rem;
	overflow: hidden;
	text-align: left;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-weight: normal;
	text-decoration: none;
	padding: 2px 0;
}
.p-slick--caption h3 span {
	position: relative;
	padding-left: 25px;
}
.p-slick--caption h3 span:before {
	background: url('/tokyo2020/images/arr_icon_2.png') no-repeat;
	content: " ";
	display: block;
	height: 15px;
	left: 0;
	position: absolute;
	top: 50%;
	width: 15px;
	margin-top: -8px;
}

.p-slick--caption p {
	font-size: 1.4rem;
	margin-top: 10px;
	line-height: 1.5;
	text-decoration: none;
}
.p-slick-item a:hover .p-slick--caption h3,
.p-slick-item a:focus .p-slick--caption h3 {
	text-decoration: underline;
}

.p-slick--caption .p-slick--caption-link {
	text-align: right;
}

.p-slick--caption .p-slick--caption-link a {
	display: inline-block;
}

.p-back--footer__snsicon {
	bottom: 0;
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
	text-align: center;
	top: 52%;
}

.p-back--footer__snsicon__item {
	display: inline-block;
	vertical-align: middle;
}

.p-back--footer__snsicon__item a {
	display: block;
}

.p-back--footer__snsicon__item:first-child {
	padding-right: 20px;
}

.p-back--footer__snsicon__item:nth-child(2) {
	padding-left: 20px;
}

/*.p-footer--lower__link ul{
	display: flex;
	flex-direction: row;
	margin-right: -15px;
	font-size: 0;
	align-items: center;
}*/

.p-footer--lower__link ul li {
	display: inline-block;
	margin-right: 15px;
	/*font-size: 1.2rem;*/
}

.p-footer--lower__link a {
	color: #fff !important;
}

.p-footer--lower__link a:hover,
.p-footer--lower__link a:focus {
	text-decoration: none;
}

.p-footer--lower__star:hover,
.p-footer--lower__star:focus {
	outline-color: #fff;
}

.p-footer--lower__copy, .p-footer--lower__link {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-top: 10px;
}

.p-actions--read {
	color: #002063;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 2.0;
}
/* For modern browsers */.cf:before, .cf:after {
	content: "";
	display: table;
}

.cf:after {
	clear: both;
}/* For IE 6/7 (trigger hasLayout) */.cf {
	zoom: 1;
}

.u-basefont {
	color: #fff !important;
}

.u-image-center {
	display: block;
	margin: 0 auto;
	text-align: center;
}

.u-image-right {
	display: block;
	text-align: right;
}

.u-image-left {
	display: block;
	text-align: left;
}

.u-text-center {
	display: block;
	line-height: 1.7;
	margin: 0 auto;
	text-align: center;
}

.u-hover__animation:hover,
.u-hover__animation:focus {
	opacity: .6;
	transition: .2s;
}

.u-margin {
	display: block;
	margin: 30px 0;
}

.u-img100 {
	width: 100%;
}

.u-pt0 {
	padding-top: 0 !important;
}

.u-pb0 {
	padding-bottom: 0 !important;
}

.u-mt0 {
	margin-top: 0 !important;
}

.u-p0 {
	padding: 0 !important;
}

.u-link__none {
	pointer-events: none;
}

.u-pconly {
	display: block;
}

.u-sponly {
	display: none;
}

.js-more--contents {
	display: none;
}

.js-more--contents__item {
	margin-top: 0;
}

.js-p-accordion {
	display: none;
}
.banner-blank {
	position: relative;
}
.banner-blank .blank {
	display: block;
	position: absolute;
	bottom: 1px;
	right: 1px;
	width: 23px;
	height: 23px;
	background: #fff;
	padding: 5px;
	font-size: 1.4rem;
	line-height: 1;
}
.blank {
	display: inline-block;
	margin-left: 5px;
}
.blank img {
	vertical-align: middle;
	width: auto!important;
	max-width: 100%!important;
}
.c-h2heading-logo {
  margin-top: 88px;
  position: relative;
}
.c-h2heading-logo .joc_logo {
    display: block;
    position: absolute;
    right: 0;
    top: -88px;
}
.joc-text {
  margin-top: 16px;
  display: block;
  font-size: 0.8em;
  line-height: 1.2;
}
.p-accordion .p-accordion__item .joc-text {
  color: #666;
  text-align: right;
}

/*======================-
media
@media (max-width: 768px)
======================-*/@media (max-width: 1026px) {
	.l-back--air {
		padding-bottom: 65%;
	}

	.l-back--air--en {
		padding-bottom: 0;
	}

}

@media (max-width: 1024px) {

	header .p-header__splogo {
		padding: 20px 0;
	}

	header .u-pconly {
		display: none;
	}

	header .u-sponly {
		display: block;
	}

	header + .u-pconly {
		display: none;
	}

	.l-header {
		position: relative;
	}

	.l-header__inner {
		display: none;
	}

	.l-header__spinner {
		display: flex;
		display: block;
		height: 100%;
		justify-content: space-between;
		padding: 0px 10px;
	}
}

@media (max-width: 1024px) {
	.l-main-block__first {
		margin-top: 0;
	}

	.l-topcis .l-topcis__inner {
		padding: 20px 10px;
		width: 100%;
	}

	.l-countdown-2020__inner {
		padding: 0;
	}

	.l-countdown-2020__inner li {
		border-bottom: 1px solid #3aa9d6;
		margin: 10px 0;
		padding-bottom: 10px;
		width: 90%;
	}

	.l-countdown-2020__inner--tokyo {
		border-left: none;
		border-right: none;
		padding: 0;
		text-align: center;
	}

	.l-countdown-2020__inner {
		flex-direction: column;
	}
  .hbhf-countdown-2020 .hbhf-countdown-2020_banner {
    display: block;
  }

  .hbhf-countdown-2020 .hbhf-countdown-2020_banner_logo {
    text-align: center;
  }

  .hbhf-countdown-2020 .hbhf-countdown-2020_banner_text {
    border-left: none;
    padding-left: 0;
    border-top: 1px solid #999;
    padding-top: 20px;
    margin-top: 20px;
    display: block;
    text-align: center;
  }

  .hbhf-countdown-2020 .hbhf-countdown-2020_banner_list {
    margin-right: -5%;
   }
   
  .hbhf-countdown-2020 .hbhf-countdown-2020_banner_list_olympic, .hbhf-countdown-2020 .hbhf-countdown-2020_banner_list_paralympic {
    display: inline-block;
    width: 45%;
    margin-right: 5%;
    text-align: center;
    vertical-align: top;
   }

  .hbhf-countdown-2020 .hbhf-countdown-2020_lead {
    margin-right: 0;
    margin-top: 20px;
    display: inline-block;
  }

	.hbhf-countdown-2020 .hbhf-countdown-2020_inner {
		max-width: 600px;
	}

	.l-back--air {
		background: url('/tokyo2020/tokyo2020_images/sp_air_back_02.jpg') no-repeat;
		background-size: 100% 100%;
		height: 100%;
		padding-bottom: 75%;
	}

	.l-back--vision {
		background: url('/tokyo2020/tokyo2020_images/sp_air_back_02.jpg') no-repeat;
		background-size: 100% 100%;
		height: 100%;
	}

	.fl {
		float: left;
	}

	.fr {
		float: right;
	}

	.RF-langsns {
		align-items: center;
		display: flex;
		display: -o-flex;
		display: -ms-flex;
		display: -moz-flex;
		display: -webkit-flex;
	}

	.l-footer--lower__inner {
		max-width: 100%;
		padding: 10px;
	}

	.c-h2heading {
		font-size: 2.5rem;
	}

	.c-headinglead--left {
		padding: 0 10px;
	}

	.c-btn {
		width: 100%;
	}

	.c-flexgrid {
		flex-direction: column;
	}

	.c-flexgrid__item {
		margin-bottom: 20px;
	}

	.c-flexgrid__item img {
		max-width: 100%;
	}

	.c-flexgrid .c-flexfrid__text--width {
		max-width: 100%;
		width: 100%;
	}

	.c-flexgrid--modifeir {
		flex-wrap: nowrap;
	}

	.c-flexgrid--modifeir__item img {
		display: inline-block;
		vertical-align: top;
		width: 48.5%;
	}

	.c-flexgrid--modifeir__item {
		max-width: 100%;
	}

	.c-flexgrid--modifeir__item__inner {
		display: inline-block;
		padding: 10px 5px 5px;
		vertical-align: top;
		width: 50%;
	}

	.c-flexgrid--modifeir__item__date {
		display: none;
	}

	.c-flexgrid--entop__item {
		max-width: 100%;
		width: 100%;
	}

	.p-movie--content {
		display: none;
	}

	.p-carousel--content {
		padding: 0;
		width: 100%;
	}

	.p-sp--mainblock {
		display: block;
		width: 100%;
	}

	.p-sp--mainblock img {
		width: 100%;
	}

	.p-topics .p-topics__heading {
		display: block;
		margin-left: 0;
		margin-top: 0;
		text-align: center;
		width: 100%;
	}

	.p-topics .p-topics__accordion {
		margin-left: 0;
		width: 100%;
	}

	.p-popup__link a {
		display: inline-block;
		vertical-align: middle;
		width: 80%;
	}

	.p-popup__link--arrow {
		padding-left: 0;
	}

	.p-popup__link--arrow a:after {
		display: inline-block;
		vertical-align: middle;
	}

	.p-accordion__item__date {
		display: block;
		width: 100%;
	}

	.p-accordion__item__text {
		margin-left: 0;
		width: 100%;
	}

	.p-wrapicon_plus-minus {
		margin: 10px 0;
		position: relative;
		width: 100%;
	}

	.p-icon_plus-minus {
		display: block;
		margin: 0 auto;
		width: 10px;
	}

	.p-back--air__text {
		padding-left: 0;
	}

	.p-slick--caption {
		max-width: 100%;
	}

	.p-pc--movie {
		display: none;
	}

	.p-footer--lower__top {
		margin-bottom: 10px;
		text-align: center;
	}

	.p-footer--lower__toplink {
		text-align: center;
	}

	.p-footer--lower__copy, .p-footer--lower__link {
		flex-direction: column;
	}
	
	.p-footer--lower__link {
		margin-top: 0;
	}
	
	.p-footer--lower__link ul {
		margin-right: 0;
		flex-direction: column;
	}
	
	.p-footer--lower__link ul li {
		margin-right: 0;
		margin-bottom: 10px;
		display: block;
	}

	.p-footer--lower__logo {
		padding-top: 10px;
	}

	.p-header__splogo {
		padding: 20px 0;
	}

	.p-header__splogo img {
		width: 232px;
	}

	.u-pconly {
		display: none;
	}

	.u-sponly {
		display: block;
	}

	.js-more--contents__item {
		margin-top: 20px;
	}
	
	.p-back--vision__text {
		width: 100%;
		margin: 0 auto;
	}
}

@media (min-width: 1025px) {
	.l-popup {
	display: none;
	}
}

@-webkit-keyframes fadeInDown {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-20px);
	}

	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
	}
}

@keyframes fadeInDown {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-20px);
		-ms-transform: translateY(-20px);
		transform: translateY(-20px);
	}

	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
	}
}

@-webkit-keyframes fadeInDown {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-20px);
	}

	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
	}
}

@keyframes fadeInDown {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-20px);
		-ms-transform: translateY(-20px);
		transform: translateY(-20px);
	}

	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
	}
}

@media (max-width: 570px) {
	.joc-text{
		margin-top: 8px;
		font-size: 0.7em;
	}
	.p-back--footer__snsicon {
		top: 45%;
	}
}

.new_icon_bg{
position:absolute;
background:linear-gradient(to top left, rgba(255,255,255,0) 50%, #e80000 50.5%) no-repeat top left/100% 100%;
width: 60px;
height: 60px;
text-align: left;
}

.new_icon {
position: absolute;
transform: rotate(-45deg);
width: 75px;
height: 25px;
color: #fff;
}

.icon {
	display: inline-block;
	margin-left: 5px;
}

.icon a.move-info-modal-link img {
	max-height: 20px;
	height: auto;
	width: auto;
	vertical-align: middle;
}

/*pagetop*/
.js-pagetop {
  position: relative;
  z-index: 5;
}

.js-pagetop p {
  position: fixed;
  bottom: 20px;
  right: 20px;
}

.js-pagetop a {
  display: inline-block;
  background: #438dae;
  width: 55px;
}
.js-pagetop a:hover,
.js-pagetop a:focus {
  background: #7cb8d2;
}

.media-wrap {
	border-bottom: 0!important;
}

.media-wrap .text {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	color: #232323;
	padding: 0 13px 0 22px;
	background: #fff;
	width: calc(100% - 360px);
	
}

/*
.media-wrap .text:before {
	content: " ";
	position: absolute;
	display: block;
	width: 15px;
	height: 15px;
	top: 12px;
	left: 0;
	background: url("/tokyo2020/images/arr_icon_2.png") no-repeat;
}
*/
.media-wrap .thum {
	width: 360px;
}
.media-wrap .thum-wrap {
	margin-top: 25px;
}
.media-wrap .caption {
	color: #333;
}

.media-wrap .thum-wrap a img {
  -webkit-transition: .3s;
  transition: .3s;
}
.media-wrap .thum-wrap a:hover img,
.media-wrap .thum-wrap a:focus img {
  opacity: 0.7;
}
.media-wrap .thum-wrap a:hover .text,
.media-wrap .thum-wrap a:focus .text {
  text-decoration: underline;
}

.media-wrap .pc-link {
	display: block;
}
.media-wrap .sp-link {
	display: none!important;
}

@media (max-width: 1024px) {
	.media-wrap .thum {
		width: 100%;
	}
	.media-wrap .text {
		width: 100%;
	}
}

@media (max-width: 768px) {
	.media-wrap .text {
		padding-right: 0;
		padding-left: 0;
	}
	.media-wrap .caption {
		padding-top: 8px;
	}
	
	.media-wrap .thum-wrap .text .c-btn--center {
		margin-top: 30px;
	}
}

@media (min-width: 0px) and (max-width: 570px) {
	.media-wrap .pc-link {
		display: none!important;
	}
	.media-wrap .sp-link {
		display: block!important;
	}
	
	.media-wrap .thum-wrap {
		margin-top: 15px;
	}
	
	.media-wrap .thum-wrap .box + .box {
		margin-top: 5px!important;
	}
	
	.p-slick-item {
		padding: 0;
	}
}
/*!
 * jquery-drawer v3.1.0
 * Flexible drawer menu using jQuery, iScroll and CSS.
 * http://git.blivesta.com/drawer
 * License : MIT
 * Author : blivesta <design@blivesta.com> (http://blivesta.com/)
 */
.drawer-nav {
    position: fixed;
    z-index: 2;
    top: 0;
    overflow: hidden;
    width: 80%;
    height: 100%;
    color: #222;
    background-color: #002063;
}
body.drawer.drawer--right.drawer-open{
  overflow: hidden;
}
.drawer-brand {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 3.75rem;
    display: block;
    padding-right: .75rem;
    padding-left: .75rem;
    text-decoration: none;
    color: #222
}

.drawer-menu {
    margin: 0;
    padding: 0;
    list-style: none
}

.drawer-menu-item {
    font-size: 1rem;
    display: block;
    padding: .75rem;
    text-decoration: none;
    color: #222
}

.drawer-menu-item:hover {
    text-decoration: underline;
    color: #555;
    background-color: transparent
}

.drawer-overlay {
    position: fixed;
    z-index: 1;
    top: 0;
    left: 0;
    display: none;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.2)
}

.drawer-open .drawer-overlay {
    display: block
}

.drawer--top .drawer-nav {
    top: -100%;
    left: 0;
    width: 100%;
    height: auto;
    max-height: 100%;
    -webkit-transition: top .6s cubic-bezier(.19,1,.22,1);
    transition: top .6s cubic-bezier(.19,1,.22,1)
}

.drawer--top.drawer-open .drawer-nav {
    top: 0
}

.drawer--top .drawer-hamburger,.drawer--top.drawer-open .drawer-hamburger {
    right: 0
}

.drawer--left .drawer-nav {
    left: -16.25rem;
    -webkit-transition: left .6s cubic-bezier(.19,1,.22,1);
    transition: left .6s cubic-bezier(.19,1,.22,1)
}

.drawer--left .drawer-hamburger,.drawer--left.drawer-open .drawer-nav,.drawer--left.drawer-open .drawer-navbar .drawer-hamburger {
    left: 0
}

.drawer--left.drawer-open .drawer-hamburger {
    left: 16.25rem
}

.drawer--right .drawer-nav {
    visibility: hidden;
    right: -80%;
    -webkit-transition: right .6s cubic-bezier(.19,1,.22,1),visibility .6s cubic-bezier(.19,1,.22,1);
    transition: right .6s cubic-bezier(.19,1,.22,1),visibility .6s cubic-bezier(.19,1,.22,1);
}

.drawer--right .drawer-hamburger,.drawer--right.drawer-open .drawer-nav,.drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
    visibility: visible;
    right: 0
}

.drawer--right.drawer-open .drawer-hamburger {
    right: 0;
}

.drawer-hamburger {
    position: absolute;
    z-index: 4;
    top: 0;
    display: block;
    box-sizing: content-box;
    /*width: 4rem;*/
    width: 40px;
    padding: 0;
    padding: 15px 10px;
    -webkit-transition: all .6s cubic-bezier(.19,1,.22,1);
    transition: all .6s cubic-bezier(.19,1,.22,1);
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    border: 0;
    outline: 0;
    background-color: transparent
}

.drawer-hamburger:hover {
    cursor: pointer;
    background-color: transparent
}

.drawer-hamburger-icon {
    position: relative
}

.drawer-open .drawer-hamburger-icon {
    display: block;
    margin-top: 10px
}

.drawer-open .drawer-hamburger-icon,.drawer-hamburger-icon:after,.drawer-hamburger-icon:before {
    width: 100%;
    height: 2px;
    -webkit-transition: all .6s cubic-bezier(.19,1,.22,1);
    transition: all .6s cubic-bezier(.19,1,.22,1);
    background-color: #fff;
}

.drawer-open .drawer-hamburger-icon:after,.drawer-open .drawer-hamburger-icon:before {
    position: absolute;
    top: -10px;
    left: 0;
    content: ' '
}

.drawer-open .drawer-hamburger-icon:after {
    top: 10px
}

.drawer-open .drawer-hamburger-icon {
    background-color: transparent
}

.drawer-open .drawer-hamburger-icon:after,.drawer-open .drawer-hamburger-icon:before {
    top: 0;
}

.drawer-open .drawer-hamburger-icon:before {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

.drawer-open .drawer-hamburger-icon:after {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.sr-only {
    position: absolute;
    overflow: hidden;
    clip: rect(0,0,0,0);
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0
}

.sr-only-focusable:active,.sr-only-focusable:focus {
    position: static;
    overflow: visible;
    clip: auto;
    width: auto;
    height: auto;
    margin: 0
}

.drawer--sidebar,.drawer--sidebar .drawer-contents {
    background-color: #fff
}

@media (min-width: 64em) {
    .drawer--sidebar .drawer-hamburger {
        display:none;
        visibility: hidden
    }

    .drawer--sidebar .drawer-nav {
        display: block;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        position: fixed;
        width: 12.5rem;
        height: 100%
    }

    .drawer--sidebar.drawer--left .drawer-nav {
        left: 0;
        border-right: 1px solid #ddd
    }

    .drawer--sidebar.drawer--left .drawer-contents {
        margin-left: 12.5rem
    }

    .drawer--sidebar.drawer--right .drawer-nav {
        right: 0;
        border-left: 1px solid #ddd
    }

    .drawer--sidebar.drawer--right .drawer-contents {
        margin-right: 12.5rem
    }

    .drawer--sidebar .drawer-container {
        max-width: 48rem
    }
}

@media (min-width: 75em) {
    .drawer--sidebar .drawer-nav {
        width:16.25rem
    }

    .drawer--sidebar.drawer--left .drawer-contents {
        margin-left: 16.25rem
    }

    .drawer--sidebar.drawer--right .drawer-contents {
        margin-right: 16.25rem
    }

    .drawer--sidebar .drawer-container {
        max-width: 60rem
    }
}

.drawer--navbarTopGutter {
    padding-top: 3.75rem
}

.drawer-navbar .drawer-navbar-header {
    border-bottom: 1px solid #ddd;
    background-color: #fff
}

.drawer-navbar {
    z-index: 3;
    top: 0;
    width: 100%
}

.drawer-navbar--fixed {
    position: fixed
}

.drawer-navbar-header {
    position: relative;
    z-index: 3;
    box-sizing: border-box;
    width: 100%;
    height: 3.75rem;
    padding: 0 .75rem;
    text-align: center
}

.drawer-navbar .drawer-brand {
    line-height: 3.75rem;
    display: inline-block;
    padding-top: 0;
    padding-bottom: 0;
    text-decoration: none
}

.drawer-navbar .drawer-brand:hover {
    background-color: transparent
}

.drawer-navbar .drawer-nav {
    padding-top: 3.75rem
}

.drawer-navbar .drawer-menu {
    padding-bottom: 7.5rem
}

@media (min-width: 64em) {
    .drawer-navbar {
        height:3.75rem;
        border-bottom: 1px solid #ddd;
        background-color: #fff
    }

    .drawer-navbar .drawer-navbar-header {
        position: relative;
        display: block;
        float: left;
        width: auto;
        padding: 0;
        border: 0
    }

    .drawer-navbar .drawer-menu--right {
        float: right
    }

    .drawer-navbar .drawer-menu li {
        float: left
    }

    .drawer-navbar .drawer-menu-item {
        line-height: 3.75rem;
        padding-top: 0;
        padding-bottom: 0
    }

    .drawer-navbar .drawer-hamburger {
        display: none
    }

    .drawer-navbar .drawer-nav {
        position: relative;
        left: 0;
        overflow: visible;
        width: auto;
        height: 3.75rem;
        padding-top: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }

    .drawer-navbar .drawer-menu {
        padding: 0
    }

    .drawer-navbar .drawer-dropdown-menu {
        position: absolute;
        width: 16.25rem;
        border: 1px solid #ddd
    }

    .drawer-navbar .drawer-dropdown-menu-item {
        padding-left: .75rem
    }
}

.drawer-dropdown-menu {
    display: none;
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding: 0;
    background-color: #fff
}

.drawer-dropdown-menu>li {
    width: 100%;
    list-style: none
}

.drawer-dropdown-menu-item {
    line-height: 3.75rem;
    display: block;
    padding: 0;
    padding-right: .75rem;
    padding-left: 1.5rem;
    text-decoration: none;
    color: #222
}

.drawer-dropdown-menu-item:hover {
    text-decoration: underline;
    color: #555;
    background-color: transparent
}

.drawer-dropdown.open>.drawer-dropdown-menu {
    display: block
}

.drawer-dropdown .drawer-caret {
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 4px;
    -webkit-transition: opacity .2s ease,-webkit-transform .2s ease;
    transition: opacity .2s ease,-webkit-transform .2s ease;
    transition: transform .2s ease,opacity .2s ease;
    transition: transform .2s ease,opacity .2s ease,-webkit-transform .2s ease;
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    vertical-align: middle;
    border-top: 4px solid;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent
}

.drawer-dropdown.open .drawer-caret {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.drawer-container {
    margin-right: auto;
    margin-left: auto
}

@media (min-width: 64em) {
    .drawer-container {
        max-width:60rem
    }
}

@media (min-width: 75em) {
    .drawer-container {
        max-width:70rem
    }
}


/*u-css*/
.drawer-list{
  margin-bottom: 20px;
}
.drawer-list__last{
  margin-top: 30px;
}
.drawer-link{
  color: #fff !important;
  /*font-size: 1.8rem;*/
  text-decoration: none;
}
.drawer-link:hover{
  text-decoration: none;
}
.drawer-menu{
  padding: 50px 20px;
}
.drawer-open .drawer-open_btn{
  display: none;
}
.drawer-snsicon{
  margin: 30px 0;
}
.drawer-snsicon__list{
  display: inline-block;
  vertical-align: middle;
  width: 4em;
  margin-right: 20px;
}

/*modal*/
.image-modal-area,.video-modal-area {
    display: none;
    position: static
}
.image-modal-area .modal-inner,.video-modal-area .modal-inner {
    position: fixed;
    z-index: 100000;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px
}

.image-modal-area.is-active,.video-modal-area.is-active {
    display: block
}

.image-modal-area .modal-content,.video-modal-area .modal-content {
    max-width: 750px;
    width: 70%;
    margin: auto;
    position: relative
}

.video-box {
    width: 100%;
    position: relative;
    padding-top: 56.25%;
    height: 0;
    overflow: hidden
}

.video-box iframe {
    position: absolute;
    top: 0;
    left: 0;
    vertical-align: bottom;
    width: 100%;
    height: 100%
}

.image-box {
    width: 100%;
    height: 100%;
    position: relative;
    text-align: center;
    background: #fff
}

.image-box img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto
}

.modal-bg {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10000;
    overflow: hidden;
    position: fixed;
    background: rgba(0,0,0,0.7)
}

.legacy .modal-bg,.ie8 .modal-bg {
    background: url("/tokyo2020/images/modal_bg.png") repeat
}

.modal-close {
    position: absolute;
    z-index: 1;
    right: -50px;
    top: -50px
}

.modal-close a {
    display: block;
    width: 38px;
    height: 38px;
    font-size: 0;
    line-height: 0;
    background: url("/tokyo2020/images/btn_close.png") no-repeat 0 0
}

.modal-close a:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
    -moz-opacity: 0.8
}

/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;

}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}
/*u_css*/
.slick-next, .slick-prev {
    border: none;
    color: transparent;
    cursor: pointer;
    font-size: 0;
    height: 60px;
    position: absolute;
    width: 60px;
    line-height: 0;
    outline: 0;
    top: 40%;
    z-index: 2;
    -webkit-transform: translate(0,-50%);
    -ms-transform: translate(0,-50%);
    transform: translate(0,-50%);
    -webkit-box-shadow:0px 0px 0px 2px #333 inset;
    -moz-box-shadow:0px 0px 0px 2px #333 inset;
    box-shadow:0px 0px 0px 2px #333 inset;
}
.slick-next{
  right: 0;
  background: url('/tokyo2020/tokyo2020_images/icon/sp_next_arrow.png') no-repeat;
  background-size: 100%;
}
.slick-prev{
  left: 0;
  background: url('/tokyo2020/tokyo2020_images/icon/sp_preview_arrow.png') no-repeat;
  background-size: 100%;
}
.slick-slide img{
  width: 100%;
}

/*js-bxslider*/
/* .js-bxslider__caption{
  position: absolute;
  z-index: 90;
  right: 2%;
  bottom: 10%;
  padding: 20px 10px;
  background: rgba(255,255,255,0.6);
} */
.js-bxslider__caption a{
  display: block;
  color: #002063;
  text-decoration: underline;
  font-weight: bold;
}
.bx-controls{
  display: none;
}
}
@media (max-width: 1024px){
  .js-pagetop p{
    right: 0;
  }
  .js-bxslider__caption{
    display: none;
  }
}


.slick-btn-wrap{
  position: absolute;
  bottom: 6%;
  left: 50%;
}

.slick-btn-wrap .slick-btn .toggle-btn{
  border: 0 none;
  cursor: pointer;
}

.js-top-slick .slick-btn-wrap{
  display: flex;
  align-items: center;
}

.js-top-slick .slick-btn-wrap .slick-btn .js-toggle-btn{
  display: block;
  width: 15px;
  height: 11px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background: transparent;
  position: relative;
  padding: 0;
  margin: 0;
}

.js-top-slick .slick-btn-wrap .slick-btn{
  position: relative;
}


.js-top-slick .slick-btn-wrap .slick-btn .js-stop-btn:before,
.js-top-slick .slick-btn-wrap .slick-btn .js-stop-btn:after{
  content: "";
  background: #fff;
  top: 50%;
  position: absolute;
  width: 4px;
  height: 15px;
  /* background: #b5b5b5; */
  margin-top: -6px;
  font-size: 0;
  line-height: 0;
  display: block;
}

.js-top-slick .slick-btn-wrap .slick-btn .js-stop-btn:before{
  left: 2px;
}

.js-top-slick .slick-btn-wrap .slick-btn .js-stop-btn:after{
  right: 2px;
}

.js-top-slick .slick-btn-wrap .slick-btn .js-start-btn:before,
.js-top-slick .slick-btn-wrap .slick-btn .js-start-btn:after{
  content: "";
  position: absolute;
  display: block;
  top: 50%;
  left: 0px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 0 8px 16px;
  border-color: transparent transparent transparent #13448f;
  margin-top: -6px;
  vertical-align: middle;
}

.js-top-slick .slick-btn-wrap .slick-btn .js-start-btn:before{
  border-left-color: #FFF;
}

.slick-btn{
  height: 15px;
  border-right: #ccc 1px solid;
  margin-right: 8px;
  padding-right: 6px;
}
/* .js-top-slick  .slick-dots ul{
  display: flex;
} */

.js-top-slick .js-top-slick__items{
    position: relative;
}

.js-top-slick .js-top-slick__items a{
    position: absolute;
    z-index: 90;
    right: 100px;
    bottom: 70px;
    padding: 20px 120px;
    display: block;
    text-decoration: none;
    font-size: 1.8rem;
    background: #002063;
    color: #fff;
    border: #fff 1px solid;
}

.js-top-slick .js-top-slick__items a:hover{
    border-color: #002063;
    background: #fff;
    color: #002063;
    transition: 0.5s;
}

.js-top-slick .js-top-slick__items a:after{
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    right: 10px;
    width: 10px;
    height: 10px;
    margin-top: -5px;
    border: 3px solid #fff;
    border-width: 0 1px 1px 0;
    transform: rotate(-45deg);
}

.js-top-slick .js-top-slick__items a:hover:after{
    border-color: #083368;
}

.js-top-slick .slick-dots li{
  display: inline-block;
  vertical-align: top;
  word-spacing: normal;
  margin: 0 3px;
}

.js-top-slick .slick-dots button{
  background: #fff;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  border: none;
  width: 20px;
  height: 20px;
  text-indent: -9999px;
  background: #fff;
  border: #13448F 2px solid;
  padding: 0;
  margin: 0;
  line-height: 1;
}

.js-top-slick .slick-dots li.slick-active button{
  background: #13448f;
}

.js-sptop-slick{
  display: none;
}

.js-top-slick .slick-dots li.slick-active button[tabindex="0"]:focus{
    outline: 2px solid #b2b2b2!important;
}



@media (max-width: 1024px){
  .js-sptop-slick{
    display: block;
  }

  .js-top-slick .slick-btn-wrap{
    position: relative;
    padding: 10px 0;
    text-align: center;
    background: #fff;
    margin: 0 auto;
    left: 0;
    bottom: 0;
    justify-content: center;
  }

  .js-top-slick .js-top-slick__items a{
    right: 0;
    bottom: 15px;
    padding: 17px 50px;
    margin: 0 auto;
    text-align: center;
    left: 0;
    right: 0;
    width: 200px;
    font-size: 1.4rem;
  }

  .js-top-slick .slick-btn-wrap .slick-btn .js-stop-btn:before, 
  .js-top-slick .slick-btn-wrap .slick-btn .js-stop-btn:after{
    background: #b5b5b5;
  }

  .slick-list{
    line-height: 0;
  }
}

.js-slick .slick-dots{
    display: none !important;
}


@media (max-width: 375px){
 .js-top-slick .js-top-slick__items a{
    right: 0;
    bottom: 15px;
    padding: 14px 50px;
    margin: 0 auto;
    text-align: center;
    left: 0;
    right: 0;
    width: 200px;
    font-size: 1.4rem;
  }
  }

 .slick-list-movie{
    line-height: normal;
  }
  }
  @charset "utf-8";


.modalOverlay {
  width:100%;
  height:120%;
  position:fixed;
  top:0;
  left:0;
  background-color: #000;
  filter: alpha(opacity=80);
  -moz-opacity: 0.8;
  opacity: 0.8;
  z-index:10000;
  display:none;
}
.modalContents {
  width:75%;
  padding:40px;
  position:absolute;
  background-color: #fff;
  color:#000;
  z-index:10001;
}
.modalContents .button {
  position: absolute;
  top: -34px;
  right: -30px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  font-size: 0;
  line-height: 1;
  opacity: 1;
  transition: all .3s ease;
  text-align: center;
}
.modalContents .button .inner_btn {
  display: inline-block;
  width:26px;
  line-height:26px;
  font-weight: bold;
  font-size: 26px;
  font-family: "Lato",sans-serif;
  cursor: pointer;
  border: none;
  background: #fff;
  color: #000;
  border-radius: 50%;
}
.modalContents .button .inner_btn:hover,
.modalContents .button .inner_btn:focus {
  background-color: #034ea2;
  color: #fff;
}
@media (max-width:1030px){
  .modalContents .button {
    right:5px;
  }
}


/*margin-right調整用*/
.marginM2{
	margin-right:-8px;
}
@media(max-width:1220px){
	 .marginM2{
		 margin-right:16px;
	 }
}
@media (min-width: 571px) and (max-width: 979px) {
	 .marginM2{
		 margin-right:12px;
	 }
}

@media(max-width:570px){
	 .marginM2{
		 margin-right:5px;
	 }
	 .modalContents {
	 padding:20px;
	 }
}

/*テキスト、ボーダー濃青*/
.profile-box .subttl,.profile-box .data dt,.profile-box .name-box,.profile-box .data dt::after{
	color:#224987;
	border-color:#224987;
}
/*メッセージbox調整*/
.profile-box .comment{
background:#70cef6;
clear:right;
}
.profile-box .comment::before{
border-color: white white #70cef6 white;
}

@media(max-width:1024px){
 .profile-box .comment{
 clear:both;
 }
}
.profile-box h4{
 line-height:1.6;
}

/*動画代替情報モーダル*/
.move-info-modal-box {
  display: none;
}

#move_info_cont .move-info-modal-box {
  display: block;
}

#move_info_cont.modalContents {
  max-width:75%;
  width: 768px;
  font-size: 1.6rem;
  line-height: 1.3;
}

#move_info_cont.modalContents .move-info-modal-box p:not(:first-of-type) {
  margin-top: 25px;
}

#move_info_cont.modalContents .move-info-modal-box .alt_text span {
  display: block;
  margin-top: 15px;
}

#move_info_cont.modalContents .move-info-modal-box .alt_text p {
  margin-top: 15px;
}

/*footefモーダル*/
.icon-box .icon_table_content table {
  border: 1px solid #b2b2b2;
  border-width: 1px 0 0 1px;
  background: #fff;
  width: 100%;
  line-height: 1.3;
}
.icon-box .icon_table_content table caption {
  font-size: 2rem;
  font-weight: bold;
  color: #002063;
  margin-bottom: 15px;
}
.icon-box .icon_table_content th {
  border: 1px solid #b2b2b2;
  border-width: 0 1px 1px 0;
  background: #f0f3f8;
  color: #002063;
  font-weight: bold;
  padding: 10px;
  text-align: center;
  vertical-align: middle;
}
.icon-box .icon_table_content td {
  border: 1px solid #b2b2b2;
  border-width: 0 1px 1px 0;
  padding: 10px 15px;
  vertical-align: middle;
}
.icon-box .icon_table_content .icon_table_img  img{
  height:16px;
  width: auto;
}