/* reset */
html, body, div, span, applet, object, iframe, strong,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, legend, caption, 
tbody, tfoot, thead, label, table, tr, td, th, body, blockquote {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline;
    line-height:100%;
    list-style: none;
	}

table {
	border-collapse: collapse;
	border-spacing: 0;
	}

/*
 * Copyright (C) 2014 Adobe Systems Incorporated
 *      https://github.com/adobe-fonts/source-han-sans/tree/master
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

@font-face {
   font-family:'cbg';
   src: url('../centurygothic.woff') format("woff");
}

@font-face {
   font-family:'icon';
   src: url('../icon.woff') format("woff");
}

a{
	color:#22ac38;
	font-style:normal;
	text-decoration:none;
	outline:none;
    word-wrap: break-word;
}

a:link {
	color:#22ac38;
	font-style:normal;
	text-decoration:none;
}

a:visited {
	color:#22ac38;
	text-decoration:none;
}

a:hover {
	color:#22ac38;
	font-style:normal;
	text-decoration:underline;
}

a:active {
	text-decoration:underline;
}

.clearfix:after {
    content: "";
    display: block;
    clear: both;
}

.torikeshi {
    text-decoration:line-through;
}

.bold {
	color: #22ac38;
	font-weight: bold;
	text-decoration: underline;
}

/* common */
body{
    font-family:'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
    min-width: 1275px;
	width: 100%;
    color:#333333;
}

.wrapper {
    font-family:'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
    width:1000px;
    margin:0 auto;
    z-index:100;
}

.forsp320 {
    display:none;
}

.forsp640 {
    display:block;
}

.forsp {
    display:none;
}

.forpc {
    display:block;
}

.top-visual-box-sp {
		display: none;
	}

/* loading */
#loader-bg {
  display: none;
  position: fixed;
  width: 100vw;
  height: 100vh;
  top: 0px;
  left: 0px;
  background:#1f2020;
  z-index: 999998;
}
#loader {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 200px;
  margin-top: -50px;
  margin-left: -100px;
  text-align: center;
  color: #cccccc;
  z-index: 999999;
}
#loader img {
	padding-bottom: 8px;
	width: 50px;
	height:auto;
}
#loader p {
	font-family:'cbg';
	font-size: 10px;
}

@keyframes top {
0% {opacity:0;}
50% {opacity:0;}
100% {opacity:1;}
}

/* menu */
.home {
    display:none;
}

.menu-width {
    width:100%;
	background:#1f2020;
    position:relative;
    z-index:999996;
}

.menu-box {
	width:1200px;
    margin:0 auto;
}

.menu {
	display:flex;
    justify-content:center;
    margin-top:0px;
	-webkit-display:flex; /* Safari */
    -webkit-justify-content:center; /* Safari */
}

.menu .bold {
    margin:-11px 0px;
}

.fb {
    width:20px;
    height:20px;
	margin:-5px 0px;
}

.menu-icon {
	display: none;
}

.menu-icon img {
	height: 0.8em;
	width: auto;
	padding-right: 6px;
}

/* footer */
.footer {
    font-family:'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	background:#1f2020;  
}

.pagetop {
	font-family:'cbg';
    width:100%;
    height:55px;
    overflow:hidden;
    color:#ffffff;
    text-align:center;
}

.pagetop a {
	width:100%;
    font-size:14px;
    letter-spacing:2px;
    background:#424142;
    text-decoration:none;
    color:#ffffff;
    padding:20px 0px;
	display:flex;
    justify-content:center;
	-webkit-display:flex; /* Safari */
    -webkit-justify-content:center; /* Safari */
    transition:background-color 0.1s linear;
    -webkit-transition:background-color 0.1s linear;
}

.pagetop a:hover {
    text-decoration:none;
    color:#ffffff;
    background-color:#545455;
}

.arrow {
	width: 10px;
	height: 10px;
	border-top: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
    transform: rotate(-45deg);
	transform: -moz-rotate(-45deg);
	transform: -webkit-rotate(-45deg);
	transform: -o-rotate(-45deg);
	transform: -ms-rotate(-45deg);
    margin-top:4px;
    margin-right:15px;
}

.ichiran {
	padding:50px 0px;
}

.ichiran a {
    color:#ffffff;
    font-size:12px;
}

.ichiran ul {
    display: flex;
    flex-direction:row;
    justify-content:space-between;
    -webkit-display:flex; /* Safari */
    -webkit-flex-direction:row; /* Safari */
    -webkit-justify-content:space-between; /* Safari */
}

