@charset "UTF-8";
@import url("grid.css");

:root { /* 色変更される場合は、#以降のカラーコードを変更してください IE非対応 */
    --base-color: #00418e;
    --link-color: #00418e;
    --linkhover-color: #668dbb;
    --back-color: #f7f7f7;
    --border-color: #ccc;
    --white-color: #fff;
}

img {
	max-width:100%;
	height: auto;/*高さ自動*/
}
a {
    display:block;
    color: var(--link-color);
    text-decoration-line: none;
}
a:hover { 
    color: var(--linkhover-color);
}

/*ヘッダー
-------------------------------------*/
.header {
	display: flex;
    flex-direction: row;
	background: #00418e;
}
.header h1{
	padding: 15px 0 0 2%;
	width: 18%;
}
.header-box {
	margin-left: auto;
	margin-top: 8px;
}
@media screen and (min-width: 769px){
.catch {
	margin-bottom: 40px;
}
.catch h4 {
    text-align: center;
	margin: 0;
}
.mainsp {
    display: none !important;
}
.br-sp {
    display: block;
}
.br-pc {
    display: none;
}
.btn{
	margin: 0 15% 2%;
	display: flex;
	font-size: 2rem;
}
.container{
	width: 1000px;
}
.gotolist div{
	width: 600px;
	font-size: 30px;
}
.flowIcon{
	width: 60px;
	margin: -1em 15px 0 0;
	font-size: 14px;
}
.flowArea .flow{
	border-radius: 30px;
}
.flowArea .flow .txt1{
	border-radius: 30px 30px 0 0;
	padding: 3% 1% 3% 2%;
	font-size: 18px;
	height: 80px;
}
.mt{
	margin:-10px 0 0;
}
.flowlast{
	border-radius: 2rem;
	font-size: 22px;
	margin: -5px 15px 5px 2%;
	padding: 5px 20px;
}
.flowArea h2{
	font-size: 22px;
	padding: 20px;
}
.game .day{
	margin: 0 20% 1%;
}
.d1{
	font-size: 24px;
	width: 33%;
}
.d2{
	font-size: 18px;
	padding: 6px 0 0 2%;
}
.red{
	font-size: 18px;
}
}

@media screen and (max-width: 768px){
.header {
	flex-direction: column;
	background: #00418e;
	padding: 0;
}
.catch {
	margin: 0;
	padding: 1%;
}
.catch h4 {
    text-align: left;
	padding: 0 4%;
	font-size: 18px;
}
.mainpc,.br-sp {
    display: none;
}
.br-pc {
    display: block;
}
.btn{
	margin: 0 1% 2%;
	display: flex;
	font-size: 3.5vw;
}
.container{
	width: 90%;
}
.gotolist div{
	width: 90%;
	font-size: 21px;
}
.flowIcon{
	width: 40px;
	margin: -3px 5px 2em 0;
	font-size: 11px;
}
.flowArea .flow{
	border-radius: 20px;
}
.flowArea .flow .txt1{
	border-radius: 20px 20px 0 0;
	padding: 13px 1% 10px 10px;
	margin: 0 0 10px;
	font-size: 14px;
	min-height: 60px;
}
.flowArea .flow .txt2{
	font-size: 13px;
}
.mt{
	margin:0;
}
.flowlast{
	border-radius: 20px;
	font-size: 15px;
	margin: -5px 8px 0 5px;
	padding: 5px 10px;
	white-space: nowrap;
}
.flowArea h2{
	font-size: 14px;
	padding: 15px 1%;
}
.game .day{
	margin: 0 0 1%;
}
.d1{
	font-size: 18px;
	width: 36%;
}
.d2{
	font-size: 12px;
	padding: 4px 0 0 0;
}
.red{
	font-size: 14px;
}
}
    
/*メイン画像
-------------------------------------*/
.mainpc {
    width: 100%;
	text-align: center;
	margin: 0 auto -140px;
	background: #010331;
}
.mainpc img {
    width: 1080px;
}
.mainsp {
    background: #010331;
	margin: 0;
}
.mainsp img {
    width: 100%;
}

/*メインコンテンツ
-------------------------------------*/
main {
    margin: 0;
	background: #010331;
}
section {
	margin: 5rem 0;
	padding: 3rem 0;
}
.gray-back {
	background-color: var(--back-color);
}

