@charset "utf-8";
/* CSS Document */

#mainvisual{
	width: 100%;
	margin: 0 auto;
	position: relative;
	height:500px;
	background:url(../img/international/p_01.jpg);
}
#mainvisual img{
		width: 100%;
}
.main-title{
	position: absolute;
	width:100%;
	top: 51%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	font-family: U-OTF-GothicMB101Upr-Heavy;
	font-size: 3.5em;
	color: #F68B1E;
   text-shadow:
       3px 3px 0 #000,
     -1px -1px 0 #000,  
      1px -1px 0 #000,
      -1px 1px 0 #000,
       1px 1px 0 #000;
	z-index: 9;
	text-align: center;
	line-height:1.8;
}
.main-title span{
	font-size:70%;
	color:#fff;
}

.main-title_02{
	position: absolute;
	width:100%;
	top: 83%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	font-family: U-OTF-GothicMB101Upr-Heavy;
	font-size: 1.6em;
	/*color: #F68B1E;*/
   text-shadow:
       1px 1px 0 #fff,
     -1px -1px 0 #fff,  
      1px -1px 0 #fff,
      -1px 1px 0 #fff,
       1px 1px 0 #fff;
	z-index: 9;
	text-align: center;
	line-height:2.8;
	letter-spacing:1px;
}



/* パンくずリスト */
#pan_box{
	width: 1100px;
	/*height: 35px;*/
	margin: 0 auto;
}
#pan_list{
	height: 35px;
	color: #DDD;
	background-color: rgba(0,0,0,0.8);
	position: absolute;
	bottom: -10px;
	z-index: 99;
	padding-right:30px;
}
ol.topic_path{
	list-tyle-type: none;
	line-height: 35px;
	font-size: 77%;
	letter-spacing: 1px;
	padding-left: 30px;
}
ol.topic_path li{
	display: inline;
}
ol.topic_path li.first{
	position: relative;
}
ol.topic_path li.first::after{
	content: '';
  	position: absolute;
    top: 30%;
	right: 3px;
    width: 8px;
    height: 8px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
	transform: rotate(45deg);
}
ol.topic_path li.second{
	padding-left: 5px;
}
ol.topic_path li a{
	padding-right: 20px;
	color: #fff;
	text-decoration: underline;
}
ol.topic_path li a:hover{
	color: #fff100;
}




/*contents
================================================== */
#contents{
	width: 100%;
	background-color: #fff;
}
.contents_01{
	width:100%;
	background: url(../img/event/by_city/bg_grid.png);
	padding:30px 0 100px;
}
.co_01_box_01{
	width:1100px;
	margin:40px auto 30px;
}
.text{
	letter-spacing: 1px;
	font-size:116%;
	line-height:3.0;
	text-align:center;
	font-weight:bold;
}
ruby rt {
    font-size: 60%;
    letter-spacing: -0.04em;
    position: relative;
    top: -3px;
    text-align: center;
}
.sub_title{
	letter-spacing: 1px;
	font-size:220%;
	line-height:2.4;
	font-weight:bold;
	padding:30px 0 10px;
	text-align:center;
}
.co{
	color: #fff100;
	text-shadow:
       3px 3px 0 #000,
     -1px -1px 0 #000,  
      1px -1px 0 #000,
      -1px 1px 0 #000,
       1px 1px 0 #000;
	   font-size:140%;
}
.line{
	background: linear-gradient(transparent 70%, #fff100 70%);
}
.contents_02{
	width:100%;
	background: url(../img/event/by_city/bg_grid.png);
	padding:30px 0;
}
.sub_title_03{
	letter-spacing: 1px;
	font-size:150%;
	line-height:2.8;
	font-weight:bold;
	padding:30px 0 10px;
	text-align:center;
}
.nagare{
	width:90%;
	margin:10px auto;
	background:#fff;
	border:3px solid #ccc;
	padding:21px 0 9px;
}
.arrow {
  width: 40px;
  height: 30px;
  background: #000000;
  clip-path: polygon(0 47.5%, 31% 47.5%, 31% 0, 69% 0, 69% 47.5%, 100% 47.5%, 50% 100%);
  margin:0 auto;
}
.sub_title_04{
	letter-spacing: 1px;
	font-size:131%;
	line-height:2.8;
	font-weight:bold;
	text-align:center;
}
#link{
	position:relative;
	bottom:100px;
}

