﻿@charset "utf-8";

html, body, div, span, iframe, h1, h2, h3, h4, h5, h6, p, a, address, img, dl, dt, dd, ol, ul, li, form, label, table, caption, tr, th, td, article, aside, figure, figcaption, footer, header, nav, section {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align:baseline;
	}

article, aside, figcaption, figure,footer, header, nav, section {
 display: block;
	}

ol,ul {
	list-style: none;
	}

table {
	border-collapse: collapse;
	border-spacing: 0;
	}

img {
	max-width : 100%;
	}

/*   clearfix  */
.clearfix {
	contet:"";
	display: block;
	clear: both;
	}


html {
	font-size:  62.5%;  /* 10px */
}

body {
	width: 100%;
	font-family: sans-serif;
	color: #333;
	font-size: 100%;
	line-height: 1.5;
}

/* -----------------------*/
/* -------- header -------*/
/* -----------------------*/

header {
	background: #eee;
	margin-bottom: 50px;
	}

header h1 {
	width: 100%;
	margin: 0 auto 0;
	padding: 10px 5px;
	text-align: left;
	font-size: 2.1rem;
	box-sizing: border-box;   
	}

/* -----------------------*/
/* -------- main -------- */
/* -----------------------*/

main {
	width: 100%;
	margin: 0 auto;
	font-size: 1.6rem;
	}
#top {
	text-align: center;
	margin-bottom: 50px;
	}	
#top p img {
	width: 90%;
	margin: 0 auto;
	}

/* ---- nav ---- */

nav {
	width: 90%;
	margin: 0 auto 50px;
	border: solid 1px #ccc;
	box-sizing: border-box;
	padding: 10px;
	}

nav p {
	width: 95%;
	margin: 0px auto 10px;
	padding: 5px;
	padding-top: 0;
	text-align : center;
	font-weight: bold;
	border-bottom: dotted 3px #ccc;
	}

nav ul{
	width: 95%;
	margin: 0 auto;
	display: flex;
	flex-flow: row wrap;
	}

nav li {
	width: 55%;
	margin-bottom: 10px;
	margin-right: 5px;	
	}

nav li:nth-child(5),
nav li:last-child {
	margin-right: 0;
	}

/*
nav li.item01{
	order: 0;
	}
nav li.item02{
	order: 3;
	}
nav li.item03{
	order: 1;
	}
nav li.item04{
	order: 4;
	}
nav li.item05{
	order: 2;
	}
nav li.item06{
	order: 5;
	}
*/

/* ---- section  ---- */

section {
	width: 95%;
	margin: 0 auto;
	}

section h2{
	font-size: 2.1rem;
	font-weight: bold;
	padding: 5px 10px;
	border-bottom: solid 1px #ccc;
	border-left: solid 10px #666;
	margin-bottom: 30px;
	}

section h3{
	font-size: 1.8rem;
	font-weight: bold;
	margin-top: 1rem;
	}

section h3::before {
	content: "■ ";
	/*border-left: solid 10px #333;
	padding-right: 10px;  */
	}


/* ---- type  ---- */

section.type04 dl,
section.type03 dl,
section.type02 dl,
section.type01 dl {
	width: 95%;
	margin: 0 auto 80px;
	text-align: left;
	display: flex;
	flex-flow: row wrap;
	}

section dl.type01,
section.type04 dl,
section.type01 dl {
	flex-flow: row nowrap;
	}

section dl.type01 {
	align-items: flex-start;
	}

/* ---- type01  ---- */


section.type01 dt {
	flex-basis: 25%;
	padding-right: 1rem;
	box-sizing: border-box;
	}


section.type01 dd{
	flex-basis:70%;
	}


section.type02 dl.type01 dt,
section.type03 dl.type01 dt {
	flex-basis: 10%;
	padding-right: 1rem;
	box-sizing: border-box;
	text-align: left;
	}


section.type02 dl.type01 dd,
section.type03 dl.type01 dd {
	flex-basis: 90%;
	}

