@charset "utf-8";

/* setting
-------------------------------------*/
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, button, textarea, p, blockquote, th, td, a, section, nav{
	box-sizing:border-box;
}
body{
	overflow-x:hidden;
	font-size: 90%;
	line-height: 1.6;
	color:#333;
	font-family: YuGothic, '游ゴシック', sans-serif;
}
img{
	max-width: 100%;
	height:auto;
	vertical-align:bottom;
}
.clear:after{
	content:" ";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;
}
a:link,
a:visited,
a:hover,
a:active{
	color:darkblue;
}
a:hover{
	text-decoration:none;
}
a.hover:hover{
	opacity: .8;
}
/* common
-------------------------------------*/
#wraps{
	overflow:hidden;
}
/*page-top*/
#page-top .fa {
	display: inline-block;
	padding-top: 20%;
}
#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
}
#page-top a {
	background: #872439;
	color: #fff;
	display: inline-block;
	width: 60px;
	height: 60px;
	text-align: center;
	border-radius: 50%
}
.pc {
	display: none;
}
.floatR{
	float:right;
}
.floatL{
	float:left;
}
.small{
	font-size:86%;
}
.smaller{
	font-size:75%;
}
.bold{
	font-weight: bold;
}
.red{
	color:red;
}
.center{
	text-align: center;
}
.fixed{
	position: fixed;
	top:0;
}
.btn{
	clear:both;
	text-align: center;
	padding: 2em 0 0;
}
.btn a{
	display:block;
	border-radius:5px;
	padding:1em 0;
	background-color:#872439;
    border: 1px solid #872439;
	color:#fff;
	margin:0 auto;
	box-shadow: 0 3px 0 0 rgba(0,0,0,0.2);
}
.wh_block{
    display: inline-block;
    padding: 0 5px;
    background: rgb(255 255 255 / 70%);
}
/*section*/
section {
	padding: 5em 1.2em 3.5em;
}
#news section{
	padding-top: 0;
}
.unit{
	background: #f5f5f5;
}
.unit:nth-child(even){
	background: #fff;
}

/*見出し*/
.heading{
	line-height: 1.4;
	color: #333;
	text-align: center;
	margin: 0 0 3em;
}
.heading > span.ruby{
	font-size: 300%;
	font-family: 'Playfair Display SC', serif;
}
#photogarally .heading > span.ruby{
	font-size: 285%;
}
h2.heading:first-letter{
	color: #872439;
}
.lead{
	margin: 0 0 1em;
	font-size: 115%;
	font-weight: bold;
	line-height: 1.4;
}
.sub_lead{
	margin: 0 0 .8em;
    font-size: 110%;
    font-weight: bold;
    border-left: 4px solid;
    padding: 0 0 0 .5em;
    line-height: 1.2;
}
.unit p.desc{
	margin: 0 0 .8em;
}
.strong{
    font-size: 125%;
	font-weight: bold;
}

/* header_sp
-------------------------------------*/
.header_sp{
    padding: .8em 1em .3em;
	background: #872439;
	z-index: 1;
	box-shadow: 0px 4px 3px -3px rgba(150,150,150,1);
    width: 93%
}
.header_sp .sp_logo,.header_sp .sp_ticket_btn{
	float:left;
}
.header_sp .sp_menu_btn{
	float:right;
	font-size: 80%;
	color: #fff;
}
.header_sp .sp_logo{
    width: 30%;
    margin: 0 1em 0 0;
}
.header_sp .sp_ticket_btn{
    letter-spacing: -.1em;
}
.header_sp .sp_ticket_btn a{
    border: 1px #fff solid;
    border-radius: 4px;
    padding: .3em .5em;
	display: block;
	color: #872439;
	background: #fff;
}
.header_sp .hamburger{
	background: url(../images/hamburger.png) no-repeat center center;
	background-size: 30px 30px;
	display: block;
    height: 24px;
}

/* nav_sp
-------------------------------------*/
.nav_sp ul{
	display: none;
	font-size: 120%;
	width:85%;
	height:200vh;
	position:fixed;
	top: 0;
	z-index: 999;
	overflow: auto;
	background: #872439;
}
.nav_sp ul li a{
	display:block;
	border-bottom:1px dotted #fff;
	padding:5%;
	color: #fff;
	font-weight: bold;
}
.nav_sp ul li a:before {
	font-family: FontAwesome;
    padding: 0 0 0 .5em;
    content: "\f105\0020";
}
.nav_sp ul li.cs a{
    color: gray;
}

/* dummy */
.dummy{
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	background-color:rgba(0,0,0,.5);
	cursor: pointer;
	z-index: 100;
}
.dummy:after{
	display:inline-block;
	width:32px;
	height:32px;
	font-family: FontAwesome;
	content:"\f057";
	top:1%;
	right:3%;
	position: absolute;
	cursor: pointer;
	color: #fff;
	z-index: 2;
	font-size: 200%;
}

