@charset "UTF-8";

/*---import CSS-----------------------------------*/
@import "base_layout.css";
@import "common_parts.css";
@import "common_setting.css";
/*---import CSS-----------------------------------*/

/*
======== table of content. ===============

summary : 「ホーム」設定

- opening animation
- header
- main navi
- main image
- content
  - section lead
  - section feature
  - section guide
  - section staff
  - section news
  - section addition
  - section map

==========================================

/*----------------------------------------
opening animation
------------------------------------------*/

#op_anime {
	width: 100%;
	height: 100%;
	background: #fff;
	position: relative;
	z-index: 10000;
}

#op_anime svg {
	width: 20%;
	max-width: 220px;
	height: auto;
	display: block;
	position: absolute;
	top: 46%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

#op_anime svg .pink {fill: #EB6E8C;}
#op_anime svg .blue {fill: #50A5DC;}
#op_anime svg .green {fill: #3EB166;}
#op_anime svg .orange {fill: #F5A000;}

#op_anime svg #tile01 {
	-webkit-animation: tile01 3s linear forwards;
	-moz-animation: tile01 3s linear forwards;
	animation: tile01 3s linear forwards;
	opacity: 0;
}

@-webkit-keyframes tile01 {
	7.7% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@-moz-keyframes tile01 {
	7.7% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@keyframes tile01 {
	7.7% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

#op_anime svg #tile02 {
	-webkit-animation: tile02 3s linear forwards;
	-moz-animation: tile02 3s linear forwards;
	animation: tile02 3s linear forwards;
	opacity: 0;
}

@-webkit-keyframes tile02 {
	7.7% {
		opacity: 0;
	}
	15.4% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@-moz-keyframes tile02 {
	7.7% {
		opacity: 0;
	}
	15.4% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@keyframes tile02 {
	7.7% {
		opacity: 0;
	}
	15.4% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

#op_anime svg #tile03 {
	-webkit-animation: tile03 3s linear forwards;
	-moz-animation: tile03 3s linear forwards;
	animation: tile03 3s linear forwards;
	opacity: 0;
}

@-webkit-keyframes tile03 {
	15.4% {
		opacity: 0;
	}
	23.1% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@-moz-keyframes tile03 {
	15.4% {
		opacity: 0;
	}
	23.1% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@keyframes tile03 {
	15.4% {
		opacity: 0;
	}
	23.1% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

#op_anime svg #tile04 {
	-webkit-animation: tile04 3s linear forwards;
	-moz-animation: tile04 3s linear forwards;
	animation: tile04 3s linear forwards;
	opacity: 0;
}

@-webkit-keyframes tile04 {
	23.1% {
		opacity: 0;
	}
	30.8% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@-moz-keyframes tile04 {
	23.1% {
		opacity: 0;
	}
	30.8% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@keyframes tile04 {
	23.1% {
		opacity: 0;
	}
	30.8% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

#op_anime svg #tile05 {
	-webkit-animation: tile05 3s linear forwards;
	-moz-animation: tile05 3s linear forwards;
	animation: tile05 3s linear forwards;
	opacity: 0;
}

@-webkit-keyframes tile05 {
	30.8% {
		opacity: 0;
	}
	38.5% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@-moz-keyframes tile05 {
	30.8% {
		opacity: 0;
	}
	38.5% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@keyframes tile05 {
	30.8% {
		opacity: 0;
	}
	38.5% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

#op_anime svg #tile06 {
	-webkit-animation: tile06 3s linear forwards;
	-moz-animation: tile06 3s linear forwards;
	animation: tile06 3s linear forwards;
	opacity: 0;
}

@-webkit-keyframes tile06 {
	38.5% {
		opacity: 0;
	}
	46.2% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@-moz-keyframes tile06 {
	38.5% {
		opacity: 0;
	}
	46.2% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@keyframes tile06 {
	38.5% {
		opacity: 0;
	}
	46.2% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

#op_anime svg #tile07 {
	-webkit-animation: tile07 3s linear forwards;
	-moz-animation: tile07 3s linear forwards;
	animation: tile07 3s linear forwards;
	opacity: 0;
}

@-webkit-keyframes tile07 {
	46.2% {
		opacity: 0;
	}
	53.9% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@-moz-keyframes tile07 {
	46.2% {
		opacity: 0;
	}
	53.9% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@keyframes tile07 {
	46.2% {
		opacity: 0;
	}
	53.9% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

#op_anime svg #ball {
	-webkit-animation: ball 3s linear forwards;
	-moz-animation: ball 3s linear forwards;
	animation: ball 3s linear forwards;
	-webkit-transform-origin: 20.6% 15.8%;
	-moz-transform-origin: 20.6% 15.8%;
	transform-origin: 20.6% 15.8%;
	opacity: 0;
}

@-webkit-keyframes ball {
	53.9% {
		-webkit-transform: scale(1, 1);
		opacity: 0;
	}
	61.6% {
		-webkit-transform: scale(1.2, 1.2);
	}
	69.2% {
		-webkit-transform: scale(1, 1);
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@-moz-keyframes ball {
	53.9% {
		-moz-transform: scale(1, 1);
		opacity: 0;
	}
	61.6% {
		-moz-transform: scale(1.2, 1.2);
	}
	69.2% {
		-moz-transform: scale(1, 1);
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@keyframes ball {
	53.9% {
		transform: scale(1, 1);
		opacity: 0;
	}
	61.6% {
		transform: scale(1.2, 1.2);
	}
	69.2% {
		transform: scale(1, 1);
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

#op_anime svg #type01 {
	-webkit-animation: type01 3s linear forwards;
	-moz-animation: type01 3s linear forwards;
	animation: type01 3s linear forwards;
	-webkit-transform-origin: 49.5% 79.5%;
	-moz-transform-origin: 49.5% 79.5%;
	transform-origin: 49.5% 79.5%;
	opacity: 0;
}

@-webkit-keyframes type01 {
	69.2% {
		-webkit-transform: translate(0, 2%);
		opacity: 0;
	}
	76.9% {
		-webkit-transform: translate(0, -3%);
	}
	84.6% {
		-webkit-transform: translate(0, 0);
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@-moz-keyframes type01 {
	69.2% {
		-moz-transform: translate(0, 2%);
		opacity: 0;
	}
	76.9% {
		-moz-transform: translate(0, -3%);
	}
	84.6% {
		-moz-transform: translate(0, 0);
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@keyframes type01 {
	69.2% {
		transform: translate(0, 2%);
		opacity: 0;
	}
	76.9% {
		transform: translate(0, -3%);
	}
	84.6% {
		transform: translate(0, 0);
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

#op_anime svg #type02 {
	-webkit-animation: type02 3s linear forwards;
	-moz-animation: type02 3s linear forwards;
	animation: type02 3s linear forwards;
	-webkit-transform-origin: 50% 100%;
	-moz-transform-origin: 50% 100%;
	transform-origin: 50% 100%;
	opacity: 0;
}

@-webkit-keyframes type02 {
	84.6% {
		-webkit-transform: translate(0, 2%);
		opacity: 0;
	}
	92.3% {
		-webkit-transform: translate(0, -3%);
	}
	100% {
		-webkit-transform: translate(0, 0);
		opacity: 1;
	}
}

@-moz-keyframes type02 {
	84.6% {
		-moz-transform: translate(0, 2%);
		opacity: 0;
	}
	92.3% {
		-moz-transform: translate(0, -3%);
	}
	100% {
		-moz-transform: translate(0, 0);
		opacity: 1;
	}
}

@keyframes type02 {
	84.6% {
		transform: translate(0, 2%);
		opacity: 0;
	}
	92.3% {
		transform: translate(0, -3%);
	}
	100% {
		transform: translate(0, 0);
		opacity: 1;
	}
}

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

#header {
	position: absolute;
}

/* レスポンシブ設定 ----------------------------*/

@media only screen and (max-width: 959px) {
	#header {
		position: fixed;
	}
}

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

#main_menu {
	position: absolute;
	top: 90px;
}

/* レスポンシブ設定 ----------------------------*/

@media only screen and (max-width: 959px) {
	#main_menu {
		position: fixed;
		top: 0;
	}
}

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

#main_img_wrapper {
	width: 100vw;
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.drawer-open #main_img_top,
.drawer-open .sp-slides,
.drawer-open .sp-slide,
.drawer-open .sp-mask {
	width: 100% !important;
	margin: 0 !important;
}

#stripe_left {
	width: 100vw;
	height: 50vw;
	border-top: 2px solid #fad7a0;
	box-sizing: content-box;
	overflow: hidden;
	position: absolute;
	bottom: -50vw;
	left: -50vw;
	z-index: 30;
	-webkit-transform: rotate(5deg);
	-moz-transform: rotate(5deg);
	transform: rotate(5deg);
	-webkit-transform-origin: right top;
	-moz-transform-origin: right top;
	transform-origin: right top;
}

#stripe_left::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: url(../img/common/bg_stripe02.jpg) repeat right bottom;
	background-size: 20px 10px;
	position: absolute;
	top: -100px;
	-webkit-transform: rotate(-5deg);
	-moz-transform: rotate(-5deg);
	transform: rotate(-5deg);
	-webkit-transform-origin: right top;
	-moz-transform-origin: right top;
	transform-origin: right top;
}

#stripe_right {
	width: 100vw;
	height: 50vw;
	border-top: 2px solid #fad7a0;
	box-sizing: content-box;
	overflow: hidden;
	position: absolute;
	bottom: -50vw;
	right: -50vw;
	z-index: 30;
	-webkit-transform: rotate(-5deg);
	-moz-transform: rotate(-5deg);
	transform: rotate(-5deg);
	-webkit-transform-origin: left top;
	-moz-transform-origin: left top;
	transform-origin: left top;
}

#stripe_right::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: url(../img/common/bg_stripe01.jpg) repeat left bottom;
	background-size: 20px 10px;
	background-position: -10px 0;
	position: absolute;
	top: -100px;
	-webkit-transform: rotate(5deg);
	-moz-transform: rotate(5deg);
	transform: rotate(5deg);
	-webkit-transform-origin: left top;
	-moz-transform-origin: left top;
	transform-origin: left top;
}

#main_img_txt {
	width: 1280px;
	color: #e64678;
	overflow: visible;
	position: absolute;
	top: 65%;
	left: calc((100% - 1280px) / 2 - 10px);
	z-index: 20;
	-webkit-transform: rotate(-8deg);
	-moz-transform: rotate(-8deg);
	transform: rotate(-8deg);
	-webkit-transform-origin: left top;
	-moz-transform-origin: left top;
	transform-origin: left top;
}

#main_img_txt::before,
#main_img_txt::after {
	content: none;
	-webkit-transform: none;
	-moz-transform: none;
	transform: none;
}

#main_img_txt > span {
	padding: 0 15px;
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
}

#main_img_txt > span.passing {
	opacity: 1;
}

#main_img_txt > span::before,
#main_img_txt > span::after {
	content: "";
	width: 100%;
	height: 1.6em;
	display: block;
	background: #ffa0aa;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	opacity: 0;
	-webkit-transform: skew(-8deg);
	-moz-transform: skew(-8deg);
	transform: skew(-8deg);
}

/* IE10_11 hack */
@media all and (-ms-high-contrast: none) {
	#main_img_txt > span::before,
	#main_img_txt > span::after {
		top: -0.1em;
	}
}

#main_img_txt > span::after {
	background: #fff;
	z-index: -1;
}

#main_img_txt > span.passing::before {
	-webkit-animation: passing-bar-home 1.5s ease 0s 1 normal forwards;
	-moz-animation: passing-bar-home 1.5s ease 0s 1 normal forwards;
	animation: passing-bar-home 1.5s ease 0s 1 normal forwards;
}

@-webkit-keyframes passing-bar-home {
	0% {
		width: 0;
		left: 0;
		opacity: 1;
	}
	50% {
		width: 100%;
		left: 0;
	}
	51% {
		width: 100%;
		left: 0;
	}
	100% {
		width: 0;
		left: 100%;
		opacity: 1;
	}
}

@-moz-keyframes passing-bar-home{
	0% {
		width: 0;
		left: 0;
		opacity: 1;
	}
	50% {
		width: 100%;
		left: 0;
	}
	51% {
		width: 100%;
		left: 0;
	}
	100% {
		width: 0;
		left: 100%;
		opacity: 1;
	}
}

@keyframes passing-bar-home{
	0% {
		width: 0;
		left: 0;
		opacity: 1;
	}
	50% {
		width: 100%;
		left: 0;
	}
	51% {
		width: 100%;
		left: 0;
	}
	100% {
		width: 0;
		left: 100%;
		opacity: 1;
	}
}

#main_img_txt > span.passing::after {
	-webkit-animation: passing-bg-home 1.5s ease 0s 1 normal forwards;
	-moz-animation: passing-bg-home 1.5s ease 0s 1 normal forwards;
	animation: passing-bg-home 1.5s ease 0s 1 normal forwards;
}

@-webkit-keyframes passing-bg-home{
	50% {
		opacity: 0;
	}
	51% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@-moz-keyframes passing-bg-home{
	50% {
		opacity: 0;
	}
	51% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@keyframes passing-bg-home{
	50% {
		opacity: 0;
	}
	51% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

#main_img_txt > span:nth-child(2) {
	top: 2em;
	left: 1em;
}

#main_img_txt > span:nth-child(3) {
	top: 4em;
	left: 2em;
}

#main_img_txt > span span {
	opacity: 0;
}

#main_img_txt > span.passing span {
	-webkit-animation: passing-txt-home 1.5s ease 0s 1 normal forwards;
	-moz-animation: passing-txt-home 1.5s ease 0s 1 normal forwards;
	animation: passing-txt-home 1.5s ease 0s 1 normal forwards;
}

@-webkit-keyframes passing-txt-home {
	50% {
		opacity: 0;
	}
	51% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@-moz-keyframes passing-txt-home {
	50% {
		opacity: 0;
	}
	51% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

@keyframes passing-txt-home {
	50% {
		opacity: 0;
	}
	51% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}

#main_img_txt > span.passing:nth-child(2)::before,
#main_img_txt > span.passing:nth-child(2)::after,
#main_img_txt > span.passing:nth-child(2) span {
	-webkit-animation-delay: .5s;
	-moz-animation-delay: .5s;
	animation-delay: .5s;
}

#main_img_txt > span.passing:nth-child(3)::before,
#main_img_txt > span.passing:nth-child(3)::after,
#main_img_txt > span.passing:nth-child(3) span {
	-webkit-animation-delay: 1s;
	-moz-animation-delay: 1s;
	animation-delay: 1s;
}

#topics_list {
	width: 33.3%;
	max-width: 445px;
	padding: 20px 15px 18px;
	border-radius: 5px;
	background: #fff;
	position: absolute;
	right: calc((100% - 1280px) / 2 + 10px);
	bottom: 10%;
	z-index: 20;
}

#topics_list h3 { 
	width: 85px;
	height: auto;
	position: absolute;
	top: -20px;
	left: -15px;
}

#topics_list h3 svg {
	width: 100%;
	height: auto;
	fill: #ffc300;
}

/* IE10_11 hack */
@media all and (-ms-high-contrast: none) {
	#topics_list h3 svg {
		width: auto;
		height: 40px;
	}
}

#topics_list h3 svg .blink {
	-webkit-animation: ttl_blink 2s linear infinite;
	-moz-animation: ttl_blink 2s linear infinite;
	animation: ttl_blink 2s linear infinite;
}

@-webkit-keyframes ttl_blink {
	50% {opacity: 0;}
}

@-moz-keyframes ttl_blink {
	50% {opacity: 0;}
}

@keyframes ttl_blink {
	50% {opacity: 0;}
}

#topics_ticker {
	width: 100%;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}

