.clearfix:after{
	content: '';
	display: block;
	clear:both;
}

.l-main-block__first {
    position: relative;
}
.s-header-secondinner{
	margin-top: 80px;
}

.s-second--main__caption{
	max-height: 255px;
}

#banner2-athlete.s-second--main__caption{
    max-height: 270px;
}

.s-second--main__caption__label{
    font-size: 3.7rem;
}

.s-second--main__caption{
	width:770px;
}

#boxathlete1{
	background: url('/hbhf/athnavi/images/bg-01.jpg');
	background-size:cover;
	margin-top:130px;
	position: relative;
    margin-left: -10px;
    margin-right: -10px;
}

#boxathlete2{
	background: url('/hbhf/athnavi/images/bg-02.jpg');
	background-size:cover;
	position: relative;
    margin-left: -10px;
    margin-right: -10px;
    padding-bottom:0;
}

#boxathlete3{
	background: url('/hbhf/athnavi/images/bg-03.jpg');
	background-size:cover;
	position: relative;
    margin-left: -10px;
    margin-right: -10px;
}

#contentathlete-area{
	padding-bottom: 0px;
}

.wrap-boxathlete{
	width:1180px;
	margin:0 auto;
}
.title-athlete{
	position: absolute;
    top: -97px;
	left:0;
	right:0;
	margin:0 auto;
    text-align: center;
}

.contentbox-athlete{
	padding-bottom:160px;
	padding-top:180px;
}

#boxathlete3.contentbox-athlete{
	padding-bottom:80px;
}
#boxathlete3 .profile-area{
    margin-top: 190px;
    margin-bottom:0px;
}

.contentbox-athlete .img01{
	padding-bottom:130px;
	position: relative;
}

.contentbox-athlete .img01 a {
	display: inline-block;
}

.contentbox-athlete .img-main{
	position: relative;
	z-index:1;
}

.contentbox-athlete .img02{
	position: absolute;
	right:0;
	bottom:40px;
}

.listphoto-athlete{
	margin-left:-20px;
	margin-right:-20px;
}

.listphoto-athlete li{
	float:left;
	width:calc(33.33% - 40px);
	margin-left:20px;
	margin-right:20px;
}

#boxathlete3 .listphoto-athlete{
	margin-left:0px;
	margin-right:0px;
}

#boxathlete3 .listphoto-athlete li{
	width:calc(34.5% - 0px);
	margin-left:0px;
	margin-right:0px;
}

#boxathlete3 .listphoto-athlete li:nth-child(2){
	width:calc(31%);
}

#boxathlete3 .listphoto-athlete li:nth-child(2) img{
    max-width: initial;
}

#boxathlete3 .listphoto-athlete li img{
	max-width:initial;
}


.banner-tokyoana a:hover, .banner-tokyoana a:focus {
    opacity: .6;
    transition: .2s;
}

.banner-tokyoana{
	text-align: center;
	padding-bottom:40px;
}

.banner-tokyoana a{
	display: inline-block;
	cursor: pointer;
}

.menu-tab{
	background:#002063;
	text-align: center;
	padding: 0 60px;
}

.menu-tab ul li{
	float:left;
	color:#fff;
	width:33.33%;
}

.wrap-menu-tab{
  max-width: 1180px;
  width: 100%;
	margin:0 auto;
}

.wrap-menu-tab li.active a{
	background: #000033;
}

.menu-tab ul li a{
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    -ms-flex-pack: center;
    align-items: center;
    -ms-flex-align: center;
    height: 72px;
    padding:10px 20px;
    border-right: solid 1px #fff;
    border-left: solid 1px #fff;
	background:#002063;
    transform:skew(-30deg);
	color:#fff;
	text-decoration:none;
}
.menu-tab ul li a span{
    transform:skew(30deg);
    -webkit-backface-visibility: hidden;
}
.menu-tab ul li:first-child a{
	padding: 10px 20px;
	border-left: 2px solid #fff;
}
.menu-tab ul li:last-child a{
	border-right: 2px solid #fff
}
.part-boxathlete2{
	padding:80px 0px;
	background:#f3f3f3;
}

