@charset "UTF-8";

@import url("reset.css");
 /* @import url("color.css"); */

  /*HTMLに対する基本設定*/
html {
  width: 100%;/*HTMLがスクロールバーを避けて表示してしまうのを防ぐため*/
  min-width: 360px;/*iphone3/4のサイズ*/
  font-size: 62.5%;
}

body{
	font-family: YuGothic, "游ゴシック体", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 16px;
  letter-spacing: .025em;
  line-height: 1.8;
  margin: 0;
}




/* SPーーーーーーーーーーーーーーーーーーーーーーーーー */
@media screen and (max-width: 768px){
	header {
		position: relative;
		width: 100%;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		flex-wrap: wrap;

	}
	h1 {
	margin: 16px 0 20px 16px;

	}
	/*　ハンバーガーボタン　*/
	.hamburger {
	position: absolute;
	xposition: fixed;
	z-index : 3;
	right : 16px;
	top   : 20px;
	width : 42px;
	height: 42px;
	cursor: pointer;
	text-align: center;
	background-image: url("../images/sp_menu.gif");
	background-position: center center;
	background-repeat: no-repeat;
	}
.hamburger span {
  display : block;
  position: absolute;
  width   : 30px;
  height  : 2px ;
  left    : 6px;
  background : #555;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
/* .hamburger span:nth-child(1) {
  top: 10px;
}
.hamburger span:nth-child(2) {
  top: 20px;
}
.hamburger span:nth-child(3) {
  top: 30px;
} */

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
  top : 16px;
  left: 6px;
  background :#fff;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 16px;
  background :#fff;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}

nav.globalMenuSp {
  display: none;
  xposition: fixed;
  z-index : 2;
  top  : 0;
  left : 0;
  color: #fff;
  background: #3b5b83;
  text-align: center;
  width: 100%;

}

nav.globalMenuSp ul {
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

nav.globalMenuSp ul li {
  font-size: 16px;
  list-style-type: none;
  padding: 0;
  width: 100%;

}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
}
nav.globalMenuSp ul li:hover{
  background :#ddd;
}

nav.globalMenuSp ul li a {
  display: block;
  color: #fff;
  padding: 1em 0;
  text-decoration :none;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
  opacity: 100;

}
  ul.utility {
    width: 100%;
    height: 30px;
    display: flex;
    flex-direction: row;

  }
  .utility li {
    width: 50%;
    height: 30px;
  }

  /* メイン＝＝＝＝＝＝＝＝＝＝＝ */

main {
  width: 100%;
  display: flex;
  flex-direction: column;
  position: relative;
  }
h2 {
  font-size: 30px;
  color: #fffffb;
  margin:1.4em 0;
  padding: 0.3em 0 0.3em 3.5em;
  background-color: #68b7a1;
  border: 2px solid #ffffff;
  box-shadow: 0px 0px 0px 5px #68b7a1;
  margin-bottom: 20px;
}


.sec1 h3 {
  font-size: 24px;
  margin:1.4em 1.4em;
 padding-left: 0.5em;
 border-bottom: 4mm ridge #68b7a1;
}
.course1 h4 {
  font-size: 20px;
  text-align: center;
}
.sec1 h4::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 22px;
  background-image:url(../images/haguruma_red.gif);
  background-size: contain;
  vertical-align: middle;
}
.sec1 p {
  padding: 20px  16px  20px  16px;
  font-size: 14px;
  line-height: 2em;
  margin-bottom: 20px;
  }
  .course2 h4 {
    font-size: 20px;
    text-align: center;
  }

  .course3 h4 {
    font-size: 20px;
    text-align: center;
  }
  .sec2 h3 {
    font-size: 24px;
    margin:1.4em 1.4em;
   padding-left: 0.5em;
   border-bottom: 4mm ridge #68b7a1;
  }
  .sec2 h4::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 22px;
    background-image:url(../images/haguruma_yellow.gif);
    background-size: contain;
    vertical-align: middle;
  }
  .sec2 P {
    padding: 20px  16px  20px  16px;
    font-size: 14px;
    line-height: 2em;
    xmargin-bottom: 20px;
    text-align: left;
  }
	.fig {
		margin-left: 80px;
	}
	.fig2 {
		display: none;
	}


 .course4 h4 {
  font-size: 20px;
  text-align: center;

}

  .course5 h4 {
    font-size: 20px;
    text-align: center;
  }
	.fig3 {
		display: none;
	}
  .course6 h4 {
    font-size: 20px;
    text-align: center;
  }