.co_02_box_01{
	width:1100px;
	margin:0 auto 30px;
	padding:0 50px;
}
#table_box01{
	width: 100%;
	margin: 0 auto;	
}
#table_box01 td{
	background: #fff;
	padding: 25px 20px 10px;
	border: 2px solid #ddd;
}
.bg_co{
	background:#F68B1E !important;
	color:#fff;
	font-weight:bold;
	width:250px !important;
	text-align:center !important;
}
.ta_list{
	padding-top:20px;
}
.ta_list li{
	letter-spacing: 1px;
	font-size:100%;
	line-height:2.8;
}



.btn01 a{
	white-space: nowrap;
	font-size: 100%;
	font-weight: bold;
	color: #fff !important;
	border: 1px solid #00467e;
	padding: 30px 0 15px;
	position: relative;
	background:#00467e;
	width:370px;
	margin: 0 auto 40px;
	display:block;
	text-align:center;
}
/*線の設定*/
.btn01 a::before,
.btn01 a::after{
  content:'';
    /*絶対配置で線の位置を決める*/
  position:absolute;
  z-index:1;
  bottom:0;
  left:0;
     /*線の形状*/   
  background:#fff;
  width:100%;
  /*height:1px;*/
    /*アニメーションの指定*/
  transition:all 0.3s ease-in-out;
}
 /*hover時に伸びる線の形状*/   
.btn01 a::after{
  width:0;
  height:4px;
  background: rgba(0,160,233,0.9);
}
 /*hover時に100%に伸びる*/   
.btn01 a:hover::after{
  width:100%;
}


.ao_list{
	background:#fff;
	padding:20px 30px 10px;
	border: 2px solid #ddd;
}
.ao_list li{
	letter-spacing: 1px;
	font-size:100%;
	line-height:2.0;
	text-indent:-2em;
    padding-left:2em;
	padding-bottom:15px;
	border-bottom:2px dotted #ccc;
	padding-top:25px;
}
.ao_list li:last-child{
	border: none !important;
}
.li_02{
	text-indent:-1.0em !important;
    padding-left:1.0em !important;
}


.accordion  {
  margin: 30px auto;
}

.accordion_title {
  position: relative;
  cursor: pointer;
  letter-spacing: 1px;
  font-size:150%;
  line-height:2.8;
  font-weight:bold;
  padding:18px 0 0;
  text-align:center;
  background:#3CF;
  color:#fff;
  border-radius:10px;
}

summary.accordion_title::-webkit-details-marker {
  display:none;
}

.accordion_title:after {
  content: "+";
  position: absolute;
  top: calc(50% - 0.5em);
  right: 50px;
  line-height: 1;
  padding: 0;
  pointer-events: none;
  font-size:140%;
}

.accordion::details-content {
  opacity: 0;
  block-size: 0;
  transition: .3s;
  transition-property: display, opacity, block-size, padding;
  transition-behavior: allow-discrete;
  line-height: 1.6em;
}

.accordion .accordion_content {
  padding: 0 2em 0 3em;
}

.accordion .accordion_content > *:first-of-type {
  margin-top: 0;
}

.accordion .accordion_content > *:last-of-type {
  margin-bottom: 0;
}

.accordion[open]::details-content {
  opacity: 1;
  block-size: auto;
  block-size: calc-size(auto, size);
}

.accordion[open] .accordion_content {
  padding: 1.4em 2em 1.4em 3em;
}

.accordion[open] .accordion_title:after {
  content: "-";
}



.accordion_02  {
	width:88%;
  margin: 30px auto;
}

.accordion_title_02 {
  position: relative;
  cursor: pointer;
  letter-spacing: 1px;
  font-size:150%;
  line-height:2.4;
  font-weight:bold;
  padding:22px 0 0;
  text-align:center;
  background:#F90;
  color:#fff;
  border-radius:10px;
}

summary.accordion_title_02::-webkit-details-marker {
  display:none;
}

.accordion_title_02:after {
  content: "+";
  position: absolute;
  top: calc(50% - 0.5em);
  right: 50px;
  line-height: 1;
  padding: 0;
  pointer-events: none;
  font-size:140%;
}

.accordion_02::details-content {
  opacity: 0;
  block-size: 0;
  transition: .3s;
  transition-property: display, opacity, block-size, padding;
  transition-behavior: allow-discrete;
  line-height: 1.6em;
}

.accordion_02 .accordion_content {
  padding: 0 2em 0 3em;
}

.accordion_02 .accordion_content > *:first-of-type {
  margin-top: 0;
}

.accordion_02 .accordion_content > *:last-of-type {
  margin-bottom: 0;
}

.accordion_02[open]::details-content {
  opacity: 1;
  block-size: auto;
  block-size: calc-size(auto, size);
}

.accordion_02[open] .accordion_content {
  padding: 1.4em 2em 1.4em 3em;
}

.accordion_02[open] .accordion_title_02:after {
  content: "-";
}