.content-boxathlete2{
	max-width:1180px;
	width: 100%;
	margin:0 auto;
}

#list-detailath ul{
	margin-left:-20px;
	margin-right:-20px;
}

#list-detailath li{
	float:left;
	width:calc(50% - 40px);
	margin-left:20px;
	margin-right:20px;
	background: url('/hbhf/athnavi/images/bg-athlete-swimming.jpg');
	background-size:cover;
	padding:10px;
	margin-bottom:50px;
}

#list-detailath li.swimming{
	background: url('/hbhf/athnavi/images/bg-athlete-swimming.jpg');
	background-size:cover;
}

#list-detailath li.baseball{
	background: url('/hbhf/athnavi/images/bg-athlete-baseball.jpg');
	background-size:cover;
}

#list-detailath li.skating{
	background: url('/hbhf/athnavi/images/bg-skate.jpg');
	background-size:cover;
}

#list-detailath li.canoe{
	background: url('/hbhf/athnavi/images/bg-canoe.jpg');
	background-size:cover;
}

#list-detailath li.fencing{
	background: url('/hbhf/athnavi/images/bg-fencing.jpg');
	background-size:cover;
}

#list-detailath li.hockey{
	background: url('/hbhf/athnavi/images/bg-hockey.jpg');
	background-size:cover;
}

#list-detailath li.cycling{
	background: url('/hbhf/athnavi/images/bg-cycling.jpg');
	background-size:cover;
}

#list-detailath li.tracking{
	background: url('/hbhf/athnavi/images/bg-track.jpg');
	background-size:cover;
}

#list-detailath li.bmx{

	background: url('/hbhf/athnavi/images/bg-bmx.jpg');
	background-size:cover;
}

#list-detailath li.basketball{
	background: url('/hbhf/athnavi/images/bg-basketball.jpg');
	background-size:cover;
}

#list-detailath li.volley{
	background: url('/hbhf/athnavi/images/bg-volley.jpg');
	background-size:cover;
}

#list-detailath li.curling{
	background: url('/hbhf/athnavi/images/bg-curling.jpg');
	background-size:cover;
}

#list-detailath li .image-ath{
	float:left;
	position: relative;
	overflow: hidden;
	min-height: 217px;
    min-width: 180px;
}

#list-detailath li .image-ath img{
	display: block;
    max-width: 100%;
    position: absolute;
    left: 50%;
    top: 0%;
    right: 0;
    bottom: 0;
    margin: auto;
    transform: translateX(-50%);
}

#list-detailath li .det-ath{
	float:left;
}

#list-detailath .det-ath{
	margin-left:10px;
	margin-top:30px;
}

#list-detailath li a{
	text-decoration: none;
	display: block;
}
#list-detailath li.is-empty {
	display: none;
}

.wrap-imgdet{
	background:rgba(27,42,85,0.8);
	color:#fff;
	position:relative;
}

.wrap-imgdet h3{
	font-size:3.4rem;
	line-height: 1;
}

.wrap-imgdet span{
	font-size:1.3rem;
}

.wrap-imgdet p{
	margin-top:20px;
	font-size:1.6rem;
}

.wrap-imgdet .linkdet-ath{
	position: absolute;
	right:15px;
	bottom:15px;
	padding:5px 10px;
	border:solid 1px #b9bec8;
	font-size:1.4rem;
	padding-right:30px;
	background-color:rgba(0,0,51,0.2);
	background-image:url('/hbhf/athnavi/images/arrow.png');
	background-repeat:no-repeat;
	background-position:top 10px right 10px;
}

#title2-athlete{
	padding-top:50px;
	padding-bottom:50px;
}

.profile-area{
	margin-top:60px;
	margin-bottom:60px;
}

