/* ! normalize.css v1.0.0 | MIT License | git.io/normalize */
@charset "UTF-8";


 .loadingWrap {
 width: 100%;/*100%で全画面表示*/
 height: 100%;/*100%で全画面表示*/
 background: #fff;/*背景色*/
 position: fixed;
 top: 0;/*画面上部からの位置*/
 left: 0;/*画面左部からの位置*/
 z-index: 150;/*レイヤー(この他にpositionを使用していない場合は不要)*/
}
.loadingWrap .loader {
	position: absolute;
    top: 50%;
    left: 50%;
	margin: auto;/*画像位置調整(-画像高さの半分 0 0 -画像幅の半分)*/
}

.wrap {
  display: flex;
  justify-content: center;
  position: absolute;
  width: 100%;
  height: 100%;
  align-items: center;
}
.circle {
  width: 20px;
  height: 20px;
  margin: 10px;
  border-radius: 50%;
}
.circle-blue {
  background: #4185F4;
  animation: wave 1000ms ease-in-out infinite;
}
.circle-red {
  background: #EA4235;
  animation: wave 1000ms 100ms ease-in-out infinite;
}
.circle-yellow {
  background: #F9BD00;
  animation: wave 1000ms 200ms ease-in-out infinite;
}
.circle-green {
  background: #33A853;
  animation: wave 1000ms 300ms ease-in-out infinite;
}

@keyframes wave {
  0% {
    transform: translateY(-10px); 
  }
  50% {
    transform: translateY(10px); 
  }
  100% {
    transform: translateY(-10px); 
  }
}

/* ==========================================================================
Buttons
========================================================================== */
.learn-btn, .download-btn {
	width: 100%;
	height: auto;
	display: block;
    padding: 18px 0;
    border: 2px solid #000;
    border-radius: 3px;
    color: #000;
    font-size: 14px;
	font-family: 'Mallanna', sans-serif;
	letter-spacing: 0.1em;
}

.learn-btn:hover,.learn-btn:focus {
    color: #555;
	border-color:#555;
    text-decoration: none;
}

.read-more-btn {
    display: inline-block;
    color: #311436;
    text-transform: uppercase;
    font-weight: 400;
}
.read-more-btn i, .download-btn i {
    margin-left: 5px;
	color:#fff;
	font-size:1.3em;
}
.showcase .download-btn {
    margin-top: 50px
}
.download .download-btn {
    margin-top: 25px
}



/* ==========================================================================
Hero
========================================================================== */

.hero {
    position: relative;
    padding: 0 0 0 0;
    color: #FFF;
	background:#fff;
}

.hero .container {
	top: 10%;
	position: relative;
	width:auto;
	margin:0;
	padding:0;
}


.hero .col-md-6 {
	float: right;
	text-align: right;
}

.hero .icon_i{
	position:absolute;
    top: 60px;
    left: 10px;
    width: 47px;
}

.hero .icon_i img{
	width:100%;
	display:block;
	border-radius: 50%;	
	box-shadow: 0px 0px 15px rgba(0,0,0,0.4);
}

.hero .icon_i:hover{
	opacity:0.7;
}

.hero .images{
	width:100%;
	max-width: 1580px;
	margin:0 auto;
	padding:0;
	position:relative;
}
.hero .images.rotate_in{
    -webkit-animation: rotate_in_anime 1.6s cubic-bezier(.65,.18,0,1.04);
    -moz-animation: rotate_in_anime 1.6s cubic-bezier(.65,.18,0,1.04);
    -ms-animation: rotate_in_anime 1.6s cubic-bezier(.65,.18,0,1.04);
    -o-animation: rotate_in_anime 1.6s cubic-bezier(.65,.18,0,1.04);
    animation: rotate_in_anime 1.6s cubic-bezier(.65,.18,0,1.04);

}