#topics_ticker ul {
	width: 100%;
	position: relative;
}

#topics_ticker ul li {
	width: 100%;
	height: 22px;
	display: none;
}

#topics_list dl {
	width: 100%;
	height: 100%;
	display: -webkit-box; /*Android4.3*/
	display: -moz-box; /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-webkit-box-pack: start /*Android4.3*/
	-moz-box-pack: start; /*Firefox21*/
	-ms-flex-pack: start; /*IE10*/
	-webkit-justify-content: flex-start; /*PC-Safari,iOS8.4*/
	justify-content: flex-start;
	-webkit-box-align: center /*Android4.3*/
	-moz-box-align: center; /*Firefox21*/
	-ms-flex-align: center; /*IE10*/
	-webkit-align-items: center; /*PC-Safari,iOS8.4*/
	align-items: center;
}

#topics_list dl dt {
	padding: 0 15px 0 0;
	color: #69412d;
	display: block;
	position: relative;
}

#topics_list dl dt::after {
	content: "";
	width: 4px;
	height: 100%;
	display: block;
	position: absolute;
	top: 50%;
	right: -2px;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	transform: translateY(-50%);
	background: -webkit-radial-gradient(circle closest-side, #ffba00, #ffba00 2px, transparent 2px, transparent);
	background: -moz-radial-gradient(circle closest-side, #ffba00, #ffba00 2px, transparent 2px, transparent);
	background: -ms-radial-gradient(circle closest-side, #ffba00, #ffba00 2px, transparent 2px, transparent);
	background: radial-gradient(circle closest-side, #ffba00, #ffba00 2px, transparent 2px, transparent);
	background-size: 4px 8px;
}

#topics_list dl dd {
	width: 100%;
	min-width: 0;
	padding: 0 0 0 15px;
	display: block;
}

#topics_list a {
	font-family: "M PLUS Rounded 1c", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", sans-serif;
	font-weight: bold;
	text-decoration: none;
	white-space: nowrap;
	text-overflow: ellipsis;
	display: block;
	overflow: hidden;
}

a#btn_scroll {
	width: 50px;
	height: 50px;
	margin: 0 0 20px -25px;
	position: absolute;
	left: 50%;
	bottom: 0;
	z-index: 20;
}