.slick-prev {
    left: 10px;
    background: url('/hbhf/athnavi/images/left-arrow.png') no-repeat;
    background-size: contain;
}

.slick-next {
    right: 10px;
    background: url('/hbhf/athnavi/images/right-arrow.png') no-repeat;
    background-size: contain;
}

.slick-next, .slick-prev {
	width:24px;
	height:35px;
	display: none !important;
}

.img-aisan{
	/*background:#fff;
	padding:40px 20px;
	text-align:center;*/
}

.en-athnaviana .profile-box .profile .data dt{
    width: 8.5em;
}

.profile-area{
	text-align:center;
}
.profile-area div{
	display: inline-block;
	margin-left:10px;
	margin-right:10px;
}
.profile-area div{
	vertical-align: middle;
}
.btn-first-spons a{
    padding:24px 0px;
}
.en-athnaviana .profile-box .name-box .name .name-en{
    font-size: 3.6rem;
    font-weight: normal;
    /*text-transform: uppercase;*/
}

.en-athnaviana .profile-box .name-box .name .name-jp{
    display:none;
}
.box-athlete_new{
	position: relative;
	z-index:1;
}
.sidebox-left_new{
	float:left;
	position:relative;
}
.sidebox-right_new{
	float:right;
}
.button_new-athlete{
	position:absolute;
	bottom:40px;
	left:0;
	right:0;
	margin:0 auto;
	text-align: center;
	padding:0px 20px;
}

.wrap-button_new-athlete{
	position: relative;
	color:#002063;
	background:#e7e8ec;
	font-size: 1.8rem;
	border:2px solid #002063;
	padding:5px 10px;
	padding-right: 35px;
}
.wrap-button_new-athlete: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;
}
.box-athlete_new a:hover .wrap-button_new-athlete:after{
	border: 1px solid #fff;
    border-bottom: none;
    border-left: none;
}

.box-athlete_new a:hover .wrap-button_new-athlete{
	color:#fff;
	background:#002063;
}
footer{
	height: 100% !important;
	padding: 0 !important;
}

@media (min-width: 1025px) {
	.u-sponly{
		display: none !important;
	}
}

