@charset "utf-8";

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
	box-sizing: border-box;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
	font-family: -apple-system, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴシック ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", "Meiryo", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "Helvetica Neue", "Helvetica", "Open Sans", "Arial", "Verdana", BlinkMacSystemFont, Roboto, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	-webkit-text-size-adjust: 100%;
    line-height: 1.8em;
	box-sizing: border-box;
	padding: 0;
	color: #101010;
	font-size: 15px;
}
input, select, textarea, pre {
	font-family: -apple-system, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴシック ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", "Meiryo", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "Helvetica Neue", "Helvetica", "Open Sans", "Arial", "Verdana", BlinkMacSystemFont, Roboto, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #101010;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
button:focus{
	outline: 0;
	background:none;
}
a{
	color: #333;
	text-decoration: none;
}
a:hover{
	opacity:0.6;
}
a[href^="tel:"]:hover{
	opacity:1;
}
img {
	vertical-align: top;
}

body time, body mark,
body em, body small {
	font-style: normal;
}

body .sp {
	display: none;
}

body .comingsoon {
	opacity: 0.3;
}

body .font-col-red {
	color: #f90c00;
}
body .emphasis {
	font-weight: bold;
}

/* SP ---------------------------------------------------------------*/
@media screen and (max-width: 769px) {
	img {
		width: 100%;
	}

	body {
		padding-bottom: 75px;
	}
	body .sp {
		display: block;
	}
	body .pc {
		display: none;
	}
}

/*------------------------------------------------------------------------------------*/
/* header */
/*------------------------------------------------------------------------------------*/
header_tmp {
	display: block;
	height: 100px;
}
@media screen and (max-width: 769px) {
	header_tmp {
		height: auto;
	}
}

header {
	width: 970px;
	margin: 0 auto;
	overflow: hidden;
}
header h1 {
	float: left;
}
header nav {
	float: right;
}
header nav ul {
	overflow: hidden;
}
header nav li {
	display: inline-block;
	float: left;
}
/* TAB ---------------------------------------------------------------*/
@media screen and (max-width: 769px) {
	header {
		width: 100%;
	}
	header h1 {
		width: 15%;
	}
	header nav {
		width: 82%;
	}
	header nav li {
		width: 20%;
	}
	header img {
		padding: 0 15%;
	}
}
/* SP ---------------------------------------------------------------*/
@media screen and (max-width: 767px) {
	header img {
		padding: 0;
	}
}
@media screen and (max-width: 767px) and (orientation: landscape) {
	header img {
		padding: 0 10%;
	}
}


/*------------------------------------------------------------------------------------*/
/* footer */
/*------------------------------------------------------------------------------------*/
footer {
	background: url(/img/footer_bg.jpg) repeat bottom center;
}

/*brand_list*/
/*footer #brand_list {
	background-color: #eef8c8;
}
footer #brand_list ul {
	width: 970px;
	padding: 30px 60px 0 100px;
	margin: 0 auto;
	overflow: hidden;
}
footer #brand_list li {
	width: 142px;
	margin: 10px 20px 0 0;
	float: left;
}
footer #brand_list li img {
	width: 100%;
}*/

/*to_top*/
footer #to_top {
	display: table;
	width: 100%;
	height: 40px;
}
footer #to_top:before, footer #to_top:after {
	content: "";
	display: table-cell;
	height: 40px;
	/*background-color: #eef8c8;*/
	background-color: #fff;
}
footer #to_top:before {
	width: 80%;
}
footer #to_top p {
	display: table-cell;
	width: 130px;
	position: relative;
}
footer #to_top p a:hover{
	opacity: 1.0;
}
footer #to_top p img {
	width: 100%;
	position: absolute;
	left: 0;
	bottom: 0;
}
/* ウィンドウ横幅により調節-----------------------------------------------------*/
@media screen and (max-width: 1300px) {
	footer #to_top:before {
		width: 90%;
	}
}
@media screen and (max-width: 970px) {
	footer #to_top {
		width: 970px;
	}
}