a#btn_scroll span {
	width: 24px;
	height: 24px;
	margin-left: -12px;
	border-left: 3px solid #fff;
	border-bottom: 3px solid #fff;
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-animation: sdb 2.5s infinite;
	-moz-animation: sdb 2.5s infinite;
	animation: sdb 2.5s infinite;
}

@-webkit-keyframes sdb {
	0% {
		-webkit-transform: rotate(-45deg) translate(0, 0);
	}
	15% {
		-webkit-transform: rotate(-45deg) translate(-10px, 10px);
	}
	35% {
		-webkit-transform: rotate(-45deg) translate(10px, -10px);
	}
	45% {
		-webkit-transform: rotate(-45deg) translate(0, 0);
	}
}

@-moz-keyframes sdb {
	0% {
		-moz-transform: rotate(-45deg) translate(0, 0);
	}
	15% {
		-moz-transform: rotate(-45deg) translate(-10px, 10px);
	}
	35% {
		-moz-transform: rotate(-45deg) translate(10px, -10px);
	}
	45% {
		-moz-transform: rotate(-45deg) translate(0, 0);
	}
}

@keyframes sdb {
	0% {
		transform: rotate(-45deg) translate(0, 0);
	}
	15% {
		transform: rotate(-45deg) translate(-10px, 10px);
	}
	35% {
		transform: rotate(-45deg) translate(10px, -10px);
	}
	45% {
		transform: rotate(-45deg) translate(0, 0);
	}
}

/* レスポンシブ設定 ----------------------------*/

@media only screen and (max-width: 1279px) {
	#main_img_txt {
		width: 100%;
		left: 0;
	}
	
	#main_img_txt > span:nth-child(1) {
		left: -6px;
	}
	
	#main_img_txt > span:nth-child(2) {
		left: -12px;
	}
	
	#main_img_txt > span:nth-child(3) {
		left: -18px;
	}
	
	#topics_list {
		padding: 20px 20px 18px 15px;
		border-radius: 5px 0 0 5px;
		right: 0;
	}
}

@media only screen and (max-width: 959px) {
	#stripe_left,
	#stripe_right {
		display: none;
	}
	
	#main_img_txt {
		font-size: 2.4rem;
	}
	
	#topics_list {
		width: 50%;
		padding: 20px 20px 18px 15px;
		border-radius: 5px 0 0 5px;
		right: 0;
	}
}

@media only screen and (max-width: 768px) {
	#main_img_txt {
		font-size: 2.0rem;
		top: auto;
		bottom: 45%;
	}
	
	#topics_list {
		padding: 18px 13px 15px;
		bottom: 8%;
	}
}

@media only screen and (max-width: 559px) {
	#main_img_txt {
		font-size: 1.6rem;
	}
	
	#topics_list {
		width: 90%;
		font-size: 1.5rem;
		padding: 12px 10px 10px;
	}
}

/*----------------------------------------
content
------------------------------------------*/

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

.acc.tsumiki {
	top: -20px;
	left: 20px;
}

.acc.tsumiki svg {
	fill: #fad7a0;
	width: 165px;
	height: auto;
	overflow: inherit;
}

/* IE10_11 hack */
@media all and (-ms-high-contrast: none) {
	.acc.tsumiki svg {
		height: 210px;
	}
}

#lead_tsumiki .tsumiki01 {
	-webkit-animation: tsumiki01 2.3s linear infinite;
	-moz-animation: tsumiki01 2.3s linear infinite;
	animation: tsumiki01 2.3s linear infinite;
	-webkit-transform-origin: 28.5% 49.5%;
	-moz-transform-origin: 28.5% 49.5%;
	transform-origin: 28.5% 49.5%;
}

@-webkit-keyframes tsumiki01 {
	50% {
		-webkit-transform: rotate(-5deg);
	}
}

@-moz-keyframes tsumiki01 {
	50% {
		-moz-transform: rotate(-5deg);
	}
}

@keyframes tsumiki01 {
	50% {
		transform: rotate(-5deg);
	}
}

#lead_tsumiki .tsumiki02 {
	-webkit-animation: tsumiki02 3s linear infinite;
	-moz-animation: tsumiki02 3s linear infinite;
	animation: tsumiki02 3s linear infinite;
	-webkit-transform-origin: 38.5% 91.5%;
	-moz-transform-origin: 38.5% 91.5%;
	transform-origin: 38.5% 91.5%;
}

@-webkit-keyframes tsumiki02 {
	50% {
		-webkit-transform: rotate(13deg);
	}
}

@-moz-keyframes tsumiki02 {
	50% {
		-moz-transform: rotate(13deg);
	}
}

@keyframes tsumiki02 {
	50% {
		transform: rotate(13deg);
	}
}

#lead_tsumiki .tsumiki03 {
	-webkit-animation: tsumiki03 2.8s linear infinite;
	-moz-animation: tsumiki03 2.8s linear infinite;
	animation: tsumiki03 2.8s linear infinite;
	-webkit-transform-origin: right bottom;
	-moz-transform-origin: right bottom;
	transform-origin: right bottom;
}

@-webkit-keyframes tsumiki03 {
	25% {
		-webkit-transform: rotate(3deg);
	}
	
	75% {
		-webkit-transform: rotate(-3deg);
	}
}

@-moz-keyframes tsumiki03 {
	25% {
		-moz-transform: rotate(3deg);
	}
	
	75% {
		-moz-transform: rotate(-3deg);
	}
}

@keyframes tsumiki03 {
	25% {
		transform: rotate(3deg);
	}
	
	75% {
		transform: rotate(-3deg);
	}
}

#lead_tsumiki .tsumiki04 {
	-webkit-animation: tsumiki04 1.5s linear infinite;
	-moz-animation: tsumiki04 1.5s linear infinite;
	animation: tsumiki04 1.5s linear infinite;
	-webkit-transform-origin: 89.8% 8.6%;
	-moz-transform-origin: 89.8% 8.6%;
	transform-origin: 89.8% 8.6%;
}

@-webkit-keyframes tsumiki04 {
	0% {
		-webkit-transform: scale(.8, .8);
	}
	50% {
		-webkit-transform: scale(1, 1);
	}
	100% {
		-webkit-transform: scale(.8, .8);
	}
}

@-moz-keyframes tsumiki04 {
	0% {
		-moz-transform: scale(.8, .8);
	}
	50% {
		-moz-transform: scale(1, 1);
	}
	100% {
		-moz-transform: scale(.8, .8);
	}
}

@keyframes tsumiki04 {
	0% {
		transform: scale(.8, .8);
	}
	50% {
		transform: scale(1, 1);
	}
	100% {
		transform: scale(.8, .8);
	}
}

.acc.foot {
	top: -10px;
	right: 20px;
}

.acc.foot svg {
	fill: #fad7a0;
	width: 190px;
	height: auto;
	overflow: inherit;
}

/* IE10_11 hack */
@media all and (-ms-high-contrast: none) {
	.acc.foot svg {
		height: 215px;
	}
}

#lead_foot .foot {
	-webkit-animation: foot 2.3s linear infinite;
	-moz-animation: foot 2.3s linear infinite;
	animation: foot 2.3s linear infinite;
	-webkit-transform-origin: 75% 31.5%;
	-moz-transform-origin: 75% 31.5%;
	transform-origin: 75% 31.5%;
}

@-webkit-keyframes foot {
	25% {
		-webkit-transform: rotate(3deg);
	}
	
	75% {
		-webkit-transform: rotate(-3deg);
	}
}

@-moz-keyframes foot {
	25% {
		-moz-transform: rotate(3deg);
	}
	
	75% {
		-moz-transform: rotate(-3deg);
	}
}

@keyframes foot {
	25% {
		transform: rotate(3deg);
	}
	
	75% {
		transform: rotate(-3deg);
	}
}

#lead_foot .dot01 {
	-webkit-animation: dot01 5s linear infinite;
	-moz-animation: dot01 5s linear infinite;
	animation: dot01 5s linear infinite;
}

@-webkit-keyframes dot01 {
	0% { opacity: 0; }
	16.5% { opacity: 1; }
	100% { opacity: 1; }
}

@-moz-keyframes dot01 {
	0% { opacity: 0; }
	16.5% { opacity: 1; }
	100% { opacity: 1; }
}

@keyframes dot01 {
	0% { opacity: 0; }
	16.5% { opacity: 1; }
	100% { opacity: 1; }
}

#lead_foot .dot02 {
	-webkit-animation: dot02 5s linear infinite;
	-moz-animation: dot02 5s linear infinite;
	animation: dot02 5s linear infinite;
}

@-webkit-keyframes dot02 {
	0% { opacity: 0; }
	15% { opacity: 0; }
	30% { opacity: 1; }
	100% { opacity: 1; }
}

@-moz-keyframes dot02 {
	0% { opacity: 0; }
	15% { opacity: 0; }
	30% { opacity: 1; }
	100% { opacity: 1; }
}

@keyframes dot02 {
	0% { opacity: 0; }
	15% { opacity: 0; }
	30% { opacity: 1; }
	100% { opacity: 1; }
}

