@charset "utf-8";

/* visual
========================================================================== */

#visual {
	max-width: 1266px;
	margin: 0 auto;
	text-align: left;
	position: relative;
}

.bxslider > li {
	height: 450px;
	background-position: center center;
	background-repeat: no-repeat;
/*	text-indent: -9999em;*/
}
.bxslider > li p {
	position: absolute;
	text-align: left;
 font-size: 1.8em!important;
 color: #fff!important;
 left:5vw;
 top:200px;
 z-index: 1500;
}
.bxslider > li:nth-child(1) {
	background-image: url(../img/index/pic_slider_awad_01.png);
}
.bxslider > li:nth-child(2) {
	background-image: url(../img/index/pic_slider_awad_02.png);
}
.bxslider > li:nth-child(3) {
	background-image: url(../img/index/pic_slider_awad_03.png);
}
.bxslider > li:nth-child(4) {
	background-image: url(../img/index/pic_slider_awad_04.png);
}

#visual h1 {
	margin: 0 0 20px 30px;
	padding: 0 15px;
	background: #fff;
	color: #00458d;
	font-family: 'Be Vietnam', sans-serif;
	font-size: 714%; /* 100px */
	line-height: 1;
	display: inline-block;
	position: relative;
	z-index: 100;
}
#visual h2 {
	margin: 0 0 15px 30px;
	padding: 0 15px;
	color: #CE0080;
	font-size: 310%; /* 43px */
	font-weight: 500;
	line-height: 1.4;
}
#visual p {
	margin: 0 0 15px 30px;
	padding: 0 15px;
	font-size: 229%; /* 32px */
	font-weight: 500;
	line-height: 1.4;
}
#visual p.credit {
	margin: 0 0 20px 30px;
	padding: 0 15px;
	font-size: 71%; /* 10px */
	font-weight: 500;
	line-height: 1.4;
}

#visual .btn_login {
	margin-left: -150px;
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 120;
}
#visual .btn_login a {
	width: 320px;
	height: 70px;
	background: #00458d;
	border-radius: 20px;
	box-shadow: 3px 3px 5px #999;
	color: #f8db15;
	font-size: 1.2rem;
	line-height: 70px;
	text-align: center;
	display: block;
}
#visual .btn_login a:hover {
	box-shadow: none;
	position: relative;
	top: 3px;
	left: 3px;
	opacity: .9;
}

#visual_map {
	position: absolute;
	top: 360px;
	right: -35px;
	z-index: 100;
 opacity: 0.8;
}

.importantdates {
	z-index: 200;
}
#visual p img {
	max-width: 100%;
 height: auto;
	margin: 10px auto 10px!important;
}

/* pc small */
@media only screen and (max-width: 1366px) {
	#visual_map {
		top: 360px;
		right: 10px;
	}
	#visual_map img {
		width: 560px;
	}
}

@media only screen and (min-width: 1023px) and (max-width: 1266px) {
#visual p img {
	max-width: 95%;
 height: auto;
	margin: 10px auto 10px!important;
}
}

@media only screen and (min-width: 960px) and (max-width: 1024px) {
	#visual .btn_login {
		margin-left: -30px;
	}
	#visual .btn_login a {
		width: 280px;
	}

	#visual_map {
		top: 360px;
		right: 10px;
	}
	#visual_map img {
		width: 480px;
	}
}

/* tablets */
@media only screen and (min-width: 768px) and (max-width: 959px) {
	#visual .btn_login {
		margin-left: 0;
		left: auto;
		right: 35px;
	}
	#visual .btn_login a {
		width: 240px;
	}

	#visual_map {
		display: none;
	}
}

/* phones */
@media only screen and (max-width: 767px) {
	.bxslider > li {
		height: 320px;
		background-size: cover;
	}
.bxslider > li p {
	position: absolute;
	text-align: left!important;
 font-size: 1.2em!important;
 color: #fff!important;
 left:5vw!important;
 top:130px;
 z-index: 1500;
}

	#visual h1,#visual h2 {
		display: none;
	}

	#visual p {
		margin: 30px;
		font-size: 154%; /* 20px */
		text-align: center;
	}

	#visual .btn_login {
		width: 240px;
		margin: 0 auto 50px;
		text-align: center;
		position: relative;
		bottom: 0;
		left: 0;
	}
	#visual .btn_login a {
		width: 240px;
		height: 60px;
		border-radius: 15px;
		font-size: 1rem;
		line-height: 60px;
	}

	#visual_map {
		display: none;
	}

}

