@charset "utf-8";

/* -----------------------------------
共通
-------------------------------------*/

/*　見出し　
-------------*/
h2{
	font-size:36px; font-size:3.6rem;
	color:#355389;
	text-align: center;
	text-shadow: 
    #fff 2px 0 2px, #fff -2px 0 2px,
    #fff 0px -2px 2px, #fff -2px 0 2px,
    #fff 2px 2px 2px, #fff -2px 2px 2px,
    #fff 2px -2px 2px, #fff -2px -2px 2px,
    #fff 1px 2px 2px, #fff -1px 2px 2px,
    #fff 1px -2px 2px, #fff -1px -2px 2px,
    #fff 2px 1px 2px, #fff -2px 1px 2px,
    #fff 2px -1px 2px, #fff -2px -1px 2px,
    #fff 1px 1px 2px, #fff -1px 1px 2px,
    #fff 1px -1px 2px, #fff -1px -1px 2px;
	margin:50px 0;
}


/*　リンク　
-------------*/
.btn1, .btn2, .btn3{
	width: 100%;
	text-align: center;
	font-size:24px; font-size:2.4rem;
}

.btn1{
	padding: 50px 0;
}

.btn2{
	padding:0 0 50px 0;
	position : absolute;
	top :390px;
}

.btn3{
	margin-bottom:50px;
}


.btn1 a, .btn2 a, .btn3 a{
	color:#ff8400;
	box-sizing: border-box;
	padding:10px 15px;
	background-color: #fff;
	border: #ff8400 5px solid;
	border-radius:3px;
	-webkit-border-radius:3px;
	transition: all 0.3s;
	-moz-border-radius:3px;
}

.btn1 a:hover, .btn2 a:hover, .btn3 a:hover{
	color:#fff;
	background-color: #ff8400;
	border: #fff 5px solid;
	border-radius:3px;        
    -webkit-border-radius:3px;    
    -moz-border-radius:3px;
}

/*　background　
---------------*/
.section1 { 
	height: 600px;
	background:url(../img/top_01.jpg) no-repeat fixed;
	background-size:cover; 
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-position: center center;
	z-index: 1;
}

.section2 { 
	height: 600px;
	background: url(../img/top_02.jpg) no-repeat fixed;
	background-size: cover;
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-position: center center;
	z-index: 1;
}

.section3 { 
	height: 600px;
	background:url(../img/top_04.jpg) no-repeat fixed;
	background-size: cover; 
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-position: center center;
	z-index: 1;
}

/* -----------------------------------
内容
-------------------------------------*/

/*　メイン　
-------------*/
html,
body,
#main {
	height:100%;
	background-color:#eafafa;
}

#main{
	width:100%;width: 100vw;
  	height: 100vh;
	background-color:#eafafa;
	background:	url(../img/town_0.png) repeat-x left bottom,
	url(../img/main_line.gif) no-repeat left 50% bottom 100px;
	z-index:2;
	background-attachment: fixed;
	padding:120px 0 0 200px;
	position:relative;
}

#main p:first-child{
	position:absolute;
	left:17.5%;
	bottom:55%;
}

#main p:last-child{
	position:absolute;
	left:34%;
	bottom:46%;
}




/*　コンテンツ　
---------------*/
/* 共通 */
#cont1, #cont2, #cont3{
	width:100%;
	position: relative;
	z-index: 2;
}

#cont2{
	padding:50px 0;
}

.bk_1{
	position:absolute;
	width: 100%;
	top: -200px;
	background-color : transparent;
}

.bk_2{
	position:absolute;
	width: 100%;
	bottom: -150px;
	background-color : transparent;
}

.bk_3{
	position:absolute;
	width: 100%;
	top: -150px;
	background-color : transparent;
}

.bk_4{
	position:absolute;
	width: 100%;
	bottom: -100px;
	background-color : transparent;
}

/* cont1 */
.tuyomi{
	width:850px;
	margin:0 auto;
	overflow:hidden;
}

.tuyomi ol{
	margin:0 50px 0 0;
	padding:0 30px 30px 30px;
	width:250px;
	height:370px;
	box-sizing: border-box;
	background-color:#fff;
	float:left;
}

.tuyomi ol.t_last{
	margin:0;
}
.tuyomi ol li{
	width:190px;
}

.tuyomi ol li.tape{
	height:30px;
	position: relative;
}

.tuyomi ol li.tape p{
	width:100px;
	height:20px;
	background-color:#0049d0; 
	position:absolute;
	top:-10px;
	left:45px;
}

.tuyomi ol li.t_img, ty_2{
	text-align:center;
}

.tuyomi ol li.ty_1{
	text-align:center;
	font-size:20px; font-size: 2.0rem;
	font-weight: bold;
	color:#0049d0;
	padding:10px 0;
}

/* cont2 */
.box1{
	width: 1000px;
	height: 550px;
	margin: 0 auto;
	padding:0;
	background: url(../img/man.png) no-repeat;
	background-position:left 50% top 30px;
	position:relative;
}

.balloon1, .balloon2, .balloon3, .balloon4{
	width: 350px;
	height: 150px;
	padding-top: 10px;
  }

.balloon1 p, .balloon2 p, .balloon3 p, .balloon4 p{
	color:#fff;
	font-size:16px; font-size:1.6rem;
  }

.balloon1{
	background: url(../img/balloon_01.png) no-repeat center;
	position: absolute;
	left:40px;
	animation: bounce_2263 3.6s ease infinite;
	transform-origin: 50% 50%;
}