#lead_foot .dot03 {
	-webkit-animation: dot03 5s linear infinite;
	-moz-animation: dot03 5s linear infinite;
	animation: dot03 5s linear infinite;
}

@-webkit-keyframes dot03 {
	0% { opacity: 0; }
	30% { opacity: 0; }
	45% { opacity: 1; }
	100% { opacity: 1; }
}

@-moz-keyframes dot03 {
	0% { opacity: 0; }
	30% { opacity: 0; }
	45% { opacity: 1; }
	100% { opacity: 1; }
}

@keyframes dot03 {
	0% { opacity: 0; }
	30% { opacity: 0; }
	45% { opacity: 1; }
	100% { opacity: 1; }
}

#lead_foot .dot04 {
	-webkit-animation: dot04 5s linear infinite;
	-moz-animation: dot04 5s linear infinite;
	animation: dot04 5s linear infinite;
}

@-webkit-keyframes dot04 {
	0% { opacity: 0; }
	45% { opacity: 0; }
	60% { opacity: 1; }
	100% { opacity: 1; }
}

@-moz-keyframes dot04 {
	0% { opacity: 0; }
	45% { opacity: 0; }
	60% { opacity: 1; }
	100% { opacity: 1; }
}

@keyframes dot04 {
	0% { opacity: 0; }
	45% { opacity: 0; }
	60% { opacity: 1; }
	100% { opacity: 1; }
}

#lead_foot .dot05 {
	-webkit-animation: dot05 5s linear infinite;
	-moz-animation: dot05 5s linear infinite;
	animation: dot05 5s linear infinite;
}

@-webkit-keyframes dot05 {
	0% { opacity: 0; }
	60% { opacity: 0; }
	75% { opacity: 1; }
	100% { opacity: 1; }
}

@-moz-keyframes dot05 {
	0% { opacity: 0; }
	60% { opacity: 0; }
	75% { opacity: 1; }
	100% { opacity: 1; }
}

@keyframes dot05 {
	0% { opacity: 0; }
	60% { opacity: 0; }
	75% { opacity: 1; }
	100% { opacity: 1; }
}

/* レスポンシブ設定 ----------------------------*/

@media only screen and (max-width: 1279px) {
	.acc.tsumiki {
		left: 10px;
	}
	
	.acc.foot {
		right: 10px;
	}
}

@media only screen and (max-width: 959px) {
	#lead {
		border-top: 2px solid #fad7a0;
	}
	
	.acc.tsumiki svg {
		width: 155px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.tsumiki svg {
			height: 197.5px;
		}
	}
	
	.acc.foot svg {
		width: 180px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.foot svg {
			height: 203px;
		}
	}
}

@media only screen and (max-width: 768px) {
	.acc.tsumiki {
		top: 45px;
	}
	
	.acc.tsumiki svg {
		width: 145px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.tsumiki svg {
			height: 185px;
		}
	}
	
	.acc.foot {
		top: auto;
		bottom: -25px;
	}
	
	.acc.foot svg {
		width: 170px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.foot svg {
			height: 192px;
		}
	}
}

@media only screen and (max-width: 559px) {
	.acc.tsumiki {
		top: 80px;
	}
	
	.acc.tsumiki svg {
		width: 140px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.tsumiki svg {
			height: 178px;
		}
	}
	
	.acc.foot svg {
		width: 165px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.foot svg {
			height: 186px;
		}
	}
}

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

section#feature p.sec_cap span {
	margin: 0 3px;
	padding: 0 5px;
	border-radius: 1px;
	-webkit-background: linear-gradient(transparent 50%, #f5b6c5 50%);
	-moz-background: linear-gradient(transparent 50%, #f5b6c5 50%);
	background: linear-gradient(transparent 50%, #f5b6c5 50%);
}

section#feature p.sec_cap span:nth-child(4n-1) {
	-webkit-background: linear-gradient(transparent 50%, #9ed8b2 50%);
	-moz-background: linear-gradient(transparent 50%, #9ed8b2 50%);
	background: linear-gradient(transparent 50%, #9ed8b2 50%);
}

section#feature p.sec_cap span:nth-child(4n) {
	-webkit-background: linear-gradient(transparent 50%, #a7d2ed 50%);
	-moz-background: linear-gradient(transparent 50%, #a7d2ed 50%);
	background: linear-gradient(transparent 50%, #a7d2ed 50%);
}

section#feature p.sec_cap span:nth-child(4n+1) {
	-webkit-background: linear-gradient(transparent 50%, #facf7f 50%);
	-moz-background: linear-gradient(transparent 50%, #facf7f 50%);
	background: linear-gradient(transparent 50%, #facf7f 50%);
}

#feature_links {
	width: 100%;
	margin-top: calc(5.858% + 35px);
	margin-bottom: 5.858%;
	position: relative;
	left: 5.858%;
	display: -webkit-box; /*Android4.3*/
	display: -moz-box; /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-webkit-box-pack: justify; /*Android4.3*/
	-moz-box-pack: justify; /*Firefox21*/
	-ms-flex-pack: justify; /*IE10*/
	-webkit-justify-content: space-between; /*PC-Safari,iOS8.4*/
	justify-content: space-between;
	-webkit-box-align: start; /*Android4.3*/
	-moz-box-align: start;/*Firefox21*/
	-ms-flex-align: start;/*IE10*/
	-webkit-align-items: flex-start;/*PC-Safari,iOS8.4*/
	align-items: flex-start;
}

#feature_links li {
	width: calc((40% - 10px) / 1.414);
	height: auto;
	display: block;
	position: relative;
	flex: 0 0 auto;
}

#feature_links li:first-child {
	left: 0;
}

#feature_links li:nth-child(2) {
	left: calc(-8.284% + (13.33px / 1.414))
}

#feature_links li:nth-child(3) {
	left: calc(-8.284% * 2 + (13.33px / 1.414) * 2);
}

#feature_links li:nth-child(4) {
	left: calc(-8.284% * 3 + (13.33px / 1.414) * 3);
}

#feature_links li::before {
	content: "";
	display: block;
	padding-top: 100%;
}

#feature_links li:nth-child(odd) {
	margin-top: 20%;
}

#feature_links li a {
	width: 100%;
	height: 100%;
	margin: auto;
	border: 4px solid;
	border-radius: 10px;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#feature_links li a::before {
	content: "";
	width: 100%;
	height: 100%;
	margin: auto;
	display: block;
	position: absolute;
	z-index: 1;
	opacity: .3;
	mix-blend-mode: multiply;
	-webkit-transition: all .5s;
	-moz-transition: all .5s;
	transition: all .5s;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#feature_links li:first-child a {
	border-color: #eb6e8c;
}

#feature_links li:first-child a::before {
	background: #eb6e8c;
}

#feature_links li:first-child a:hover::before {
	opacity: 0;
	-webkit-transform: translate(0, 100%);
	-moz-transform: translate(0, 100%);
	transform: translate(0, 100%);
}

#feature_links li:nth-child(2) a {
	border-color: #3eb166;
}

#feature_links li:nth-child(2) a::before {
	background: #3eb166;
}

#feature_links li:nth-child(2) a:hover::before {
	opacity: 0;
	-webkit-transform: translate(-100%, 0);
	-moz-transform: translate(-100%, 0);
	transform: translate(-100%, 0);
}

#feature_links li:nth-child(3) a {
	border-color: #50a5dc;
}

#feature_links li:nth-child(3) a::before {
	background: #50a5dc;
}

#feature_links li:nth-child(3) a:hover::before {
	opacity: 0;
	-webkit-transform: translate(100%, 0);
	-moz-transform: translate(100%, 0);
	transform: translate(100%, 0);
}

#feature_links li:nth-child(4) a {
	border-color: #f5a000;
}

#feature_links li:nth-child(4) a::before {
	background: #f5a000;
}

#feature_links li:nth-child(4) a:hover::before {
	opacity: 0;
	-webkit-transform: translate(0, -100%);
	-moz-transform: translate(0, -100%);
	transform: translate(0, -100%);
}

#feature_links li a img {
	width: 141%;
	height: auto;
	margin: auto;
	display: block;
	position: absolute;
	top: -20.5%;
	left: -20.5%;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-transition: all .5s;
	-moz-transition: all .5s;
	transition: all .5s;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#feature_links li a:hover img {
	width: 160%;
	height: auto;
	top: -30%;
	left: -30%;
}