/* ---- type02  ---- */

section.type03 dt,
section.type02 dt {
	flex-basis: 100%;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	padding-right: 0;
	box-sizing: border-box;
	}

section.type03 dd,
section.type02 dd {
	flex-basis:90%;
	margin-left: auto;
	margin-right: auto;
	}

section.type04 dd p.img,
section.type03 dd p.img,
section.type02 dd p.img {
	text-align: center;
	}

section.type04 dd img,
section.type03 dd img,
section.type02 dd img {
	margin-top: 10px;
	margin-bottom: 40px;
	}

/* ---- type03  ---- */

section.type03 h3::before {
	content: "";
	border: none;
}

section.type03 h3 span{
	display: inline-block;
	width: 25px;
	height: 25px;
	background: #f00;
	color: #fff;
	text-align: center;
	margin-right: 10px;
	border-radius: 13px;
	box-sizing: border-box;
	}

 section.type03 dd p.text {
	padding-left: 1rem;
	}


/* ---- type04  ---- */

section.type04 dt{
	margin-left: 0;
	flex-basis: 25%;
	padding-right: 2rem;
	box-sizing: border-box;
	}

section.type04 dd{
	flex-basis:70%;
	}

section.type04 h3 {
	margin-top: 0;
	}


/* ---- type05  ---- */

section.type05 {
	margin-bottom: 80px;
	}
section.type05 p {
	margin-left: 2.5rem;
	margin-bottom: 40px;
	}

section.type05 div {
	width: 100%;
	margin: 0 auto 30px; 
}

section.type05 div p {
	margin: 0;
	}

section.type05 table {
	width: 100%;
	}

section.type05 th {
	background: #000;
	color: #fff;
	border: solid 1px #fff;
	padding: 5px;
	box-sizing: border-box;
	}

section.type05 td {
	background: #ccc;
	color: #000;
	border: solid 1px #fff;
	padding: 5px 10px;
	box-sizing: border-box;
	}


/* -----------------------*/
/* ------- footer ------- */
/* -----------------------*/

footer {
	background: #eee;
	height: 50px;
	}

/* navlink icon*/

.crunchify-top:hover {
color: #fff !important;
background-color: #333; 
text-decoration: none;
}


.crunchify-top {
display: none;
position: fixed;
bottom: 1rem;
right: 1rem;
width: 5.2rem;
height: 5.2rem;
line-height: 5.0rem;
font-size: 2.8rem;
color: #fff;
background-color: rgba(0,0,0,0.3);
text-decoration: none;
border-radius: 1.2rem; /*3.2rem; */
text-align: center;
cursor: pointer;
}




@media screen and (min-width : 600px){

/* ---- nav ---- */

nav ul{
	width: 95%;
	margin: 0 auto;
	display: flex;
	flex-flow: row wrap;
	}

nav li {
	width: 32%;
	margin-bottom: 10px;
	margin-right: 5px;	
	}

nav li:nth-child(5),
nav li:last-child {
	margin-right: 0;
	}

}

@media screen and (min-width : 768px){

/* -----------------------*/
/* -------- main -------- */
/* -----------------------*/

#top p img {
	width: 80%;
	margin: 0 auto;
	}

/* ---- type01  ---- */

section.type01 dt{
	flex-basis: 15%;
	}

section.type01 dd{
	flex-basis:80%;
	}

section.type02 dl.type01 dt,
section.type03 dl.type01 dt {
	flex-basis: 10%;
	padding-right: 1rem;
	box-sizing: border-box;
	text-align: left;
	}


section.type02 dl.type01 dd,
section.type03 dl.type01 dd {
	flex-basis: 90%;
	}


/* ---- type02  ---- */

section.type03 dt,
section.type02 dt{
	margin-left: 0;
	flex-basis: 45%;
	padding-right: 2rem;
	box-sizing: border-box;
	}