/* mainvisual
-------------------------------------*/
.mainvisual .thumbs img{
    width: 100%;
}
.mainvisual h1,.mainvisual h2{
	position: relative;
}
.mainvisual h2 img{
    position: absolute;
	top: 0;
    left: 0;
    width: 16.7vw;
}
.mainvisual h1 img{
    position: absolute;
    top: 91vw;
    width: 106vw;
}

/* about
-------------------------------------*/
#about {
    background: #959a41 url(../images/sp_bg_patan_01.jpg) center top no-repeat;
	background-size:contain;
}
#about .lead .dash{
    letter-spacing: -0.05em;
}
#about .manager{
    display: table;
	float: right
}
#about .manager .desc{
    display: table-cell;
    vertical-align: middle;
    padding: 0 .5em 0 0;
	text-align: right;
	/*text-shadow: 2px 2px 2px rgba(255,255,255,1);*/
}
#about .manager .desc em{
    font-size: 120%;
    font-weight: bold;
}
#about .manager .thumbs{
    text-align: right;
    /*display: table-cell;*/
}
#about .manager .thumbs img{
    width: 85%;
}
#about section#concept{
	padding: 3em 1.2em 0;
}

/* summary
-------------------------------------*/
#about #summary section{
	padding: 5em 1.2em 6em;
}
#about #summary .heading{
    margin: 0 0 1.5em;
}
#about #summary .heading .ruby{
    font-size: 280%;
}
#about #summary .summary_inner{
	background: rgba(255,255,255,0.8);
    padding: 2em .8em;
}
#about #summary .list_summary{
	line-height: 1.3;
	width: 100%;
}
#about #summary .list_summary tr{
	border-bottom: 1px solid #aaa;
}
#about #summary .list_summary th,.list_summary td{
	padding: .8em .5em .5em;
    vertical-align: middle;
}

/* history
-------------------------------------*/
#history{
    background-image: url(../images/bg_patan_03.png), url(../images/bg_patan_03.gif);
    background-position: 180% 1%, left top;
    background-repeat: no-repeat, repeat;
    background-size: 75%, 30%;
	color: #fff;
	padding: .5em;
}
#history .history_inner{
    border: 1px solid #fff;
}
#history .heading{
	color: #fff;
}
#history .winner{
	text-align: center;
	margin: 3.5em 0 0;
}
#history .winner .thumbs{
	margin: 0 0 1em;
}
#history .winner .thumbs img{
	width: 80%;
}
#history .winner .desc{
	text-align: left;
}
#history .winners{
	margin: 3.5em 0 0;
}
#history .winners li{
	margin: 2em 0 0;
}
#history .winners li:first-child{
	margin: 0;
}
#history .winners .floatL{
	width: 34%;
}
#history .winners .thumbs{
	margin: 0 .5em 0 0;
}
#history .winners .floatR{
	width: 62%;
}
#history .winner .name,#history .winners .name{
	font-weight: bold;
	font-size: 120%;
	margin: 0 0 .3em;
}
#history .winner .name:before,#history .winners .name:before{
	font-family: FontAwesome;
	content:"\f091\0020";
	color:#d9002e;
}
#history .winner .desc a,#history .winners .desc a{
    font-size: 80%;
	color: lightskyblue;
	text-decoration: underline;
	white-space: nowrap;
}
#history .winner .desc a:before,#history .winners .desc a:before{
	font-family: FontAwesome;
    padding: 0 0 0 2em;
    content: "\f105\0020";
}

/* way-to-open
-------------------------------------*/
.bk_JGA{
    background: #8fae4b url("../images/sp_bg_patan_03.jpg") center bottom no-repeat;
	background-size:100%;
	padding: 10% 5%;
}
.bk_JGA > section{
	background-color: rgba(255, 255, 255, 0.4);
}
#way-to-open .em{
	font-size: 180%;
	font-family: serif;
	margin: 0 0 1em;
    text-align: center;
    font-weight: bold;
}
#way-to-open .desc_02{
    margin: 0 0 8%;
}
#way-to-open .list_a{
	padding-left: 2em;
	text-indent: -2em;
}

#way-to-open .qualify{
	padding: 1em .8em;
    border: 3px solid #ebd9ba;
}
#way-to-open .qualify .lead{
    text-align: center;
}
#way-to-open .qualify .lead span{
    border-bottom: #ebd9ba 3px solid;
    display: inline-block;
}
#way-to-open .qualify .list_c li{
    margin:1% 0 0;
}
#way-to-open .qualify .list_c li:first-child{
    margin:0;
}