.feature_contents {
	width: 141%;
	margin: auto;
	color: #ffffff;
	text-align: center;
	pointer-events: none;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	-webkit-transform: rotate(-45deg) translateY(-50%) translateX(-50%);
	-moz-transform: rotate(-45deg) translateY(-50%) translateX(-50%);
	transform: rotate(-45deg) translateY(-50%) translateX(-50%);
	-webkit-transform-origin: top left;
	-moz-transform-origin: top left;
	transform-origin: top left;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.feature_contents h4 {
	width: 70%;
	margin: 0 auto 15px;
	font-family: "M PLUS Rounded 1c", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", sans-serif;
	font-size: 2.8rem;
	font-weight: bold;
	letter-spacing: .1em;
}

.feature_contents h4::after {
	content: "";
	width: 100%;
	height: 4px;
	margin: 10px 0 0 0;
	display: block;
	background: -webkit-radial-gradient(circle farthest-side, #fff, #fff 2px, transparent 2px, transparent);
	background: -moz-radial-gradient(circle farthest-side, #fff, #fff 2px, transparent 2px, transparent);
	background: -ms-radial-gradient(circle farthest-side, #fff, #fff 2px, transparent 2px, transparent);
	background: radial-gradient(circle farthest-side, #fff, #fff 2px, transparent 2px, transparent);
	background-size: 8px 4px;
}

.feature_contents .common_btn {
	margin: 10px 0 0 0;
	color: #fff;
	border: 2px solid #fff;
	background: transparent;
}

#feature_links li:hover .feature_contents .common_btn {
	color: #e64678;
	background: #fff;
}

#feature_links li:nth-child(2):hover .feature_contents .common_btn {
	color: #3eb166;
}

#feature_links li:nth-child(3):hover .feature_contents .common_btn {
	color: #50a5dc;
}

#feature_links li:nth-child(4):hover .feature_contents .common_btn {
	color: #f5a000;
}

section#feature .acc {
	mix-blend-mode: multiply;
}

.acc.sun {
	top: 34%;
	left: -20px;
}

.acc.sun img {
	width: 135px;
	height: auto;
	opacity: .7;
	-webkit-animation: sun 2s linear infinite;
	-moz-animation: sun 2s linear infinite;
	animation: sun 2s linear infinite;
}

@-webkit-keyframes sun {
	0% {
		-webkit-transform: scale(.9, .9);
	}
	50% {
		-webkit-transform: scale(1, 1);
	}
	100% {
		-webkit-transform: scale(.9, .9);
	}
}

@-moz-keyframes sun {
	0% {
		-moz-transform: scale(.9, .9);
	}
	50% {
		-moz-transform: scale(1, 1);
	}
	100% {
		-moz-transform: scale(.9, .9);
	}
}

@keyframes sun {
	0% {
		transform: scale(.9, .9);
	}
	50% {
		transform: scale(1, 1);
	}
	100% {
		transform: scale(.9, .9);
	}
}

.acc.cloud01 {
	top: 28%;
	left: 160px;
}

.acc.cloud02 {
	top: 58%;
	left: -120px;
}

.acc.cloud01 img,
.acc.cloud02 img {
	width: auto;
	height: 60px;
	opacity: .9;
}

.acc.cloud01 img {
	-webkit-animation: cloud01 6s linear infinite;
	-moz-animation: cloud01 6s linear infinite;
	animation: cloud01 6s linear infinite;
}

@-webkit-keyframes cloud01 {
	50% {
		-webkit-transform: translateX(40px);
	}
}

@-moz-keyframes cloud01 {
	50% {
		-moz-transform: translateX(40px);
	}
}

@keyframes cloud01 {
	50% {
		transform: translateX(40px);
	}
}

.acc.cloud02 img {
	-webkit-animation: cloud02 5s linear infinite;
	-moz-animation: cloud02 5s linear infinite;
	animation: cloud02 5s linear infinite;
}

@-webkit-keyframes cloud02 {
	50% {
		-webkit-transform: translateX(35px);
	}
}

@-moz-keyframes cloud02 {
	50% {
		-moz-transform: translateX(35px);
	}
}

@keyframes cloud02 {
	50% {
		transform: translateX(35px);
	}
}

.acc.sprout {
	right: 10%;
	bottom: -8%;
}

.acc.sprout01 {
	right: -8px;
	bottom: 20px;
}

.acc.sprout01 img {
	width: auto;
	height: 90px;
	opacity: .6;
	-webkit-transform-origin: bottom center;
	-moz-transform-origin: bottom center;
	transform-origin: bottom center;
	-webkit-animation: sprout 4.5s linear infinite;
	-moz-animation: sprout 4.5s linear infinite;
	animation: sprout 4.5s linear infinite;
}

@-webkit-keyframes sprout {
	0% {
		-webkit-transform: rotate(0deg);
	}
	25% {
		-webkit-transform: rotate(5deg);
	}
	75% {
		-webkit-transform: rotate(-5deg);
	}
	100% {
		-webkit-transform: rotate(0deg);
	}
}

@-moz-keyframes sprout {
	0% {
		-moz-transform: rotate(0deg);
	}
	25% {
		-moz-transform: rotate(5deg);
	}
	75% {
		-moz-transform: rotate(-5deg);
	}
	100% {
		-moz-transform: rotate(0deg);
	}
}

@keyframes sprout {
	0% {
		transform: rotate(0deg);
	}
	25% {
		transform: rotate(5deg);
	}
	75% {
		transform: rotate(-5deg);
	}
	100% {
		transform: rotate(0deg);
	}
}

.acc.sprout02 {
	right: 0;
	bottom: 0;
}

.acc.sprout02 img {
	width: auto;
	height: 16px;
	opacity: .6;
}

.acc.bird {
	bottom: 20%;
	right: -120px;
}

.acc.bird img {
	width: auto;
	height: 90px;
	opacity: .65;
	-webkit-animation: bird 2.5s linear infinite;
	-moz-animation: bird 2.5s linear infinite;
	animation: bird 2.5s linear infinite;
}

@-webkit-keyframes bird {
	0% {
		-webkit-transform: rotate(0deg);
	}
	30% {
		-webkit-transform: rotate(8deg);
	}
	75% {
		-webkit-transform: rotate(-5deg);
	}
	100% {
		-webkit-transform: rotate(0deg);
	}
}

@-moz-keyframes bird {
	0% {
		-moz-transform: rotate(0deg);
	}
	30% {
		-moz-transform: rotate(8deg);
	}
	75% {
		-moz-transform: rotate(-5deg);
	}
	100% {
		-moz-transform: rotate(0deg);
	}
}

@keyframes bird {
	0% {
		transform: rotate(0deg);
	}
	30% {
		transform: rotate(8deg);
	}
	75% {
		transform: rotate(-5deg);
	}
	100% {
		transform: rotate(0deg);
	}
}

/* レスポンシブ設定 ----------------------------*/

@media only screen and (max-width: 1279px) {
	.acc.sun {
		left: 20px;
	}
	
	.acc.cloud02 {
		left: -80px;
	}
	
	.acc.sprout {
		right: 10%;
		bottom: -8%;
	}
	
	.acc.sprout01 {
		right: -7px;
		bottom: 20px;
	}
	
	.acc.bird {
		bottom: 15%;
		right: 15px;
	}
}

@media only screen and (max-width: 959px) {
	.acc.sun img {
		width: 125px;
	}
	
	.acc.cloud01 img,
	.acc.cloud02 img {
		height: 50px;
	}
	
	.acc.sprout {
		right: 12%;
	}
	
	.acc.sprout01 {
		right: -12px;
		bottom: 15px;
	}
	
	.acc.sprout01 img {
		height: 80px;
	}
	
	.acc.sprout02 img {
		height: 12px;
	}
	
	.acc.bird {
		bottom: 13%;
	}
	
	.acc.bird img {
		height: 80px;
	}
}

@media only screen and (max-width: 768px) {
	#feature_links {
		margin-top: calc(9.759% + 30px);
		margin-bottom: 9.759%;
		left: 0;
		-ms-flex-wrap: wrap; /*IE10*/
		-webkit-flex-wrap: wrap; /*PC-Safari,iOS8.4*/
		flex-wrap: wrap;
	}
	
	#feature_links li {
		width: calc((66.66% - 5px) / 1.414);
		flex: initial;
	}
	
	#feature_links li:nth-child(odd) {
		margin-top: 0;
		left: 9.759%;
	}
	
	#feature_links li:nth-child(2) {
		margin-top: calc(33.33% + (5px / 1.414));
		left: auto;
		right: 9.759%;
	}
	
	#feature_links li:nth-child(3) {
		margin-top: calc(-13.817% + (12.5px / 1.414));
	}
	
	#feature_links li:nth-child(4) {
		margin-top: calc(-13.817% + 33.33% + (20px / 1.414));
		left: auto;
		right: 9.759%;
	}
	
	.feature_contents h4 {
		font-size: 2.6rem;
	}
	
	.feature_contents h4::after {
		margin: 5px 0 0 0;
	}
	
	.feature_contents p {
		width: 65%;
		margin: 0 auto;
	}
	
	.acc.sun {
		top: 16%;
		left: auto;
		right: 15%;
	}
	
	.acc.sun img {
		width: 135px;
	}
	
	.acc.cloud01 {
		top: 30%;
		left: auto;
		right: 2%;
	}
	
	.acc.cloud02 {
		top: 48%;
		left: -5%;
	}
	
	.acc.cloud01 img,
	.acc.cloud02 img {
		height: 60px;
	}
	
	.acc.sprout {
		right: auto;
		left: 26%;
		bottom: -3%;
	}
	
	.acc.sprout01 {
		right: -9px;
		bottom: 20px;
	}
	
	.acc.sprout01 img {
		height: 90px;
	}
	
	.acc.sprout02 img {
		height: 16px;
	}
	
	.acc.bird {
		bottom: 25%;
	}
	
	.acc.bird img {
		height: 90px;
	}
}