section.type03 dd,
section.type02 dd{
	flex-basis:50%;
	}

/* ---- type04  ---- */

section.type04 dl{
	width: 95%;
	margin: 0 auto 80px;
	text-align: left;
	display: flex;
	flex-flow: row nowrap;
	}

section.type04 dt{
	margin-left: 0;
	flex-basis: 8%;
	padding-right: 2rem;
	box-sizing: border-box;
	}

section.type04 dd{
	flex-basis:90%;
	}

/* ---- type05  ---- */

section.type05 {
	margin-bottom: 80px;
	}

section.type05 div {
	width: 80%;
	margin: 0 auto 30px; 
}


}


@media print, screen and (min-width : 960px){

/* -----------------------*/
/* -------- header -------*/
/* -----------------------*/

header {
	background: #eee;
	margin-bottom: 50px;
	}

header h1 {
	width: 960px;
	margin: 0 auto 0;
	padding: 5px 5px;
	text-align: left;
	font-size: 2.1rem;
	}

/* -----------------------*/
/* -------- main -------- */
/* -----------------------*/

main {
	width: 960px;
	margin: 0 auto;
	font-size: 1.6rem;
	}
#top {
	text-align: center;
	margin-bottom: 50px;
	}	


/* ---- nav ---- */

nav {
	width: 70%;
	margin: 0 auto 50px;
	border: solid 1px #ccc;
	box-sizing: border-box;
	padding: 5px 10px 10px; 
	}

nav p {
	width: 90%;
	margin: 0px auto 10px;
	padding: 5px;
	padding-top: 0;
	text-align : center;
	font-weight: bold;
	border-bottom: dotted 3px #ccc;
	}

nav ul{
	width: 80%;
	margin: 0 auto;
	display: flex;
	flex-flow: row wrap;
	}

nav li {
	width: 33%;
	margin-bottom: 10px;	
	margin-right: 0;
	}



/* ---- section  ---- */

section {
	width: 960px;
	}

section h2{
	font-size: 2.1rem;
	font-weight: bold;
	padding: 5px 10px;
	border-bottom: solid 1px #ccc;
	border-left: solid 10px #666;
	margin-bottom: 30px;
	}


/* ---- type  ---- */

section.type04 dl,
section.type03 dl,
section.type02 dl,
section.type01 dl {
	width: 90%;
	margin: 0 auto 80px;
	text-align: left;
	display: flex;
	flex-flow: row wrap;
	}

section dl.type01,
section.type04 dl,
section.type01 dl {
	flex-flow: row nowrap;
	}

section dl.type01 {
	align-items: center;
	}

/* ---- type01  ---- */

section.type01 dt{
	flex-basis: 15%;
	}

section.type01 dd{
	flex-basis:80%;
	}

section.type02 dl.type01 dt,
section.type03 dl.type01 dt {
	flex-basis: 10%;
	padding-right: 1rem;
	box-sizing: border-box;
	text-align: left;
	}


section.type02 dl.type01 dd,
section.type03 dl.type01 dd {
	flex-basis: 90%;
	}


/* ---- type02  ---- */

section.type03 dt,
section.type02 dt{
	margin-left: 0;
	flex-basis: 45%;
	padding-right: 2rem;
	box-sizing: border-box;
	}


section.type03 dd,
section.type02 dd{
	flex-basis:50%;
	}

/* ---- type04  ---- */

section.type04 dl{
	width: 95%;
	margin: 0 auto 80px;
	text-align: left;
	display: flex;
	flex-flow: row nowrap;
	}

section.type04 dt{
	margin-left: 0;
	flex-basis: 8%;
	padding-right: 2rem;
	box-sizing: border-box;
	}

section.type04 dd{
	flex-basis:90%;
	}


}

/*footer*/
.closeBtn {
	text-align: center;
}
.closeBtn span {
	padding-left: 16px;
	font-size: 14px;
	background: transparent url(../images/icon_close.gif) 0 center no-repeat !important;
}
