@charset "UTF-8";

/* ========全般======== */
html, body, div, span, figure, img, fieldset,
a, h1, h2, h3, h4, h5, h6, p, blockquote,
pre, small, strong, dl, dt, dd, ol, ul, li,
table, caption, tbody, tfoot, thead, tr, th, td{
	margin:0;
	padding:0;
	border:none;
	outline:none;
}

html{
	font-family:Noto Sans JP,Helvetica Neue,Arial,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;
}

body{
	font-size:16px;
	font-weight:500;
	letter-spacing:1px;
	width:100%;
	background-color:#fff;
	color:#483d3b;
}

section{
	overflow:hidden;
}

a{
	color:#483d3b;
    text-decoration:none;
}

a:hover{
	color:#483d3b;
    text-decoration:none;
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 959px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}


/* ========ヘッダー======== */
header {
	position: fixed;
	top: 0px;
	right: 0px;
	width: 100%;
	margin:0;
	padding:0;
	text-align:right;
	z-index:2;
}

#nav-drawer {
	margin:0;
	position: relative;
	z-index:1;
}

/*チェックボックス等は非表示に*/
.nav-unshown {
  display:none;
}

/*アイコンのスペース*/
#nav-open {
	display: inline-block;
	width: 30px;
	height: 22px;
	vertical-align: middle;
	padding:3% 5% 4% 4%;
}

/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span, #nav-open span:before, #nav-open span:after {
  position: absolute;
  height: 4px;/*線の太さ*/
  width: 40px;/*長さ*/
  border-radius: 5px;
  background: #483d3b;
  display: block;
  content: '';
  cursor: pointer;
}
#nav-open span:before {
  bottom: -8px;
}
#nav-open span:after {
  bottom: -16px;
}

/*閉じる用の薄黒カバー*/
#nav-close {
  display: none;/*はじめは隠しておく*/
  position: fixed;
  z-index: 99;
  top: 0;/*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  background: black;
  opacity: 0;
  transition: .3s ease-in-out;
}

/*中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;/*最前面に*/
  width: 80%;/*右側に隙間を作る（閉じるカバーを表示）*/
  max-width: 500px;/*最大幅（調整してください）*/
  height: 100%;
  background: #f9f9f9;/*背景色*/
  transition: .3s ease-in-out;/*滑らかに表示*/
  -webkit-transform: translateX(-105%);
  transform: translateX(-105%);/*左に隠しておく*/
}

/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
  display: block;/*カバーを表示*/
  opacity: .5;
}

#nav-input:checked ~ #nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);/*中身を表示（右へスライド）*/
  box-shadow: 6px 0 25px rgba(0,0,0,.15);
}

#hmenu {
	margin:20% 0 0 0;
	padding:0 8%;
	text-align:left;
}

#hmenu .hmenu_list_1 {
	margin:0;
	padding:0;
}

#hmenu .hmenu_list_1 img {
	width:160px;
}

#hmenu .hmenu_list_2 {
	margin:10% 0;
	padding:0;
}

#hmenu .hmenu_list_2 p {
	margin:0;
	padding:2% 5%;
	font-size:0.9em;
	text-align:left;
	border-bottom:2px solid #eee;
}

#hmenu .hmenu_list_2 p .hmenu_i {
	padding:0 3% 0 0;
	font-size:1em;
	color:#e6c0c0;
}

#hmenu .hmenu_list_2 p.hmenu_list_t {
	margin:0 0 1% 0;
	background:#fff;
	border:3px solid #e6c0c0;
	border-radius:10px;
}

#hmenu .hmenu_list_2 a {
	color:#483d3b;
	text-decoration:none;
}

#top_logo {
	position:absolute;
	top:0;
	left:2%;
	padding:1.5% 0 2% 0;
	text-align:center;
	z-index:1;
}

#top_logo img {
	width:140px;
}


/* =======入会について======== */
#content {
	margin:0;
	padding:0;
}

#cover {
	margin:0;
	padding:0;
}

#cover img {
	width:100%;
}

#join_1 {
	margin:0 15%;
	padding:0;
}