#way-to-open .qualify .desc{
    margin: 1em 0 0;
}

#way-to-open .host{
    margin:12% 0 0;
}
#way-to-open .host .list_b{
	display: flex;
    flex-wrap: wrap;
}
#way-to-open .host .list_b li{
    margin: 10% 3% 0 0;
    width: 48%;
    line-height: 1.4;
}
#way-to-open .host .list_b li:nth-child(even){
    margin: 10% 0 0 ;
}
#way-to-open .host .list_b li:nth-child(1){
    margin: 0 3% 0 0;
}
#way-to-open .host .list_b li:nth-child(2){
    margin: 0;
}
#way-to-open .host .list_b li img{
	margin: 0 0 .8em;
}
#way-to-open .flex_block{
	margin-bottom: 20px;
}
#way-to-open .flex_block .flex_box{
	width: 100%;
    border-radius: 10px;
    padding: 20px;
}
#way-to-open .flex_block .flex_box.no1{
	border: 1px solid #333;
	background: #e6ffe8;
	margin-bottom: 20px;
}
#way-to-open .flex_block .flex_box.no2{
	border: 1px solid #e40382;
	background: #ffdcf0;
}
#way-to-open .flex_block .flex_box.no1 .route{
	display: inline-block;
	background: #333;
	color: #fff;
	padding: 5px 10px;    
	margin-bottom: 10px;
    line-height: 1;
}
#way-to-open .flex_block .flex_box.no2 .route{
	display: inline-block;
	background: #e40382;
	color: #fff;
	padding: 5px 10px;    
	margin-bottom: 10px;
    line-height: 1;
}
#way-to-open .flex_block .flex_box.no1 .lead span{
	border-bottom: #333 3px solid;
}
#way-to-open .flex_block .flex_box.no2 .lead span{ 
	border-bottom: #e40382 3px solid;
}
#way-to-open .flex_block .text{ 
	padding-bottom: 30px;
}
#way-to-open .flex_block .text_sub{ 
	padding: 1.3em;
	background: #fff;
}
#way-to-open .flex_block .text_sub ul{ 
	padding: 0 0 0 1.3em;
}
#way-to-open .flex_block .text_sub ul li{ 
    list-style: disc;    
	line-height: 1.2;
	padding: 5px 0;
}
#way-to-open2 .em{
	font-size: 180%;
	font-family: serif;
	margin: 0 0 1em;
    text-align: center;
    font-weight: bold;
}
#way-to-open2 .desc_02{
    margin: 0 0 8%;
}
#way-to-open2 .list_a{
	padding-left: 2em;
	text-indent: -2em;
}

#way-to-open2 .qualify{
	padding: 1em .8em;
    border: 3px solid #ebd9ba;
}
#way-to-open2 .qualify .lead{
    text-align: center;
}
#way-to-open2 .qualify .lead span{
    border-bottom: #ebd9ba 3px solid;
    display: inline-block;
}
#way-to-open2 .qualify .list_c li{
    margin:1% 0 0;
}
#way-to-open2 .qualify .list_c li:first-child{
    margin:0;
}
#way-to-open2 .qualify .desc{
    margin: 1em 0 0;
}

#way-to-open2 .host{
    margin:12% 0 0;
}

#way-to-open2 .host small{
    padding: 0 0 1.8em;
    display: block;
    font-size: 95%;
}
#way-to-open2 .host .list_b{
	display: flex;
    flex-wrap: wrap;
}
#way-to-open2 .host .list_b li{
    margin: 10% 3% 0 0;
    width: 48%;
    line-height: 1.4;
}
#way-to-open2 .host .list_b li:nth-child(even){
    margin: 10% 0 0 ;
}
#way-to-open2 .host .list_b li:nth-child(1){
    margin: 0 3% 0 0;
}
#way-to-open2 .host .list_b li:nth-child(2){
    margin: 0;
}
#way-to-open2 .host .list_b li img{
	margin: 0 0 .8em;
}
#way-to-open2 .flex_block{
	margin-bottom: 20px;
}
#way-to-open2 .flex_block .flex_box{
	width: 100%;
    border-radius: 10px;
    padding: 20px;
}
#way-to-open2 .flex_block .flex_box.no1{
	border: 1px solid #333;
	background: #e6ffe8;
	margin-bottom: 20px;
}
#way-to-open2 .flex_block .flex_box.no2{
	border: 1px solid #e40382;
	background: #ffdcf0;
}
#way-to-open2 .flex_block .flex_box.no1 .route{
	display: inline-block;
	background: #333;
	color: #fff;
	padding: 5px 10px;    
	margin-bottom: 10px;
    line-height: 1;
}
#way-to-open2 .flex_block .flex_box.no2 .route{
	display: inline-block;
	background: #e40382;
	color: #fff;
	padding: 5px 10px;    
	margin-bottom: 10px;
    line-height: 1;
}
#way-to-open2 .flex_block .flex_box.no1 .lead span{
	border-bottom: #333 3px solid;
}
#way-to-open2 .flex_block .flex_box.no2 .lead span{ 
	border-bottom: #e40382 3px solid;
}
#way-to-open2 .flex_block .text{ 
	padding-bottom: 30px;
}
#way-to-open2 .flex_block .text_sub{ 
	padding: 1.3em;
	background: #fff;
}
#way-to-open2 .flex_block .text_sub ul{ 
	padding: 0 0 0 1.3em;
}
#way-to-open2 .flex_block .text_sub ul li{ 
    list-style: disc;    
	line-height: 1.2;
	padding: 5px 0;
}