@-webkit-keyframes rotate_in_anime {
	0% {
		-webkit-transform: rotate(-10deg) scale(1.8,1.8);
	}
	100% {
		-webkit-transform: rotate(0deg) scale(1,1);
	}
}
@-moz-keyframes rotate_in_anime {
	0% {
		-moz-transform: rotate(-10deg) scale(1.8,1.8);
	}
	100% {
		-moz-transform: rotate(0deg) scale(1,1);
	}
}
@-ms-keyframes rotate_in_anime {
	0% {
		-ms-transform: rotate(-10deg) scale(1.8,1.8);
	}
	100% {
		-ms-transform: rotate(0deg) scale(1,1);
	}
}
@-o-keyframes rotate_in_anime {
	0% {
		-o-transform: rotate(-10deg) scale(1.8,1.8);
	}
	100% {
		-o-transform: rotate(0deg) scale(1,1);
	}
}
@keyframes rotate_in_anime {
	0% {
		transform: rotate(-10deg) scale(1.8,1.8);
	}
	100% {
		transform: rotate(0deg) scale(1,1);
	}
}

.hero img {
	width: 100%;
	height: auto;
}


.hero img.top_img{
	width: 100%;
	height: auto;
	position:absolute;
	opacity:0;
	top:0;
	left: 0;
}

.hero img.top_img_sp{
	width: 100%;
	height: auto;
	position:absolute;
	top:0;
	left:0;
	opacity:0;
}

/*タイトル*/
.hero img.mov01{
	transition-duration:1.5s;
	transition-delay:1.7s;
    top: 0%;
}

/*公開表記*/
.hero img.mov02{
	transition-duration:1s;
	transition-delay:3.5s;
    top: -2%;
}

/*メインビジュアル*/
.hero img.main01{
	transition-duration:0.5s;
	transition-delay:0;
}

.hero img.main02{
	transition-duration:0.5s;
	transition-delay:0.2s;
}

.hero img.main03{
	transition-duration:0.5s;
	transition-delay:0.35s;
}

.hero img.main04{
	transition-duration:0.5s;
	transition-delay:0.5s;
}

.hero img.main05{
	transition-duration:0.5s;
	transition-delay:0.65s;
}

.hero img.main06{
	transition-duration:0.5s;
	transition-delay:0.7s;
}

.hero a.search{
    top: 45.2%;
    left: 38%;
    /* left: auto; */
    width: 4.6%;
    height: 5.3%;
    display: block;
}


/*タイトル*/
.hero img.mov01_sp{
	transition-duration:1s;
	transition-delay:0.85s;
}

/*公開表記*/
.hero img.mov02_sp{
	transition-duration:1s;
	transition-delay:1.7s;
}

.hero .type-wrap{
    top: 46.6%;
    left: 9.8%;
    font-size: 0.85vw;
}







/* ==========================================================================
grnv
========================================================================== */

.grnv i {
    margin-left: 8px;
	/*color:#053e7d;*/
}

.menu{
	text-align:center;
}

.grnv ul {
	width: 100%;
	height: auto;
	overflow: hidden;
	margin:0 auto;
	padding:0 0 3.5% 0 ;
	text-align:center;
}

.grnv02 ul {
	width: 100%;
	height: auto;
	overflow: hidden;
	margin:0 auto;
	text-align:center;
	letter-spacing: -.40em;
}


.grnv{
	background:#fff;
	margin:20px 0 0;
	padding:0;
	position:relative;
	text-align:center;
}

.grnv img{
	margin:0;
	padding:0;
}

