body {
	color: #161616 ;
	/*font-size: 16px ;*/
	line-height: 1.75 ;
}
/*
header {
	font-size: 14px ;
	line-height: 1.5 ;
}

* {
	border:0;
	margin: 0 ;
	padding: 0 ;
	list-style: none outside ;
}
*/
h1, h2, h3, h4, h5, h6 {
	font-size: 100% ;
	font-weight: 700 ;
	line-height: 1.4 ;
}
img {
	max-width: 100%;
	height: auto;
	width:auto;
	vertical-align: top ;
}
a img, img {border:0;
}
a { color: #0179c6 ;
}
a:hover { color: #03599b ;
}
header nav#gnavi ul li a:hover { text-decoration: none ;
}
#language-select { display: none ;
}
.mobile,
.mb-wrap { display: none ;
}
#contents {
	max-width: none ;
	margin: 0 ;
	width: 100% ;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif ;
}
.small {
	font-size: 87% ;
}
.large{
	font-size: 112.5% ;
}

/* 共通パーツ
---------------------------------------*/
section > .inner {
	padding-top: 84px ;
}
section h2 {
	margin: 0 0 54px ;
	font-size: 2.25em ;
	font-weight: normal ;
}
section h3 {
	font-size: 1.5em ;
	font-weight: normal ;
	border-left: 10px solid #8fc31f ;
	padding-left: 10px ;
	margin-bottom: 1rem ;

}
section p {
	padding-bottom: 1.5em ;
}
.btn a {
	background-color : #3b96a6 ;

	display: inline-block ;
	color: #FFF ;
	font-size: 22px ;
	padding: 0.5em 3em ;
	text-decoration: none ;
}
.btn a:hover {
	background : #115786 ;
}
.clm-bg { background: #efefef ;
	padding-bottom: 3.5em ;
}

/* メインイメージ
---------------------------------------*/
.main-title {
	background: url("../imgs/main_bg.jpg") no-repeat center center ;
	background-size: cover ;
	position: relative;
}
.main-title h1 {
	width: 43.78% ;
	max-width: 832px ;
	padding: 0.8em 0 6.25rem ;

	position: relative ;
	z-index:2 ;
	font-size: 1em ;
	margin: auto ;
}
.main-title h1 img {
	animation: title 2s ;
}
.main-title .return,
.main-title .callenge {
	position: absolute ;
}
.main-title .return {
	animation: particle2 4s ;
	z-index: 3 ;
	bottom: 0 ;
	left: 0 ;
	right: -18% ;
	margin: auto ;
	width: 10% ;
	max-width: 186px ;
}
.main-title .callenge {
	animation: particle 2s ;
	z-index: 1 ;
	bottom: 0 ;
	left: -5% ;
	right: 0 ;
	margin: auto ;
	width: 38% ;
	max-width: 682px ;
}
@keyframes title {
	0% { opacity: 0 ; }
	30% { opacity: 0 ; }
	90% { opacity: 1 ; }
	100% { opacity: 1 }
}
@keyframes particle {
	0% { opacity: 0 ; bottom: 10% ; }
	30% { opacity: 0 ; }
	100% { opacity: 1 ; bottom: 0 ; }
}
@keyframes particle2 {
	0% { opacity: 0 ; }
	30% { opacity: 0 ; }
	100% { opacity: 1 ; }
}
@keyframes particle3 {
	0% { opacity: 0.2 ; left: 0% ; width:70% ; }
	40% { opacity: 0.8 ; }
	90% { opacity: 0 ; }
	100% { opacity: 0 ; left: 70% ; width: 50% ;
	}
}

/* 序文カラム
---------------------------------------*/
#Tracking .iframeWrapper{
	position: relative;
	margin: 3em 0 5em;
}

#Tracking .iframeWrapper iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#Tracking {
	background: url("../imgs/tt1_bg1.jpg") no-repeat center 42% ;
	background-size: 100% auto ;
}
#Tracking h2,
#About h2,
#Goal h2,
#Cheer h2 {
	font-size: 2.875rem ;
	color: #173860 ;
	text-align: center ;
	font-weight: bold ;
}
#Tracking h2 small {
	font-size: 0.75em ;
}
#Tracking h2 .title {
	display: block ;
	font-size: 0.75em ;
}
#Tracking h2:before,
#Tracking h2:after {
	color: #161616 ;
}
#Tracking h2:before { padding-right: 0.25em ; }
#Tracking h2:after { padding-left: 0.25em ; }

