@charset "UTF-8";
/* LAYOUT */

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

/* INNER
 ============================== */
.inner {
	position: relative;
	margin: auto;
	width: 90%;
	}
@media screen and (min-width: 992px) {
	.inner {
		width: 96rem;
		}
	}


/* COLUMN LAYOUT
 ============================== */
.col_list {
	margin-top: -1rem;
	list-style: none;
	}
.col_list:after {
	content: " ";
	display: block;
	clear: both;
	}
.col_list > li {
	float: left;
	margin: 1rem 1% 0;
	}
.col_list > .col_row {
	width: 98% !important;
	}
@media screen and (max-width: 767px) {
	.col_list.-sp_c01 > li {
		width: 98%;
		}
	.col_list.-sp_c02 > li {
		width: 48%;
		}
	.col_list.-sp_c03 > li {
		width: 31.333%;
		width: -webkit-calc( 100% / 3 -2% );
		width: calc( 100% / 3 -2% );
		}
}
@media screen and (min-width: 768px) {
	.col_list.-tb_c02 > li {
		width: 48%;
		}
	.col_list.-tb_c03 > li {
		width: 31.333%;
		width: -webkit-calc( 100% / 3 -2% );
		width: calc( 100% / 3 -2% );
		}
	.col_list.-tb_c04 > li {
		width: 23%;
		}
	.col_list.-tb_c06 > li {
		width: 14.666%;
		width: -webkit-calc( 100% / 6 -2% );
		width: calc( 100% / 6 -2% );
		}
	}
@media screen and (min-width: 992px) {
	.col_list.-pc_c02 > li {
		width: 48%;
		}
	.col_list.-pc_c03 > li {
		width: 31.333%;
		width: -webkit-calc( 100% / 3 -2% );
		width: calc( 100% / 3 -2% );
		}
	.col_list.-pc_c04 > li {
		width: 23%;
		}
	.col_list.-pc_c06 > li {
		width: 14.666%;
		width: -webkit-calc( 100% / 6 -2% );
		width: calc( 100% / 6 -2% );
		}
	}


/* BLCOK
 ============================== */
.block_list {
	list-style: none;
	}
.block_list .block {
	margin: 0 auto;
	height: 100%;
	border: solid 0.4rem #DDD;
	background-color: #f9f9f9;
	background-image: -moz-linear-gradient(-45deg, 
		rgba(255,255,255,1) 25%, rgba(255,255,255,0) 25%, 
		rgba(255,255,255,0) 50%, rgba(255,255,255,1) 50%, 
		rgba(255,255,255,1) 75%, rgba(255,255,255,0) 75%, 
		rgba(255,255,255,0));
	background-image: -webkit-linear-gradient(-45deg, 
		rgba(255,255,255,1) 25%, rgba(255,255,255,0) 25%, 
		rgba(255,255,255,0) 50%, rgba(255,255,255,1) 50%, 
		rgba(255,255,255,1) 75%, rgba(255,255,255,0) 75%, 
		rgba(255,255,255,0));
	background-image: -o-linear-gradient(-45deg, 
		rgba(255,255,255,1) 25%, rgba(255,255,255,0) 25%, 
		rgba(255,255,255,0) 50%, rgba(255,255,255,1) 50%, 
		rgba(255,255,255,1) 75%, rgba(255,255,255,0) 75%, 
		rgba(255,255,255,0));
	background-image: -ms-linear-gradient(-45deg, 
		rgba(255,255,255,1) 25%, rgba(255,255,255,0) 25%, 
		rgba(255,255,255,0) 50%, rgba(255,255,255,1) 50%, 
		rgba(255,255,255,1) 75%, rgba(255,255,255,0) 75%, 
		rgba(255,255,255,0));
	background-image: linear-gradient(135deg, 
		rgba(255,255,255,1) 25%, rgba(255,255,255,0) 25%, 
		rgba(255,255,255,0) 50%,　rgba(255,255,255,1) 50%, 
		rgba(255,255,255,1) 75%, rgba(255,255,255,0) 75%, 
		rgba(255,255,255,0));
	-webkit-background-size: 10px 10px;
	background-size: 10px 10px;
	background-repeat: repeat;
	}
.block {
	position: relative;
	margin: 1rem auto;
	padding: 2rem;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	}
.block_list:after, 
.block:after {
	content: " ";
	display: block;
	clear: both;
	}
.block_img {
	margin-bottom: 1rem;
	}
