@charset "utf-8";

/*-----------------------------------------------------
html
-------------------------------------------------------*/
html{
	/* overflow-y:scroll; */
}

/*-----------------------------------------------------
body
-------------------------------------------------------*/
body{
	font-size:12px;
	font-size:75%\9;
	color:#222;
	font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",Arial,Osaka,Sans-Serif;
	-webkit-text-size-adjust:none;
	min-width: 320px;
	letter-spacing: 0.06em;
}
input,textarea{
	font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",Arial,Osaka,Sans-Serif;
}

/* for IE9 */
body:not(:target){
	font-size:75%\9;
}

/*-----------------------------------------------------
a
-------------------------------------------------------*/
a:link,
a:visited{
	color:#333;
	text-decoration:none;
}
a:hover,
a:active{
	text-decoration: none;
}

/*-----------------------------------------------------
nonvisual-menu
-------------------------------------------------------*/
div.nonvisual-menu{
	width:0;
	height:0;
	font-size:1px;
	line-height:1px;
	overflow:hidden;
	left:0;
	top:0;
	color:#fff;
}

div.nonvisual-menu a{
	text-decoration:none;
	font-size:1px;
	line-height:1px;
	color:#fff;
}
#main-Contents img{
	position:absolute;
	border:none!important;
	height:1px;
	top:0px;
	left:0px;
}


/*-----------------------------------------------------
Ccontainer
-------------------------------------------------------*/
#Container{
	width:100%;
	min-width: 320px;
	position: relative;
}

/*-----------------------------------------------------
Header
-------------------------------------------------------*/
#Header{
	width:100%;
	background-color:#FFF;
}
#Header div.header_inline{
	padding: 27px 0;
}


/* head-topnavi
---------------------*/
#Header div.header_inline div#head-topnavi{
	display: none;
}


/* logo
---------------------*/
#Header div.header_inline div.logo{
	width: 100%;
	position: relative;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

#Header div.header_inline div.logo h1{
	width:236px;
	height:22px;
	margin:0 0 0 15px;
	position:relative;
	text-indent:-9999px;
}
#Header div.header_inline div.logo h1 a{
	width:100%;
	height:100%;
	display:block;
	background-image:url("../images/sp/header_logo.png");
	background-position:0 0;
	background-repeat:no-repeat;
	background-size:cover;
}


#Header div.header_inline p.category{
	width: 45px;
	height: 45px;
	overflow: hidden;
	text-indent: -9999px;
	position: absolute;
	right: 15px;
	top: 65px;
}

#Header div.header_inline p.category a{
	display: block;
	width: 100%;
	height: 100%;
	background: url(../images/sp/header_btn_cate.png) 0 0 no-repeat;
	background-size: contain;
}
#Header div.header_inline p.category a.close{
	background-image: url(../images/sp/header_btn_cate_close.png)
}


#GlobalNavi{display:none;}


/*-----------------------------------------------------
Content
-------------------------------------------------------*/
#Content{
	width: 100%;
	margin: 0 auto;
}

/*-------------------------------------
Main
---------------------------------------*/
#Main{
	width:100%;
	position: relative;
	padding: 0 15px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

#Main div.wrap{
}


/*-------------------------------------
Left
---------------------------------------*/
#Main div.wrap div#Left{
	width: 100%;
}

/*
LeftBanner
************************/
#Main div.wrap div#Left > ul.banner{
	width: 100%;
	margin: 30px 0 0;

	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

#Main div.wrap div#Left > ul.banner > li{
	float: left;
	margin-bottom: 5.2%;
	line-height: 0;
}

#Main div.wrap div#Left > ul.banner > li a{
	width: 100%;
	display: inline-block;
	position: relative;
	text-indent: -9999px;
	line-height: 0;
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: contain;
}

#Main div.wrap div#Left > ul.banner > li.bnr01{
	width: 100%;
}
#Main div.wrap div#Left > ul.banner > li.bnr01 a{
	padding-top: 34.4%;
	background-image: url(../images/sp/main_banner01.jpg);
}

#Main div.wrap div#Left > ul.banner > li.bnr02{width:100%;}
#Main div.wrap div#Left > ul.banner > li.bnr02 a{
	padding-top:38.62%;
	background-image: url(../images/sp/main_banner03.png);
}


/* right_bnr*/