.grnv_banner{
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.grnv_banner:hover{
	opacity:0.8;
}

.grnv ul li {
	width: 20%;
	height: auto;
	overflow: hidden;
	margin: 0 0.5% 0 0;
	list-style: none;
	float: none;
	max-width:165px;
	display:inline-block;
	letter-spacing: normal;
}

.sns {
    width: 50%;
    margin: 10px auto 0 auto;
    display: block;
    position: relative;
}

.sns li {
    display: inline-block;
    margin: 0;
    padding: 0;
    position: relative;
}

.sns li:last-child {
    top: 4px;
}

.sns li:first-child {
    top: 4px;
}


.sns li {
    width: auto;
    height: auto;
    overflow: hidden;
    margin: 0 0.5% 0 0;
    list-style: none;
    float: none;
    max-width: inherit;
    display: inline-block;
}


.grnv a.banners{
	width:200px;
	display:block;
	margin:0 auto;
	padding:5px;
	background:#fff;
}

.grnv a.banners:hover{
	opacity:0.8;
}

/* ==========================================================================
intro sec01
========================================================================== */

.intro{
	margin: 0;
	padding: 0;
	background: #fff;
}


.intro .conts{
	margin: 0 auto;
	padding: 10% 5%;
	background: #fff;
	max-width: 1000px;
}

.intro h2{
	margin: 0 auto;
	padding: 0;
	width: 11em;
	max-width: 100%;
}

.intro h3{
	margin: 0 auto;
	margin-top: 10%;
	padding: 0;
	text-align: center;
	font-size: 18px;
	font-weight: normal;
    line-height: 1.6em;
}

.intro p{
	margin: 0 auto;
	margin-top: 3%;
	padding: 0;
	line-height: 1.7em;
	font-weight: 700;
}

.intro_bg{
	background: url(../img/intro_img01.jpg) no-repeat;
	background-size: cover;
	background-attachment: fixed;
	background-position: center;
}


/* ==========================================================================
gallery sec02
========================================================================== */

.gallery{
	background: #fff;
	margin: 0;
	padding: 0;
}




/* ==========================================================================
story sec03
========================================================================== */

.story{
	margin: 0 auto;
	padding: 0;
	background: url(../img/story_bg.jpg)  no-repeat;
	background-color: #fff;
	background-size: 100% auto;
	background-position: bottom;
}

.story .conts{
	margin: 0 auto;
	padding: 10% 5% 40.6% ;
	max-width: 1000px;
}


.story h2{
	margin: 0 auto;
	padding: 0;
	width: 4em;
}

.story h3{
	margin: 0 auto;
	margin-top: 10%;
	padding: 0;
	text-align: center;
	font-size: 18px;
	font-weight: normal;
    line-height: 1.6em;
	color: #ff9000;
	font-weight: bold;
}

.story h4{
	margin: 0 auto;
	text-align: center;
	margin-top: 3%;
	padding: 0;
	line-height: 1.7em;
	font-weight: 700;
}

.story p{
	margin: 0 auto;
	margin-top: 3%;
	padding: 0;
	line-height: 1.7em;
	width: 55%;
}

.story .stripe{
	margin: 0 auto;
	width: 1px;
	background: #000;
	height: 38px;
	display: block;	
	margin-top: 3%;
}



/* ==========================================================================
note sec03
========================================================================== */


.note{
	margin: 0;
	padding: 0 0 58% 0;
	background: url(../img/note_bg.jpg) no-repeat;
	background-color: #fff;
	background-size: 100% auto;
	background-position: bottom;	
}

.note_bg{
	background: url(../img/note_img01.jpg) no-repeat;
	background-size: cover;
	background-attachment: fixed;
    background-position: center;
}


.note .conts{
	margin: 0 auto;
	padding: 10% 5%;
	max-width: 1000px;
}

.note h2{
    margin: 0 auto;
    padding: 0;
    width: 18em;
	max-width: 100%;
}

.note .note_links{
	margin: 20% auto 0;
	padding:  0;
}

.note .note_links img{
	border-radius: 5px;
}

.note .note01{
    top: 0;
    left: 0;
    width: 48.5%;
}

.note .note01:hover{
    top: 1%;
}

.note .note02{
    top: 0;
    right: 0;
    width: 48.5%;
}

.note .note02:hover{
    top: 1%;
}

.note .note03{
    top: 27%;
    left: 0;
    width: 48.5%;
}

.note .note03:hover{
    top: 28%;
}

.note .note04{
    top: 37.4%;
    right: 0;
    width: 48.5%;
}

.note .note04:hover{
    top: 38.4%;
}

.note .note05{
    bottom: 0;
    left: 0;
    width: 48.5%;
}

.note .note05:hover{
    bottom: -1%;
}

.note .note06{
    bottom: 0;
    right: 0;
    width: 48.5%;
}

.note .note06:hover{
    bottom: -1%;
}

.note .absolute span{
	z-index: 1;
}

.note .absolute span:after{
    content: "";
    position: absolute;
    z-index: -1;
    width: 120%;
    height: 120%;
    display: block;
}

.note .note01 span:after{
    background: url(../img/note_01bg.png) no-repeat;
    background-size: 100%;
    top: -10%;
    left: -10%;
}

.note .note02 span:after{
    background: url(../img/note_02bg.png) no-repeat;
    background-size: 100%;
    top: 2.5%;
    left: -10%;
}

.note .note03 span:after{
    background: url(../img/note_03bg.png) no-repeat;
    background-size: 100%;
    top: 2.5%;
    left: -10%;
}

.note .note04 span:after{
    background: url(../img/note_04bg.png) no-repeat;
    background-size: 100%;
    top: 2.5%;
    left: -10%;
}

.note .note05 span:after{
    background: url(../img/note_05bg.png) no-repeat;
    background-size: 100%;
    top: 2.5%;
    left: -10%;
}

.note .note06 span:after{
    background: url(../img/note_06bg.png) no-repeat;
    background-size: 100%;
    top: -10%;
    left: -10%;
}


/* ==========================================================================
route sec03
========================================================================== */

.route{
	margin: 0;
	padding: 0;	
}

.route_conts{
	width: 90%;
	padding: 0;
	margin: auto;
	top: 26%;
	left: 0;
	right: 0;
	max-width: 520px;
}

.route .search{
	background: #fff;
	box-shadow: 0px 3.5px 5px rgba(0,0,0,0.45);
	border-radius: 5px;
	transition-duration: 0.5s;
}

.route .route_icon_01{
	width: 65px;
	display: inline-block;
}

.route .route_icon_02{
	width: 135px;
	display: inline-block;
	top: 0;
	right: 0;
	font-size: 20px;
	vertical-align: middle;
}

.route a:hover .search{
	box-shadow: 0px 10px 15px rgba(0,0,0,0.45);
}

.type-wrap{
	display: inline-block;
	font-size: 20px;
	vertical-align: middle;
	color: #000;
}

.route .boy{
	margin: 8% 0 0 0;
	padding: 0;	
	letter-spacing: -.40em;
}




.route .boy img{
	margin: 0 5% 0 0;
	padding: 0;	
	width: 15%;
	border-radius: 50%;
	border: 4px solid #ffff00;
	display:inline-block; 
	letter-spacing: normal; 
	vertical-align: top;
}

.route .boy p{
	margin: 0;
	padding: 0;	
	width: 80%;
	display:inline-block; 
	letter-spacing: normal; 
	vertical-align: top;
	color: #fff;
	font-weight: 700;
}


/* ==========================================================================
cast sec03
========================================================================== */


.cast{
	margin: 0;
	padding: 0 0 15% 0;
	background: url(../img/cast_bg.jpg) no-repeat;
	background-color: #d5f0f9;
	background-size: 100% auto;
	background-position: bottom;	
}


.cast .conts{
	margin: 0 auto;
	padding: 10% 5%;
	max-width: 1000px;
}

.cast_link{
	margin-top: 10%;
}

.cast h2{
    margin: 0 auto;
    padding: 0;
    width: 3.7em;
}

.cast ul{
	width: 48.5%;
	margin: 0;
	padding: 0;
	display: block;
	box-shadow: 0px 3px 10px rgba(0,0,0,0.24);
}

.cast .cast_ul01{
	float: left;
}

.cast .cast_ul02{
	float: right;
}

.cast li a{
	margin: 0;
	padding: 0;
	display: block;
	background: #fff;
	border-bottom: 1px #b6babc solid;
}

.cast li:nth-last-child(1) a{
	border-bottom: none;
}

.cast li a:hover{
	background: #eee;
	box-shadow: 0 3px 10px rgba(0,0,0,0.24) inset;
}



/* ==========================================================================
staff sec03
========================================================================== */


.staff{
	margin: 0;
	padding: 0;
	background: url(../img/staff_bg.jpg) no-repeat;
	background-color: #fff;
	background-size: 100% auto;
	background-position: top;	
}


.staff .conts{
    margin: 0 auto;
    padding: 10% 5% 5%;
    max-width: 1000px;
}


.staff h2{
    margin: 0 auto;
    padding: 0;
    width:4.5em;
}

.staff .director{
	margin: 0;
	padding: 2.5% 5%;
	background: #fff;
	border-radius: 5px;
	letter-spacing: -.40em;
    margin-top: 22%;
	box-shadow: 0 3px 10px 6px rgba(0,0,0,0.24);
}

.staff .director img{
	margin: 0 5% 0 0;
	padding: 0;
	border-radius: 50%;
	width: 25%;
	display:inline-block; 
	letter-spacing: normal; 
	vertical-align: top;
}

.staff .director .director_txt{
	margin: 0;
	padding: 0;
	border-radius: 50%;
	width: 70%;
	display:inline-block; 
	letter-spacing: normal; 
	vertical-align: top;
}

.staff .director h3{
	margin: 0;
	padding: 0;
	font-size: 20px;
	padding-top: 15px;
}

.staff .director h3 span{
	margin: 0;
	padding: 0;
	font-size: 14px;
	color: #1854ff;
}

.staff .director a{
	background: #628dff;
	padding:  10px ;
	display: inline-block;
	float:right;
	color: #fff;
	border-radius: 3px;
	transition-duration: 0.3s;
}


.staff .director a:hover{
	color: #fff;
	box-shadow: 0px 2px 5px rgba(0,0,0,0.3) inset;
}


/* ==========================================================================
end sec03
========================================================================== */

.ending{
	margin: 0;
	padding: 0;
}


.ending .conts{
    margin: 0 auto;
    padding: 5% 5% 10% 5%;
    max-width: 1000px;
}



.ending dl{
	margin: 0;
	padding: 0;
	width: 40%;
}



.ending dl.end_dl01{
	float: left;
}


.ending dl.end_dl02{
	float: right;
    padding-top: 4.6%;
}


.ending dl dt{
	margin: 0 auto;
	padding: 0 0 8% 0;
	width: 60%;
	
}

.ending dl dd{
	margin: 0 auto;
	padding: 0;
}


/* ----------------------------------------------------------------
	note_dit
-----------------------------------------------------------------*/

.note_dit{
	padding: 5%;
}

#content01{
	background:url(../img/note_modal/01-compressor.jpg) no-repeat;
	background-size:cover;
	background-position:12% top;
	color: #fff;
    padding-top: 15%;
}