/* group photo
========================================================================== */
img.groupphoto {
	max-width: 60%!important;
 height: auto;
	margin: 10px auto 20px!important;
}
@media only screen and (max-width: 1230px) {
img.groupphoto {
	max-width: 70%!important;
 height: auto;
	margin: 10px auto!important;
}
}
@media only screen and (max-width: 767px) {
img.groupphoto {
	max-width: 100%!important;
 height: auto;
	margin: 10px auto!important;
}
}

/* pagetop message
========================================================================== */
#top_msg {
	max-width: 1206px;
	height: 30px;
	margin: 10px auto 0px!important;
	padding: 10px 80px 0px!important;
 color:#00458d;
 font-weight: 500;
	text-align: left;
	position: relative;
	zoom: 1;
}
@media only screen and (max-width: 1266px) {
#top_msg {
	padding: 10px 30px!important;
	}
}

/* tablets */
@media only screen and (min-width: 768px) and (max-width: 959px) {
#top_msg {
		text-align: center;
	}
}

/* phones */
@media only screen and (max-width: 767px) {
#top_msg {
		position: fixed;
		top: 40px;
		left: 0;
  line-height: 1.1em;
		z-index: 1200;
	}
}

/* news
========================================================================== */

#news {
	padding: 30px 0 40px;
	background: #ecf3f7;
	text-align: left;
	zoom: 1;
}
#news:after {
	content:"";
	display: block;
	clear: both;
}
#news_inner {
	max-width: 1176px;
	margin: 0 auto;
}

#news h2 {
	margin-bottom: 1em;
	color: #00458d;
	font-family: 'Be Vietnam', sans-serif;
	font-size: 214%; /* 30px */
	font-weight: 600;
	line-height: 1;
}

#news dl {
	margin-bottom: 0;
	zoom: 1;
}
#news dl:after {
	content:"";
	display: block;
	clear: both;
}
#news dl dt {
	margin-bottom: 1em;
	float: left;
	clear: both;
}
#news dl dd {
	margin-bottom: 1em;
	padding-left: 10em;
}
.newslist {
	float: left;
}
.importantdates  {
	margin: 0px 60px 0 0;
/*	margin: 200px 60px 0 0;*/
	float: right;
}
.importantdates dl dd {
	padding-left: 12em !important;
}

/* pc small */
@media only screen and (max-width: 1266px) {
	#news_inner {
		padding: 0 50px;
	}
}

/* phones */
@media only screen and (max-width: 767px) {
	#news {
		padding: 25px 0 30px;
	}
	#news_inner {
		padding: 0 30px;
	}

	#news h2 {
		font-size: 154%; /* 20px */
	}
	#news dl dt {
		margin-bottom: .5em;
		float: none;
	}
	#news dl dd {
		padding-left: 0;
	}
	.newslist {
		float: none;
	}
	.importantdates  {
		margin: 50px 0 0;
		float: none;
	}
	.importantdates dl dd {
		padding-left: 0 !important;
	}
}



/* information
========================================================================== */

#info {
	padding: 45px 0 30px;
}

#info h2 {
	margin-bottom: 1.25em;
	color: #00458d;
	font-family: 'Be Vietnam', sans-serif;
	font-size: 257%; /* 36px */
	font-weight: 500;
	line-height: 1;
}

#info ul {
	width: 800px;
	margin: 0 auto;
}
#info ul li {
	margin-bottom: 15px;
	font-size: 143%; /* 20px */
}
#info ul li a {
	padding: 45px 0;
	background: #ecf3f7;
	display: block;
	position: relative;
}
#info ul li a:hover {
	color: #00458d;
	background: #fff;
}
#info ul li a:after {
	margin-top: -.5em;
	content: "\f0da";
	color: #00458d;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 80%; /* 16px */
	line-height: 1;
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 1.5em;
}
.info {
	width: 720px;
	margin: 0 auto;
	text-align: left;
}
.info dt {
	color: #00458d;
	font-weight: bold;
	float: left;
	clear: both;
}
.info dd {
	padding-left: 220px;
	margin-bottom: 1em;
}

/* tablets */
@media only screen and (min-width: 768px) and (max-width: 959px) {
	#info ul {
		width: 640px;
	}
}

/* phones */
@media only screen and (max-width: 767px) {
	#info {
		padding: 50px 30px 35px;
	}

	#info h2 {
		font-size: 154%; /* 20px */
	}

	#info ul {
		width: 100%;
	}
	#info ul li {
		margin-bottom: 15px;
		font-size: 124%; /* 16px */
	}
	#info ul li a {
		padding: 25px 0;
	}

	.info {
		width: auto;
	}
	.info dt {
		margin-bottom: .5em;
		float: none;
		clear: both;
	}
	.info dd {
		padding-left: 0;
		margin-bottom: 1em;
	}
}