@media screen and (min-width: 768px) {
	.block_img.-left, 
	.block_img.-right {
		width: 25%;
		}
	.block_img.-right {
		margin-left: 2%;
		}
	.block_img.-left {
		margin-right: 2%;
		}
}


.column {
	padding: 2rem 1rem;
	background-color: #f0f0c8;
	text-align: center;
	}
.column .column_title {
	margin-bottom: 0.5rem;
	color: #4aa598;
	font-size: 1.125em;
	}

/* 
============================== */
#container {
	width: 100%;
	position: relative;
	min-height: 100%;
	}
#header, 
#content, 
#footer {
	clear: both;
	position: relative;
	margin: auto;
	z-index: auto;
	}
#header:after, 
#content:after, 
#footer:after {
	content: " ";
	display: block;
	clear: both;
	}
#header, 
#footer {
	background-color: #3e3a39;
	}

/* HEADER
============================== */
#header {
	padding: 2rem 0;
	}
#header .header_logo {
	z-index: auto;
	}
#header h1{
    color: #fff;
    font-size: 0.8em;
    margin-bottom: 1rem;
    margin-top: -1rem;
    margin-right: 3rem;
}
#header .header_logo #site_logo {
	width: 32%;
	}
@media screen and (min-width: 768px) {
	#header .header_logo #site_logo {
		float: left;
		width: 22%;
		z-index: 9999;
		}
}
@media screen and (min-width: 992px) {
	#header .header_logo #site_logo {
		width: 12%;
	}
}

/* #head_menu */
#head_menu {
	margin: auto;
	}
@media screen and (max-width: 767px) {
	#switch_smenu + #head_menu {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		padding-top: 5rem;
		background-color: rgba(0,0,0,0);
		transition: all 0.4s;
		z-index: 9999;
		}
	#switch_smenu:checked + #head_menu {
		background-color: rgba(0,0,0,0.8);
		-webkit-box-shadow: 0 0.1rem 0.1rem 0.1rem rgba(0,0,0,0.3);
		-moz-box-shadow: 0 0.1rem 0.1rem 0.1rem rgba(0,0,0,0.3);
		box-shadow: 0 0.1rem 0.1rem 0.1rem rgba(0,0,0,0.3);
		}
	#switch_smenu + #head_menu #btn_smenu {
		position: absolute;
		top: 1rem;
		right: 1rem;
		display: block;
		width: 2em;
		height: 2em;
		background-color: #efefef;
		border-radius: 0.5rem;
		}
	#switch_smenu + #head_menu #btn_smenu:before, 
	#switch_smenu + #head_menu #btn_smenu:after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0;
		left: 0;
		margin: auto;
		width: 70%;
		border-style: solid;
		border-color: #999;
		-webkit-transform: rotate(180deg);
		-moz-transform: rotate(180deg);
		-ms-transform: rotate(180deg);
		-o-transform: rotate(180deg);
		transform: rotate(180deg);
		transition: all 0.4s;
		}
	#switch_smenu + #head_menu #btn_smenu:before {
		height: 60%;
		border-width: 0.2rem 0;
		} 
	#switch_smenu + #head_menu #btn_smenu:after {
		height: 0;
		border-width: 0.2rem 0 0;
		}
	#switch_smenu:checked + #head_menu #btn_smenu {
		background-color: #333;
		}
	#switch_smenu:checked + #head_menu #btn_smenu:before, 
	#switch_smenu:checked + #head_menu #btn_smenu:after {
		margin: -0.2rem auto auto;
		top: 50%;
		height: 0;
		border-width: 0.2rem 0 0;
		border-color: #ccc;
		}
	#switch_smenu:checked + #head_menu #btn_smenu:before {
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
		} 
	#switch_smenu:checked + #head_menu #btn_smenu:after {
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
		transform: rotate(-45deg);
		}
}

#head_menu .menu_list a {
	color: #FFF;
	padding: 0.5em 0;
	text-align: center;
	}
#head_menu .menu_list a:active {
	background-color: rgba(255,255,255,0.5);
	}
.sns_menu{
	list-style: none;
}

	.sns_menu > li a{
		padding: 0;
		background: none;
	}
	.sns_menu > li a img{
		width: 1.75em;
		height: 1.75em;
	}