#content02{
	background:url(../img/note_modal/02-compressor.jpg) no-repeat;
	background-size:cover;
	background-position:center ;
	color: #fff;;
    padding-top: 15%;
}

#content03{
	background:url(../img/note_modal/03-compressor.jpg) no-repeat;
	background-size:cover;
	background-position: right center;
	color: #fff;
    padding-top: 25%;
}

#content04{
	background:url(../img/note_modal/04-compressor.jpg) no-repeat;
	background-size:cover;
	background-position:center;
	color: #fff;
    padding-top: 25%;
}

#content05{
	background:url(../img/note_modal/05-compressor.jpg) no-repeat;
	background-size:cover;
	background-position:center;
	color: #fff;
    padding-top: 15%;
}

#content06{
	background:url(../img/note_modal/06-compressor.jpg) no-repeat;
	background-size:cover;
	background-position:center;
	color: #fff;
    padding-top: 35%;
}

.modal-contents{
	display:block;
	max-width: 650px;
	margin:0;
	padding: 3%;
	background: rgba(255,255,255,0.78);
	color: #000;
}

#content02 .modal-contents{
	max-width: 440px;
}


#content03 .modal-contents{
	max-width: 440px;
}

#content04 .modal-contents{
	max-width: 800px;
	float: right;
}