/* venue
========================================================================== */

#venue {
	max-width: 1266px;
	margin: 0 auto;
	padding: 100px 0 90px;
	border-top: 1px solid #000;
}
#venue_inner {
	max-width: 800px;
	margin: 0 auto;
	zoom: 1;
}
#venue_inner:after {
	content:"";
	display: block;
	clear: both;
}

#venue h2 {
	margin-bottom: 1em;
	color: #00458d;
	font-family: 'Be Vietnam', sans-serif;
	font-size: 257%; /* 36px */
	font-weight: 500;
	line-height: 1;
}

#venue address {
	width: 360px;
	text-align: left;
	float: left;
}
#venue address h3 {
	font-size: 143%; /* 20px */
	font-weight: 600;
}
#venue address p {
	margin-bottom: 1em;
}
#venue address p strong {
	margin-bottom: 1em;
	display: block;
}

#googlemap {
	width: 360px;
	height: 180px;
	margin: 0 auto;
}

#googlemap iframe {
	width: 100%;
	height: 180px;
	margin: 0;
	padding: 0;
	border: 0;
	display: block;
}

#venue div.photo {
	width: 360px;
	float: right;
}
#venue div.photo img {
	width: 100%;
}

/* pc small */
@media only screen and (max-width: 1266px) {
	#venue {
		margin: 0 30px;
	}
}

/* tablets */
@media only screen and (min-width: 768px) and (max-width: 959px) {
	#venue_inner {
		max-width: 640px;
	}

	#venue address {
		width: 100%;
		margin-bottom: 1em;
		text-align: center;
		float: none;
	}

	#venue div.photo {
		width: 100%;
		float: none;
	}
}

/* phones */
@media only screen and (max-width: 767px) {
	#venue {
		max-width: auto;
		padding: 50px 30px 35px;
	}
	#venue_inner {
		max-width: auto;
	}

	#venue h2 {
		font-size: 154%; /* 20px */
	}

	#venue address {
		width: auto;
		margin-bottom: 1em;
		text-align: center;
		float: none;
	}
	#venue address h3 {
		font-size: 139%; /* 18px */
	}

	#googlemap {
		width: 100%;
		max-width: 320px;
		height: 240px;
	}

	#googlemap iframe {
		height: 240px;
	}

	#venue div.photo {
		width: auto;
		max-width: 320px;
		margin: 0 auto;
		float: none;
	}
}



/* organizers
========================================================================== */

#organizers {
	margin-bottom: 80px;
}
#organizers h2 {
	margin: 0 0 1.25em;
	color: #00458d;
	font-family: 'Be Vietnam', sans-serif;
	font-size: 257%; /* 36px */
	font-weight: 500;
	line-height: 1;
}

#organizers div a:hover {
	opacity:0.5;
}

.organizers_logo {
	width: 320px;
	text-align: center;
	display: inline-block;
}

.organizers_logo img {
	display: inline-block;
}
.ieice {
	width: 320px;
	margin-bottom: 10px;
}
.ieie {
	height: 65px;
}

/* phones */
@media only screen and (max-width: 767px) {
	#organizers {
		margin-bottom: 60px;
	}
	#organizers h2 {
		font-size: 154%; /* 20px */
	}

	.organizers_logo {
		width: auto;
		margin-bottom: 20px;
		display: block;
	}
}


/* donations
========================================================================== */

#donations {
	margin-bottom: 80px;
}
#donations h2 {
	margin: 0 0 1.25em;
	color: #00458d;
	font-family: 'Be Vietnam', sans-serif;
	font-size: 257%; /* 36px */
	font-weight: 500;
	line-height: 1;
}

#donations div a:hover {
	opacity:0.5;
}
#donations div {
 margin: 0px auto 2em;
}

#donations div .donations_logo {
/*width: 320px;*/
	max-width: 80%;
 margin: 0px auto 2em;
	text-align: center;
	display: inline-block;
}

.donations_logo img {
	display: inline-block;
 margin: 0px auto 0.5em;
}


.taf {
	width: 318px;
	height: 86px;
	margin-bottom: 10px;
}

.text_samsung {
font-size: 2.5em!important;
font-weight: bold;
 color: #00458d;
}