/*address_area*/
#address_area, #copyright_area dl {
	width: 970px;
	margin: 0 auto;
	font-size: 15px;
	color: #fff;
}
#address_area {
	padding: 60px 0;
	position: relative;
}
#address_area p {
	font-weight: bold;
}
#address_area address {
	display: block;
	margin-top: 30px;
	font-style: normal;
}
#address_area address a {
	color: #fff;
}
#address_area ul {
	position: absolute;
	right: 0;
	bottom: 60px;
	width: 270px;
}
#address_area li {
	margin-top: 10px;
}
#address_area li a {
	display: block;
	background-color: #fff;
	text-align: center;
	color: #007f5a;
	font-weight: bold;
	padding: 12px;
	background-image: url(/img/icon_contact.png);
	background-repeat: no-repeat;
	background-position: 20px 50%;
	background-size: 24px auto;
	letter-spacing: 1px;
}
#address_area li ~ li a {
	background-image: url(/img/icon_facebook.png);
}

/*copyright_area*/
#copyright_area {
	background-color: #007f5a;
}
#copyright_area dl {
	position: relative;
}
#copyright_area dt {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 90px;
}
#copyright_area dt img {
	width: 100%;
}
#copyright_area dd {
	padding: 20px 0 20px 100px;
	letter-spacing: 1px;
}
/* SP ---------------------------------------------------------------*/
@media screen and (max-width: 769px) {
	/*footer #brand_list ul {
		width: 100%;
		padding: 20px;
	}
	footer #brand_list li {
		width: 48%;
		margin: 0 0 10px;
	}
	footer #brand_list li:nth-of-type(odd) {
		margin-right: 4%;
	}*/

	footer #to_top {
		width: 100%;
		height: auto;
	}
	footer #to_top:before {
		width: 64%;
	}
	footer #to_top p {
		width: 28%;
	}
	footer #to_top p img {
		position: static;
	}

	#address_area, #copyright_area dl {
		width: 100%;
		text-align: center;
		font-size: 13px;
	}
	#address_area {
		padding: 30px 20px 50px;
	}
	#address_area address {
		margin-top: 20px;
	}
	#address_area ul {
		display: block;
		padding: 10px 20px 0;
		position: static;
		width: 100%;
	}
	#address_area li a {
		padding: 10px;
		background-position: 15px 50%;
		background-size: 18px auto;
	}

	#copyright_area dt {
		bottom: inherit;
		top: -38px;
		left: 50%;
		width: 80px;
		margin-left: -40px;
	}
	#copyright_area dd {
		padding: 40px 20px 20px;
	}
}


/*------------------------------------------------------------------------------------*/
/* article */
/*------------------------------------------------------------------------------------*/
article {
	width: 100%;
}


/*------------------------------------------------------------------------------------*/
/* main_contents */
/*------------------------------------------------------------------------------------*/
#main_contents {
	width: 1030px;
	margin: 0 auto 60px;
}

#main_contents > h2 {
	margin-bottom: 40px;
}

#main_contents section {
	margin-bottom: 90px;
}

#main_contents #top_result p {
    margin-bottom: 20px;

    margin-left: 10px;
    margin-right: 10px;
}

#main_contents #top_result > div {
    padding-bottom: 20px;
}
#main_contents #top_result > div p {
    margin-bottom: 20px;
}
#main_contents .catch {
   text-align: center;
    margin-bottom: 50px;
}
#main_contents .catch h4 {
    color: #007f5a;
    padding: 10px ;
    font-size: 24px;
    font-weight: bold;
}
#main_contents .catch p {
    color: #fff;
    background: #007f5a;
    padding: 10px ;
    font-size: 24px;
    font-weight: bold;
}