#Tracking .btn a {
	font-size: 16px ;
}
#Tracking .btn a:before {
	font-family: 'furunocom' !important;
	speak: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	content: "\e904";
	font-size: 0.875em;
	line-height: 1.5;
	vertical-align: middle;
	margin-left: -0.875rem;
	padding-right: 0.35em;
}
#Tracking .round-trip {
	padding: 1.5em 0 ;
}
#Tracking .round-trip h3 {
	border: none ;
	padding: 0 0 0 0 ;
	margin-bottom: 0.25em ;
	font-size: 107% ;
	font-weight: bold ;
}
#Tracking .round-trip .icon dt {
	width: 1.5em ;
	height: 1.5em ;
}
#Tracking .round-trip .icon dd {
	margin: -1.55em 0 0.25em 2em ;
}
#Tracking .speed-color h3 {
	border: none ;
	padding: 0 0 0 0 ;
	margin-bottom: 0.25em ;
	font-size: 107% ;
	font-weight: bold ;
}
#About h2,
#Goal h2,
#Cheer h2 {
	text-align: left ;
	font-size: 2.5rem ;
}
#Goal {
	background: url("../imgs/tt2_bg.jpg") no-repeat center top #f8f8f8 ;
	background-size: 100% auto ;
}

#About .list-two-clm {

}
#About .photo {
	padding-bottom: 0.75rem ;
}
#Cheer {
	padding-bottom: 4em ;
}
#Banners {
	padding-bottom: 9em ;
	background: linear-gradient(#f7f7f7, #fefefe 280px)
}
#Banners h2 {
	font-size: 1.75em ;
	font-weight: bold ;
	text-align: center ;
}
/* スマホサイズ用 */
@media screen and (max-width: 1200px) {
	.main-title-bg {
		background: none ;
	}
	.main-title {
		background-size: cover ;
	}
	.main-title h1 {
		width: 42.5% ;
		padding: 0.75em 0 3.25rem ;
	}
	.main-title .return {
		width: 11% ;
	}
	.main-title .callenge {
		width: 42% ;
	}


	/*
	.inner { max-width: 96% ;
	}
	*/
}

@media screen and (max-width: 980px) {
	#About h2,
	#Goal h2,
	#Cheer h2 {
		font-size: 2em ;
	}
	#Banners h2 {
		font-size: 1.5em ;
	}
}
@media screen and (max-width: 800px) {
	.main-title h1 {
		width: 51.5%;
	}
	#Tracking .iframeWrapper:before {
		padding-top: 1200px ;
	}
	#Tracking h2{
		font-size: 2em ;
	}
	#Tracking h2 .title {
		display: flex ;
		justify-content: center ;
		align-items: center;
	}
	#About h2,
	#Goal h2,
	#Cheer h2 {
		font-size: 1.5em ;
	}


}