@media screen and (max-width: 767px) {
	header + .inner > .sns_menu{
		position: absolute;
		top: -4em;
		right: 2.5em;
		/*width: 4em;*/
		z-index: 10000;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
	}
    header + .inner > .sns_menu li{
        margin: 0 0.2em;
    }
	header + .inner > .sns_menu li:first-of-type{
		/*position: absolute;
		top: 0;
		right: 0;*/
	}
	
	
	header + .sns_menu li:first-of-type{
		position: absolute;
		left: 2em;
		width: 1.75em;
		height: 1.75em;
	}
	#head_menu .menu_list > li {
		float: left;
		margin-top: -100%;
		width: 100%;
		border-style: solid;
		border-width: 0.1rem 0;
		border-color: rgba(255,255,255,0.5) transparent rgba(0,0,0,0.5);
		transition: all 0.5s;
		}
	#head_menu .info_menu .sns_menu > li {
		border-style: none!important;
		width: 3em;
		display: inline-block;
		}
	#head_menu .info_menu .sns_menu > li > a {
		display: inline-block;
		margin: 0.5em;
		}
	
	
	#switch_smenu:checked + #head_menu .menu_list > li {
		margin-top: 0;
		}
	#head_menu .menu_list a {
		font-size: 1.125em;
		text-shadow: 0.1rem 0.1rem 0.2rem rgba(0,0,0,0.5);
		}
	#head_menu .menu_list a:after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 5%;
		margin: auto;
		width: 0.5rem;
		height: 0.5rem;
		border-style: solid;
		border-width: 0.1rem;
		border-color: #FFF #FFF transparent transparent;
		vertical-align: middle;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
		}
}
@media screen and (min-width: 768px) {
	header + .inner > .sns_menu{
		position: absolute;
		/*width: 3.5em;*/
		z-index: 10000;
		right: 12em;
		top: -7.75em;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        
	}
    header + .inner > .sns_menu li{
        margin: 0 0.2em;
    }
	header + .inner > .sns_menu li:first-of-type{
		/*position: absolute;
		top: 0;
		right: 0;*/
	}
	header + .inner > .sns_menu li > a > img{
		width:1.5em;
		height: 1.5em;
	}
	#switch_smenu + #head_menu #btn_smenu {
		display: none;
		}
	#head_menu .site_menu {
		clear: both;
		padding-top: 1rem;
		}
	#head_menu .site_menu .menu_list {
		text-align: center;
		font-size: 0.8125em;
		}
	#head_menu .site_menu .menu_list:after {
		display: none;
		}
	#head_menu .site_menu .menu_list > li {
		display: inline-block;
		vertical-align: middle;
		}
	#head_menu .site_menu .menu_list > li + li {
		margin-left: 1.5em;
		margin-left: -webkit-calc( ( 100% - 42em ) / 7 );
		margin-left: calc( ( 100% - 44em ) / 7 );
		}
	#head_menu .info_menu  .sns_menu{
		position: absolute;
		top: 0.5em;
		right: 28rem;
		}
	#head_menu .info_menu  .sns_menu > li{
		display:inline-block;
	}
	#head_menu .info_menu  .sns_menu > li a{
		padding: 0;
		background: none;
	}
	#head_menu .info_menu  .sns_menu > li a img{
		width: 1.75em;
		height: 1.75em;
	}
	#head_menu .info_menu {
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
		font-size: 0.75em;
		text-align: right;
		}
	#head_menu .info_menu .menu_list {
		display: inline-block;
		}
	#head_menu .info_menu .menu_list > li {
		display: inline-block;
		}
	#head_menu .info_menu .menu_list > li + li {
		margin-left: 0.1rem;
		}
	#head_menu .info_menu a {
		padding: 0.6em 1.2em;
		background-color: #b3b3b4;
		color: #3e3a39;
		}
	}
@media screen and (min-width: 992px) {
	header + .inner > .sns_menu{
		top: -6.5em;
	}
	#head_menu .site_menu {
		clear: none;
		padding-top: 3rem;
		}
	#head_menu .site_menu .menu_list {
		margin-left: 15%;
		text-align: right;
		}
	#head_menu .site_menu .menu_list > li + li {
		margin-left: 1.5em;
		}
}



/* BREAD CRUMB
============================== */
.bc {
	display: block;
	margin: auto;
	padding: 1rem 0;
	background-color: #F7F7F7;
	color: #444;
	font-size: 0.815em;
	}
.bc .bc_list > li {
	display: inline-block;
	}
.bc .bc_list > li + li:before {
	content: '>';
	display: inline-block;
	margin: auto 0.5em;
	color: #999;
	}
.bc .bc_list a {
	color: #3e3a39;
	}