@media (max-width: 1024px) {
	.sidebox-left_new{
		width:calc(50%);
	}
	.sidebox-right_new{
		width:calc(50%);
	}

	.wrap-button_new-athlete{
		font-size: 1em;
	}

	.button_new-athlete{
		bottom:12px;
		padding:0px 10px;
	}
	.menu-tab ul li a{
        transform:none;
    }

    .menu-tab ul li a span{
        transform:none;
    }
    .menu-tab ul li a{
        border-right:none;
        border-left:none;
    }
	.img-aisan{
		text-align: center;
	}
	.modalContents .profile-box .subttl{
		margin-top:16vw;
	}

	.profile-area div{
		display:block;
		margin-left:0px;
		margin-right:0px;
	}
	.s-second--main__caption__lead{
		text-align:left;
	}
	.p-header-secondinner img{
		width:100%;
	}
	.l-contentsbox__inner{
		width: auto;
		max-width:auto;
	}

	.wrap-boxathlete{
		width:auto;
	}

	.contentbox-athlete{
		padding-left:20px;
		padding-right: 20px;
	}

	.contentbox-athlete .img01{
		text-align: center;
		padding-bottom:40px;
	}

	.contentbox-athlete .img01 .img-main.u-sponly{
		display: inline-block;
	}

	.listphoto-athlete, #boxathlete3 .listphoto-athlete{
		margin-left:0px;
		margin-right:0px;
		text-align: center;
	}
	.listphoto-athlete li, #boxathlete3 .listphoto-athlete li, #boxathlete3 .listphoto-athlete li:nth-child(2){
		width:100%;
		margin-left:0px;
		margin-right:0px;
	}

	.listphoto-athlete li img{
		width:100%;
	}

	.title-athlete img{
		width: auto;
	}

	#boxathlete3 .profile-area{
		margin-top:100px;
		margin-bottom:0px;
	}

	.menu-tab ul li{
		float:none;
		color:#fff;
		width:100%;
	}

	.wrap-menu-tab{
		width:auto;
		margin:0 auto;
	}

	.menu-tab ul li:first-child a{
		border-left: none;

	}
	.menu-tab ul li:last-child a{

		border-right: none;
	}
	.menu-tab ul li a{
		border-bottom:solid 2px #fff;
	}

	.content-boxathlete2{
		width:auto;
		padding-right:20px;
		padding-left:20px;
	}

	#list-detailath ul{
		margin-left:0px;
		margin-right:0px;
	}
	#list-detailath li{
		float:none;
		width:auto;
		margin-left:0px;
		margin-right:0px;
		margin-bottom:20px;
	}
	.part-boxathlete2{
		padding:20px 0px;
	}
	.s-second--main__caption{
		width:auto;
		margin-right:20px;
		margin-left:20px;
	}

	.athnavi .profile-area{
		padding-left:20px;
		padding-right:20px;
	    margin-bottom: 60px;
	}

	#boxathlete3 .profile-area{
		padding-left:0px;
		padding-right:0px;
		margin-bottom: 0px;
	}

	.profile-area div{
		padding-left:10px;
		padding-right:10px;
	}

	.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_inner {
	    max-width: 600px;
	}
	.hbhf-countdown-2020 .hbhf-countdown-2020_link{
		border: 2px solid #002063;
	}
	.l-back__blue {
	    background: none;
	}
	.hbhf-countdown-2020_banner_logo img{
		max-width:none;
		width:auto;
	}

	.slick-btn-wrap{
	  position: absolute;
	  bottom: 6%;
	  left: 50%;
	}

	.slick-btn-wrap .slick-btn .toggle-btn{
	  border: 0 none;
	  cursor: pointer;
	}

	.js-second-slick .slick-btn-wrap{
	  display: flex;
	  align-items: center;
	}

	.js-second-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-second-slick .slick-btn-wrap .slick-btn{
	  position: relative;
	  outline:none;
	}


	.js-second-slick .slick-btn-wrap .slick-btn .js-stop-btn:before,
	.js-second-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-second-slick .slick-btn-wrap .slick-btn .js-stop-btn:before{
	  left: 2px;
	}

	.js-second-slick .slick-btn-wrap .slick-btn .js-stop-btn:after{
	  right: 2px;
	}

	.js-second-slick .slick-btn-wrap .slick-btn .js-start-btn:before,
	.js-second-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-second-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-start-btn{
		/*display:none;*/
	}
	/* .js-second-slick  .slick-dots ul{
	  display: flex;
	} */

	.js-second-slick .js-second-slick__items{
	    position: relative;
	}

	.js-second-slick .js-second-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-second-slick .js-second-slick__items a:hover{
	    border-color: #002063;
	    background: #fff;
	    color: #002063;
	    transition: 0.5s;
	}

	.js-second-slick .js-second-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-second-slick .js-second-slick__items a:hover:after{
	    border-color: #083368;
	}

	.js-second-slick .slick-dots li{
	  display: inline-block;
	  vertical-align: top;
	  word-spacing: normal;
	  margin: 0 3px !important;
	  width:auto !important;
	}

	.js-second-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-second-slick .slick-dots li.slick-active button{
	  background: #13448f;
	}

	.js-sptop-slick{
	  display: block;
	}

	.js-second-slick .slick-dots li.slick-active button[tabindex="0"]:focus{
	    outline: 2px solid #b2b2b2!important;
	}

	.js-second-slick .slick-btn-wrap{
	    position: relative;
	    padding: 10px 0;
	    text-align: center;
	    background: transparent;
	    margin: 0 auto;
	    left: 0;
	    bottom: 0;
	    justify-content: center;
        /*margin-top: -60px;*/
	  }

	  .js-second-slick .js-second-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-second-slick .slick-btn-wrap .slick-btn .js-stop-btn:before,
	  .js-second-slick .slick-btn-wrap .slick-btn .js-stop-btn:after{
	    background: #b5b5b5;
	  }

		.menu-tab {
			padding: 0;
		}
}

