@charset "utf-8";
#mainVisual {
	position: relative;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;

}
#mainVisual #mainVisualwrap .sp-slides .sp-slide .smp {
	display: none;
}
#mainVisual #mainVisualwrap .sp-slides .sp-slide .pc {
	display: inline;
}
#mainVisual #mainVisualwrap .sp-slides .sp-slide img{
	width: 100%;
	height: auto;
	
}
#mainVisual #mainVisualwrap .sp-slides .sp-slide img.pc{
	display: inline;
}
#mainVisual #mainVisualwrap .sp-slides .sp-slide img.smp{
	display: none;
}
#mainVisual .mainimgTxt {
	position: absolute;
	left: 0px;
	width: 100%;
	height: auto;
	z-index: 100;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	top: 0px;
}
#mainVisual .mainimgTxt.pc {
	display: block !important;
}
#mainVisual .mainimgTxt.smp {
	display: none !important;
}


#mainVisual #mainimgTxt img {
	width: 100%;
	height: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#toppage #message {
	background-image: -webkit-linear-gradient(270deg,rgba(255,255,255,1.00) 50.78%,rgba(245,245,245,1.00) 100%);
	background-image: -moz-linear-gradient(270deg,rgba(255,255,255,1.00) 50.78%,rgba(245,245,245,1.00) 100%);
	background-image: -o-linear-gradient(270deg,rgba(255,255,255,1.00) 50.78%,rgba(245,245,245,1.00) 100%);
	background-image: linear-gradient(180deg,rgba(255,255,255,1.00) 50.78%,rgba(245,245,245,1.00) 100%);
	text-align: center;
	padding-bottom: 25px;
}
#toppage #message #messageInner {
	position: relative;
	padding-top: 5%;
	padding-bottom: 5%;
}

#toppage #message #messageInner:before {
	content: "";
	position: absolute;
	top: 0px;
	left: 0px;
	width: 16%;
	height: 80%;
	background-image: url(../../img/top/bg_message01.svg);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
}
#toppage #message #messageInner:after {
	content: "";
	right: 0px;
	bottom: 0px;
	position: absolute;
	width: 40%;
	height: 100%;
	background-image: url(../../img/top/bg_message02.svg);
	background-repeat: no-repeat;
	background-position: right bottom;
	background-size: contain;
}


#toppage #message p {
	font-size: 120%;
}
#toppage #message p span {
	color: #bf5175;
}
#toppage #message p span:nth-child(2) {
	color: #2299b2;
}
#toppage #message p.readMore span {
	color: #FFFFFF;
}
.readMore {
	background-image: url(../bg_dotline.svg);
	background-repeat: repeat-x;
	background-position: center center;
	padding-top: 0px;
	font-size: 0px;
	line-height: normal;
	text-align: center;
}

.readMore a , .readMore span {
	display: inline-block;
	background-color: #6e5b4f;
	margin-bottom: 0px;
	margin-top: 0px;
	margin-right: 0px;
	margin-left: 0px;
	padding-left: 30px;
	padding-right: 30px;
	padding-top: 9px;
	padding-bottom: 9px;
	line-height: normal;
	font-size: 0px;
	border-top-left-radius: 1px;
	border: 2px solid #aeaeae;
	position: relative;
	color: #FFFFFF;
	text-decoration: none;
}
.readMore a:hover , .readMore span:hover{
	background-color: #2B2520;
	
}
.readMore a:hover img, .readMore span:hover img {
	opacity: 1;
}