#content06 .modal-contents{
	max-width: 800px;
	float: right;
}


.note_dit h2{
	margin:0 auto;
	padding:0 0 5% 0%;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.7em;
}

.note_dit p{
	width:100%;
	margin:0;
	padding:0;
	font-size:14px;
	line-height: 2em;
}

.close_a{
	position:fixed;
    top: 15px;
    left: 15px;
}

.close_button{
	width:50px;
	height:50px;
	margin:0;
	padding:0;
	display:block;
}

.modal-contents .close_button{
	width:150px;
	height:auto;
	margin:3% auto;
	padding:0;
	display:block;
}

.modal-contents span.border{
	display: block;
	margin: 0 auto 5%;
	padding: 0;
	width: 1px;
	height: 140px;
	background: #fff;
}


.cf_dit h2{
	width:53%;
	margin:0 auto;
	padding:50px 0 30px 0;
}

.cf_dit p{
	width:100%;
	margin:0;
	padding:30px 0 0 0;
	font-size:14px;
	line-height: 2em;
}


.cast_staff{
	padding: 15% 10%;
	text-align: center;
}

.cast_img{
	width: 35%;
	max-width: 117px;
	margin: 0 auto;
	padding-bottom: 5%;
}

.cast_staff section{
	max-width: 650px;
	margin: 0 auto;
}