.sec2 h2 {
  position: relative;
  font-size: 30px;
  margin:1.4em 0;
  color: #fffffb;
  padding: 0.3em 0 0.3em 0.5em;
  background-color: #68b7a1;
}
.sec2 h2::after {
  position: absolute;
  content: '';
  top: 100%;
  left: 0;
  border-width: 0 20px 15px 0;
  border-style: solid;
  border-color: transparent;
  border-right-color: #c8baa7;
}


.sec2 a {
  border: 1px solid #ccc;
  background: #f1e767;
  background: -webkit-gradient(linear, left top, left bottom, from(#fdfbfb), to(#ebedee));
  background: -webkit-linear-gradient(top, #fdfbfb 0%, #ebedee 100%);
  background: linear-gradient(to bottom, #fdfbfb 0%, #ebedee 100%);
  -webkit-box-shadow: inset 1px 1px 1px #fff;
  box-shadow: inset 1px 1px 1px #fff;
}

.sec2 p:hover {
  background: -webkit-gradient(linear, left bottom, left top, from(#fdfbfb), to(#ebedee));
  background: -webkit-linear-gradient(bottom, #fdfbfb 0%, #ebedee 100%);
  background: linear-gradient(to top, #fdfbfb 0%, #ebedee 100%);
}
.course4,.course5,.course6 {
  margin-bottom: 20px;
}






#pagetop {
 display:inline-block;
 position:fixed;
 bottom:0;
 right:0;
}


#pagetop a {
	font-size: 6px;
  padding: 4px 4px;
  display:block;
  background:#008b8b;
  color:#fff;
  text-align:center;
}
footer {
  position: relative;
  width: 100%;
  height: 120px;
  background-color: #f4e9e3
}
footer ul {
  display:flex;
  flex-wrap: wrap;
  list-style: none;
  padding-left: 0;
  text-align:center;

}
footer li {
  font-size: 14px;
  xdisplay: inline-block;
  width:150px;
  margin: 10px 8px;
}
footer ul a {
	text-decoration: none;
}
small {
	text-decoration: overline;
	text-decoration-color: white;
	text-decoration-thickness: 3px;
	position: absolute;
	font-size: 12px;
	bottom: 0;
	left: 40%;
	transform: translateX(-30%);
}


}

/* PC＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
@media screen and (min-width:769px){
	body,main {
		width: 100%;
	}
	header {
    width: 1260px;
		padding-top: 20px;
		margin: 0 auto;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		flex-wrap: wrap;
		margin-bottom: 30px;
	}
  h1 {
		/* position: absolute;
		top: 20px;
		left: 100px; */
		order: 1;
	}
	.hamburger {
		display: none;
	}
	ul.utility {
		width: 600px;
		height: 46px;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		/* position: absolute;
		top: 50px;
		right: 100px; */
		order: 2;
	}
	.utility li {
		width: 290px;
		height: 46px;
	}
	nav{
		width: 100%;
		order:3;
	}
	nav ul {
		height: 70px;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		background-color: #68b7a1;
	}
	nav li {
		box-sizing: border-box;
		width: 200px;
		height: 70px;
		text-align: center;
		padding-top: 20px;
	}
	nav li:hover {
		background-color: #00a096;
	}
	nav a {
		font-weight: bold;
		color: white;
		text-decoration: none;
	}

	main {
		background-color: #68b7a1;
		position: relative;
		display: flex;
  	flex-direction: column;
  	justify-content: space-between;
  	flex-wrap: wrap;
	}
	h2 {
		font-size: 50px;
		color: #ffffff;
		font-family: "Yu Gothic";
	  color: rgb(255, 255, 255);
	  font-weight: bold;
	  text-shadow: 0px -2px 2px rgba(136, 55, 55, 0.75);
	  z-index: 41;
		text-align: center;
		margin-top: 150px;
		margin: 80px auto;

	}
	.back-image {
		box-sizing: border-box;
		padding: 40px 0;
		background-image: url(../images/pc_background.jpg);
		background-size: 1460px;
		width: 1100px;
		height: 165px;
	}
	.sec1 {
		margin-bottom: 80px;
	}

	.sec1 h3 {
		box-sizing: border-box;
		width: 1100px;
		font-size: 36px;
	  font-family: "Yu Gothic";
	  color: rgb(0, 0, 0);
	  font-weight: bold;
	  xline-height: 0.444;
	  text-shadow: 0px -2px 2px rgba(104, 183, 161, 0.75);
	  margin-left: 210px;
		padding-left: 20px;
		margin-bottom: 20px;
		background-color: #ffffff;
	}
	.inner_wrap {
		width: 1100px;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		xflex-wrap: wrap;
		margin: 0 auto;
		margin-left: 210px;
		margin-bottom: 20px;
		background-color: #ffffff;
	}
	.inner_wrap h4 {
		font-size: 20px;
		font-weight: bold;
	}
	.sec1 h4::before {
	  content: "";
	  display: inline-block;
	  width: 20px;
	  height: 22px;
	  background-image:url(../images/pc_haguruma_red.gif);
	  background-size: contain;
	  vertical-align: middle;
	}
	.course1 {
		margin-left: 15px;
	}
	.course1,.course2 {
		margin-right: 50px;
	}
	.course1 p {
	  padding: 20px  16px  20px  16px;
	  font-size: 16px;
	  line-height: 2em;
	  margin-bottom: 20px;
  }
	.course2 p {
	  padding: 20px  16px  20px  16px;
	  font-size: 16px;
	  line-height: 2em;
	  margin-bottom: 20px;
  }
		.course3 p {
			padding: 20px 16px 20px 16px;
			font-size: 16px;
			line-height: 2em;
			margin-bottom: 20px;
		}
		.sec2 {
			margin-bottom: 80px;
		}
	.sec2 h3 {
		box-sizing: border-box;
		width: 1100px;
		font-size: 36px;
	  font-family: "Yu Gothic";
	  color: rgb(0, 0, 0);
	  font-weight: bold;
	  xline-height: 0.444;
	  text-shadow: 0px -2px 2px rgba(104, 183, 161, 0.75);
	  margin-left: 210px;
		padding-left: 20px;
		margin-bottom: 20px;
		background-color: #ffffff;
	}
	.wrapper {
		width: 1100px;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		xflex-wrap: wrap;
		margin: 0 auto;
		margin-left: 210px;
		margin-bottom: 20px;
		background-color: #ffffff;
	}
	.wrapper h4 {
		font-size: 20px;
		font-weight: bold;
	}
	.sec2 h4::before {
	  content: "";
	  display: inline-block;
	  width: 20px;
	  height: 22px;
	  background-image:url(../images/pc_haguruma_yellow.gif);
	  background-size: contain;
	  vertical-align: middle;
	}
  .fig {
		margin-top: 40px;
		margin-left: 50px;
		margin-bottom: 150px;

	}
	.fig2 {
		margin-left: 20px;

	}
  .course4 {
		margin-left: 15px;
	}
	.course4,.course5 {
		margin-right:50px;
	}
 .fig3 {
	 margin-top: 40px;
 }
	.course6 {
		xmargin-top: 15px;
	}
	.course4 p,.course5 p,.course6 p {
		padding: 20px 16px 20px 16px;
		font-size: 16px;
		line-height: 2em;
		margin-bottom: 20px;
	}
	#pagetop {
	 display:inline-block;
	 position:fixed;
	 bottom:0;
	 right:0;
	}


	#pagetop a {
	 padding:10px 10px;
	 display:block;
	 background:#fff;
	 color:#008b8b;
	 text-align:center;
	}
	footer {
		position: relative;
		width: 100%;
		height: 100px;
		background-color: #f4e9e3
	}
	footer ul {
		display:flex;
		flex-wrap: wrap;
		list-style: none;
		padding-left: 0;
		text-align:center;
	}
	footer li {
		font-size: 16px;
		xdisplay: inline-block;
		width:150px;
		margin: 0 auto;
		margin-top: 20px;
		margin-bottom: 15px;
	}
	footer ul a {
		text-decoration: none;
	}
	small {
		text-decoration: overline;
		text-decoration-color: white;
		text-decoration-thickness: 3px;
		position: absolute;
		font-size: 14px;
		bottom: 15px;
		left: 47%;
		transform: translateX(-30%);
	}













}