@keyframes bounce_2263 {
  0% { transform:translateY(0) }
  5.55556% { transform:translateY(0) }
  11.11111% { transform:translateY(0) }
  22.22222% { transform:translateY(-15px) }
  27.77778% { transform:translateY(0) }
  33.33333% { transform:translateY(-15px) }
  44.44444% { transform:translateY(0) }
  100% { transform:translateY(0) }
}

.balloon1 p{
	padding:25px 0 0 45px;
}

.balloon2{
	background: url(../img/balloon_03.png) no-repeat center;
	position: absolute;
	left:610px;
	animation: bounce_2263 4.0s ease infinite;
	transform-origin: 100% 90%;
}

@keyframes bounce_2263 {
  0% { transform:translateY(0) }
  5.55556% { transform:translateY(0) }
  11.11111% { transform:translateY(0) }
  22.22222% { transform:translateY(-10px) }
  27.77778% { transform:translateY(0) }
  33.33333% { transform:translateY(-10px) }
  44.44444% { transform:translateY(0) }
  100% { transform:translateY(0) }
}

.balloon2 p{
	padding:25px 0 0 70px;
}

.balloon3{
	background: url(../img/balloon_02.png) no-repeat center;
	position: absolute;
	left:40px;
	top:240px;
	animation: bounce_2263 3.4s ease infinite;
	transform-origin: 62% 38%;
}

@keyframes bounce_2263 {
  0% { transform:translateY(0) }
  5.55556% { transform:translateY(0) }
  11.11111% { transform:translateY(0) }
  22.22222% { transform:translateY(-12px) }
  27.77778% { transform:translateY(0) }
  33.33333% { transform:translateY(-12px) }
  44.44444% { transform:translateY(0) }
  100% { transform:translateY(0) }
}

.balloon3 p{
	padding:23px 0 0 60px;
}

.balloon4{
	background: url(../img/balloon_04.png) no-repeat center;
	position: absolute;
	left:610px;
	top:240px;
	animation: bounce_2263 4.5s ease infinite;
	transform-origin: 30% 70%;
}

@keyframes bounce_2263 {
  0% { transform:translateY(0) }
  5.55556% { transform:translateY(0) }
  11.11111% { transform:translateY(0) }
  22.22222% { transform:translateY(-8px) }
  27.77778% { transform:translateY(0) }
  33.33333% { transform:translateY(-8px) }
  44.44444% { transform:translateY(0) }
  100% { transform:translateY(0) }
}


.balloon4 p{
	padding:23px 0 0 100px;
}

.arrow{
	position : absolute;
	top :485px;
	left:465px;
}

.box2{
	width:800px;
	height:560px;
	background-color:#fff;
	margin: 0 auto;
	padding:35px 0 0 0; 
	margin-bottom:30px;
}

.box2 h3{
	font-size: 30px;
	font-weight:bold;
	text-align: center;
	font-family: "Rounded Mplus 1c"; 
}

.box2 p{
	text-align: center;
	padding:20px 0 50px 0;
}

.box2_in{
	width: 715px;
	margin: 0 auto;
}
.box2_in ol{
	margin:0 20px 0 0;
	width:160px;
	float:left;
}

.box2_in ol.in_last{
	margin:0;
}
.box2_in ol li{
	width:160px;
	text-align: center;
	color: #0049d0;
	font-size: 20px; font-size: 2.0rem;
}

/* cont3 */
#cont3{
	padding-bottom:100px;
}

#cont3 p{
	text-align: center;
	margin-bottom: 10px;
}
	
/* ドロップダウン */
.menu > li {
	text-align:center;
    width: 100%; 
	background-color:#fff;
	display: block;
    color: #2fcecd;
}

.menu > li:hover {
    color:#F7F7F7;
}

ul.menu__second-level {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
}

.menu > li:hover {
    background: #2fcecd;
    -webkit-transition: all .5s;
    transition: all .5s;
}

/* 下矢印 */
.arrow_01 {
	display: block;
	width: 18px;
	height: 18px;
	border-top: 4px solid #2fcecd;
	border-right: 4px solid #2fcecd;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	position:absolute;
	top:15%;
	right:20%;
}

/* floatクリア */
.menu:before,
.menu:after {
    content: " ";
    display: table;
}

.menu:after {
    clear: both;
}

.menu {
    *zoom: 1;
}

/*************************************/

.menu > li.menu__single {
	width: 600px;
	margin: 0 auto 10px auto;
	border: #2fcecd 3px solid;
	border-radius:3px;        
    -webkit-border-radius:3px;    
    -moz-border-radius:3px;
	font-size: 24px; font-size: 2.4rem;
	font-weight: bold;
	font-family: 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','ＭＳ Ｐ明朝','MS PMincho',sans-serif;
    position: relative;
	cursor: pointer;
    cursor: hand;
}

.menu__second-level {
    position: absolute;
    top: 40px;
    width: 100%;
    background: #072A24;
	color:#fff;
	border-radius:3px;        
    -webkit-border-radius:3px;    
    -moz-border-radius:3px;
	font-size: 24px; font-size: 2.4rem;
   
}

.second_txt{
	padding:15px;
	font-size:14px;
	line-height:30px;
	text-align:initial;
	font-weight:initial;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

li.menu__single:hover ul.menu__second-level {
    top: 50px;
    visibility: visible;
    opacity: 1;
}