/* news
-------------------------------------*/
#news .volunteer .volunteer_inner{
    margin: 8% 0 0;
}
#news .volunteer .desc dt{
    margin: 0 0 .3em;
    border-bottom: 1px solid #ddd;
    font-weight: bold;
}
#news .volunteer .desc dd{
    margin: 0 0 1.2em;
}
#news .volunteer .desc dd:last-child{
    margin: 0;
}
#news .volunteer table{
	width:100%;
}
#news .volunteer table th,
#news .volunteer table td{
    border: 1px solid #dadde1;
    padding: .8em;
}
#news .volunteer table th{
    background: #dadde1;
    width: 30%;
    border-bottom: 1px solid #fff;
    font-weight: bold;
}

#news .item{
    margin: 25% 0 0;
}
#news .item .item_a{
    margin: 12% 0 0;
}
#news .item .item_a li dl,#news .item .item_b li dl{
    margin: .8em 0 0;
}
#news .item .item_a li dl dt,#news .item .item_b li dl dt{
    font-weight: bold;
    margin: 0 0 .3em;
    line-height: 1.3;
}
#news .item .item_a li dl dd:nth-child(n+2),#news .item .item_b li dl dd:nth-child(n+2){
    margin: 0 0 .5em;
}
#news .item .item_a li dl dd:last-child,#news .item .item_b li dl dd:last-child{
    margin: 0;
}
#news .item .item_b{
	display: flex;
    flex-wrap: wrap;
    margin: 12% 0 0;
}
#news .item .item_b li{
    margin: 10% 3% 0 0;
    width: 48%;
}
#news .item .item_b li:nth-child(even){
    margin: 10% 0 0 ;
}
#news .item .item_b li:nth-child(1){
    margin: 0 3% 0 0;
}
#news .item .item_b li:nth-child(2){
    margin: 0;
}

/* sponsor
-------------------------------------*/
#sponsor{
    background:#d6e9f9 url(../images/sp_bg_patan_02_b.jpg) no-repeat center bottom;
    background-size: 100%;
}
#sponsor section{
	padding: 5em 1.2em 12em;
}
#sponsor .sponsor_list{
    margin: 3em 0 0;
	background: #fff;
    padding: 2em 1.2em;
}
#sponsor .sponsor_list dt,#sponsor .sponsor_list h4{
	font-size: 120%;
	font-weight: bold;
	margin: 0 0 .8em;
	text-align: center;
}
#sponsor .sponsor_list dd{
    margin: 3em 0 0;
}
#sponsor .sponsor_list dd.diamond{
    margin: 0;
}
#sponsor .sponsor_list dd ul li{
    margin: 2% 2% 0 0;
    background: #fff;
    padding: .3em;
    width: 49%;
    float: left;
    border: 1px solid #ccc;
}
#sponsor .sponsor_list dd ul li:nth-child(even){
    margin: 2% 0 0 0;
}
#sponsor .sponsor_list dd ul li:nth-child(1){
    margin: 0 2% 0 0;
}
#sponsor .sponsor_list dd ul li:nth-child(2){
    margin: 0;
}

/*access*/
#access .place{
    text-align: center;
    margin: 0 0 1.5em;
}
#access .place em{
    font-size: 130%;
	font-weight: bold;
}
#access .map{
    margin: 0 -1.2em;
}
#access .how_to_access{
	margin: 1.5em 0 0;
}
#access .how_to_access dt{
    font-weight: bold;
	margin: 0 0 .5em;
}