#Main div.wrap div#Left > ul.banner > li.right_bnr{
	width: 100%;
}
#Main div.wrap div#Left > ul.banner > li.right_bnr ul{
	width: 100%;
	overflow: hidden;
	visibility: visible;
	opacity: 1;
}
#Main div.wrap div#Left > ul.banner > li.right_bnr ul li{
	width: 48.6%;
	margin: 0 2.8% 2.8% 0;
	overflow: hidden;
	text-indent: -9999px;
	float: left;
}
#Main div.wrap div#Left > ul.banner > li.right_bnr ul li a{
	width: 100%;
	padding-top: 49.6%;
	display: block;
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: contain
}
#Main div.wrap div#Left > ul.banner > li.right_bnr ul li:nth-of-type(even){
	margin-right: 0;
}
#Main div.wrap div#Left > ul.banner > li.right_bnr ul li:nth-last-of-type(1),
#Main div.wrap div#Left > ul.banner > li.right_bnr ul li:nth-last-of-type(2){
	margin-bottom: 0;
}

#Main div.wrap div#Left > ul.banner > li.right_bnr ul li:nth-of-type(1) a{
	background-image: url(../images/sp/side_banner01.jpg);
}
#Main div.wrap div#Left > ul.banner > li.right_bnr ul li:nth-of-type(2) a{
	background-image: url(../images/sp/side_banner02.jpg);
}
#Main div.wrap div#Left > ul.banner > li.right_bnr ul li:nth-of-type(3){
	display: none;
}
#Main div.wrap div#Left > ul.banner > li.right_bnr ul li:nth-of-type(3) a{
	background-image: url(../images/sp/side_banner03.jpg);
}
#Main div.wrap div#Left > ul.banner > li.right_bnr ul li:nth-of-type(4) a{
	background-image: url(../images/sp/side_banner04.jpg);
}

/*
LeftSns sns_widget
************************/
#Main div.wrap div#Left div.sns_widget{
	overflow: hidden;
}
#Main div.wrap div#Left div.sns_widget div{
	width: 100%;
	min-width: 100%;
}
#Main div.wrap div#Left div.sns_widget div.fb{
	margin-bottom: 15px;
}

#Main div.wrap div#Left div.sns_widget div.tw{
	height: auto;
}

.fb_iframe_widget,
.fb_iframe_widget span,
.fb_iframe_widget iframe[style]{ width: 100%!important; }

/*-------------------------------------
Right
---------------------------------------*/
#Main div.wrap div#Right{
	width: 100%;
	position: absolute; left: 0; top: 0;
	padding: 0 0 15px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	background: #FFF;
	font-size: 116%;

	display: none;
	z-index: 100;
}


/*-------------------------------------
gnavi
---------------------------------------*/
#Main div.wrap div#Right {
	width: 100%;
}
#Main div.wrap div#Right ul.gnavi{
	padding:15px 15px 5px 15px;
	background-position:0 0;
	background-repeat:repeat;
	background-size:2px 3px;
}

#Main div.wrap div#Right ul.gnavi li{
	margin-bottom: 12px;
}

#Main div.wrap div#Right ul.gnavi img {
	width: 100%;
}



/*-------------------------------------
Category
---------------------------------------*/
#Main div.wrap div#Right .cate_wrap {
	margin: 15px 15px 5px 15px;
	box-sizing: border-box;
	border-radius: 5px;
	border: 1px solid #C3C5C5;
}

#Main div.wrap div#Right ul.cate li{
	width: 90%;
	display: table;
	box-sizing: border-box;
	border-top: 1px solid #C3C5C5;
	font-size: 116%;
	margin: 0 auto;
}

#Main div.wrap div#Right ul.cate li a{
	display: table-cell;
	vertical-align: middle;
	text-decoration: none;
	color: #000000;
}
#Main div.wrap div#Right ul.cate li a:hover{
	background: #e8e8e8;
	color:#F57598;

}

#Main div.wrap div#Right ul.cate li span{
	padding: 6px 0;
  display: table-cell;
  vertical-align: middle;
  display: block;
  width: 100%;
  text-align: center;
}

#Main div.wrap div#Right h2{
	color: #FFF;
	overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
	border-top: none;
}

#Main div.wrap div#Right h2{
	background-image: url(../images/pc/side_cate_ttl01.png);
	background-size: 120px 28px;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	padding: 8% 0;
}

#Main div.wrap div#Right ul.main02 {
	margin-bottom:20px;
}

#Main div.wrap div#Right ul.main02 li:last-child {
	border-bottom: solid 1px #C3C5C5;
}


/*-------------------------------------
Banner
---------------------------------------*/
#Main div.wrap div#Right ul.banner{
	display: none;
}

/*
sns
************************/
#Main div.wrap div#Right ul.sns{
	display: none;
}

/*-----------------------------------------------------
RightBg
-------------------------------------------------------*/
#Main div.wrap div#RightBg{
	width:	100%;
	height: 100%;
	position: absolute;
	left: 0; top: 0;
	background-color: #000;
	opacity: 0.8;
	display: none;
}