.readMore a:before , .readMore span:before{
	content: "";
	width: 100%;
	height: 100%;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	padding-top: 0px;
	border: 1px solid #FFFFFF;
	position: absolute;
	left: -1px;
	top: -1px;
}
.readMore a:after , .readMore span:after{
	content: "\f105";
	font-family: FontAwesome;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 16px;
	line-height: normal;
}
.readMore a {
}
.readMore span {
}
.readMore span:after {
	content: "\f107";
}
.button {
	background-image: url(../bg_dotline.svg);
	background-repeat: repeat-x;
	background-position: center center;
	padding-top: 0px;
	font-size: 100%;
	line-height: normal;
	text-align: center;
	margin-top: 19px;
}
.button a , .button span {
	display: inline-block;
	background-color: #e98fb0;
	margin-bottom: 0px;
	margin-top: 0px;
	margin-right: auto;
	margin-left: auto;
	padding-left: 30px;
	padding-right: 30px;
	padding-top: 6px;
	padding-bottom: 6px;
	line-height: normal;
	font-size: 79%;
	border-top-left-radius: 1px;
	border: 2px solid #aeaeae;
	position: relative;
	color: #FFFFFF;
	text-decoration: none;
	background-image: -webkit-linear-gradient(0deg,rgba(241,194,210,1.00) 0%,rgba(233,143,176,1.00) 100%);
	background-image: -moz-linear-gradient(0deg,rgba(241,194,210,1.00) 0%,rgba(233,143,176,1.00) 100%);
	background-image: -o-linear-gradient(0deg,rgba(241,194,210,1.00) 0%,rgba(233,143,176,1.00) 100%);
	background-image: linear-gradient(90deg,rgba(241,194,210,1.00) 0%,rgba(233,143,176,1.00) 100%);
	letter-spacing: 2px;
}
.button a:hover , .button span:hover{
	background-color: #2B2520;
	
}
.button a:hover img, .button span:hover img {
	opacity: 1;
}

.button a:before , .button span:before{
	content: "";
	width: 100%;
	height: 100%;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	padding-top: 0px;
	border: 1px solid #FFFFFF;
	position: absolute;
	left: -1px;
	top: -1px;
}
.button a:after , .button span:after{
	content: "\f105";
	font-family: FontAwesome;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 16px;
	line-height: normal;
}
#toppage #message .more {
	width: 100%;
	max-width: 960px;
	margin-left: auto;
	margin-right: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding-top: 20px;
	padding-bottom: 20px;
	font-size: 80%;
	padding-right: 20px;
	padding-left: 20px;
}

h2 {
	text-align: center;
	font-family: "a-otf-ryumin-pr6n","游明朝体", "Yu Mincho","ヒラギノ明朝 ProN W6","HiraMinProN-W6","HG明朝E","ＭＳ Ｐ明朝","MS PMincho","MS 明朝",serif;
	font-size: 150%;
	color: #000000;
	margin-top: 3%;
	padding-bottom: 3%;
	font-weight: normal;
}
h2 span {
	display: block;
	font-size: 58%;
	color: #e9b1c4;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	margin-top: 1px;
}
h2.color span {
	color: #b1d2e9;
}

h2 span:before {
	width: 168px;
	height: 1px;
	position: absolute;
	content: "";
	background-color: #40352a;
	left: 50%;
	top: 0px;
	transform: translateX(-50%);
}
#ranking ul  {
	width: 100%;
	max-width: 960px;
	margin-left: auto;
	margin-right: auto;
	display: table;
}
#ranking ul li {
	display: table-cell;
	width: 33.33%;
	width: calc(100% / 3);
	text-align: center;
	font-size: 75%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding-top: 15px;
	padding-right: 15px;
	padding-bottom: 15px;
	padding-left: 15px;
}
#ranking ul li a {
	text-decoration: none;
}
#ranking ul li a p {
}
#ranking ul li a p.pict  {
	margin-bottom: 7px;
	position: relative;
	display: inline-block;

}

#ranking ul li a p.pict:before {
	content: url(../../img/top/ico_ranking01.png);
	position: absolute;
	top: -17px;
	left: -12px;
	z-index: 10;
}
#ranking ul li a:hover p.pict:before {
	opacity: 1;
}