/*ticket*/
#ticket .btn {
    padding: 0;
    font-size: 110%;
}
#ticket .ticket_about table{
	width:100%;
}
#ticket .ticket_about table th,
#ticket .ticket_about table td{
    border: 1px solid #dadde1;
    padding: .8em;
    background: #fff;
    text-align: left;
}
#ticket .ticket_about table th{
	background: #872439;
	width:40%;
    color: #fff;
}
#ticket .ticket_about .desc{
	margin:1em 0 0;
}
#ticket .ticket_list > li{
    margin: 3em 0 0;
	background: #fff;
    padding: 2em 1.2em;
}
#ticket .ticket_list .summary > li{
    margin: 0 0 8%;
    padding: 0 0 8%;
    border-bottom: 1px solid #ddd;
}
#ticket .ticket_list .summary > li:last-child{
    margin: 0;
    padding: 0;
    border: none;
}
#ticket .ticket_list .summary > li dl dt{
    font-weight: bold;
}
#ticket .ticket_list .summary > li .address:before{
    font-family: FontAwesome;
    content: "\f041\0020";
}
#ticket .ticket_list .summary > li .tel:before{
    font-family: FontAwesome;
    content: "\f095\0020";
}
#ticket .ticket_list .summary > li .home:before{
    font-family: FontAwesome;
    content: "\f015\0020";
}
#ticket .ticket_list ._04 .summary > li .link a:before{
    font-family: FontAwesome;
    content: "\f105\0020";
}
#ticket .ticket_list .summary > li .link a{
    font-weight: bold;
    color: #147fc1;
    text-decoration: underline;
}

#ticket .ticket_list .buy_note{
	position: relative;
    padding: 0;
    background: none;
    text-align: center;
}
#ticket .ticket_list .buy_note .desc{
    color: white;
    display: inline-block;
    background: #333;
    padding: .5em 1.5em;
    margin: 0;
    width: 80%;
}
#ticket .ticket_list .buy_note:after {
    position: absolute;
    content: '';
    top: 100%;
    left: 48%;
    border: 8px solid transparent;
    border-top: 6px solid #333;
}

#ticket .ticket_list .buy_b .summary > li dl dt{
    margin:0 0 5%;
}

#ticket .ticket_list .buy_c .summary > li dl dt{
    margin:0 0 2%;
    text-align: center;
}
#ticket .ticket_list .buy_c .summary > li dl dt img{
	width: 50%;
}
#ticket .ticket_cancel dl{
    margin: 8% 0 0;
}
#ticket .ticket_cancel dl dt{
    margin: 8% 0 0;
    font-weight: bold;
}
#ticket .ticket_cancel dl dt:first-child{
    margin: 0;
}
#ticket .ticket_cancel dl dd a{
    font-weight: bold;
    color: #147fc1;
    text-decoration: underline;
}
#ticket .ticket_cancel .desc{
    margin: 1em 0 0;
}



/*logo*/
#logo .center_tit{
    margin: 0 0 1em;
    font-size: 115%;
    font-weight: bold;
    line-height: 1.4;	
	text-align: center;
}
#logo .logo_about{
	margin: 0 0 60px;
}
#logo .logo_download .logo_dld_link{
    display: block;
    border-radius: 5px;
    padding: 1em 0;
    background-color: #872439;
    border: 1px solid #872439;
    color: #fff;
    margin: 1.8em auto 0;
    box-shadow: 0 3px 0 0 rgba(0, 0, 0, 0.2);
    max-width: 400px;
	width: 100%;
    text-align: center;	
}
#logo .logo_download .logo_dld_link:hover{
    background-color: #fff;
    border: 1px solid #872439;
    color: #872439;
}


/*broadcast*/
#broadcast .broadcast_list{
    background: #fff;
    padding: 2em 1.2em;
}
#broadcast .broadcast_list .summary li{
    margin: 0 0 8%;
    padding: 0 0 8%;
    border-bottom: 1px solid #ddd;
}
#broadcast .broadcast_list .summary li:last-child {
    margin: 0;
    padding: 0;
    border: none;
}

/*photogarally*/
#photogarally .gallary ul{
	display: flex;
    flex-wrap: wrap;
}
#photogarally .gallary ul li{
	margin: 3% 3% 0 0;
    width: 48%;
}
#photogarally .gallary ul li:nth-child(even){
    margin: 3% 0 0;
}
#photogarally .gallary ul li:nth-child(-n+2){
    margin: 0 3% 0 0;
}
#photogarally .gallary ul li:nth-child(2){
    margin: 0;
}

/*sns*/
.sns_list{
	display: table;
	margin: 0 auto;
}
.sns_list li{
	display: table-cell;
	padding: .5em .8em 0 0;
	vertical-align: middle;
}
/*
.sns_list li.fb-like{
	padding: 0 .8em .2em 0;
}
*/
.sns_list li:last-child{
	padding: .5em 0 0;
}

/*footer*/
footer{
	background: #872439;
    padding: 2em;
}
footer .logo{
	margin: 0 0 .3em;
	text-align: center;
}
footer .logo img{
    width: 40%;
}
footer .credit{
	text-align: center;
	font-size: 86%;
	line-height: 1.2;
	color: #fff;
	margin: 1em 0 0;
}