/*汎用見出し*/
#main_contents .caption {
	font-size: 24px;
	letter-spacing: 1px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 50px;
}
#main_contents .caption span {
	display: block;
	color: #007f5a;
	font-size: 18px;
}
#main_contents .caption:before {
	content: "";
	display: block;
	width: 75px;
	height: 52px;
	background: url(/img/cap_icon.png) no-repeat;
	background-size: contain;
	margin: 0 auto 20px;
}
#main_contents .type01 {
    font-size: 26px;
    font-weight: bold;
    margin-bottom: 25px;
    padding-bottom: 15px;
    color: #007f5a;
    display: block;
    text-align: center;
    white-space: nowrap;
}
#main_contents .type01 span {
    background: #fff;
    padding: 0 10px;
    box-sizing: border-box;
}
#main_contents .type01:after {
    content: '';
    display:block;
    width: 100%;
    border-bottom: 1px solid #007f5a;
    margin-top: -0.5em;
    box-sizing: border-box;
}


#main_contents .greeting h4 {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 15px;
    padding-bottom: 15px;
    text-align: center;
}

/*汎用セクション*/
#main_contents .box {
	width: 970px;
	margin: 0 auto 100px;
}
#main_contents .box > h3 {
	font-size: 26px;
	font-weight: bold;
	border-bottom: 2px solid #007f5a;
	padding: 0 0 10px 45px;
	margin-bottom: 25px;
	background: url(/img/box_icon.png) no-repeat 10px bottom;
}
#main_contents .box.v2 > h3 {
	border-bottom: 2px solid #ff6c00;
	background-image: url(/entry/img/entry_icon.png);
}

/*フォトギャラリーへ*/
#to_photo ul {
	overflow: hidden;
	margin: 60px auto;
	width: 635px;
}
#to_photo li {
	width: 305px;
	float: left;
}
#to_photo li ~ li {
	margin-left: 25px;
}
#to_photo li a,
#to_photo li span {
	display: block;
	padding: 15px 0;
	text-align: center;
	font-size: 15px;
	font-weight: bold;
	background: url(/img/gallery_icon.png) no-repeat 12px 50%;
	border: 1px solid #101010;
}
#to_photo li a {
	position: relative;
}
#to_photo li a:after{
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	border-top: 2px solid #101010;
	border-right: 2px solid #101010;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	right: 15px;
	top:50%;
	margin-top: -4px;
}

/*大会当日スケジュール*/
#top_result .schedule h4 {
  font-weight: bold;
  margin-bottom: 20px;
  font-size: 18px;
  color: #fff;
  background: #007f5a;
  padding: 5px 10px;
}
#top_result .schedule .half-box {
  display: flex;
}
#top_result .schedule .half-box div {
  width: 50%;
  box-sizing: border-box;
}
#top_result .schedule .half-box div:first-child {
  padding-right: 15px;
}
#top_result .schedule .half-box div:last-child {
  padding-left: 15px;
}
#top_result .schedule ol {
  margin-left: 25px;
}
#top_result .schedule ol li {
  list-style-type: decimal;
  margin: 0;
  margin-bottom: 10px;
  font-size: 16px;
  float: none;
}

/* Botan */
.btn-entry {
  text-align: center;
}
.btn-entry a {
  padding: 10px 20px;
  background: #fc6e22;
  display: block;
  width: 300px;
  color: #fff;
  font-weight: bold;
  margin: auto;
}

