@charset "UTF-8";
/* ==============================================================
ファイル名 : common.css
============================================================== */


/* ==============================================================
リセット
============================================================== */
body, div, span, dl, dt, dd, pre, p, form, fieldset, input, textarea, blockquote, th, td {
	margin: 0; padding: 0;
}
ul, ol, li { margin: 0; padding: 0; list-style-type: none; }
a, a:link, a:active, a:visited, a:hover { text-decoration: none }
table { border-collapse: collapse; border-spacing: 0 }
fieldset, img { border: 0 }
address, caption, cite, code, dfn, em, strong, th, var {
	font-weight: normal; font-style: normal
}
caption, th { text-align: left }
h1, h2, h3, h4, h5, h6, h7, h8, h9 {
	padding: 0; margin: 0; font-weight: normal; font-size: 100%
}
abbr, acronym { border: 0 }
pre, code { font: 100% monospace }

body, div, span, dl, dt, dd, pre, p, ul, ol, li, form, fieldset, input,
textarea, blockquote, table, caption, th, td {
	font-family: "New Times","Arial","ＭＳ Ｐゴシック", sans-serif;
}

/* ==============================================================
共通項目指定
============================================================== */

html,body{
	height: 100%;
	margin: 0;
	padding: 0;
}
html {
	font-size: 62.5%;
}
body {
	background: white;
	color: black;
	font-size: 1.4em;
    -webkit-text-size-adjust: 100%;
}
h2 { font: 700 2.4em/1.2em sans-serif; margin-bottom: 1em; }
h3 { font: 700 1.6em/1.2em sans-serif; }
h4 { font: 700 1.3em/1.2em sans-serif; }
p {
    margin: .5em 0;
    font: 500 1.3em/160% sans-serif;
}

span { font-size: .8em; }
strong { color: red; font-weight: 700}
img {
	width: 100%;
	height: auto;
    margin: 0!important;
}
a:hover img { opacity: 0.6; }
.entry {
	padding: 2em 0 4em;
	text-align: center;
}
.disc, .circle {
	margin-left: 1.5em;
}
.disc li { list-style: disc; margin-top: .25em; }
.circle li { list-style: circle; margin-top: .25em; }

/* ==============================================================
エリア指定
============================================================== */

/* ページ全体を覆うブロック(必須) */
#contents {
	background: white;
	position: relative;
	width: 100%;
    min-height: 100%;
	margin: 0 auto;
}
#header, #container, #footer {
	clear: both;
	margin: 0;
    width: 100%;
}
#header {

}
#container:not(.index_top) {
    padding-bottom: 5rem;
}
#headerInner, #containerInner, #footerInner {
    max-width: 128rem;
	margin: 0 auto;
}
.contents {
	margin-bottom: 10em;
}

/* ==============================================================
#headerInner
============================================================== */

/* ==============================================================
#containerInner
============================================================== */
#news, #entryList, #precautions, #participant, #regulation {
    width: 95%;
    max-width: 122rem;
    margin: 3em auto;
	color: #555;
	line-height: 165%;
	font-size: 1em;
}
#news h3 { color: red; }
#news p { font-size: 1em; }

#news dl dt {
    margin-top: 1.5em;
    font: 700 1em sans-serif;
}
#news p.border {
    padding: 1em;
    border: 1px solid #555;
}
#entrySite {
    width: 95%;
    max-width: 72rem;
    margin: 3em auto;
	color: #555;
	line-height: 165%;
	font-size: 1em;
}
#entrySite ul li {
    margin: 2em auto;
}
.shadow {
    margin-bottom: 1rem;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.5);
}
a:visited .shadow, a:hover .shadow {
    box-shadow: 0px 0px 20px rgba(255,0,0,0.5);
}

.contents > div.link {
    margin: 0 auto;
	width: 100%;
	max-width: 1120px;
}

.participant, .regulation {
	text-align: center;
}
.participant > img, .regulation > img {
	max-width: 960px;
}
.regulation > a > img {
	max-width: 640px;
}

.fC_around, .fC_between {
	display: flex;
	flex-wrap: wrap;
}
.fC_around {
    justify-content: space-around
}
.fC_between {
    justify-content:space-between
}
.fC_around > div, .fC_between > div {
	max-width: 70%;
}

/* 会場写真
-------------------------------------------------------------- */
#album {
	padding: 1em; 
}
.album > img {
	width: calc(20% - 1em);
	padding-bottom: 1em;
}

/* GoogleMAPの表示エリア
-------------------------------------------------------------- */
.map {
    margin: 0 auto;
	width: 100%;
	max-width: 1120px;
	max-height: 460px;
}
iframe {
    margin: 0 auto;
	width: 100%;
	max-height: 50vh;
}

/* ==============================================================
#footerInner
============================================================== */
#foot_info {
    width: 95%;
    max-width: 72rem;
    margin: 1em auto 3em;
	color: #555;
	line-height: 165%;
	font-size: 1em;
}
#formWrap {
	width: 95%;
	max-width: 72rem;
	margin: 0 auto 6em;
	color: #555;
	line-height: 120%;
	font-size: 1em;
}
#formWrap p {
	margin: 1em 0;
}
table.formTable{
	width: 100%;
	margin: 0 auto;
	border-collapse: collapse;
}
table.formTable td,table.formTable th{
	border: 1px solid #ccc;
	padding: 10px;
}
table.formTable th{
	width: 30%;
	font-weight: normal;
	background: #efefef;
	text-align: left;
}

/* 装飾
-------------------------------------------------------------- */
/* 動画スペース */
.videoCase {
    background: white;
    width: 100%;
    padding: 0;
    text-align: center;
}
.youtubeCase {
    max-width: 721px;
    margin: auto;
}
video {
    position: relative;
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}
.youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
.video iframe, .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}


@media(min-width: 768px){
    a[href^="tel:"]{	
        pointer-events: none;
    }
}
.pc {display: block;}
.mp {display: none;}

/*===============================================
●SmartPHONE　画面の横幅が480pxまで
===============================================*/
@media screen and (max-width:480px){
	body {
		font-size: 1em;
	}
	.contents {
		margin-bottom: 5em;
	}
	.entry {
		padding: 1em 0 2em;
		text-align: center;
	}
	table.formTable th, table.formTable td {
		width:auto;
		display:block;
	}
	table.formTable th {
		margin-top:5px;
		border-bottom:0;
	}
	input[type="text"], textarea {
		width:80%;
		padding:5px;
		font-size:110%;
		display:block;
	}
	input[type="submit"], input[type="reset"], input[type="button"] {
		display:block;
		width:100%;
		height:40px;
	}
    .videoCase {
        background: white;
    }
    video {
        width: 100%;
    }
    .fC_around > div, .fC_between > div {
        max-width: 100%;
    }

	#album {
		padding: .25em; 
	}
	.album > img {
		width: calc(50% - .125em);
		padding-bottom: .25em;
	}
	.pc {display: none;}
	.mp {display: block;}

}	/* 必須 */