@charset "utf-8";

/* 基本設定
------------------------------------------ */
.contentsInr img { vertical-align: bottom; }
.contentsInr{color:#7C4A2F;}
.contentsInr p{line-height: 1.3;}
.mgt05{margin-top:5px !important;}

/* 共通
------------------------------------------ */
div.wid90 {width:90%;margin:auto;}
div.wid80 {width:80%;margin:auto;}
.wid75 {width:75%;margin:auto;}
.block01 h1.main_title img, .block05 h1.main_title img {display:block;margin:30px auto;}
.flex {display: -webkit-flex;display:flex;content-justify:-webkit-justify-content: space-around;justify-content: space-around;}
.left {float:left;}
.right {float:right;}
.clear {clear:both;}
span.ft_s{font-size:0.8em;}
span.ft_b{font-size:1.4em;}
div.block03 p.indent, div.block05 ul li span.indent {padding-left: 1em;text-indent: -1em;}
.pink{background-color:#ffff98;}

/* 大会概要
------------------------------------------ */
div.block01 .block01_h {padding: 20px;}
div.block01 .outline {background: url(../img/block01_bg.jpg) no-repeat center top;overflow: hidden;padding-bottom:35px; }
div.block01 .place {color:#fff;font-weight:bold;font-size:1.5em;}

/* 大会の特徴
------------------------------------------ */
.block02 {margin:0 auto 40px;}
.block02 h1.main_title img {margin:40px auto 0;display:block;}

/* 行程表・大会日程
------------------------------------------ */
div.block03 h2 {text-align:center;}
div.detail01, div.detail02 {display:block;width:50%;}
div.detail01 table, div.detail02 table {width:98%;font-size:0.9em;margin:auto;box-sizing:border-box;margin-top:30px;}
div.detail01 table {border:solid 2px #F5A440;}
div.detail01 table th {border-right:solid 2px #F5A440;background-color:#F6B37F;text-align:center;padding:10px 0;}
div.detail01 table td {border-right:solid 2px #F5A440;border-bottom:solid 2px #F5A440;}
div.detail01 table td.pd {padding:10px 5px;}
div.detail01 table td .border {border:solid 1px #7C4A2F;margin-bottom: 3px;display: inline-block;box-sizing: border-box;padding: 1.5px;}
div.detail02 table {border:solid 2px #F5B201;}
div.detail02 table th {border-right:solid 2px #F5B201;border-bottom:solid 2px #F5B201;background-color:#ffd4d4;text-align:center;padding:10px 0;width: 15%;}
div.detail02 table td {border-right:solid 2px #F5B201;border-bottom:solid 2px #F5B201;padding:7px;line-height:1.3; text-align: center;}
p.note02 {border:double #FB561C;display: inline-block;padding:15px;}


/* 種目・参加資格・定員・スタート時間・制限時間・参加料
------------------------------------------ */
div.block04 {background: url(../img/block04_bg.jpg) no-repeat center top;overflow: hidden;padding:30px 0 35px;    margin-top: 40px;}
div.block04 h2 {color:#fff;font-weight:bold;font-size:1.3em;padding-top:20px;}
div.block04  table{width:100%;box-sizing:border-box;margin-top:20px;border:solid 2px #06AF7D;}
div.block04  table tr {border:solid 2px #06AF7D;}
div.block04  table th, div.block04  table td {text-align:center;padding: 10px;}
div.block04  table th {background-color:#D5FFE9;border-right:solid 2px #06AF7D;}
div.block04  table td {background-color:#fff;border-right:solid 2px #06AF7D;}
div.block04 p {color:#fff;}

/* 設定ホテル
------------------------------------------ */
div.block05 ul {margin-bottom:30px;}
div.block05 ul li {width:290px;height:417px;box-sizing:border-box;}
div.block05 ul li p.name_bg {height:67px;width: 290px;background: url(../img/hotel_h_bg.png) no-repeat center top;text-align:center;padding-left:0;position: absolute;left: -2px;}
div.block05 ul li span.hotel_name{color:#fff;padding:15px;display: inline-block;}
div.block05 ul li p.hotel_inner {width: 94%;
    height: auto;
    border: solid 1px #9F2E9E;
    position: relative;
    top: 50px;
    margin-left: 11px;
    z-index: -1;
    padding: 0 8px 10px;
    box-sizing: border-box;
    min-height: 370px;}
div.block05 ul li p.hotel_inner img {display: block;margin: 15px auto 0;}
div.block05 ul li span.indent {display: block;}
/* ティザーページ用
------------------------------------------ */
div.note02 {border:double #FB561C;padding:15px;}

/*mv　出発日　出発地
------------------------------------------ */
.mv{
    position: relative;
}
.mv .mv_txt{
    position: absolute;
    width: 100%;
    top: 348px;
    left: 0;
    color: #fff;
    font-size: 18px;
    line-height: 1.4;
    font-weight: bold;
    text-align: center;
}
/* Go To キャンペーン用
------------------------------------------ */
.gotoLinks{
background: #ffe400;
margin: 30px auto 0;
padding: 30px 0;
text-align: center;
}
.gotoLinks > p{color: #333;}
.gotoLinks .linkAttention{
color: #cc0000;
position: relative;
/*margin-top: 30px;*/
font-size: 20px;
}
/*.gotoLinks .linkAttention:before,
.gotoLinks .linkAttention:after{
content: "▼";
display: inline-block;
color: #cc0000;
vertical-align: middle;
}*/
.gotoLinks .gotoLinkBtn{
width: 90%;
margin: 20px auto 0;
}
.gotoLinks .gotoLinkBtn a{
display: block;
padding: 10px !important;
font-size: 16px;
}
.gotoLinks .gotoLinkBtn a span{
position: relative;
background: none;
}

/* SP変換css
------------------------------------------ */

.block01 h1.main_title img, .block05 h1.main_title img,.block02 h1.main_title img{
    max-width: 300px;
    width: 70%;
}
div.block01 .outline {
    background-image: url(../img/block01_bg.jpg) ;
    background-size: cover;
}
.block01_h > .date > img{
    max-width: 300px;
    width: 55%;
    margin: 0 auto;
    display: block;
}
div.block01 .place{
    font-size: 1.8rem;
    line-height: 1.4;
    text-align: center;
}
div.block01 .outline ul.course{
    padding: 0 5%;
}
div.block01 .outline ul.course li{
    margin-top: 10px;
}
div.detail01, div.detail02{
    width: 100%;
    padding: 0 3%;
}
.detail01 h2 img,.detail02 h2 img{
    max-width: 300px;
    width: 70%;
}
div.detail01 table, div.detail02 table{    
    width: 100%;
    font-size:0.8em;
    margin-top: 15px;
}
div.detail01 table td.pd {
    padding: 6px 3px;
}
div.detail01 table td.alC{
    min-width: 3em;
}
div.detail01 table td.alC span.ft_s{
    display: inline-block;
    min-width: 6em;
}
.note p{
    font-size: 0.8em;
}
div.block03 p.indent, div.block05 ul li span.indent {
    padding-left: 0.8em;
    text-indent: -0.8em;
}
div.detail02 table td{min-width: 6em;}
p.note02{
    border: 6px double #FB561C;
    padding: 10px 3%;
    font-size: 1.4rem;
}
div.block04 {
    background-image: url(../img/block04_bg.jpg) ;
    background-size: cover;
}
div.block04 > h1{
    color: #7a4a33;
    text-align: center;
    background-color: #fff;
    padding: 10px 3%;
    border-top: 6px double #fdbe01;
    border-bottom: 6px double #fdbe01;
    width: 94%;
    margin: 0 auto;
}
div.block04 h2{
    width: 94%;
    margin: 0 auto;
    font-size: 1.4rem;
}
div.block04 table{width: 94%;margin: 0 auto 5px; font-size: 0.8em;}
div.block04 table td{min-width: 11em;}
div.pd3{width: 92%;margin: 0 auto;}
div.block05 ul li {
    width: 100%;
    height: auto;
    box-sizing: border-box;
}

div.block05 ul li span.hotel_name{
    padding: 8px;
}
div.block05 ul li p.hotel_inner {
    position: static;
    padding-top: 36px;
    margin: 0 3% 20px;
    min-height: 200px;
    font-size: 1.4rem;
}
span.ft_b {
    font-size: 1.8rem;
}
.gotoLinks .gotoLinkBtn a{
    width: 90vw;
    line-height: 48px;
    font-size: 100%;
    padding: 0 !important;
}

/*2021年　追加記入 */
div.block01 .outline ul.course {
    padding: 0 10%;
}
.caution{
    width: 92%;
    margin: 0 auto;
}
.caution p{
    color: #fff;
    font-size: 0.8em;
    line-height: 1.4;
    display: inline-block;
    text-align: justify;
text-justify: inter-ideograph;
}
.caution dt{
    color: #fff;
    font-size: 0.9em;
    line-height: 1.4;
    font-weight: bold;
}
.caution dd{
    color: #fff;
    font-size: 0.8em;
    line-height: 1.4;
}
div.detail01_new{
    font-size: 1.4rem;
}
div.detail01_new dt{
    font-size: 1.6rem;
}

.box_attention {
    border: 2px solid #cc0000;
    padding: 3%;
    margin: 30px auto 40px auto;
    width: 94%;
}
.txtList > li{
    font-size: 1.4rem;
    padding-left: 1.0em;
}
.txtList > li:before{
    left: 0.4em;
}
.entryWrapp {
    text-align: center;
}
.entryEnd {
    color: #cc0000;
    font-size: 5.4vw;
    font-weight: bold;
    padding: 20px 0 20px 2vw;
    border: 2px solid #cc0000;
    display: block;
    margin: 30px 0;
}
/*20211223追記*/
.red {
	color: #D90003;
}

.block05 .hotel_inner .red_btns {
	width: 100%;
	height: auto;
	padding-top: 8px;
	text-align: center;
}

.block05 .hotel_inner .red_btns li{
	width: 100%;
	text-align: center;
	margin: 0 auto;
    margin-bottom: 6px;
}

.block05 .hotel_inner .red_btns li a{
	width: auto;
	height: auto;
	padding: 6px 20px;
    background-color: #ed0000;
    font-size: 14px;
    margin: 0 auto;
    margin-bottom: 6px;
	color: #fff;
	display: block;
	border-radius: 5px;
}

.bn_chitose {
	padding-top: 20px;
	width: 96%;
    margin: 0 auto;
}

.block01_point .point_inner p{
	font-size: 15px;
	line-height: 1.4;
	position: relative;
	margin-bottom: 4%;
	color: #7C4A2F;
}

.p_01::before{
	content: "";
	width: 56px;
    height: 30px;
	background: url(../img/p_01.png) no-repeat;
	background-size: contain;
	display: inline-block;
	position: absolute;
	left: -60px;
	top: 3px;
}

.p_02::before{
	content: "";
	width: 56px;
    height: 30px;
	background: url(../img/p_02.png) no-repeat;
	background-size: contain;
	display: inline-block;
	position: absolute;
	left: -60px;
	top: 3px;	
}

.p_03::before{
	content: "";
	width: 56px;
    height: 30px;
	background: url(../img/p_03.png) no-repeat;
	background-size: contain;
	display: inline-block;
	position: absolute;
	left: -60px;
	top: 3px;
}
.p_04::before{
	content: "";
	width: 56px;
    height: 30px;
	background: url(../img/p_04.png) no-repeat;
	background-size: contain;
	display: inline-block;
	position: absolute;
	left: -60px;
	top: 3px;
}

.point_inner {
    padding-left: 60px;
}

.block01_point {
	padding: 0 3%;
}

.block01_point h1.main_title img {
	max-width: none;
	width: 100%;
}

.course_sp {
	padding: 0 2%;
    margin-top: 4%;
}

.point_link {
	color: #7C4A2F;
	font-size: 1.4rem;
}

.point_link a {
    color: #0E0096;
}

.mgt10 p {
    font-size: 18px;
    margin-bottom: 5px;
}

.mgt10 .mgt10_02 {
    font-size: 18px;
    background-color: #174287;
    padding: 4px;
    font-weight: bold;
	color: #ffed00;
	border: solid;
	position: relative;
}

.mgt10_01_wrapper p {
	font-size: 18px;
    border: solid; 
    padding: 4px;
    margin-bottom: 5px;
}

/*
.mgt10 .mgt10_02::before {
    content: "";
	width: 100%;
    height: auto;
	background: url(../img/RUNNET.png) no-repeat;
	background-size: contain;
	display: inline-block;
	position: absolute;
}
*/
	
.mgt10_02_wrapper {
    background-color: #174287;
    padding: 10px;
}

.block03_tr01 td {
    background-color: #ffd4d4;
}

.block05 h1.main_title img {
	max-width: none;
    width: 80%;
}

.caution .red02 {
	color: #D90003;
}

.mgt15 a {
    color: #FFFFFF;
}

.point_inner span {
	font-size: 17px;
	color: #008f41;
	font-weight: bold;
	background: linear-gradient(transparent 60%, #ffee7e 60%);
}

.flex {
	display: flex;
	width: 100%;
}

.flex_01 {
	width: 40%;
}

.flex_02 {
	width: 60%;
}

.block01_point {
	background-color: #fdfcd0;
    padding: 5% 4%;
    border: 2px solid #fbca02;
	width: 96%;
    margin: auto;
	margin-top: 20px;
}

.block01_point h1.main_title img {
	margin-top: auto;
}

.mgt10_01_wrapper {
    background-color: rgb(3 101 185 / 72%);
    padding: 10px;
}

.block01_point .point_inner .point_link{
	font-size: 14px;
	background: none;
	color: #7C4A2F;
	font-weight: normal;
	text-align: right;
	line-height: 1.8;
}

.block01_point .point_inner .point_link a {
    color: #ffffff;
    background-color: #eb0000;
	padding: 3%;
}

.flex_sb {
	display: flex;
	justify-content: space-between;
	width: 100%;
}

.sb {
	width: 60%;
}

.black {
	color: #333;
}

.p_02 {
	position: relative;
	z-index: 10;
}
.block05{
    padding: 0 3%;
}

img.point_img_item {
    width: 100%;
}
.caption{
    text-align: right;
    font-size: 12px !important;
}
.hotel_pict_list{
    font-size: 1.4rem;
    border: #cccccc solid 1px;
    padding: 5px;
    margin-top: 20px;
    text-align: center;
}
.hotel_list{
    margin-top: 20px;
}
.hotel_area_name{
    font-size: 1.8rem;
    background: #9F2E9E;
    color: #fff;
    padding: 8px;
    text-align: center;
}
.name_bg{
    background-color: #4fd512;
    width: 100%;
    margin: 0 auto;
    height: auto;
    text-align: center;
    padding: 10px 0;
}
.hotel_name{
    color: #ffffff;
    font-size: 1.8rem;
    line-height: 1;
}
.hotel_pict{
    background-color: #fff;
    font-size: 1.4rem;
    color: #333333;
    display: inline-block;
    padding: 3px 5px;
    margin-left: 10px;
    border-radius: 2px;
}
.fc_pict{
    color: #cc0000;
}

.hotel_inner {
    width: 99%;
    height: auto;
    border-bottom: solid 1px #9F2E9E;
    border-left: solid 1px #9F2E9E;
    border-right: solid 1px #9F2E9E;
    top: 50px;
    margin: 0 auto;
    padding: 10px 8px;
    box-sizing: border-box;
}
.special{
    color: #cc0000;
    margin-top: 10px;
}

.option_wrap {
    background-color: #f1eae5;
    padding: 3%;
}

.option_head {
    color: #fff;
    background-color: #cc0000;
    margin-bottom: 15px;
    padding: 5px;
    font-size: 18px;
}
.acodBlock > .heading {
    min-height: 48px;
    padding: 13px 30px 13px 10px;
    background-color: #fff;
    border: 1px solid #dedede;
    position: relative;
}
.acodBlock > .content {
    padding: 10px 0 10px;
    background-color: #fff;
    border: 1px solid #dedede;
}

/* 20230519追記 */
.announce_txt {
    color: #D90003;
    font-size: 24px;
    font-weight: bold;
    border: solid #D90003 3px;
    text-align: center;
    padding: 10px;
    width: 96%;
    margin: 0px auto;
}

.announce_txt,.second {
    margin-top: 20px;
}