/*----------------------------------------------------------------
タブレット用（画面サイズ768px以上～）
----------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
/*common*/
body{
	line-height: 1.8;
}
.sp { display: none;}
.pc {display: block;}

/* page-top */
#page-top{
    font-size: 75%;
}
#page-top .fa{
	padding-top: .8em;
}

/* btn */
.btn a{
	width: 70%;
}
.btn a:hover{
	border:1px solid #872439;
	background-color:#fff;
	transition:0.25s ease-in-out;
	color:#872439;
	font-weight: bold;
}
.pc_floatL{
	float:left;
}
.pc_floatR{
	float:right;
}
.pc_center{
	text-align: center;
}
section{
	padding: 4em;
}
.unit p.desc{
	margin: 0 0 1.5em;
}

/*sns_list*/
/*
.sns_list li.fb-like {
    padding: 0 .8em .4em 0;
}
*/

/* mainvisual
-------------------------------------*/
.mainvisual{
	background: transparent url(../images/main-bg_winner.jpg) top center no-repeat;
	background-size: cover;
	width: 100%;
	height: 50vw;
}
.mainvisual h2 img{
    width: 8.5vw;
    left: 9.5vw;
}
.mainvisual h1 img{
    top: 7.2vw;
    right: 12.3vw;
    width: 44vw;
}
.mainvisual .thumbs img{
    top: 0;
    right: 42.2vw;
    width: 40.3vw;
    position: absolute;
}
.heading{
    margin: 0 0 4em;
}
.heading > span.ruby,
#photogarally .heading > span.ruby{
	font-size: 350%;
}
.lead{
    font-size: 145%;
}
.sub_lead {
    margin: 0 0 1.2em;
    font-size: 120%;
    padding: 0 0 0 .8em;

}
.strong{
    font-size: 150%;
}

/* header_pc
-------------------------------------*/
.header_pc{
	position: absolute;
	top: 0;
	right: 5%;
}
.header_pc .pc_logo{
    display:none;
}
.header_pc .sns_list{
	float: left;
}

/* nav_pc
-------------------------------------*/
.nav_pc ul{
    background-color: #872439;
	display: flex;
    align-items: center;
    justify-content: center;
    width: 100vw;
	box-shadow: 0px 4px 3px -3px rgba(150,150,150,1);
	z-index: 1;
}
.nav_pc ul li{
	background-image: url("../images/bg_line_1.gif");
    background-position: right;
    background-repeat: no-repeat;        
	width: 100%;
    max-width: 140px;
}
.nav_pc ul li:last-child{
	background-image:none;
}
.nav_pc ul li a{
    display: block;
    border-top:5px solid #872439;
    border-bottom:5px solid #872439;
	transition:0.25s ease-in-out;
}
.nav_pc ul li a:hover{
    border-bottom:5px solid #c2b199;
}
.nav_pc ul li a:hover img{
    opacity: .8;
}

/* about
-------------------------------------*/
#about {
    background: #959a41 url(../images/bg_patan_01.jpg) center top no-repeat;
	background-size:cover;
}
#about #summary .summary_inner{
	padding: 3em;
}
#about .manager{
    padding: 2em 0 0;
}
#about .list_summary{
	margin: 0 auto;
	font-weight: bold;
}
#about .list_summary th, .list_summary td {
    padding: 1em;
}
#about #summary{
	background-size:100%;
}
#about .manager .thumbs img{
    width: 75%;
}
#about section#concept{
	padding: 4em 4em 0;
}

/* summary
-------------------------------------*/
#about #summary section{
	padding: 4em;
}
#summary .heading{
    margin: 0 0 2.5em;
}
#about #summary .heading .ruby{
    font-size: 350%;
}

/* history
-------------------------------------*/
#history{
	background-position: 95% 5%, left top;
	background-size: 50%, 15%;
    padding: .8em 0
}
#history .history_inner{
    border-width: 1px 0;
}
#history .winner{
	text-align: left;
}
#history .winner .thumbs img{
	width: 100%;
}
#history .winner .pc_floatL {
    width: 40%;
}
#history .pc_floatR{
    width: 56%;
}
#history .winners{
    display: flex;
    flex-wrap: wrap;
}
#history .winners li {
    margin: 5% 3% 0 0;
    width: 48%;
}
#history .winners li:nth-child(1){
    margin: 0 3% 0 0;
}
#history .winners li:nth-child(even){
    margin: 5% 0 0;
}
#history .winners li:nth-child(2){
    margin: 0;
}
#history .winners .floatL {
    width: 40%;
}
#history .winners .floatR {
    width: 55%;
}
/*画像hover効果*/
#history .winner .thumbs,
#history .winners .thumbs{
	overflow: hidden;
	background: #000;
}
#history .winner .thumbs img,
#history .winners .thumbs img {
	display: block;
	transition-duration: 0.3s;
}
#history .winner .thumbs img:hover,
#history .winners .thumbs img:hover {
	transform: scale(1.1);
	transition-duration: 0.3s;
	opacity: 0.6;
}