#ranking ul li:nth-child(2) a p.pict:before {
	content: url(../../img/top/ico_ranking02.png);
}
#ranking ul li:nth-child(3) a p.pict:before {
	content: url(../../img/top/ico_ranking03.png);
}
#menus {
	text-align: center;
	padding-top: 3%;
	padding-bottom: 3%;
}
#menus:before {
	content: url(../ico_square_tri.svg);
	margin-bottom: 16px;
	display: block;
}
#menus:after {
	content: url(../ico_square_tri_r.svg);
	display: block;
	margin-top: 16px;
}



#menus ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-around;
	padding-left: 5px;
	padding-right: 5px;
	margin-left: auto;
	margin-right: auto;
}
#menus ul li {
	padding-top: 5px;
	padding-bottom: 5px;
	padding-left: 5px;
	padding-right: 5px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}
#menus ul li a {
	display: block;
	background-image: url(../../img/top/bg_menu01.jpg);
	background-position: center center;
	background-size: cover;
	padding-top: 11%;
	padding-bottom: 11%;
	width: 100%;
	position: relative;
	text-decoration: none;
	padding-left: 7%;
	padding-right: 7%;
}
#menus ul li a:hover {
animation: flash 0.5s;
}
#insta{
	overflow: hidden;
}
@keyframes flash {
	0% { opacity: 0.7 }
	100% { opacity: 1 }
}
#menus ul li a:hover img {
	opacity: 1;
}
#menus ul li a:after {
	position: absolute;
	content: "\f105";
	font-family: FontAwesome;
	right: 10px;
	color: #FFFFFF;
	top: 50%;
	transform: translateY(-50%);
	font-size: 300%;
	text-shadow: 0px 0px 15px hsla(6,40%,9%,0.76);
	-webkit-transition: 0.6s ease-in-out;
     -moz-transition: 0.6s ease-in-out;
     -o-transition: 0.6s ease-in-out;
     transition: 0.6s ease-in-out;
}
#menus ul li a:hover:after {
	-webkit-transition: 0.3s ease-in-out;
     -moz-transition: 0.3s ease-in-out;
     -o-transition: 0.3s ease-in-out;
     transition: 0.3s ease-in-out;
	right: 15px;
}


#menus ul li a img {
	zoom: 0.8;
}
#menus ul li#menus02 a{
	background-image: url(../../img/top/bg_menu02.jpg);
}
#menus ul li#menus03 a{
	background-image: url(../../img/top/bg_menu03.jpg);
}
#menus ul li#menus04 a{
	background-image: url(../../img/top/bg_menu04.jpg);
}
#menus ul li#menus05 a{
	background-image: url(../../img/top/bg_menu05.jpg);
}
#menus ul li.nomalMenus {
	width: 50%;
}

#menus ul li.nomalMenus a:before{
	content: "";
	position: absolute;
	top: 0px;
	width: 100%;
	height: 100%;
	background-image: url(../../img/top/bg_menu.svg);
	left: 0px;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}

#menus ul li.nomalMenus a img {
	zoom: 1.5;
	filter: drop-shadow(0px 0px 8px #000);
}
#menus ul li:nth-child(1) { order: 1;}
#menus ul li:nth-child(2) { order: 3;}
#menus ul li:nth-child(3) { order: 2;}
#menus ul li:nth-child(4) { order: 4;}
#menus ul li:nth-child(5) { order: 5;}
#menus ul #menus02 img:first-child {
	margin-bottom: 59px;
	margin-top: 10px;
}
#company {
	background-color: #3f342b;
	background-image: url(../../img/top/bg_company.svg);
	background-repeat: no-repeat;
	background-position: center top;
	padding-top: 1%;
	margin-top: 4%;
	color: #FFFFFF;
	padding-left: 6%;
	padding-right: 6%;
	padding-bottom: 50px;
}

#company h2 {
	color: #FFFFFF;
}

#company h2 span {
	color: #FFFFFF;
}