.ichiran ul ul li {
    padding-top:5px;
	margin-left: 12px;
}

.ichiran ul a {
    font-weight:bold;
}

.ichiran ul ul {
    display: flex;
    flex-direction:column;
    -webkit-display:flex; /* Safari */
    -webkit-flex-direction:column; /* Safari */
}

.ichiran ul ul a {
    font-weight:normal;
}

.ichiran ul ul li a:before {
    content:"・";
	margin-left: -12px;
}

.shusai {
    margin-top:50px;
	padding-top:25px;
    border-top:1px solid #424142;
	display:flex;
    justify-content:space-between;
    align-items:center;   
    -webkit-display:flex; /* Safari */
    -webkit-justify-content:space-between; /* Safari */
    -webkit-align-items:center;
}

.shusai-r {
    text-align:right;
    color:#ffffff;
}

.toiawase {
    font-size:14px;
    margin-bottom:10px;
}

.toiawase img {
    padding-right:5px;
}

.toiawase a {
    font-size:14px;
    font-family: 'cbg','Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
}

.copyright {
    font-size:10px;
    font-family: 'cbg';
    letter-spacing:0.5px;
}

@media screen and (min-width: 640px) and (max-width: 1275px) {
body {
    min-width: 640px;   
}

.wrapper {
    width:590px;
    margin:0 auto;
}
	
.forsp320 {
    display:block;
}
	
.forsp640 {
    display:block;
}
	
.forsp {
    display:none;
}

.forpc {
    display:none;
}
	
/* menu */
.home {
	display:block;
    width:35px;
    padding:11px;
    position:absolute;
    top:0;
    left:0;
    z-index:999996;
}

.menu-width {
    display:none;
}

.menu-box {
	display:none;
}

.menu {
	display:none;
}

.dropdown {
    display:none;
}

.menu .bold {
	width:25px;
    height:auto;
    margin:-6px 0px;
    display:none;
}

.fb {
    width:20px;
    height:20px;
	margin:-5px 0px;
}
	
.menu-icon {
	display: inline;
}
	
/* footer */
.footer {
	background:#1f2020;
    overflow:hidden;
}

.pagetop {
    width:100%;
    height:auto;
    overflow:hidden;
    color:#ffffff;
    text-align:center;
	font-family:'cbg';
}

.pagetop a {
	font-size:10px;
	width:100%;
    background:#424142;
    text-decoration:none;
    color:#ffffff;
    padding:18px 0px;
	display:flex;
    justify-content:center;
	-webkit-display:flex; /* Safari */
    -webkit-justify-content:center; /* Safari */
    transition:background-color 0.1s linear;
    -webkit-transition:background-color 0.1s linear;
}

.pagetop a:hover {
    text-decoration:none;
    color:#ffffff;
    background-color:#545455;
}

.arrow {
	width: 6px;
	height: 6px;
	border-top: 1px solid #ffffff;
	border-right: 1px solid #ffffff;
    transform: rotate(-45deg);
	transform: -moz-rotate(-45deg);
	transform: -webkit-rotate(-45deg);
	transform: -o-rotate(-45deg);
	transform: -ms-rotate(-45deg);
    margin-top:4px;
    margin-right:10px;
}

.ichiran {
	padding:0% 0px;
}

.ichiran a {
    color:#ffffff;
    font-size:12px;
}

.ichiran ul li a {
    display:block;
    width:100%;
    text-align:center;
    border-right:1px solid #424142;
	border-bottom:1px solid #424142;
    padding:20px 0%;
    transition:background-color 0.1s linear;
    -webkit-transition:background-color 0.1s linear;
    font-weight:normal;
}

.ichiran ul li a:hover {
    text-decoration:none;
    background:#424142;
}

.ichiran ul {
	width:100%;
    padding:0%;
    display: flex;
    flex-direction:row;    
    flex-wrap:wrap;
    justify-content:space-between;
	border-left:1px solid #424142;
    -webkit-display:flex; /* Safari */
    -webkit-flex-direction:row; /* Safari */
    -webkit-flex-wrap:wrap; /* Safari */
    -webkit-justify-content:space-between; /* Safari */
}

.ichiran ul li {
	width:50%;
}

.ichiran ul ul {
    display:none;
}

.shusai {
	width: 100%;
    margin-top:0px;
	padding:30px 0%;
    border-top:none;
	display:block;
    text-align:center;
}

.shusai-r {
	padding-top:10px;
	text-align:center;
    color:#ffffff;
}

.toiawase {
    font-size:12px;
    margin-bottom:0;
    line-height:16px;
}

.toiawase img {
    padding-right:5px;
}

.toiawase a {
    font-size:12px;
    width:100%;
    padding:0%;
    display:block;
    background:none;
    border-radius:4px;
    margin:0 auto;
    margin-top:3px;
    margin-bottom:10px;
    transition:background-color 0.1s linear;
    -webkit-transition:background-color 0.1s linear;
    line-height:16px;
}

.toiawase a:hover {
    text-decoration:underline;
    background-color:none;
}

.copyright {
	padding-top:5px;
    font-size:6px;
    line-height:6px;
}
}