#join_1 h1 {
	margin:0 0 8% 0;
	padding:0;
	font-size:2em;
	font-weight:400;
	line-height:1.6;
	text-align:center;
}

#join_1 h2 {
	margin:0 0 3% 0;
	padding:1% 2%;
	font-size:1.3em;
	font-weight:400;
	line-height:1.6;
	background:#e6c0c0;
	border-radius:10px;
	color:#fff;
}

#join_1 p {
	margin:0 0 5% 0;
	padding:0;
	font-size:1em;
	line-height:2;
}

#join_2 {
	margin:0 15%;
	padding:0;
}

#join_2 h2 {
	margin:0 0 3% 0;
	padding:1% 2%;
	font-size:1.3em;
	font-weight:400;
	line-height:1.6;
	background:#e6c0c0;
	border-radius:10px;
	color:#fff;
}

#join_2 .join_2_list {
	margin:0 0 2% 0;
	padding:0 0 2% 0;
	border-bottom:2px solid #eee;
}

#join_2 .join_2_list h3 {
	margin:0;
	padding:0;
	font-size:1.1em;
	font-weight:400;
	line-height:2;
}

#join_2 .join_2_list p {
	margin:0;
	padding:0;
	font-size:0.9em;
	line-height:2;
}

#join_2 .join_2_list h3 .step {
	padding:0 2% 0 0;
	font-size:0.8em;
	color:#e6c0c0;
}


/* =======流れ======== */
#flow {
	margin:8% 0 0 0;
	padding:8% 7% 8% 10%;
	background:#f9f9f9;
}

#flow h2 {
	margin:0 0 8% 0;
	padding:0;
	font-size:2em;
	font-weight:400;
	line-height:1.6;
	text-align:center;
}

#flow .flow_list {
	float:left;
	width:23.5%;
	height:450px;
	margin:0 3% 5% 0;
	padding:3%;
	border-radius:20px;
	background:#fff;
	text-align:center;
}

#flow .flow_list h3 {
	margin:0 0 10% 0;
	padding:0;
	font-size:1.3em;
	font-weight:400;
	line-height:1.6;
}

#flow .flow_list p {
	margin:0;
	padding:0;
	font-size:0.9em;
	line-height:2;
	text-align:left;
}

#flow .flow_list h3 .step {
	font-size:0.7em;
	color:#e6c0c0;
}

#flow .flow_list img {
	margin:3% 0;
	width:50%;
}

.clear {
	clear:both;
}

#flow p {
	margin:3% 0;
	padding:0;
	font-size:1em;
	line-height:2;
	text-align:center;
}


/* ========フッター======== */
footer {
	margin:0;
	padding:10% 15% 8% 15%;
	background:#e6c0c0;
	color:#fff;
}

#foot_logo {
	float:right;
	width:35%;
	text-align:center;
}

#foot_logo img {
	width:100%;
}

#foot_menu {
	float:right;
	width:65%;
	margin:0;
	padding:0;
}

#foot_menu p {
	margin:0 0 0 23%;
	padding:0;
	font-size:1.2em;
	line-height:1.6;
	color:#f3e2e2;
}

#foot_menu ul {
	margin:0 0 6% 0;
	padding:2% 0 0 20%;
	list-style:none;
}

#foot_menu li {
	margin:0;
	padding:0 5%;
	font-size:0.9em;
	line-height:1.6;
	display:inline-block;
}

#foot_menu li .foot_menu_i {
	font-size:0.9em;
	color:#fff;
}

#foot_menu a {
	color:#fff;
}

.clear {
	clear:both;
}

#copyright p {
	margin:0;
	padding:3% 0;
	font-size:0.8em;
	font-weight:400;
	letter-spacing:0.5px;
	text-align:center;
	color:#fff;
}

#contact {
	position: fixed;
	bottom:0;
	left:0;
	width:13%;
	margin:0;
	padding:0;
	z-index:1;
}

#contact p {
	margin:-25% 0 0 0;
	padding:20% 5%;
	font-size:0.9em;
	line-height:1.5;
	text-align:center;
	background:#99827d;
	border-radius:0 20px 0 0;
}

#contact a {
	color:#fff;
}

#contact img {
	margin:0 0 0 20%;
	width:60%;
}