@media screen and (max-width: 680px) {
	section h2 {
		margin-bottom: 36px ;
	}
	.main-title {
		background: url("../imgs/main_bg_mb.jpg") no-repeat center center ;
		background-size: cover ;
	}
	.main-title h1 {
		width: 86% ;
		padding: 9% 0 11%;
	}
	.main-title .return {
		width: 20%;
		right: -18%;
	}
	.main-title .callenge {
		width: 61%;
		left: -10%;
	}

	#Tracking h2 > span{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: baseline ;
	}


	section > .inner {
		padding-top: 35px ;
	}

}
@media screen and (max-width: 480px) {
	#Tracking h2 .title{
		display: inline ;
	}
}
	@media screen and (max-width: 420px) {
	#Tracking h2{
		font-size: 1.5em ;
	}

	#Tracking h2 small {
		font-size: 1rem ;
	}
	section h2 {
		margin-bottom: 1.5em ;
	}
	#About .list-two-clm {
		flex-direction: column-reverse ;
		display: block ;
	}
	#About .list-two-clm .clm,
	#About .list-three-clm li,
	#Goal .list-three-clm li {
		width: 100% ;
		margin: 0 0 3em ;
		padding: 0;
	}
	#About .list-three-clm {
		display: block ;
		padding-bottom: 3em ;
	}
	#About .list-three-clm li {
		text-align: center ;
	}
}
@media screen and (max-width: 400px) {
	.list-two-one-clm .clm {
		width: 100% ;
	}
	#About h2,
	#Goal h2,
	#Cheer h2 {
		font-size: 1.25em;
		margin-bottom: 1.5em;
	}

	#Tracking .iframeWrapper {
		margin: 0 0 3em ;
	}
	#Banners h2 {
		font-size: 1.25em ;
	}


}
/*.com common.css　抜粋*/
.list-two-clm > li:nth-of-type(2n), .list-two-clm > .clm:nth-of-type(2n), .list-three-clm > li:nth-of-type(3n), .list-three-clm > div:nth-of-type(3n), .list-three-clm .clm:nth-of-type(3n), .list-four-clm > li:nth-of-type(4n), .list-four-clm > div:nth-of-type(4n), .list-five-clm > li:nth-of-type(5n), .list-five-clm > div:nth-of-type(5n), .list-one-two-clm > div:nth-of-type(2n), .list-one-two-clm > li:nth-of-type(2n), .list-two-one-clm > div:nth-of-type(2n), .list-two-one-clm > li:nth-of-type(2n) {
    margin-right: 0;
}
.list-two-clm > li, .list-two-clm > .clm {
    box-sizing: border-box;
    margin: 0 5% 1.5em 0;
    width: 47.5%;
}
.list-two-clm, .list-three-clm, .list-four-clm, .list-five-clm, .list-one-two-clm, .list-two-one-clm {
    display: flex;
    flex-wrap: wrap;
}
.list-three-clm > li, .list-three-clm > div, .list-three-clm .clm, .list-one-two-clm > li, .list-one-two-clm > div, .list-one-two-clm .clm, .list-two-one-clm > li, .list-two-one-clm > div, .list-two-one-clm .clm {
    width: 30%;
    margin: 0 5% 3em 0;
}
.related_banner {
    display: flex;
    flex-wrap: wrap;
}
.related_banner > p {
    width: 20.4%;
    margin-right: 6.13%;
}
.related_banner img {
    display: block;
}
.related_banner > p:nth-of-type(4n) {
    margin-right: 0;
}
.related_banner a .copy {
    background: linear-gradient(#e8e8e8, #fff 24px);
    color: #161616;
    display: block;
    margin-top: 2px;
    padding: 24px 0 0 0;
}
.related_banner a .title {
    color: #004ea2;
    font-weight: normal;
    line-height: 1.3;
    padding: 0 0.25em 1.25em;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}
.related_banner img {
    display: block;
}

@media screen and (max-width: 960px) {
    .related_banner > p {
        width: 23%;
        margin-right: 2.66%;
    }
}
@media screen and (max-width: 640px) {
	.related_banner a .title {
        display: block;
        justify-content: left;
        padding: 0 0 0.75em;
        font-weight: bold;
        text-align: left;
	}
    .related_banner > p {
        width: 100%;
        margin: 0 0 1em;
    }
	.related_banner > p > a {
        display: flex;
        flex-wrap: wrap;
    }
	.related_banner a .thumbnail {
        width: 150px;
    }
	.related_banner a .copy {
        background: none;
        box-sizing: border-box;
        font-size: 0.875em;
        margin: 0;
        padding: 0 0 0 1em;
        text-align: left;
        width: calc(100% - 150px);
    }
}
@media screen and (max-width: 680px) {
    .list-three-clm > li, .list-three-clm > div, .list-three-clm .clm, .list-four-clm > li, .list-four-clm > div {
        width: 48%;
        margin: 0 4% 3em 0;
				padding: 0;
    }
		.list-three-clm > li:nth-of-type(2n), .list-three-clm > div:nth-of-type(2n), .list-three-clm .clm:nth-of-type(2n), .list-four-clm > li:nth-of-type(2n), .list-four-clm > div:nth-of-type(2n) {
				margin-right: 0;
		}
}
@media screen and (max-width: 400px) {
    .list-two-clm > li, .list-two-clm > .clm, .list-three-clm > li, .list-three-clm > div, .list-three-clm .clm, .list-four-clm > li, .list-four-clm > div, .list-one-two-clm > div:nth-of-type(2n), .list-one-two-clm > li:nth-of-type(2n), .list-two-one-clm > div:nth-of-type(2n-1), .list-two-one-clm > li:nth-of-type(2n-1), .list-one-two-clm > div, .list-one-two-clm > li, .list-two-one-clm > div, .list-two-one-clm > li {
        width: 100%;
        margin-right: 0;
    }
}
@media screen and (max-width: 680px) {
    .list-three-clm {
        justify-content: space-between;
    }
}
/*contents.css　上書き用*/
ul>li:before {
	content: none;
}

/*style.css 上書き*/
a {
    text-decoration: none;
}
#Tracking h2, #About h2, #Goal h2, #Cheer h2 {
    border-bottom: none;
}
section h3 {
	padding-bottom: 0;
    border-bottom: none;
}
#Banners h2 {
	border-bottom: none;
}
@media screen and (max-width: 1200px) {
    .inner {
        max-width: inherit;
    }
}


/*skin_common.css　上書き用*/
.inner {
    width: 100%;
}

#header .inner {
    width: 1200px;
}

section > .inner {
    width: 1200px;
}

.breadcrumb #dnn_dnnBREADCRUMB_lblBreadCrumb {
    margin: auto;
    width: 1200px;
    display: block;
}
.PagetitlePane h1 {
    width: 1200px;
    margin-inline: auto;
	line-height: 1.2;
}

#footer .inner {
    width: 1200px;
}
@media screen and (max-width: 768px) {
	.mainArea {
		font-size: 16px;
	}
    .ContentPane {
        padding: 2.15em 6% 5em;
        padding: 0;
    }
	#header .inner,
	section > .inner,
	.breadcrumb #dnn_dnnBREADCRUMB_lblBreadCrumb,
	.PagetitlePane h1,
	#footer .inner {
		width: inherit;
		padding-inline: 18px;
	}
    #header .inner, #footer .inner {
        padding-inline: inherit;
    }
	.breadcrumb #dnn_dnnBREADCRUMB_lblBreadCrumb,
	.PagetitlePane h1,
    #footer .footBottom .inner {
        padding-inline: 0;
    }
}