.cast_staff h2{
	font-size: 18px;
	margin: 0;
	padding: 0;
}

.cast_staff h2{
	font-size: 18px;
	margin: 0;
	padding: 0;font-weight: 700;
}

.cast_staff p{
	font-size: 14px;
	margin: 0;
	padding: 8% 0 0 0;
	color: #000;
}

.cast_staff p.conts{
	font-size: 12px;
	padding: 0.5em 0 0 0;
	color: #888;
}

.cast_staff .button_cg{
    width: 100px;
    padding: 0;
	margin: 0 auto;
	margin-top: 20%;
}

.cast_staff .button_cg a{
	display: block;
}

.cast_staff .button_cg img{
    padding: 0;
	margin: 0 auto;
}

.cast_staff .staff_img{
	border-radius: 50%;
}








/* ==========================================================================
map
========================================================================== */

.map{
	background: #f4f4f4;
}

.map header{
	background: url(../img/map_header.jpg) no-repeat;
	background-size: cover;
}

.map_title{
	margin: 0 auto;
	padding: 3% 0 0;
	width: 90%;
	max-width: 650px;
}


.map_title .map_logo{
	width: 60%;
	margin: 0 auto;
}

.map_title .search{
	background: #fff;
	box-shadow: 0px 3.5px 5px rgba(0,0,0,0.45);
	border-radius: 5px;
	transition-duration: 0.5s;
	margin: 5% 0 0 0;
	padding: 1.5% 0;
}

.map_title .route_icon_01{
	width: 65px;
	display: inline-block;
}

.map_title .route_icon_02{
    width: 135px;
    display: inline-block;
    top: 12.8%;
    right: 0;
    font-size: 20px;
    vertical-align: middle;
}

.map_title a:hover .search{
	box-shadow: 0px 10px 15px rgba(0,0,0,0.45);
}