@media (max-width: 960px) {

	.modalContents .profile-box .subttl{
		margin-top:11vw;
	}

}


@media (max-width: 768px) {

	.modalContents .profile-box .subttl{
		margin-top:5vw;
	}


	.athnavi .s-second--main__caption__label {
	    font-size: 3rem;
	}
	/*#list-detailath li .image-ath{
		width:40%;
	    min-height: 250px;
	}*/
	#list-detailath li .image-ath img{
		top: 0%;
	}
	#list-detailath li .det-ath {
	    width: calc(60% - 30px);
	}

	.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;
	}
	#banner2-athlete.s-second--main__caption{
		max-height:200px;
	}

	.title-athlete{
		top: -68px;
	}
	.title-athlete img{
		width:200px;
	}
	#boxathlete1{
		margin-top: 110px;
	}
	.contentbox-athlete {
	    padding-bottom: 120px;
	    padding-top: 80px;
	}
}

@media (max-width: 600px) {
	/*#list-detailath li .image-ath{
	    min-height: 195px;
	    min-width:auto;
	}*/

	#list-detailath li .det-ath{
	    width: calc(55% - 30px);
	}
	#boxathlete1, #boxathlete2, #boxathlete3{
	    background-position: center;
	}
}
@media (max-width: 570px) and (min-width: 0px){
footer {
		padding: 0 !important;
		height: 100% !important;
	}
}

@media (max-width: 480px) {
	.wrap-button_new-athlete{
		font-size:3.5vw;
	}
	#list-detailath li .image-ath{
		width:37%;
	}
	#list-detailath li .image-ath img{
		top:0%;
	}
	#list-detailath li .det-ath {
	    width: calc(55% - 30px);
	}
	.athnavi .s-second--main__caption__label{
		font-size:1.8rem;
	}
	#list-detailath .det-ath {
	    margin-left: 20px;
	    margin-top: 20px;
	}
	.s-second--main__caption{
		padding:10px;
	}
	#banner2-athlete.s-second--main__caption {
	    max-height: 200px;
	}

	.athnavi .s-second--main__caption__label {
	    font-size: 2.5rem;
	    line-height:1;
	}
}


@media (max-width: 470px) {
	#list-detailath li .image-ath{
		width:auto;
	}

	#list-detailath li .det-ath {
	    width: auto;
	}

	/*#list-detailath li .image-ath {
	    float: none;
	    min-height: 250px;
	}*/

	/*#list-detailath li .det-ath{
		float:none;
	    padding-bottom: 80px;
	}*/

	#list-detailath li .image-ath img {
	    top: 0;
		position: relative;
		transform: none;
		left: 0;
	}

	.wrap-imgdet h3 {
	    font-size: 5vw;
	    line-height: 1;
	}
	.wrap-imgdet span {
	    font-size: 1.1rem;
	}

	.wrap-imgdet .linkdet-ath {
		position:absolute;
	    right: 20px;
    	bottom: 10px;
	    font-size: 2vw;
        padding: 5px 10px;
        padding-right: 20px;
        margin-top:5px;
    	background-position: top 5px right 10px;
	}

	.wrap-imgdet p {
	    margin-top: 5px;
	    font-size: 3.5vw;
	}

	#list-detailath li .det-ath {
	    width: calc(50% - 30px);
	}

	#list-detailath li .image-ath{
		min-height:initial;
		min-width:initial;
		width:46%;
	}
}
@media (max-width: 430px) {
	.s-second--main__caption__lead {
		line-height:1.3 !important;
	}
	.s-second--main__caption__lead .caption__lead__inner {
		margin-bottom:14px !important;
	}
}

@media screen and (max-width: 570px) {
	.p-back--footer__snsicon {
		top: 38%;
	}
}