@media only screen and (max-width: 559px) {
	#feature_links {
		margin-top: 18%;
		margin-bottom: 12%;
		display: block;
	}
	
	#feature_links li {
		width: 70%;
		margin-top: 0;
	}
	
	#feature_links li:nth-child(odd),
	#feature_links li:nth-child(2),
	#feature_links li:nth-child(3),
	#feature_links li:nth-child(4) {
		margin-top: 30%;
		left: 15%;
		right: auto;
	}
	
	#feature_links li:first-child {
		margin-top: 0;
	}
	
	.feature_contents h4 {
		width: 65%;
		margin: 0 auto 10px;
		font-size: 2.4rem;
	}
	
	.feature_contents p {
		width: 60%;
	}
	
	.acc.sun {
		top: 16.5%;
		left: 5%;
		right: auto;
	}
	
	.acc.sun img {
		width: 125px;
	}
	
	.acc.cloud01 {
		top: 35%;
	}
	
	.acc.cloud02 {
		top: 57%;
		left: -13%;
	}
	
	.acc.cloud01 img,
	.acc.cloud02 img {
		height: 50px;
	}
	
	.acc.sprout {
		left: 5%;
		bottom: -3%;
	}
	
	.acc.sprout01 {
		right: auto;
		left: -8px;
		bottom: 14px;
	}
	
	.acc.sprout01 img {
		height: 75px;
	}
	
	.acc.sprout02 {
		right: auto;
		left: 5%;
	}
	
	.acc.sprout02 img {
		height: 10px;
	}
	
	.acc.bird {
		bottom: 15%;
		right: 0;
	}
	
	.acc.bird img {
		height: 80px;
	}
}

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

section#guide {
	padding: 0;
}

section#guide .inner.full {
	padding: 0;
}

#guide_wrapper {
	width: calc(1280px + (100% - 1280px) / 2 - 20px);
	position: relative;
}

#guide_wrapper a {
	width: 100%;
	height: 100%;
	color: inherit;
	text-decoration: none;
	mix-blend-mode: normal;
	display: -webkit-box; /*Android4.3*/
	display: -moz-box; /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-webkit-box-pack: justify; /*Android4.3*/
	-moz-box-pack: justify; /*Firefox21*/
	-ms-flex-pack: justify; /*IE10*/
	-webkit-justify-content: space-between; /*PC-Safari,iOS8.4*/
	justify-content: space-between;
	-webkit-box-direction: reverse; /*Android4.3*/
	-moz-box-direction: reverse; /*Firefox21*/
	-ms-flex-direction: row-reverse; /*IE10*/
	-webkit-flex-direction: row-reverse; /*PC-Safari,iOS8.4*/
	flex-direction: row-reverse;
}

#guide_wrapper figure {
	width: calc(1280px * 0.45);
	position: relative;
	background: #c2e0f3;
}

#guide_wrapper figure::before {
	content: "";
	padding-top: 66.66%;
	display: block;
}

#guide_wrapper figure::after {
	content: "";
	width: 50px;
	height: calc(100% - 50px);
	pointer-events: none;
	display: block;
	position: absolute;
	right: -20px;
	bottom: 0;
	background: url(../img/page/home/bg_stripe.png) repeat center top;
	background-size: 40px;
	mix-blend-mode: multiply;
	opacity: .5;
}

#guide_wrapper figure img {
	width: 100%;
	height: 100%;
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	object-fit: cover;
	-webkit-transition: all .5s ease;
	-moz-transition: all .5s ease;
	transition: all .5s ease;
}

#guide_wrapper a:hover figure img {
	top: -30px;
	left: -30px;
}

.contents_wrapper {
	width: calc(100% - (1280px * 0.45));
	padding: 0 50px 20px calc(100% - 1280px + 40px);
	background: url(../img/common/bg_plaid.png) repeat center top;
	background-size: 30px;
	background-position: 0 -20px;
	background-color: rgba(80, 165, 220, .2);
	mix-blend-mode: multiply;
	z-index: -1;
}

.contents_wrapper h3.sec_ttl {
	color: #3c87dc;
	text-align: left;
	pointer-events: none;
	margin: 0 0 30px 0;
}

.contents_wrapper .sec_ttl svg {
	width: 150px;
	height: auto;
	margin: -35px 0 5px -28px;
	display: block;
	fill: #ffc300;
}

/* IE10_11 hack */
@media all and (-ms-high-contrast: none) {
	.contents_wrapper .sec_ttl svg {
		height: 64px;
	}
}

.contents_wrapper .sec_ttl svg .blink {
	-webkit-animation: ttl_blink 2s linear infinite;
	-moz-animation: ttl_blink 2s linear infinite;
	animation: ttl_blink 2s linear infinite;
}

.contents_wrapper .sec_ttl::after {
	content: none;
}

.contents_wrapper p {
	text-align: justify;
	text-justify: inter-ideograph;
}

.contents_wrapper .common_btn {
	margin: 20px 0 0 0;
}

#guide_wrapper a:hover .common_btn {
	color: #fff;
	background: #eb6e8c;
}

#guide_wrapper a:hover .common_btn::after {
	border-color: transparent #fff #fff transparent;
}

/* レスポンシブ設定 ----------------------------*/

@media only screen and (max-width: 1279px) {
	.contents_wrapper {
		padding: 0 30px 20px;
	}
	
	.contents_wrapper .sec_ttl svg {
		width: 140px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.contents_wrapper .sec_ttl svg {
			height: 60px;
		}
	}
}

@media only screen and (max-width: 959px) {
	#guide_wrapper {
		width: 100%;
	}
	
	#guide_wrapper figure {
		width: 50%;
	}
	
	.contents_wrapper {
		width: 50%;
		padding: 5px 20px 20px;
	}
	
	.contents_wrapper h3.sec_ttl {
		margin: 0 0 25px 0;
	}
	
	.contents_wrapper .sec_ttl svg {
		width: 130px;
		margin: 0 0 5px -13px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.contents_wrapper .sec_ttl svg {
			height: 55px;
		}
	}
}

@media only screen and (max-width: 768px) {
	#guide_wrapper a {
		display: block;
	}
	
	#guide_wrapper figure {
		width: calc(100% - 20px);
	}
	
	#guide_wrapper figure::after {
		width: 40px;
		height: calc(100% - 40px);
		right: -20px;
		background-size: 38px;
	}
	
	#guide_wrapper a:hover figure img {
		top: 0;
		left: 0;
	}
	
	.contents_wrapper {
		width: 100%;
		padding: 5px 15px 20px;
	}
	
	.contents_wrapper .sec_ttl svg {
		width: 120px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.contents_wrapper .sec_ttl svg {
			height: 51px;
		}
	}
}

@media only screen and (max-width: 559px) {
	#guide_wrapper figure {
		width: calc(100% - 15px);
	}
	
	#guide_wrapper figure::after {
		width: 30px;
		height: calc(100% - 30px);
		right: -15px;
		background-size: 35px;
	}
	
	.contents_wrapper {
		background-size: 25px;
	}
	
	.contents_wrapper h3.sec_ttl {
		margin: 0 0 20px 0;
	}
	
	.contents_wrapper .sec_ttl svg {
		width: 100px;
		margin: 0 0 2px -13px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.contents_wrapper .sec_ttl svg {
			height: 42.5px;
		}
	}
	
	.contents_wrapper .common_btn {
		margin: 15px 0 0 0;
	}
}

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

section#staff {
	padding: 0;
}

section#staff .inner.full {
	padding: 60px 0 0 0;
}

#staff_wrapper {
	width: calc(1280px + (100% - 1280px) / 2 - 20px);
	position: relative;
	left: calc((100% - 1280px) / 2 + 20px);
}

#staff_wrapper a {
	width: 100%;
	height: 100%;
	color: inherit;
	text-decoration: none;
	mix-blend-mode: normal;
	display: -webkit-box; /*Android4.3*/
	display: -moz-box; /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-webkit-box-pack: justify; /*Android4.3*/
	-moz-box-pack: justify; /*Firefox21*/
	-ms-flex-pack: justify; /*IE10*/
	-webkit-justify-content: space-between; /*PC-Safari,iOS8.4*/
	justify-content: space-between;
}

#staff_wrapper figure {
	width: calc(1280px * 0.45);
	position: relative;
	background: #bce4ca;
}

#staff_wrapper figure::before {
	content: "";
	padding-top: 66.66%;
	display: block;
}

#staff_wrapper figure::after {
	content: "";
	width: 50px;
	height: calc(100% - 50px);
	pointer-events: none;
	display: block;
	position: absolute;
	left: -20px;
	bottom: 0;
	background: url(../img/page/home/bg_tri.png) repeat center top;
	background-size: 31px 51.5px;
	mix-blend-mode: multiply;
	opacity: .5;
}