/*キャッチコピー
-------------------------------------*/
.catch{
	color: #fff;
	background: #010331;
}
.catch span {
    background-color: #005bab;
	font-size: 110%;
	font-weight: bold;
}
/*日程一覧へ
-------------------------------------*/
.gotolist{
	background: #005bab;
	padding: 15px 0;
	margin: 0 0 4%;
	text-align: center;
}
.gotolist div{
	margin: 0 auto;
	background: url("../img/arrow.png") no-repeat 94% 50% #f5faff;
	padding: 1% 0;
	border-radius: 60px;
	font-weight: bold;
	color: #00418e;
	text-align: center;
}

/*購入手順
-------------------------------------*/
.flowArea{
	background: #fafcfe;
	padding: 2% 0 0;
	border: solid 1px #00418e;
	text-align: center;
	height:500px;
	overflow:auto;
	overflow-y:scroll;
	overflow-x:hidden;
}
.flowArea::-webkit-scrollbar {
    width: 12px;
    background-color: #e6f1f9; 
}
.flowArea::-webkit-scrollbar-thumb {
    background: #c0dbef;
    width: 8px;
}
.flowtitle h2{
	background: #00418e;
	color: #fff;
	font-weight: bold;
	margin: 0 ;
	padding: 20px 0;
	font-size: 21px;
}
.flowArea h2{
	background: #00418e;
	color: #fff;
	font-weight: bold;
	margin: 0 ;
	text-align: left;
}
.flowArea .flow{
	background: #fff;
	border: solid 1px #00418e;
	margin: 5px 3% 10px;
	padding: 0;
	text-align: left;
}
.flowArea .flow .txt1{
	background: #dbe8ff;
	line-height: 130%;
	font-weight: bold;
}
.flowArea .flow .txt2{
	padding: 2% 2% 1%;
	clear: both;
}
.red{
	color: #ff0000;
	font-weight: bold;
}
.flowIcon{
	background: #00418e;
	border-radius: 10px;
	color: #fff;
	text-align: center;
	float: left;
	padding: 5px;
	line-height: 140%;
}
.flowIcon p{
	font-size: 130%;
	margin: 0;
	font-weight: bold;
}
.flowlast{
	background: #fff;
	color: #00418e;
	text-align: center;
	float: left;
}
.under {
    border-bottom: 0.4rem solid var(--base-color);
    padding:0 1rem 1rem 1rem;
}
.center {
	text-align: center;
	margin-bottom: 4rem;
}

/*注意事項
-------------------------------------*/
.Precautions {
	text-indent: -1em;
	padding-left: 1em;
}
/*日程
-------------------------------------*/
.game{
	border: solid 1px #333;
	padding: 3% 0 1%;
	margin: 0 0 3%;
	text-align: center;
}
.game p{
	color: #ff0000;
	margin: 2%;
}
.game .day{
    display: flex;
    padding: 0 5% 0 5%;
    list-style: none;
	font-weight: bold;
}
.btn div{
	margin: 0 1%;
	padding: 5px 0;
	width: 100%;
	border-radius: 4vh;
	font-weight: bold;
	color: #fff;
	text-align: center;
}
.c1{
	background-color: #02aaee; 
}
.c2{
	background-color: var(--base-color); 
}
.btn a:hover {
    color: #dbffff; 
}
.btn a {
    color: #fff; 
}
/*フッター
-------------------------------------*/
footer {
    background-color: var(--back-color); 
    padding: 5rem 0;
}
footer h4 {
    border-bottom: 3px solid var(--border-color);
}

/*コピーライト
-------------------------------------*/
.copyright {
    text-align: center;
    padding: 1rem 0;
    background-color: var(--base-color);
	color: var(--white-color);
	font-size: 11px;
}

/*ページトップへ戻るボタン
-------------------------------------*/
#pagetop {
    position: fixed;
    bottom: 15px;
    right: 15px;
}
#pagetop a {
    display: block;
    background-color: var(--base-color);
    color: var(--white-color);
    width: 50px;
    padding: 10px 5px;
    text-align: center;
}
#pagetop a:hover {
    background-color: var(--link-color);
}