/* way-to-open
-------------------------------------*/
.bk_JGA{
    background: #8fae4b url("../images/bg_patan_03.jpg") center top no-repeat;
	background-size:cover;
	background-position: bottom;
	padding: 10% 0;
}
#way-to-open .em{
	font-size: 230%;
}
#way-to-open .desc_02{
    margin: 0 0 5%;
}
#way-to-open .qualify {
    padding: 1em 2em;
}
#way-to-open .qualify .qualify_inner{
    display: flex;
    flex-wrap: wrap;
}
#way-to-open .qualify .qualify_inner .list_c{
    width: 49.5%;
    margin: 0 1% 0 0;
}
#way-to-open .qualify .qualify_inner .list_c:nth-child(2){
    margin: 0;
}
#way-to-open .host{
    margin:8% 0 0;
}
#way-to-open .host .list_b li{
    margin: 5% 3% 0 0;
    width: 22.5%;
}
#way-to-open .host .list_b li:nth-child(even){
    margin: 5% 3% 0 0;
}
#way-to-open .host .list_b li:nth-child(-n+3){
    margin: 0 3% 0 0;
}
#way-to-open .host .list_b li:nth-child(4n){
    margin: 5% 0 0 0;
}
#way-to-open .host .list_b li:nth-child(4){
    margin: 0;
}
#way-to-open .flex_block{
	display: flex;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 0;
}
#way-to-open .flex_block .flex_box{
	width: 50%;
}
#way-to-open .flex_block .flex_box.no1{
	margin-bottom: 0;
}
#way-to-open2 .em{
	font-size: 230%;
}
#way-to-open2 .desc_02{
    margin: 0 0 5%;
}
#way-to-open2 .qualify {
    padding: 1em 2em;
}
#way-to-open2 .qualify .qualify_inner{
    display: flex;
    flex-wrap: wrap;
}
#way-to-open2 .qualify .qualify_inner .list_c{
    width: 49.5%;
    margin: 0 1% 0 0;
}
#way-to-open2 .qualify .qualify_inner .list_c:nth-child(2){
    margin: 0;
}
#way-to-open2 .host{
    margin:8% 0 0;
}
#way-to-open2 .host .list_b li{
    margin: 5% 3% 0 0;
    width: 22.5%;
}
#way-to-open2 .host .list_b li:nth-child(even){
    margin: 5% 3% 0 0;
}
#way-to-open2 .host .list_b li:nth-child(-n+3){
    margin: 0 3% 0 0;
}
#way-to-open2 .host .list_b li:nth-child(4n){
    margin: 5% 0 0 0;
}
#way-to-open2 .host .list_b li:nth-child(4){
    margin: 0;
}
#way-to-open2 .flex_block{
	display: flex;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 0;
}
#way-to-open2 .flex_block .flex_box{
	width: 50%;
}
#way-to-open2 .flex_block .flex_box.no1{
	margin-bottom: 0;
}

/* news
-------------------------------------*/
#news .volunteer{
    padding: 0 6%;
}
#news .volunteer .desc dt {
    margin: 0 0 .5em;
}
#news .volunteer .desc dd {
    margin: 0 0 1.8em;
}
#news .volunteer table th {
    width: 20%;
}

#news .item {
    margin: 12% 0 0;
}
#news .item .item_a,#news .item .item_b{
    margin: 8% 0 0;
}
#news .item .item_a li dl,#news .item .item_b li dl{
    margin: 1em 0 0;
}
#news .item .item_a li dl dt,#news .item .item_b li dl dt{
    font-size: 105%;
}
#news .item .item_b li{
    width: 31%;
}
#news .item .item_b li,#news .item .item_b li:nth-child(even){
    margin: 5% 3% 0 0;
}
#news .item .item_b li:nth-child(3n){
    margin: 5% 0 0 ;
}
#news .item .item_b li:nth-child(-n+2){
    margin: 0 3% 0 0;
}
#news .item .item_b li:nth-child(3){
    margin: 0;
}