.map_title .type-wrap{
	display: inline-block;
	font-size: 20px;
	vertical-align: middle;
	color: #000;
}

.map_title .boy{
    margin: 5% 0 0 0;
    padding: 0;
    letter-spacing: -.40em;
    text-align: center;
    position: relative;
    top: 42px;
}

.map_title .boy img{
	margin: 0 auto;
	padding: 0;	
	width: 100px;
	border-radius: 50%;
	display:inline-block; 
	letter-spacing: normal; 
	vertical-align: top;
}

.map_title .boy p{
	margin: 0;
	padding: 0;	
	width: 80%;
	display:inline-block; 
	letter-spacing: normal; 
	vertical-align: top;
	color: #fff;
	font-weight: 700;
}

.google_map iframe{
	/*pointer-events: none;*/
	position: relative;
	z-index: -1;
}


.map_conts{
	margin: 0 auto;
	padding: 0 5%;
	margin-top: -4%;
	position: relative;
}

.map_conts .conts{
	margin: 0 auto;
	padding: 5% 10%;
	max-width: 1000px;
	background: #fff;
	box-shadow: 0px 0px 30px 10px rgba(0,0,0,0.07);
	border-radius: 8px;
}

.map_conts h2 {
    margin: 0 auto;
    padding: 0 0 7% 0;
    font-size: 18px;
    line-height: 1.6em;
    font-weight: bold;
}

.map_conts p {
    margin: 0 auto;
    padding: 0 0 9% 0;
}

.conts_img{
	margin: 0;
	padding: 0;
}

.conts_img img{
	margin: 0;
	padding: 0;
	width: 68%;
	float: left;
}

.conts_img p{
	margin: 0;
	padding: 0;
	width: 29%;
	float: right;
}






.map_gallery{
	margin: 0 auto;
	padding: 0 5%;
	position: relative;
}

.map_gallery h2{
	margin: 0 0 1.5% 0;
	padding: 0;
}

.map_gallery .conts{
	margin: 2% auto;
	padding:  0;
	max-width: 1000px;
	border-radius: 8px;
}

.map_gallery img.absolute{
	top: 0;
	left: 0;
	border-radius: 8px;
}


.map_gallery img.map_gi01{
    width: 57.2%;
}

.map_gallery img.map_gi02{
    width: 40.2%;
	left: auto;
	right: 0;
}

.map_gallery img.map_gi03{
    width: 40.2%;
    /*top: 34.9%;*/
	top: 0;
}

.map_gallery img.map_gi04{
    width: 57.2%;
	left: auto;
	right: 0;
    /*top: 34.8%;*/
	top: 0;
}

.map_gallery img.map_gi05{
    width: 51.5%;
    top: auto;
	bottom: 0;
}

.map_gallery img.map_gi06{
    width: 46.5%;
    top: auto;
    bottom: 0;
    left: auto;
    right: 0;
}



.map_int{
	margin: 0 auto;
	padding: 0;
	position: relative;
	margin-bottom: 5%;
}

.map_int .conts{
	margin: 0 auto;
	width: 90%;
	max-width: 1000px;
    margin-top: -20%;
    position: relative;
}

.map_int .conts h2{
	margin: 0 0 3% 0;
	padding: 0;
	width: 65%;
}

.map_int .map_int_txt{
	margin: 0 auto;
	padding: 5% 10%;
	background: #fff;
	box-shadow: 0px 0px 30px 10px rgba(0,0,0,0.07);
	border-radius: 8px;
}

.map_int_txt p {
	margin: 0 0 5% 0;
}

.map_int_txt p:nth-last-child(1) {
	margin: 0;
}

.map_int_txt span {
	color: #000;
    margin: 0 auto;
    padding: 0 0 0.8em 0;
	display: block;
    font-size: 18px;
    line-height: 1.6em;
    font-weight: bold;
}

.map_int_txt span:first-letter {
	color: #fff200;
}