/*-----------------------------------------------------
sp_btm_nav
-------------------------------------------------------*/
.sp_btm_nav {
	width: 100%;
  position: relative;
	margin-top: 20px;
}
.foot-navi-img {
  margin: 0 auto 14.06vw;
	padding: 0 15px;
}
.foot-navi-img img {
	width: 100%;
}

.foot-navi-img .title {
  width: 100%;
  margin: 0 auto 4.68vw;
}

.foot-navi-img li {
  margin-bottom: 2.81vw;
}

.foot-navi-img li:last-child {
  margin-bottom: 0;
}

.lower-area .pagetop {
  width: 9.06%;
  margin: 0 auto;
}
.lower-area .pagetop img {
	width: 100%;
}

.lower-area .animation-block {
  position: relative;
  width: 6.25%;
  margin: 0 auto 5.46vw;
}

.lower-area .animation-block .text {
  position: absolute;
}

.lower-area .animation-block .text-swing01 {
  top: -1.9vw;
  left: calc(50% - 5.9vw);
  width: 51.21%;
}

.lower-area .animation-block .text-swing02 {
  top: -4.5vw;
  left: calc(50% - 2.1vw);
  width: 58.53%;
}

.lower-area .animation-block .text-swing03 {
  top: -2.3vw;
  right: calc(50% - 5.8vw);
  width: 56.09%;
}

.lower-area .sns-block {
  margin-bottom: 9.37vw;
}

.lower-area .sns-block .lead {
	margin-bottom: 5.46vw;
  font-size: 117%;
  line-height: 1.65;
  letter-spacing: 2px;
  text-align: center;
}

.lower-area .sns-block ul {
  width: 41.66%;
  margin: 0 auto;
  font-size: 0;
}

.lower-area .sns-block li {
  display: inline-block;
  vertical-align: middle;
  margin-right: 15.7%;
}

.lower-area .sns-block li {
  width: 22.1%;
}
.lower-area .sns-block li:last-child {
  margin-right: 0;
}

.lower-area .sns-block li.current {
  pointer-events: none;
}

/*===========================
text-swing
===========================*/
@keyframes swing-right-left {
  0% {
    transform:translateX( -5px);
  }
  100% {
    transform:translateX(  0px);
  }
}
@keyframes swing-up-down {
  0% {
    transform:translateY(-7px);
  }
  100% {
    transform:translateY(  0px);
  }
}

.text-swing {
  animation: swing-right-left 1.8s ease-in-out infinite alternate;
}

.text-swing span {
  display: block;
  animation: swing-up-down 1.8s ease-in-out infinite alternate;
}

.text-swing01 {
  animation-duration: 0.8s
}

.text-swing02 {
  animation-duration: 1.3s
}

.text-swing03 {
  animation-duration: 1.8s
}



/*-----------------------------------------------------
Footer
-------------------------------------------------------*/
#Footer{
	width:100%;
	font-size:84%;
	padding: 30px 0 24px 0;
	position: relative;
	text-align: center;
}
#Footer div.footer_inline{
	overflow:hidden;
	margin:0 auto 0 auto;
}

/* sns
---------------------*/
#Footer div.sns_wrap{
	width: 100%;
	background: url(../images/sp/footer_bg01.png) 50% 50% repeat;
	padding: 15px 0 15px;
}

#Footer div.sns_wrap ul.sns{
	width: 260px;
	margin: 0 auto;
	overflow: hidden;
}
#Footer div.sns_wrap ul.sns li{
	margin-right: 15px;
	float: left;
}

#Footer div.sns_wrap ul.sns li.fb{
	width:71px;
	text-align: left;
}
#Footer div.sns_wrap ul.sns li.fb div{
	vertical-align: top;
}

#Footer div.sns_wrap ul.sns li.tw{
	width:76px;
}
#Footer div.sns_wrap ul.sns li.line{
	width:82px;
	margin-right: 0;
}


/* navi
---------------------*/
#Footer div.link{
	 padding: 17px 0 13px;
}

#Footer div.link a{
	color: #65533d;
	text-decoration: underline;
	display: inline-block;
}
#Footer div.link span{
	display: inline;
	margin:13px 0 13px 0;
	text-align: center;
}


/* logo
---------------------*/
#Footer p.logo{
	padding: 0 0 13px;
}
#Footer p.logo img{
	width: 71px;
	height: auto;
}

/* address
---------------------*/
#Footer address{
	color: #ada397;
	text-align: center;
  font-family: Georgia;
}