#staff_wrapper figure img {
	width: 100%;
	height: 100%;
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	object-fit: cover;
	-webkit-transition: all .5s ease; /*Android*/
	transition: all .5s ease;
}

#staff_wrapper a:hover figure img {
	top: -30px;
	right: -30px;
}

#staff_wrapper .contents_wrapper {
	padding: 0 calc(100% - 1280px + 40px) 20px 50px;
	background-color: rgba(62, 177, 102, .2);
}

#staff_wrapper .contents_wrapper .sec_ttl {
	color: #28964b;
}

#staff_wrapper .contents_wrapper .sec_ttl svg {
	width: 133px;
}

/* IE10_11 hack */
@media all and (-ms-high-contrast: none) {
	#staff_wrapper .contents_wrapper .sec_ttl svg {
		height: 63px;
	}
}

#staff_wrapper a:hover .common_btn {
	color: #fff;
	background: #eb6e8c;
}

#staff_wrapper a:hover .common_btn::after {
	border-color: transparent #fff #fff transparent;
}

/* レスポンシブ設定 ----------------------------*/
@media only screen and (max-width: 1279px) {
	#staff_wrapper .contents_wrapper {
		padding: 0 30px 20px;
	}
	
	#staff_wrapper .contents_wrapper .sec_ttl svg {
		width: 123px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		#staff_wrapper .contents_wrapper .sec_ttl svg {
			height: 58.5px;
		}
	}
}

@media only screen and (max-width: 959px) {
	section#staff .inner.full {
		padding: 0;
	}
	
	#staff_wrapper {
		width: 100%;
		left: 0;
	}
	
	#staff_wrapper figure {
		width: 50%;
	}
	
	#staff_wrapper .contents_wrapper {
		padding: 5px 20px 20px;
	}
	
	#staff_wrapper .contents_wrapper .sec_ttl svg {
		width: 113px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		#staff_wrapper .contents_wrapper .sec_ttl svg {
			height: 54px;
		}
	}
}

@media only screen and (max-width: 768px) {
	#staff_wrapper a {
		display: block;
	}
	
	#staff_wrapper figure {
		width: calc(100% - 20px);
		left: 20px;
	}
	
	#staff_wrapper figure::after {
		width: 40px;
		height: calc(100% - 40px);
		left: -20px;
		background-size: 29px auto;
	}
	
	#staff_wrapper a:hover figure img {
		top: 0;
		right: 0;
	}
	
	#staff_wrapper .contents_wrapper {
		padding: 5px 15px 20px;
	}
	
	#staff_wrapper .contents_wrapper .sec_ttl svg {
		width: 103px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		#staff_wrapper .contents_wrapper .sec_ttl svg {
			height: 49px;
		}
	}
}

@media only screen and (max-width: 559px) {
	#staff_wrapper figure {
		width: calc(100% - 15px);
		left: 15px;
	}
	
	#staff_wrapper figure::after {
		width: 30px;
		height: calc(100% - 30px);
		left: -15px;
		background-size: 26px auto;
	}
	
	#staff_wrapper .contents_wrapper .sec_ttl svg {
		width: 83px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		#staff_wrapper .contents_wrapper .sec_ttl svg {
			height: 40px;
		}
	}
}

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

#news_list {
	margin: 40px 0 0 0;
	display: -webkit-box; /*Android4.3*/
	display: -moz-box; /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-webkit-box-pack: center; /*Android4.3*/
	-moz-box-pack: center; /*Firefox21*/
	-ms-flex-pack: center; /*IE10*/
	-webkit-justify-content: center; /*PC-Safari,iOS8.4*/
	justify-content: center;
}

#news_list li {
	width: calc(25% - 24px);
	margin: 0 12px;
	display: block;
}

#news_list li > a {
	width: 100%;
	height: 100%;
	color: inherit;
	text-decoration: none;
}

#news_list li a figure {
	width: 100%;
	border-radius: 5px;
	overflow: hidden;
	position: relative;
}

#news_list li a figure::before {
	content: "";
	padding-top: 66.66%;
	display: block;
}

#news_list li a figure img {
	width: 100%;
	height: 100%;
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	object-fit: cover;
	-webkit-transition: all .5s ease;
	-moz-transition: all .5s ease;
	transition: all .5s ease;
}

#news_list li a:hover figure img {
	-webkit-transform: scale(1.2);
	-moz-transform: scale(1.2);
	transform: scale(1.2);
}

#news_list li a h4 {
	width: calc(100% - 20px);
	font-family: "M PLUS Rounded 1c", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", sans-serif;
	font-weight: bold;
	color: #fff;
	margin: -1em 0 0 0;
	padding: .2em 0 .2em 13px;
	display: block;
	position: relative;
	left: -13px;
	background: rgba(235, 110, 140, .7);
}

#news_list li a h4::after {
	content: "";
	width: 20px;
	height: 100%;
	position: absolute;
	left: 100%;
	top: 0;
	-webkit-background: linear-gradient(to top left, rgba(255,255,255,0) 50%, rgba(235,110,140,.7) 50.5%) no-repeat top left/100% 100%;
	-moz-background: linear-gradient(to top left, rgba(255,255,255,0) 50%, rgba(235,110,140,.7) 50.5%) no-repeat top left/100% 100%;
	background: linear-gradient(to top left, rgba(255,255,255,0) 50%, rgba(235,110,140,.7) 50.5%) no-repeat top left/100% 100%;
}

#news_list li a h4 span {
	width: 100%;
	padding: 0 8px 0 0;
	white-space: nowrap;
	text-overflow: ellipsis;
	display: block;
	overflow: hidden;
}

#news_list li .cap_box {
	width: 100%;
	margin: 8px 0 0 0;
	display: -webkit-box; /*Android4.3*/
	display: -moz-box; /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-webkit-box-pack: justify; /*Android4.3*/
	-moz-box-pack: justify; /*Firefox21*/
	-ms-flex-pack: justify; /*IE10*/
	-webkit-justify-content: space-between; /*PC-Safari,iOS8.4*/
	justify-content: space-between;
	-webkit-box-align: center; /*Android4.3*/
	-moz-box-align: center; /*Firefox21*/
	-ms-flex-align: center; /*IE10*/
	-webkit-align-items: center; /*PC-Safari,iOS8.4*/
	align-items: center;
}

#news_list li .cap_box time {
	color: #69412d;
}

#news_list li .cap_box .category {
	margin: 0 0 0 20px;
	padding: 0 10px;
	font-family: "M PLUS Rounded 1c", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", sans-serif;
	font-size: 1.5rem;
	font-weight: bold;
	text-decoration: none;
	color: #fff;
	display: inline-block;
	border-radius: 1em;
	background: #a57c52;
}

#news_list li .cap_box .category.info {
	background: #3eb166;
}

#news_list li .cap_box .category.event {
	background: #50a5dc;
}

#news_list li .cap_box .category.column {
	background: #f5a000;
}

/* レスポンシブ設定 ----------------------------*/

@media only screen and (max-width: 1279px) {
	#news_list li {
		width: calc(25% - 15px);
		margin: 0 7.5px;
	}
}

@media only screen and (max-width: 959px) {
	#news_list {
		margin: 35px 0 0 0;
		-webkit-box-pack: justify; /*Android4.3*/
		-moz-box-pack: justify; /*Firefox21*/
		-ms-flex-pack: justify; /*IE10*/
		-webkit-justify-content: space-between; /*PC-Safari,iOS8.4*/
		justify-content: space-between;
		-ms-flex-wrap: wrap; /*IE10*/
		-webkit-flex-wrap: wrap; /*PC-Safari,iOS8.4*/
		flex-wrap: wrap;
	}
	
	#news_list li {
		width: calc(50% - 15px);
		margin: 0;
	}
	
	#news_list li:nth-child(n+3) {
		margin: 30px 0 0 0;
	}
}

@media only screen and (max-width: 768px) {
	#news_list {
		margin: 30px 0 0 0;
	}
	
	#news_list li:nth-child(n+3) {
		margin: 25px 0 0 0;
	}
	
	#news_list li a h4 {
		padding: .2em 0 .2em 15px;
		left: -15px;
	}
}

@media only screen and (max-width: 559px) {
	#news_list {
		margin: 25px 0 0 0;
		display: block;
	}
	
	#news_list li {
		width: 100%;
		margin: 20px 0 0 0;
	}
}

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

section#addition .inner {
	display: -webkit-box; /*Android4.3*/
	display: -moz-box; /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-webkit-box-pack: justify; /*Android4.3*/
	-moz-box-pack: justify; /*Firefox21*/
	-ms-flex-pack: justify; /*IE10*/
	-webkit-justify-content: space-between; /*PC-Safari,iOS8.4*/
	justify-content: space-between;
}
.bnr_recruit img {
	width: 100%;
	margin-bottom: 10px;
}
.bnr_recruit img:hover {
	opacity: 0.7;
}