.bc .bc_list > li:first-child a {
	font-weight: 600;
	}


/* CONTENT
============================== */
#content {
	text-align: left;
	z-index: 0;
	}
#content .content_wrap, 
#content .content_main {
	clear: both;
	padding: 3rem 0;
	}
#content .content_wrap > .content_main {
	padding: 0 2% 0 0;
	}
#content .content_title > img {
	width: 100%;
	}
@media screen and (min-width: 768px) {
	#content {
		padding-bottom: 18rem; /* #footer height */
		}
	#content .content_wrap {
		display: table;
		}
	#content .content_wrap > .content_main, 
	#content .content_wrap > .content_side {
		display: table-cell;
		vertical-align: top;
		}
	#content .content_main > .content_header{
		margin-top: -3rem;
		margin-bottom: 3rem;
		}
	#content .content_side {
		width: 25%;
		}
}

.content_menu {
	margin: 1rem auto;
	}
.content_menu a {
	display: block;
	text-decoration: none;
	line-height: 1.25;
	}
.content_menu a:before {
	content: '';
	display: inline-block;
	margin: auto 0.2em;
	border-style: solid;
	border-width: 0.4em 0 0.4em 0.5em;
	border-color: transparent transparent transparent #7AC9C9;
	}
@media screen and (min-width: 768px) {
	.content_menu {
		text-align: center;
		font-size: 0.875em;
		}
	.content_menu .menu_list > li {
		display: inline-block;
		}
	.content_menu .menu_list > li + li {
		margin-left: 0.5em;
		}
	}


.section_block {
	margin: 3rem auto;
	}
.section_header {
	margin-bottom: 2rem;
	}


/* FOOTER 
============================== */
#footer {
	padding: 2rem 0;
	color: #ccc;
	text-align: center;
	z-index: 100;
	}
#footer .foot_menu .menu_list {
	font-size: 0.875em;
	}
#footer .foot_menu .menu_list > li {
	display: inline-block;
	margin: 0.5rem;
	}
#footer .foot_menu .company_menu > li + li {
	margin-left: 0;
	padding-left: 0.5rem;
	border-left: solid thin #ccc;
	}
#footer .foot_menu .menu_list a {
	color: #ccc;
	}
#footer .foot_menu .menu_list a:hover {
	text-decoration: underline;
	}
#footer .service_menu > li {
	width: 90%;
	}
#footer .service_menu a {
	padding: 0.3em 0;
	border-radius: 1em;
	border: solid thin #ccc;
	}
#footer .copyright {
	margin-top: 1rem;
	margin-bottom: 1rem;
	font-size: 0.75em;
	}
#footer .footer_logo .logo {
	width: 40%;
	}
@media screen and (min-width: 768px) {
	#footer {
		position: absolute;
		right: 0;
		left: 0;
		bottom: 0;
		height: 15rem;
		}
	#footer .foot_menu {
		float: left;
		width: 85%;
		}
	#footer .foot_menu .menu_list {
		float: left;
		margin-right: 2em;
		text-align: left;
		}
	#footer .foot_menu .menu_list > li {
		display: block;
		margin: 0.5rem auto auto;
		}
	#footer .foot_menu .company_menu > li + li {
		padding-left: 0;
		border-left: none;
		}
	#footer .service_menu > li {
		width: auto;
		}
	#footer .service_menu a {
		padding: 0;
		border-radius: 0;
		border: none;
		}
	#footer .footer_logo, 
	#footer .copyright {
		text-align: right;
		}
	#footer .copyright {
		margin-top: auto;
		}
	#footer .footer_logo {
		margin: 1rem auto;
		}
	#footer .footer_logo .logo {
		width: 12%;
		}
}
@media screen and (min-width: 992px) {
	#footer .foot_menu .menu_list {
		margin-right: 4em;
		}
	}
@media screen and (max-width: 767px) {
	#footer{
		padding-bottom:4em;
	}
}


/* PAGE TOP 
============================== */
#pagetop {
	position: fixed;
	bottom: -3em;
	right: 5%;
	opacity: 0;
	transition: all 0.4s;
	}
#pagetop.-active {
	bottom: 1em;
	opacity: 1;
	}
#pagetop .btn_pagetop {
	color: #333;
	text-decoration: none;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	font-weight: bold;
	z-index: 9999;
	}
