@charset "UTF-8";
/* CSS Document */

body {
	background-color:#f8fcff;
	font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", "游ゴシック", sans-serif;
	font-size: 20px;
	margin: 0;
	padding: 0;
}
h1, h2, h3, p, div, main, footer {
	margin: 0;
	padding: 0;
}
img {
	vertical-align: bottom;
}
a:link {
color: #449bbd;
text-decoration: none;
}
a:visited {
color: #3274a4;
text-decoration: none;
}
a:hover {
color: #de5353;
text-decoration: none;
}

#wrapper {
width: 1200px;
margin: 0 auto;
line-height: 2.0;
position: relative;
}
header p {
  text-align: right;
  padding: 2px 20px 10px;
}
#logo a {
  border-bottom: 0;
}
#logo {
position:absolute;
 top: 10px;
 right: 40px;
text-align: right;
 width: 400px;
}


.lang {
text-align: right;
line-height: 1;
padding: 50px 100px 0;
font-size: 1.5rem;
}


.lang a {
color: #449bbd;
}
.lang a:hover {
  color: #ea3084;
}
.lang a:visited {
color: #4c6cc6;
}

/* main */
main {
width: 1200px;
padding: 10px 0 0;
margin: 0 auto;
line-height: 2.2;
}
main p {
width: 1000px;
padding: 0px;
text-align: justify;
}
div.gaiyo {
margin: 30px auto;
padding: 40px;
width: 1000px;
}

/* work */
.bg {
  background: url(img/bg.jpg) no-repeat;
}
.work {
width:1200px;
min-height:1400px;
margin: 70px auto 0;
padding:0;
position: relative;
}
.work01 {
position: absolute;
top:120px;
left: 560px;
}
.work02 {
position: absolute;
top:370px;
left: 80px;
}
.work03 {
position: absolute;
top:800px;
left: 560px;
}


.cap {
position: absolute;
width: 440px;
margin: 0px auto;
top: 100px;
left: 100px;
color: #000;

}
.cap p {
width: 420px;
line-height:1.6;
font-size: 0.85rem;
padding: 0;

}

/* event以下 */
#evin {
  padding: 0px 0 30px;
  margin: 0 auto;
  width: 1200px;
  line-height: 1.3;
  min-height: 700px;
}
#evin p, h3, #evin h4, .evinfo{
  width: 920px;
  margin: 0 auto;
}
h3 {
padding: 3em 0 0.5em;
font-family: serif;
font-weight: bold;
font-size: 1.8rem;
}
h4 {
font-weight: normal;
padding-bottom: 1rem;
font-size: 1.2rem;
font-weight: bold;
}

/* 普通の太さ */
.nom {
 font-weight: normal;
}

/* event */
.evinfo {
width: 920px;
margin: 0 auto;
line-height: 1.8;
position: relative;
padding: 3em 1em;
}

.chira {
position: absolute;
top: 140px;
left: 700px;
width: 250px;
}


.chira p {
font-size: 0.75rem;
line-height: 1.7;
padding-top: 0.5rem;
}
.chira img {
  border: 1px solid #ccc;
}

/* info */
p.toi {
padding-top: 2.5rem;
}

.sst {
padding-top: 4em;
text-align: left;
}
.in05 {
padding-left: 5em;
display: inline-block;
}
.in07 {
padding-left: 7em;
display: inline-block;
}
footer {
padding: 20px 0 20px;
text-align: center;
font-size: 0.85em;
background-color: #f8fcff;
margin-top: 0;
}

#mov {
margin: 0px auto 0;
width: 700px;
text-align: center;
}
#mov p {
text-align: center;
font-size: 1.2rem;
line-height: 2.5;
padding: 0;
margin: 0;
width: 700px;
color: #fff;
}




/* english */
#eng {
 /*text-align: justify;*/
 font-size: 18px;
 font-family: Arial, Helvetica, sans-serif;
 line-height: 1.7;
}
.wor {
  font-style: italic;
}

.cap2  {
width: 200px;
line-height:1.7;
font-size: 0.7rem;
text-align: left;
padding: 10px 0;
position: absolute;
top:170px;
right: 120px;
color: #fff;
}



/*　レスポンシブ　*/

@media screen and (max-width: 640px){
body {
width: 100%;
}
#wrapper {
width: 100%;
margin: 0 auto;
font-size: 18px;
/*background: #1f211b url(img/bg_s.png) repeat-y center top;
background-size:100%;*/
position: relative;
}
#logo {
position:absolute;
top: -17px;
right: 10px;*/
text-align: right;
padding: 0;
margin: 0;
}
#logo img {
width: 30%;
}
.lang {
text-align: right;
line-height: 1;
padding: 10px 20px 0;
font-size: 0.8em;
}
p.cap1 {
position: relative;
top:0;
left:10px;
padding-left: 2em;
font-size: 10px;
line-height: 1.6;
text-align: left;
}
header img {
width: 100%;
}
header h1 {
width: 100%;
}

main {
width: 100%;
padding: 0 0 20px;
margin: 0 auto;
line-height: 2;
}
main p {
width: 90%;
margin: 0 auto;
padding: 0;
text-align: justify;
}
div.gaiyo {
margin: 40px auto 10px;
padding: 15px;
width: 85%;
}

/* bg */
.bg {
  background: url(img/bg.jpg) no-repeat;
}

/* work */
.work {
width:100%;
margin: 70px auto 0;
padding:0;
position: relative;
text-align: center;
}
.work01 {
position: relative;
top:0;
left: 0;
padding: 5% 0;
margin: 10px auto;
}
.work01 img {
width: 80%;
}
.work02 {
position: relative;
top:0;
left: 0;
padding: 5% 0;
margin: 10px auto;
}
.work02 img {
width: 80%;
}

.work03 {
position: relative;
top:0;
left: 0;
padding: 5% 0;
margin: 10px auto;
}
.work03 img {
width: 80%;
}

.cap {
position: relative;
width: 80%;
margin: 0px auto;
padding-top: 10px;
top: 0;
left: 0;

}
.cap p {
width: 100%;
line-height:1.6;
font-size: 0.85rem;
padding: 0;
text-align: left;
}
#mov{
width: 90%;
text-align: center;
}
#mov p, #mov iframe {
width: 100%;
}

/* event以下 */
#evin {
position: relative;
padding: 0;
margin: 10px auto;
line-height: 1.3;
width:100%;
}
#evin p {
width: 95%;
}

h3 {
padding-top: 1em;
margin-bottom: 0.2em;
}
h3 img {
/*width: 9rem;*/
}
h4 {
font-weight: normal;
line-height: 1;
margin: 0;
font-size: 1.1em;
font-weight: bold;
width: 10rem;
}
/* 普通の太さ */
.nom {
 font-weight: normal;
}

/* event */
.evinfo {
width: 90%;
margin: 0 auto;
line-height: 2;
position: relative;
padding: 1em 0;
}
.chira {
position: relative;
width: 90%;
margin: 50px auto 20px;
padding-left: 0;
line-height: 1.7;
font-size: 0.75em;
left: 0;
top: 0;
}

footer {
width: 90%;
padding: 15px 5px 10px;
text-align: center;
font-size: 0.8em;
margin: 0 auto;
line-height: 1.5;
}

#mov{
width: 90%;
text-align: center;
}
#mov p, #mov iframe {
width: 100%;
}

/* 英語ページ　スマホ版 */
#eng p{
line-height: 1.7;
text-align: left;
}
#eng .lang {
text-align: right;
}
#eng #logo {
text-align: right;
position:absolute;
top: -10px;
right: 10px;
text-align: right;
padding: 0;
margin: 0;
}