.sns_box {
	width: calc(50% - 20px);
	padding: 5px;
	border-radius: 5px;
	display: block;
	background: url(../img/page/home/bg_noise.png) repeat center bottom, #93a4c6;
	background-size: 100px;
	background-blend-mode: difference, normal;
}

.sns_box.instagram {
	background: url(../img/page/home/bg_noise.png) repeat center bottom, #ce99cb;
	background-size: 100px;
}

.sns_box h4 {
	height: 45px;
	margin: 0 0 5px 0;
	position: relative;
}

.sns_box.facebook h4 {
	padding: 5px 0 0 18px;
}

.sns_box.instagram h4 {
	padding: 4px 0 0 14px;
}

.sns_box h4::after {
	content: "";
	width: 45px;
	height: 100%;
	display: block;
	background-image: url('data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%3Csvg%20version%3D%221.1%22%20id%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%2049.6%2055%22%20style%3D%22enable-background%3Anew%200%200%2049.6%2055%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.st0%7Bfill%3A%23FFFFFF%3B%7D%3C%2Fstyle%3E%3Cg%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M18.1%2C15.3c0%2C2.6-0.9%2C5.1-2.6%2C6.8s-4.2%2C2.1-6.8%2C2.1S4%2C23.4%2C2.3%2C21.7S0%2C17.8%2C0%2C15.3s0.6-4.8%2C2.3-6.5%20s3.9-2.6%2C6.5-2.6s4.6%2C1.2%2C6.2%2C2.9C16.7%2C10.7%2C18.1%2C12.7%2C18.1%2C15.3z%22%2F%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M34.7%2C48.7c0.5-0.3%2C0.9-1%2C0.9-1.6l0-12.4c0-0.6-0.4-0.8-0.9-0.5l-10.2%2C6.1c-0.5%2C0.3-0.9%2C1-0.9%2C1.6l0%2C12.4%20c0%2C0.6%2C0.4%2C0.8%2C0.9%2C0.5L34.7%2C48.7z%22%2F%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M42.7%2C27.3c0.5-0.3%2C1.3-0.8%2C1.8-1.1l4.2-2.5c0.5-0.3%2C0.9-1%2C0.9-1.6l0-12.4c0-0.6-0.4-0.8-0.9-0.5l-10.2%2C6.1%20c-0.5%2C0.3-0.9%2C1-0.9%2C1.6l0%2C12.4c0%2C0.6%2C0.4%2C0.8%2C0.9%2C0.5L42.7%2C27.3z%22%2F%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M37.5%2C33.1c0%2C0.3%2C0%2C1%2C0%2C1.6l0%2C11.3c0%2C0.6%2C0.4%2C0.8%2C0.9%2C0.5l10.2-6.1c0.5-0.3%2C0.9-1%2C0.9-1.6l0-12.4%20c0-0.6-0.4-0.8-0.9-0.5l-4.2%2C2.5c-0.5%2C0.3-1.3%2C0.8-1.8%2C1.1L38.4%2C32C37.9%2C32.3%2C37.5%2C32.8%2C37.5%2C33.1z%22%2F%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M21.8%2C38.7c0.5%2C0.3%2C1.3%2C0.3%2C1.8%2C0l10.3-6.2c0.5-0.3%2C0.5-0.8%2C0-1.1l-10.3-6.2c-0.5-0.3-1.3-0.3-1.8%2C0l-10.3%2C6.2%20c-0.5%2C0.3-0.5%2C0.8%2C0%2C1.1L21.8%2C38.7z%22%2F%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M21.7%2C41.9c0-0.6-0.4-1.3-0.9-1.6l-10.2-6.1c-0.5-0.3-0.9-0.1-0.9%2C0.5l0%2C12.4c0%2C0.6%2C0.4%2C1.3%2C0.9%2C1.6l10.2%2C6.1%20c0.5%2C0.3%2C0.9%2C0.1%2C0.9-0.5L21.7%2C41.9z%22%2F%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M25.4%2C6.4c-0.5%2C0.3-0.5%2C0.8%2C0%2C1.1l10.3%2C6.2c0.5%2C0.3%2C1.3%2C0.3%2C1.8%2C0l10.3-6.2c0.5-0.3%2C0.5-0.8%2C0-1.1L37.5%2C0.2%20c-0.5-0.3-1.3-0.3-1.8%2C0L25.4%2C6.4z%22%2F%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M35.7%2C16.9c0-0.6-0.4-1.3-0.9-1.6L24.5%2C9.1c-0.5-0.3-0.9-0.1-0.9%2C0.5l0%2C12.4c0%2C0.6%2C0.4%2C1.3%2C0.9%2C1.6l10.2%2C6.1%20c0.5%2C0.3%2C0.9%2C0.1%2C0.9-0.5L35.7%2C16.9z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: top right;
	background-size: auto 45px;
	position: absolute;
	top: 0;
	right: 10px;
	opacity: .5;
}

.sns_box h4 img {
	width: auto;
	height: 35px;
	display: block;
}

.sns_box.instagram h4 img {
	height: 42px;
}

.sns_box div {
	width: 100%;
	border-radius: 2.5px;
	background: #fff;
}

#fb_content {
	max-width: 500px;
	margin: 0 auto;
}
 
#fb_content > .fb-page {
	width: 100%;
}
 
#fb_content > .fb-page > span,
#fb_content iframe {
	width: 100% !important;
}

#bnr_box {
	width: calc(50% - 20px);
}

#bnr_line {
	width: 100%;
	display: block;
	overflow: hidden;
	background: #00b900;
	position: relative;
	border-radius: 5px;
	-webkit-transition: background .5s;
	-moz-transition: background .5s;
	transition: background .5s;
}

#bnr_line a {
	height: 100%;
	padding: 20px 10px;
	text-decoration: none;
	display: -webkit-box; /*Android4.3*/
	display: -moz-box; /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-webkit-box-pack: center; /*Android4.3*/
	-moz-box-pack: center; /*Firefox21*/
	-ms-flex-pack: center; /*IE10*/
	-webkit-justify-content: center; /*PC-Safari,iOS8.4*/
	justify-content: center;
	-webkit-box-align: center; /*Android4.3*/
	-moz-box-align: center; /*Firefox21*/
	-ms-flex-align: center; /*IE10*/
	-webkit-align-items: center; /*PC-Safari,iOS8.4*/
	align-items: center;
	-ms-flex-wrap: wrap; /*IE10*/
	-webkit-flex-wrap: wrap; /*PC-Safari,iOS8.4*/
	flex-wrap: wrap;
}

#bnr_line a p {
	font-family: "M PLUS Rounded 1c", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", sans-serif;
	color: #fff;
	font-weight: bold;
	vertical-align: middle;
	margin: 0 10px;
	display: inline-block;
}

#bnr_line a p:first-child {
	font-family: 'tsukushi-maruA', "M PLUS Rounded 1c", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", sans-serif;
	font-size: 2.8rem;
	margin: -4px 10px 0;
}

#bnr_line img {
	width: auto;
	height: 1.3em;
	margin: 0 .3em -0.3em 0;
	display: inline-block;
}

#bnr_box ul {
	width: 100%;
	margin: 15px auto 0;
	display: block;
}

#bnr_box ul li {
	width: 100%;
	background: #fff;
	margin: 15px auto 0;
	display: block;
}

#bnr_box ul li img {
	width: 100%;
	height: auto;
	display: block;
	-webkit-transition: all .5s;
	-moz-transition: all .5s;
	transition: all .5s;
}

#bnr_box ul li img:hover {
	opacity: 0.7;
}

/* レスポンシブ設定 ----------------------------*/

@media only screen and (max-width: 959px) {
	.sns_box {
		width: calc(50% - 10px);
	}
	
	#bnr_line a {
		padding: 10px 10px;
	}
}

@media only screen and (max-width: 768px) {
	section#addition .inner {
		display: block;
	}
	
	.sns_box {
		width: 100%;
		max-width: 500px;
		margin: 0 auto;
	}
	
	.sns_box.instagram {
		margin: 30px auto 0;
	}
	
	.sns_box h4 {
		height: 40px;
	}
	
	.sns_box.facebook h4 {
		padding: 5px 0 0 15px;
	}
	
	.sns_box.instagram h4 {
		padding: 4px 0 0 10px;
	}
	
	.sns_box h4::after {
		width: 40px;
		background-size: auto 40px;
		right: 7.5px;
	}
	
	.sns_box h4 img {
		width: auto;
		height: 30px;
		display: block;
	}
	
	.sns_box.instagram h4 img {
		height: 37px;
	}
	
	#bnr_box {
		width: 100%;
		margin: 30px auto 0;
	}
	
	#bnr_line a p:first-child {
		font-size: 2.6rem;
	}
}

@media only screen and (max-width: 559px) {
	.sns_box.instagram {
		margin: 20px auto 0;
	}
	
	#bnr_box {
		margin: 20px auto 0;
	}
	
	#bnr_line a p:first-child {
		font-size: 2.4rem;
		line-height: 1.2;
		text-align: center;
		margin: 0 10px;
	}
}

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

#map_box {
	width: 100%;
	height: 400px;
}