@media screen and (max-width: 769px) {
  #top_result .schedule .half-box {
    display: flex;
    flex-direction: column;
  }
  #top_result .schedule .half-box div {
    width: 100%;
    box-sizing: border-box;
  }
  #top_result .schedule .half-box div:first-child {
    padding: 10px;
  }
  #top_result .schedule .half-box div:last-child {
    padding: 10px;
  }
  #top_result .schedule ol li {
    width: 100%;
  }
}
/* SP ---------------------------------------------------------------*/
@media screen and (max-width: 769px) {
	#main_contents {
		width: 100%;
	}
	#main_contents,
	#main_contents section {
		margin-bottom: 50px;
	}

	#main_contents .caption {
		font-size: 20px;
		margin-bottom: 20px;
	}
	#main_contents .caption span {
		font-size: 14px;
	}
	#main_contents .caption:before {
		width: 60px;
		height: 42px;
	}

	#main_contents .box {
		width: 90%;
		margin-bottom: 60px;
	}
	#main_contents .box h3 {
		padding: 0 0 0 35px;
		font-size: 22px;
		background-size: 16px auto;
	}

	#to_photo ul {
		width: 100%;
		max-width: 300px;
		margin: 50px auto;
	}
	#to_photo li {
		width: 100%;
		background-size: 12px auto;
	}
	#to_photo li ~ li {
		margin: 20px 0 0;
	}
	#to_photo li a,
	#to_photo li span {
		font-size: 14px;
	}
}

/*floating_menu
---------------------*/
#floating_menu {
	position: fixed;
	z-index: 100;
	margin-left: 1040px;
	bottom: 50px;
}
/*エントリー開始までリンク隠す*/
#floating_menu ul{display: none;}
#floating_menu li {
	margin-bottom: 5px;
}
#floating_menu li a {
	display: block;
	background-color: #ff6c00;
	width: 130px;
	height: 130px;
	padding-top: 30px;
	border-radius: 65px;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	line-height: 1.3em;
}
#floating_menu li a span {
	display: block;
	font-size: 14px;
}
#floating_menu li a:before {
	content: "";
	display: block;
	width: 30px;
	height: 28px;
	margin: 0 auto 8px;
	background: url(/img/floating_icon01.png) no-repeat center center;
	background-size: contain;
}
#floating_menu li ~ li a:before {
	background: url(/img/floating_icon02.png) no-repeat center center;
	background-size: contain;
}
#floating_menu p a {
	display: block;
	background-color: rgba(255,255,255,0.8);
	width: 64px;
	height: 64px;
	padding-top: 15px;
	margin: 0 auto;
	border-radius: 32px;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	color: #ff6c00;
	letter-spacing: 1px;
}
#floating_menu p a:before {
	content: "";
	display: block;
	margin: 0 auto;
	width: 9px;
	height: 9px;
	border-top: 1px solid #ff6c00;
	border-right: 1px solid #ff6c00;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	vertical-align: -2px;
}
@media screen and (max-width: 1300px) {
	#floating_menu {
		margin: 0;
		right: 0;
	}
}
#main_contents #top_result .thx{text-align: center;padding-bottom: 30px;font-size:1.2em;line-height: 1.8em;}
.thx a{color:red}
.sp_onry {
  display: none;
}
.pc_onry {
  display: block;
}
/* SP ---------------------------------------------------------------*/
@media screen and (max-width: 769px) {
	#floating_menu {
		width: 100%;
		bottom: 0;
	}
	#floating_menu ul {
		overflow: hidden;
		padding: 10px;
	}
	#floating_menu li {
		width: 48%;
		float: left;
		margin: 0;
	}
	#floating_menu li ~ li {
		margin-left: 4%;
	}
	#floating_menu li a {
		width: 100%;
		height: auto;
		padding: 10px;
		border-radius: 3px;
		text-align: left;
		font-size: 14px;
	}
	#floating_menu li a span {
		font-size: 12px;
	}
	#floating_menu li a:before {
		width: 22px;
		margin: 4px 5px 0 0;
		float: left;
	}
	#floating_menu p {
		position: absolute;
		bottom: 85px;
		right: 10px;
	}
  .sp_onry {
    display: block;
  }
  .pc_onry {
    display: none;
  }
  #main_contents .type01 {
    font-size: 18px;
  }
    #main_contents .type01:after{
        margin-top: -0.7em;
    }
}

@media screen and (max-width: 340px) {
    #main_contents .type01 {
        font-size: 16px;
    }
    #main_contents .type01:after{
    margin-top: -0.8em;
    }
}