@media screen and (min-width: 0px) and (max-width: 640px) {

/* common */
body {
    min-width: 100%;   
}

.wrapper {
    width:100%;
    margin:0 auto;
}
	
.forsp320 {
    display:block;
}
	
.forsp640 {
    display:none;
}

.forsp {
    display:block;
}

.forpc {
    display:none;
}
	
/* menu */
.home {
	display:block;
    width:35px;
    padding:11px;
    position:absolute;
    top:0;
    left:0;
    z-index:999996;
}

.menu-width {
    display:none;
}

.menu-box {
	display:none;
}

.menu {
	display:none;
}

.dropdown {
    display:none;
}

.menu .bold {
	width:25px;
    height:auto;
    margin:-6px 0px;
    display:none;
}

.fb {
    width:20px;
    height:20px;
	margin:-5px 0px;
}
	
.menu-icon {
	display: inline;
}
	
/* footer */
.footer {
	background:#1f2020;
    overflow:hidden;
}

.pagetop {
    width:100%;
    height:auto;
    overflow:hidden;
    color:#ffffff;
    text-align:center;
	font-family:'cbg';
}

.pagetop a {
	font-size:10px;
	width:100%;
    background:#424142;
    text-decoration:none;
    color:#ffffff;
    padding:18px 0px;
	display:flex;
    justify-content:center;
	-webkit-display:flex; /* Safari */
    -webkit-justify-content:center; /* Safari */
    transition:background-color 0.1s linear;
    -webkit-transition:background-color 0.1s linear;
}

.pagetop a:hover {
    text-decoration:none;
    color:#ffffff;
    background-color:#545455;
}

.arrow {
	width: 6px;
	height: 6px;
	border-top: 1px solid #ffffff;
	border-right: 1px solid #ffffff;
    transform: rotate(-45deg);
	transform: -moz-rotate(-45deg);
	transform: -webkit-rotate(-45deg);
	transform: -o-rotate(-45deg);
	transform: -ms-rotate(-45deg);
    margin-top:4px;
    margin-right:10px;
}

.ichiran {
	padding:0% 0px;
}

.ichiran a {
    color:#ffffff;
    font-size:12px;
}

.ichiran ul li a {
    display:block;
    width:100%;
    text-align:center;
    border-right:1px solid #424142;
	border-bottom:1px solid #424142;
    padding:20px 0%;
    transition:background-color 0.1s linear;
    -webkit-transition:background-color 0.1s linear;
    font-weight:normal;
}

.ichiran ul li a:hover {
    text-decoration:none;
    background:#424142;
}

.ichiran ul {
	width:100%;
    padding:0%;
	border: none;
    display: flex;
    flex-direction:row;    
    flex-wrap:wrap;
    justify-content:space-between;
    -webkit-display:flex; /* Safari */
    -webkit-flex-direction:row; /* Safari */
    -webkit-flex-wrap:wrap; /* Safari */
    -webkit-justify-content:space-between; /* Safari */
}

.ichiran ul li {
	width:50%;
}

.ichiran ul ul {
    display:none;
}

.shusai {
    margin-top:0px;
	padding:30px 0%;
    border-top:none;
	display:block;
    text-align:center;
}

.shusai-r {
	padding-top:10px;
	text-align:center;
    color:#ffffff;
}

.toiawase {
    font-size:12px;
    margin-bottom:0;
    line-height:16px;
}

.toiawase img {
    padding-right:5px;
}

.toiawase a {
    font-size:12px;
    width:100%;
    padding:0%;
    display:block;
    background:none;
    border-radius:4px;
    margin:0 auto;
    margin-top:3px;
    margin-bottom:10px;
    transition:background-color 0.1s linear;
    -webkit-transition:background-color 0.1s linear;
    line-height:16px;
}

.toiawase a:hover {
    text-decoration:underline;
    background-color:none;
}

.copyright {
	padding-top:5px;
    font-size:6px;
    line-height:6px;
}
}