/* phones */
@media only screen and (max-width: 767px) {
	#donations {
		margin-bottom: 60px;
	}
	#donations h2 {
		font-size: 154%; /* 20px */
	}
#donations div {
 margin: 0px;
}
#donations div .donations_logo {
		width: 100%;
		margin-bottom: 2em;
		display: block;
}
.donations_logo img {
		max-width: 95%;
  height:auto;
  margin: 0 auto;
}
.logo_tel {
width: 180px!important;
}
.logo_tpsco {
width: 400px!important;
}
.text_samsung {
font-size: 2.0em!important;
font-weight: bold;
}
}

@media only screen and (max-width: 530px) {
.logo_tel {
width: 35%!important;
}
.logo_tpsco {
width: 90%!important;
}
.text_samsung {
font-size: 1.5em!important;
}
}


/* sponsors
========================================================================== */

#sponsors {
	margin-bottom: 120px;
}
#sponsors h2 {
	margin: 0 0 1.25em;
	color: #00458d;
	font-family: 'Be Vietnam', sans-serif;
	font-size: 257%; /* 36px */
	font-weight: 500;
	line-height: 1;
}
.sponsors {
	width: 720px;
	margin: 0 auto;
	text-align: left;
}
.sponsors dt {
	color: #00458d;
	font-weight: bold;
	float: left;
	clear: both;
}
.sponsors dd {
	padding-left: 220px;
	margin-bottom: 1em;
}

.sponsors_logo {
	margin: 0 30px;
	text-align: center;
	display: inline-block;
}

.sponsors_logo img {
	display: inline-block;
}

/* phones */
@media only screen and (max-width: 767px) {
	#sponsors {
		margin-bottom: 60px;
	}
	#sponsors h2 {
		font-size: 154%; /* 20px */
	}
.sponsors_logo img {
	display: block;
 margin: 10px auto!important;
}
.sponsors {
		width: auto;
	}
	.sponsors dt {
		margin-bottom: .5em;
		float: none;
		clear: both;
	}
	.sponsors dd {
		padding-left: 0;
		margin-bottom: 1em;
	}

}

/*-------------------------------------*/
/* アルバム：モーダル                   */
/*-------------------------------------*/
/*モーダルを開くボタン*/
.modal-open{
	font-weight: bold;
	color: #fff;
	background: #000;
	margin: auto;
	cursor: pointer;
}
img.modal-open{
	width: 50%;
	height:auto;
	margin: auto;
	cursor: pointer;
	border:1px solid #ccc;
}
img.modal-open:hover{
	opacity: 0.8;
	transition: 0.3s;
}
/*モーダル本体の指定 + モーダル外側の背景の指定*/
.modal-container{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	background: rgba(0,0,0,50%);
	padding: 40px 20px;
	overflow: auto;
	opacity: 0;
	visibility: hidden;
/* transition: 0.3s;*/
	transition-duration: 0.3s;
	transition-delay: 0.1s;
	transition-timing-function: ease-in;
 box-sizing: border-box;
	z-index: 999;
}
/*モーダル本体の擬似要素の指定*/
.modal-container:before{
	content: "";
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}
/*モーダル本体に「active」クラス付与した時のスタイル*/
.modal-container.active{
	opacity: 1;
	visibility: visible;
}
.modal__layer {
  height: 100%;
  background: rgba(50, 50, 50, .85);
  cursor: pointer;
}/*モーダル枠の指定*/
.modal-body{
	position: relative;
	display: inline-block;
	top: 20vh!important;
	vertical-align: middle;
	max-width: 80%;
	width: 80%;
	height:90vh;
}
/*モーダルを閉じるボタンの指定*/
.modal-close{
	position: absolute;
	display: flex;
    align-items: center;
    justify-content: center;
	top: -40px;
	right: -40px;
	width: 40px;
	height: 40px;
	font-size: 40px;
	color: #fff;
	cursor: pointer;
}
/*モーダル内のコンテンツの指定*/
.modal-content{
	background: #fff;
	text-align: center;
	padding: 30px;
}
.modal-content p{
	text-align: center;
	font-size: 2em;
	font-weight: bold;
}
.modal-content div{
	 display: grid;
  grid-template-columns: 50% 50%;
  justify-content: space-around;
	width: 100%!important;
}
.modal-content div img{
	width: 96%;
	height: auto;
	display: block;
	margin: 0px 1% 10px;
}

@media (max-width: 800px) {
.modal-body{
	top: 5vh;
}

	.modal-content div{
  grid-template-columns: 100%;
}
}