/* 180520 */
.mb30 { margin-bottom: 30px !important;}
.mb50 { margin-bottom: 50px !important;}
.fwB{font-weight: bold;}

.fs_L {
    font-size: 20px;
}

.box.overview_list {
	margin-bottom: 90px !important;
  margin-top: 50px !important;
}

.box.overview_list dl {
	overflow: hidden;
	padding: 30px 0;
	width: 100%;
  border-top: 1px solid #b2d8cd;
}
.box.overview_list dl ~ dl {
	border-top: 1px solid #b2d8cd;
}
.box.overview_list dt {
	width: 30%;
	font-size: 18px;
	font-weight: bold;
	color: #007f5a;
	float: left;
}
.box.overview_list dd {
	width: 70%;
	float: right;
}
.box.overview_list dl em,
.box.overview_list dl a {
	font-weight: bold;
  word-break: break-all;
}
.box.overview_list dd.icon img {
	width: 100px;
}
.box.overview_list dd.icon2 img {
	width: 200px;
}
.box.overview_list dd ul {
  max-width: 100%;
}
#top_result .box.overview_list dd ul li {
      float: none;
      width: auto;
}
#top_result .box.overview_list dd ul li a {
word-break: break-all;
}

.box.overview_list p {
	padding-top: 20px;
}
.box.overview_list ol {
	list-style-type: decimal;
	padding-left: 30px;
}
.box.overview_list ol li {
	margin-top: 30px;
}


/* 大会概要180520 */
.pagelink {
  display: flex;
	justify-content: space-around;
	border: 1px solid #007f5a;
	margin-bottom: 50px;
}
.pagelink li{
  width:30%;
}
.pagelink li a {
  text-align: center;
  padding: 15px 20px;
	display: block;
	color: #007f5a;
}

.overview_list .produce dd p {
float: left;
    width: 100px;
		padding: 0;
		margin-right: 10px;
}
.overview_list .produce dd p img {
    width: 100%;
}
.overview_list .produce dd .name{
	padding: 21px 0 21px 178px;
    font-size: 20px;
    border-bottom: 1px solid #000;
    background: url(/img/kyoto_woods.png) no-repeat 110px center;
    background-size: 55px auto;
    font-weight: bold;
    letter-spacing: 1px;
/*		float: right;*/
		width: 100%;
		margin-bottom: 10px;
}
/*
.overview_list .produce dd .name{
    padding: 21px 0 21px 70px;
    font-size: 20px;
    border-bottom: 1px solid #000;
    background: url(/img/kyoto_woods.png) no-repeat left center;
    background-size: 55px auto;
    font-weight: bold;
    letter-spacing: 1px;
    width: 560px;
    margin-bottom: 10px;
}
*/
.overview_list .produce dd .name .emphasis{
	font-weight: bold;
	font-size: 18px;
}
.overview_list .produce dd .name span {
    display: block;
    font-size: 16px;
    font-weight: normal;
}
/* SP ---------------------------------------------------------------*/
@media screen and (max-width: 769px) {
	.box.overview_list dl {
		padding: 15px 0;
	}
	.box.overview_list dt,
	.box.overview_list dd {
		width: 100%;
	}
  .box.overview_list dd ul {
    max-width: 100%;
  }
	.box.overview_list dt {
		padding-bottom: 15px;
	}
	.overview_list .produce dd p {
    float: none;
    width: 100%;
    padding: 0;
    margin: 0;
	}

    .overview_list .produce dd .name{
        padding: 21px 0 21px 70px;
        background: url(/img/kyoto_woods.png) no-repeat left center;
        background-size: 55px auto;
        width: 100%;
    }
	footer #to_top:after {
	height: auto;
	}
}

.ml30 {margin-left: 30px !important;}
.mb30 {margin-bottom: 30px !important;}
.mt10{margin-top:10px !important;}
.mt20{margin-top:20px !important;}
.fs_L {
    font-size: 20px;
}