#pagetop .btn_pagetop:before {
	content: '';
	display: block;
	position: absolute;
	top: -1.5em;
	right: 0;
	left: 0;
	margin: auto;
	width: 2em;
	height: 2em;
	border-style: solid;
	border-width: 0.2em 0 0 0.2em;
	border-color: #333 transparent transparent #333;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
	}



/* CATEGORY 
============================== */
.cate_header {
	}
.cate_title {
	padding: 4% 0;
	text-align: center;
	background-image: url(../images/catetitle_bg.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	-webkit-background-size: auto 100%;
	background-size: auto 100%;
	}

@media screen and (min-width: 768px) {
	.cate_title {
		padding: 2% 0;
		-webkit-background-size: cover;
		background-size: cover;
		}
	.cate_title > img {
		width: 60%;
		}
	}
@media screen and (min-width: 992px) {
	.cate_title {
		padding: 3% 0;
		}
	.cate_title > img {
		width: 40%;
		}
	}

.cate_footer {
	background-color: #F7F7F7;
	}

.cate_menu .menu_list {
	margin-top: 1rem;
	}
.cate_menu .menu_list > li {
	display: table;
	float: left;
	margin: 1rem auto auto 2%;
	width: 49%;
	height: 3em;
	}
.cate_menu .menu_list > li:nth-child(2n+1) {
	margin-left: 0;
	}
.cate_menu .menu_list a {
	display: table-cell;
	padding: 0.5em 1em;
	color: #FFF;
	font-size: 0.875em;
	text-align: center;
	vertical-align: middle;
	}
.cate_menu .menu_list > li:nth-child(1) {
	background-color: #e08843;
	}
.cate_menu .menu_list > li:nth-child(2) {
	background-color: #e6b230;
	}
.cate_menu .menu_list > li:nth-child(3) {
	background-color: #e66a7d;
	}
.cate_menu .menu_list > li:nth-child(4) {
	background-color: #4b88a6;
	}
@media screen and (min-width: 768px) {
	.cate_menu {
		border-style: solid;
		border-width: 0 0 0.6rem;
		}
	.cate_page01 .cate_menu {
		border-color: #e08843;
		}
	.cate_page02 .cate_menu {
		border-color: #e6b230;
		}
	.cate_page03 .cate_menu {
		border-color: #e66a7d;
		}
	.cate_page04 .cate_menu {
		border-color: #4b88a6;
		}
	.cate_menu .menu_list a {
		font-size: 1em;
		}
	.cate_menu.-pc_c04 .menu_list > li {
		width: 23.5%;
		width: -webkit-calc( 94% / 4 );
		width: calc( 94% / 4 );
		}
	.cate_menu.-pc_c04 .menu_list > li:nth-child(2n+1) {
		margin-left: 2%;
		}
	.cate_menu.-pc_c04 .menu_list > li:nth-child(4n+1) {
		clear: both;
		margin-left: 0;
		}

}


#fixmenu{
	position: fixed;
}
#fixmenu ul li{
	list-style:none;
}
#fixmenu ul li a{
	color:#fff;
	text-decoration: none;
	/*font-weight: bold;*/
	text-align: center;
	display: block;
	vertical-align: middle;
}
#fixmenu ul li a img{
	vertical-align: middle;
	display: inline-block;
}
#fixmenu ul li:first-child{
	background: #59B6B6;
}
#fixmenu ul li:last-child{
	background: #F06988;
}
@media all and (min-width: 768px) {
#fixmenu{
		top: 7em;
		right: 2em;
	}
	#fixmenu ul li{
		width:6.5em;
		height: 6.5em;
		border-radius: 50%;
		border: 1px solid #fff;
	}
	#fixmenu ul li a{
		line-height: 1.3;
		padding: 1em 0 0 0;
	}
	#fixmenu ul li a img{
		margin-bottom: 0.5em;
	}
	#fixmenu ul li:first-child{
	margin-bottom: 0.5em;
}
	
	._is-pc{
		display:block;
	}
	._is-sp{
		display:none;
	}
}
@media screen and (max-width: 767px) {
	#fixmenu{
		bottom: 0;
		right: 0;
		left: 0;
		z-index: 200;
	}
	#fixmenu ul li{
		width: 50%;
		float: left;	
		height: 3em;
		line-height: 3em;
	}
	#fixmenu ul li:first-child a img{
	}
	#fixmenu ul li:last-child a img{
	}
	#fixmenu ul li a img{
		height: 1em;
		margin-right: 0.5em;
	}
	._is-pc{
		display:none;
	}
	._is-sp{
		display:block;
	}
	
}