#company h2 span:before {
	background-color: #b4852b;
}
#company #profile {
	padding-left: 20px;
	padding-right: 20px;
	border: 1px solid #FFFFFF;
	padding-top: 20px;
	padding-bottom: 0px;
	margin-top: 2%;
	border-radius: 5px;
}
#company #profile a {
	color: #FFFFFF;
}

table {
	font-size: 87%;
	width: 100%;
}
table:nth-child(2) {
	margin-bottom: 20px;
}
table tbody {
}
table tbody tr {
}
table tbody tr th {
	padding-top: 3px;
	padding-right: 3px;
	padding-bottom: 3px;
	padding-left: 3px;
	vertical-align: top;
	white-space: nowrap;
}
table tbody tr td {
	padding-top: 3px;
	padding-right: 3px;
	padding-bottom: 3px;
	padding-left: 3px;
	vertical-align: top;
}

#company .readMore {
	color: #3f342b;
	background-image: none;
	transform: translateY(50%);
}
#company .readMore span {
	color: #3f342b;
	background-color: #FFFFFF;
	cursor: pointer;
}
#company .readMore span:hover{
	background-color: #E4D9CD;
	-webkit-transition: 0.3s ease-in-out;
     -moz-transition: 0.3s ease-in-out;
     -o-transition: 0.3s ease-in-out;
     transition: 0.3s ease-in-out;
}







@media screen and (min-width:768px){
#company #companyWrap {
	display: table;
	width: 100%;
	vertical-align: top;
}

#company .map {
	width: 50%;
	display: table-cell;
	padding-right: 0px;
	vertical-align: top;
	position: relative;
	overflow: hidden;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#company .map iframe {
	height: 450px;
	width: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
	padding-right: 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}


#company #profile {
	width: 50%;
	display: table-cell;
	vertical-align: top;
}


}
@media screen and (max-width:768px){
#mainVisual #mainVisualwrap .sp-slides .sp-slide img.pc{
	display: none;
}
#mainVisual #mainVisualwrap .sp-slides .sp-slide img.smp{
	display: inline;
}
#toppage #message #messageInner {
	background-image: -webkit-linear-gradient(270deg,rgba(255,255,255,1.00) 0%,rgba(244,245,244,1.00) 100%);
	background-image: -moz-linear-gradient(270deg,rgba(255,255,255,1.00) 0%,rgba(244,245,244,1.00) 100%);
	background-image: -o-linear-gradient(270deg,rgba(255,255,255,1.00) 0%,rgba(244,245,244,1.00) 100%);
	background-image: linear-gradient(180deg,rgba(255,255,255,1.00) 0%,rgba(244,245,244,1.00) 100%);
	text-align: center;
	background-repeat: no-repeat;
	background-position: left top;
	position: relative;
	padding-top: 10%;
	padding-bottom: 10%;
}
#menus ul #menus02 img:first-child {
	margin-bottom: 15%;
	margin-top: 8%;
}
#company .map iframe {
	height: 210px;
}
#toppage #message .more {
	background-color: #F4F5F4;
}
#mainVisual .mainimgTxt.pc {
	display: none !important;
}






}


@media screen and (max-width:640px){
#menus ul li a img {
	zoom: 1;
}
#menus ul li.nomalMenus a img {
	zoom: 1;
}
#menus ul li.nomalMenus{
	width: 100%;
}
#menus ul li:nth-child(1) { order: 1;}
#menus ul li:nth-child(2) { order: 2;}
#menus ul li:nth-child(3) { order: 3;}
#menus ul li:nth-child(4) { order: 4;}
#menus ul li:nth-child(5) { order: 5;}
#company {
	background-position: right top;
}





}

@media screen and (max-width:480px){
#toppage #message .more {
	text-align: left;
	padding-top: 15px;
	padding-right: 15px;
	padding-bottom: 15px;
	padding-left: 15px;

}



}

@media screen and (max-width:320px){



}