/* sponsor
-------------------------------------*/
#sponsor{
    background:#d6e9f9 url(../images/bg_patan_02_b.jpg) no-repeat center bottom;
    background-size: 100%;
}
#sponsor section{
	padding: 4em 4em 10em;
}
#sponsor .sponsor_list{
    padding: 4em 3em;
}
#sponsor .sponsor_list dd {
    margin: 4.5em 0 0;
}
#sponsor .sponsor_list dd ul li{
    margin: 1% 1% 0 0;
    width: 32.3%;
    text-align: center;
    padding: 0 1em;
}
#sponsor .sponsor_list dd ul li:nth-child(even) {
    margin: 1% 1% 0 0;
}
#sponsor sponsor_list dd ul li:nth-child(3n){
    margin: 1% 0 0;
}
#sponsor .sponsor_list dd ul li:nth-child(-n+2){
    margin: 0 1% 0 0;
}
#sponsor .sponsor_list dd ul li:nth-child(3){
    margin: 0;
}
/*access*/
#access .how_to_access.pc_floatL,#access .how_to_access.pc_floatR{
	width: 48%;
}
#access .map {
    margin: 0 -10em;
}

	
/*logo*/
#logo .center_tit{
    font-size: 145%;
}	
	
/*ticket*/
#ticket .btn a{
    width: 100%;
}
#ticket .ticket_about table th,
#ticket .ticket_about table td{
    padding: 1.5em 1.5em 1.5em 8em;
}
#ticket .ticket_about table th{
	width:30%;
	padding: 1.5em 1.5em 1.5em 5.5em;
}
#ticket .ticket_list > li {
    padding: 3em;
}
#ticket .ticket_list .summary{
    display: flex;
    flex-wrap: wrap;
}
#ticket .ticket_list .summary > li,
#ticket .ticket_list .summary > li:last-child{
    padding: 4%;
    margin: 0;
    border: 1px solid #ddd;
    width: 50%;
    border-width: 0 1px 1px 0;
}
#ticket .ticket_list .summary > li:nth-child(even){
    border-width: 0 0 1px 0;
}
#ticket .ticket_list .summary > li:nth-last-child(-n+2){
    border-bottom: none;
}
#ticket .ticket_list .buy_note .desc{
    width: inherit;
}
#ticket .ticket_cancel dl{
    margin: 4% 0 0;
}
#ticket .ticket_cancel dl dt{
    margin: 4% 0 0;
}
#ticket .ticket_cancel .desc {
    margin: .8em 0 0;
}

/*broadcast*/
#broadcast .broadcast_list{
    padding: 3em;
}
#broadcast .broadcast_list .summary{
    display: flex;
    flex-wrap: wrap;
}
#broadcast .broadcast_list .summary li,
#broadcast .broadcast_list .summary li:last-child{
	padding: 4%;
    margin: 0;
    border: 1px solid #ddd;
    width: 50%;
    border-width: 0 1px 1px 0;
}
#broadcast .broadcast_list .summary li:nth-child(even){
    border-width: 0 0 1px 0;
}
#broadcast .broadcast_list .summary li:nth-last-child(-n+2){
    border-bottom: none;
}

/*photogarally*/
#photogarally .gallary ul li{
	margin: 2% 2% 0 0;
    /*width: 32%;*/
}
#photogarally .gallary ul li:nth-child(even){
	margin: 2% 2% 0 0;
}
/*#photogarally .gallary ul li:nth-child(3n){
    margin: 2% 0 0 0;
}
#photogarally .gallary ul li:nth-child(-n+3),
#photogarally .gallary ul li:nth-child(2){
    margin: 0 2% 0 0;
}*/
/*#photogarally .gallary ul li:nth-child(3){
    margin: 0;
}*/
#photogarally .gallary ul li:nth-child(-n+2){
    margin: 0 2% 0 0;
}

/*footer*/
footer .logo {
    margin: 0 auto 1em;
    width: 22%;
}
}

/*----------------------------------------------------------------
デスクトップ用（画面サイズ960px以上～）
----------------------------------------------------------------*/
@media only screen and (min-width: 960px) {
section{
    padding: 80px 40px;
    width: 940px;
    margin: 0 auto;
}
.btn{
	padding: 3em 0 0;
}
.btn a{
	width: 55%;
}

/* header_pc
-------------------------------------*/
.header_pc{
    padding: 1em 0 0;
}
.header_pc .pc_logo{
    float: left;
    margin: 0 1em 0 0;
    display:block;
}

/* about
-------------------------------------*/
#about section#concept{
	padding: 80px 40px 0;
}
#about #summary section{
	padding: 80px 40px;
}

/* history
-------------------------------------*/
#history{
    background-size: 29%, 8%;
    background-position: 83% 8%, left top;
}
	
/* sponsor
-------------------------------------*/
#sponsor section{
	padding: 80px 40px 250px;
}
#sponsor .sponsor_list dd ul li{
    padding: .3em;
}
#sponsor .sponsor_list dd ul li img{
	width: 65%;
}
#sponsor .sponsor_list dd ul li img{
	width: 80%;
}

/*footer*/
footer .logo {
    width: 18%;
}
}
