@charset "utf-8";
a {
	color: #222;
}
a:hover {
/*text-decoration: underline;*/
}
img {
	margin: 0px;
	padding: 0px;
	border: 0px;
	transition: All 0.3s ease;
	-webkit-transition: All 0.3s ease;
	-moz-transition: All 0.3s ease;
	-o-transition: All 0.3s ease;
}
a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70)";
    -webkit-backface-visibility: hidden; /* 追加 */
    backface-visibility: hidden; /* 追加 */
}
.ov_hover:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70)";
}
.font_mincho {
	font-family: "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" ,"ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif"
}
/*ラッパー
**********************************************/
html {
	height: 100%;
	font-size: 62.5%;
}
body {
	height: 100%;
	font-size: 1.4rem;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #2a2a2a;
	word-break: break-all;
}
.site-wrap {
	overflow: hidden;
}
#wrapper {
	position: relative;
	min-height: 100%;
	margin: 0 auto;
	background: url(../common_img/bg_header.png);
	background-size: auto 210px;
	background-position: center top;
	background-repeat: no-repeat;
}
.container {
	position: relative;
	width: 1000px;
	margin: 0 auto;
	box-sizing: border-box;
}
#main {
	position: relative;
	padding-bottom: 140px;
}
#main.fixed,
#footer.fixed {
}
/*ヘッダー
**********************************************/
#header {
	position: relative;
	width: 100%;
	height: 146px;
}
.header_inner {
	position: relative;
	width: 1000px;
	margin: 0 auto;
}
#h_logo {
	position: absolute;
	z-index: 2;
	top: 26px;
	left: 50%;
	margin-left: -75px;
	width: 150px;
	transition: All 0.3s ease;
	-webkit-transition: All 0 ease;
	-moz-transition: All 0 ease;
	-o-transition: All 0 ease;
}
#h_logo img {
	width: 100%;
	height: auto;
	vertical-align: top;
	-webkit-transition: All 0 ease;
	-moz-transition: All 0 ease;
	-o-transition: All 0 ease;
}
/*グローバルナビ
**********************************************/

#gnav {
	padding-top: 36px;
}

#gnav ul {
	display: table;
	table-layout: fixed;
	width: 100%;
}
#gnav li {
	position: relative;
	display: table-cell;
	width: 20%;
}
#gnav li a{
	display: block;
	color: #fff;
	margin: 0 20px;
	font-size: 1.8rem;
	text-align: center;
	padding-top: 55px;
	background-position: center top;
	background-repeat: no-repeat;
}
#gnav li.nav01 a{
	background-image: url(../common_img/nav01.png);
	background-size: 50px 50px;
}
#gnav li.nav02 a{
	background-image: url(../common_img/nav02.png);
	background-size: 50px 50px;
}
#gnav li.nav03 a{
	background-image: url(../common_img/nav03.png);
	background-size: 50px 50px;
}
#gnav li.nav04 a{
	background-image: url(../common_img/nav04.png);
	background-size: 50px 50px;
}
#gnav li:last-child a {
}
#gnav li a:hover {
	text-decoration: none;
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80)";
}
#gnav ul ul {
	display: none;
	position: absolute;
	z-index: 999;
	top: 110px;
	left: 0;
	width: 200px;
	box-sizing:border-box;
	font-size:0;
	padding: 20px 11px;
	background: rgba(255,255,255,0.95);
	border-radius: 5px;
}
#gnav ul ul::before {
	position: relative;
	content: '';
	display: block;
	top: -25px;
	left: 50%;
	margin-left: -5px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 5px 5px 5px;
	border-color: transparent transparent #ffffff transparent;
}
#gnav ul ul li {
	display: block;
	border-bottom: 1px dotted #a3a3a3;
	width: auto;
}
#gnav ul ul li:nth-child(1) {
	border-top: 1px dotted #a3a3a3;
}
#gnav ul ul li a {
	position: relative;
	display: block;
	line-height: 40px;
	padding: 0 0 0 18px;
	color: #2a2a2a;
	font-weight: normal;
	text-align: left;
	border:none;
	box-sizing:border-box;
	font-size: 1.4rem;
}
#gnav li.nav01 li a {
	background: none;
}
#gnav li.nav02 li a {
    background: none;
}
#gnav ul ul li a:hover {
	border: none;
	background-color: rgba(99,206,174,0.95);
	color: #fff;
}
#gnav ul ul li a::before {
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 6px;
	height: 6px;
	margin-top: -3px;
	border-right: 1px solid #63ceae;
	border-bottom: 1px solid #63ceae;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
#gnav ul ul li a:hover::before {
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}


/*ジャンル
**********************************************/
.genere {
	background: #fff;
	border-radius: 0 0 5px 5px;
	box-shadow:0px 3px 5px 0px rgba(215, 215, 215, 0.5);
	-moz-box-shadow:0px 3px 5px 0px rgba(215, 215, 215, 0.5);
	-webkit-box-shadow:0px 3px 5px 0px rgba(215, 215, 215, 0.5);
}
.genere .ttl {
	position: relative;
	padding-top: 0;
	background: url(../common_img/bg_green.png) repeat-x left bottom;
	border-radius: 5px 5px 0 0;
	color: #fff;
}
.genere .ttl::before {
	position: absolute;
	content: '';
	display: block;
	top: -38px;
	width: 181px;
	height: 82px;
	background: url(../images/img_genere.png) no-repeat;
	background-size: contain;
}
.genere .ttl h2 {
	font-weight: normal;
}
.genere .box {
	padding: 30px 13px;
}
.genere .row {
	margin: 0 -5px;
}
.genere .btn {
	position: relative;
	margin: 0 5px;
	height: 100px;
}
.genere .btn p{
	font-size: 2.0rem;
	color: #fff;
	position: absolute;
	top: 50%;
	left: 27px;
	transform: translateY(-50%);
}
.genere .btn a::before{
	position: absolute;
	content: '';
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100px;
}
.genere .btn a:hover::before{
	background: rgba(255,255,255,0.20)
}
.genere .btn span{
	display: block;
	font-size: 1.2rem;
}
.genere .bnr_living {
	background: #66cdda url(../images/bnr_living.png) no-repeat right top;
	background-size: contain;
}
.genere .bnr_eating {
	background: #f68693 url(../images/bnr_eating.png) no-repeat right top;
	background-size: contain;
}
.genere .bnr_shopping {
	background: #a6d974 url(../images/bnr_shopping.png) no-repeat right top;
	background-size: contain;
}
.genere .bnr_exciting {
	background: #ff9656 url(../images/bnr_exciting.png) no-repeat right top;
	background-size: contain;
}

/*フッター
**********************************************/
#footer {
	position: relative;
	background-color: #f9f8f4;
	padding-top: 50px;
}
#footer .page-top {
	position: absolute;
	top: -76px;
	left: 50%;
	width: 100%;
	transform: translateX(-50%);
	text-align: center;
}
#footer .f_contact {
	text-align: center;
}
#footer .f_contact .ttl h2 {
	font-size: 3.0rem;
}
#footer .f_contact .ttl p {
	font-size: 1.2rem;
}
#footer .f_contact .comment {
	margin: 15px auto 40px;
}
#footer .f_contact .btn_contact {
	margin-left: 210px;
}
#footer .f_contact .btn_contact a{
	width: 260px;
	line-height: 70px;
	font-size: 1.6rem;
	padding-left: 25px;
	box-shadow: 0 0 0 4px #29ad86 inset,
		0 0 0 5px #fff inset;
	border-radius: 5px;
}
#footer .f_contact .btn_contact a::before{
	position: absolute;
	content: '';
	display: block;
	top: 50%;
	left: 28px;
	width: 25px;
	height: 20px;
	margin-top: -10px;
	background: url(../common_img/ico_email.png);
	background-size: contain;
}
#footer .f_contact .f_tel {
	margin-left: 30px;
	width: 350px;
	font-size: 3.2rem;
}
#footer .f_contact i {
	color: #29ad86;
}
#footer .tel-link {
	padding-left: 10px;
	line-height: 1.3;
}
#footer .f_contact .hour {
	background: #29ad86;
	color: #fff;
	font-size: 1.4rem;
	line-height: 25px;
}

#footer .f_navarea  {
	padding-top: 115px;
	padding-bottom: 70px;
	background-image: url(../common_img/bg_footer.png);
	background-size: auto 250px;
	background-position: center bottom;
	background-repeat: no-repeat;
}
#footer .logo {
	float: left;
	width: 148px;
	margin-right: 40px;
}
#footer #fnav  {
	padding-top: 60px;
}
#fnav li {
	float: left;
	margin-right: 25px;
}
#fnav ul li a {
	position: relative;
	color: #fff;
	font-size: 1.3rem;
	padding-left: 1em;
}
#fnav ul li a::before {
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	left:0;
	width: 6px;
	height: 6px;
	margin-top: -3px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
#fnav ul li a:hover {
	text-decoration: underline;
}

/*ページトップ
**********************************************/
#page-top {
	position: fixed;
	z-index: 100;
    bottom: 60px;
    right: 50px;
}
#page-top a {
	width: 50px;
	height: 50px;
	display: block;
	text-align: center;
	text-decoration: none;
}
#page-top a:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70)";
}

/*ボタン
**********************************************/

.btn a {
    position: relative;
    display: block;
    transition: All 0.3s ease;
    -webkit-transition: All 0.3s ease;
    -moz-transition: All 0.3s ease;
    -o-transition: All 0.3s ease;
}
.btn a:hover {
    text-decoration: none;
    opacity: 0.7;
}

.btn_orange a {
	color: #fff;
	background: #ff9656;
	box-shadow:0px 3px 0px 0px #ea8c41;
	-moz-box-shadow:0px 3px 0px 0px #ea8c41;
	-webkit-box-shadow:0px 3px 0px 0px #ea8c41;
	border-radius: 3px;
}
.btn_light_green a {
	color: #fff;
	background: #69c55d;
	box-shadow:0px 3px 0px 0px #54a449;
	-moz-box-shadow:0px 3px 0px 0px #54a449;
	-webkit-box-shadow:0px 3px 0px 0px #54a449;
	border-radius: 3px;
}
.btn_green a {
	color: #fff;
	background: #29ad86;
	box-shadow:0px 3px 0px 0px #1f9472;
	-moz-box-shadow:0px 3px 0px 0px #1f9472;
	-webkit-box-shadow:0px 3px 0px 0px #1f9472;
	border-radius: 3px;
}
.btn_dark_green a {
	color: #fff;
	background: #06b1c5;
	box-shadow:0px 3px 0px 0px #1699ac;
	-moz-box-shadow:0px 3px 0px 0px #1699ac;
	-webkit-box-shadow:0px 3px 0px 0px #1699ac;
	border-radius: 3px;
}
.btn_dark_yellow a {
	color: #fff;
	background: #c3be2d;
	box-shadow:0px 3px 0px 0px #a9b30f;
	-moz-box-shadow:0px 3px 0px 0px #a9b30f;
	-webkit-box-shadow:0px 3px 0px 0px #a9b30f;
	border-radius: 3px;
}
.btn_gray a {
	position: relative;
	display: block;
	font-size: 1.2rem;
	background: #767873;
 	box-shadow:0px 3px 0px 0px #535353;
	-moz-box-shadow:0px 3px 0px 0px #535353;
	-webkit-box-shadow:0px 3px 0px 0px #535353;
	color: #fff;
	text-align: center;
	line-height: 30px;
	border-radius: 3px;
}

/*--------------------------------------------------
	margin 
-------------------------------------------------- */ 
.m00 {
	margin: 0px !important;
}
.m05 {
	margin: 5px !important;
}
.m10 {
	margin: 10px !important;
}
.m15 {
	margin: 15px !important;
}
.m20 {
	margin: 20px !important;
}
.m25 {
	margin: 25px !important;
}
.m30 {
	margin: 30px !important;
}
.m35 {
	margin: 35px !important;
}
.m40 {
	margin: 40px !important;
}
.m45 {
	margin: 45px !important;
}
.mt00 {
	margin-top: 0px !important;
}
.mt05 {
	margin-top: 5px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt15 {
	margin-top: 15px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt25 {
	margin-top: 25px !important;
}
.mt30 {
	margin-top: 30px !important;
}
.mt33 {
	margin-top: 33px !important;
}
.mt35 {
	margin-top: 35px !important;
}
.mt40 {
	margin-top: 40px !important;
}
.mt45 {
	margin-top: 45px !important;
}
.mt50 {
	margin-top: 50px !important;
}
.mt100 {
	margin-top: 100px !important;
}
.mr00 {
	margin-right: 0px !important;
}
.mr05 {
	margin-right: 5px !important;
}
.mr10 {
	margin-right: 10px !important;
}
.mr15 {
	margin-right: 15px !important;
}
.mr20 {
	margin-right: 20px !important;
}
.mr25 {
	margin-right: 25px !important;
}
.mr30 {
	margin-right: 30px !important;
}
.mr35 {
	margin-right: 35px !important;
}
.mr40 {
	margin-right: 40px !important;
}
.mr45 {
	margin-right: 45px !important;
}
.mr50 {
	margin-right: 50px !important;
}
.mr60 {
	margin-right: 60px !important;
}
.mb00 {
	margin-bottom: 0px !important;
}
.mb05 {
	margin-bottom: 5px !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb15 {
	margin-bottom: 15px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb25 {
	margin-bottom: 25px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb35 {
	margin-bottom: 35px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mb45 {
	margin-bottom: 45px !important;
}
.mb50 {
	margin-bottom: 50px !important;
}
.mb60 {
	margin-bottom: 60px !important;
}
.ml00 {
	margin-left: 0px !important;
}
.ml05 {
	margin-left: 5px !important;
}
.ml10 {
	margin-left: 10px !important;
}
.ml15 {
	margin-left: 15px !important;
}
.ml20 {
	margin-left: 20px !important;
}
.ml25 {
	margin-left: 25px !important;
}
.ml30 {
	margin-left: 30px !important;
}
.ml35 {
	margin-left: 35px !important;
}
.ml40 {
	margin-left: 40px !important;
}
.ml45 {
	margin-left: 45px !important;
}
.ml60 {
	margin-left: 60px !important;
}
/* 
--------------------------------------------------
	padding
-------------------------------------------------- */
.p00 {
	padding-top: 0px !important;
}
.p05 {
	padding-top: 5px !important;
}
.p10 {
	padding-top: 10px !important;
}
.p15 {
	padding-top: 15px !important;
}
.p20 {
	padding-top: 20px !important;
}
.p25 {
	padding-top: 25px !important;
}
.p30 {
	padding-top: 30px !important;
}
.p35 {
	padding-top: 35px !important;
}
.p40 {
	padding-top: 40px !important;
}
.p45 {
	padding-top: 45px !important;
}
.pt00 {
	padding-top: 0px !important;
}
.pt05 {
	padding-top: 5px !important;
}
.pt10 {
	padding-top: 10px !important;
}
.pt15 {
	padding-top: 15px !important;
}
.pt20 {
	padding-top: 20px !important;
}
.pt25 {
	padding-top: 25px !important;
}
.pt30 {
	padding-top: 30px !important;
}
.pt35 {
	padding-top: 35px !important;
}
.pt40 {
	padding-top: 40px !important;
}
.pt45 {
	padding-top: 45px !important;
}
.pr00 {
	padding-right: 0px !important;
}
.pr05 {
	padding-right: 5px !important;
}
.pr10 {
	padding-right: 10px !important;
}
.pr15 {
	padding-right: 15px !important;
}
.pr20 {
	padding-right: 20px !important;
}
.pr25 {
	padding-right: 25px !important;
}
.pr30 {
	padding-right: 30px !important;
}
.pr35 {
	padding-right: 35px !important;
}
.pr40 {
	padding-right: 40px !important;
}
.pr45 {
	padding-right: 45px !important;
}
.pb00 {
	padding-bottom: 0px !important;
}
.pb05 {
	padding-bottom: 5px !important;
}
.pb10 {
	padding-bottom: 10px !important;
}
.pb15 {
	padding-bottom: 15px !important;
}
.pb20 {
	padding-bottom: 20px !important;
}
.pb25 {
	padding-bottom: 25px !important;
}
.pb30 {
	padding-bottom: 30px !important;
}
.pb35 {
	padding-bottom: 35px !important;
}
.pb40 {
	padding-bottom: 40px !important;
}
.pb45 {
	padding-bottom: 45px !important;
}
.pl00 {
	padding-left: 0px !important;
}
.pl05 {
	padding-left: 5px !important;
}
.pl10 {
	padding-left: 10px !important;
}
.pl15 {
	padding-left: 15px !important;
}
.pl20 {
	padding-left: 20px !important;
}
.pl25 {
	padding-left: 25px !important;
}
.pl30 {
	padding-left: 30px !important;
}
.pl35 {
	padding-left: 35px !important;
}
.pl40 {
	padding-left: 40px !important;
}
.pl45 {
	padding-left: 45px !important;
}
/*--------------------------------------------------
	width
-------------------------------------------------- */
.w14 {
	width: 14px !important;
}
.w21 {
	width: 21px !important;
}
.w28 {
	width: 28px !important;
}
.w35 {
	width: 35px !important;
}
.w42 {
	width: 42px !important;
}
.w49 {
	width: 49px !important;
}
.w56 {
	width: 56px !important;
}
.w63 {
	width: 63px !important;
}
.w70 {
	width: 70px !important;
}
.w77 {
	width: 77px !important;
}
.w84 {
	width: 84px !important;
}
.w91 {
	width: 91px !important;
}
.w98 {
	width: 98px !important;
}
.w105 {
	width: 105px !important;
}
/*====================================================================================
■05.USE MEDIA
====================================================================================*/
.pull_left {
	float: left !important;
}
.pull_right {
	float: right !important;
}
.media, .media-body {
	overflow: hidden;
}
.media > .pull_left {
	margin-right: 20px;
}
.media > .pull_right {
	margin-left: 20px;
}
.media-text:after {
	clear: both;
	display: block;
	content: "";
	height: 0px;
	visibility: hidden;
}
.pic_l .image {
	float: left;
	margin: 5px 10px 5px 0;
}
.pic_r .image {
	float: right;
	margin: 0 0 10px 20px;
}
.document p {
	margin-bottom: 10px;
}
/*====================================================================================
■06.OTHER
====================================================================================*/
.text_normal {
	font-weight: normal !important
}
.text_bold {
	font-weight: bold !important
}
.text_left {
	text-align: left !important
}
.text_right {
	text-align: right !important
}
.text_center {
	text-align: center !important
}
.a_co_blue a {
	color: #4c9fd4;
}
.a_co_red a {
	color: #c30a18;
}
.co_RED {
	color: #b31a1a !important;
}
.bor_none {
	border: none !important;
}
.font16 {
	font-size: 16px !important;
}
.font22 {
	font-size: 22px !important;
}
/ /********************
スタイル
***********************/

.w10per {
 width:10%;
}
.w15per {
	width: 15%;
}
.w20per {
	width: 20%;
}
.w25per {
	width: 25%;
}
.w30per {
	width: 30%;
}
.w40per {
	width: 40%;
}
.w50per {
	width: 50%;
}
.w60per {
	width: 60%;
}
.w70per {
	width: 70%;
}
.w75per {
	width: 75%;
}
.w90per {
	width: 90%;
}
.w95per {
	width: 95%;
}
.w100per {
	width: 100%;
}
.txt_l {
	text-align: left !important
}
.txt_c {
	text-align: center !important
}
.txt_r {
	text-align: right !important
}
.tb_style {
	width: 100%;
	table-layout: auto;
	border-collapse: collapse
}
.tb_style td, .tb_style th {
	padding: 5px 10px;
	border: 1px solid #ddd;
	box-sizing: border-box
}
.tb_style th {
	background: #eee
}
.tb_form {
	width: 100%;
	table-layout: auto;
	border-collapse: collapse
}
.tb_form .tb_list li {
	display: inline;
	margin-left: 15px
}
.tb_form .tb_list li:first-child {
	margin-left: 0
}
.tb_form .tb_list li .title {
	margin-right: 5px
}
.tb_form .space_b {
	display: block;
	margin-bottom: 15px
}
.tb_form .imp_txt {
	width: 100%;
	padding: 3px 0
}
.tb_form .imp_s {
	width: 20%;
	padding: 3px 0
}
.tb_form .imp_space {
	width: 20%;
	padding: 3px 0
}
.ime_sel {
	padding: 3px 0;
	width: 100%
}
.col2_box, .col3_box, .col4_box, .col5_box {
	position: relative
}
.col2_box .col2, .col3_box .col3, .col4_box .col4, .col5_box .col5 {
	float: left;
	box-sizing: border-box
}
.col2_box .col2:first-child, .col3_box .col3:first-child, .col4_box .col4:first-child, .col4_box .col5:first-child {
	margin-left: 0
}

@media (max-width:420px) {
.c-input--text {
	padding: 10px 6px
}
.c-form > .row {
	border-bottom: none
}
.c-form__label {
	padding: 10px 10px 0 0;
	font-size: 14px
}
.c-form__input {
	margin-bottom: 10px
}
.c-pickup__item {
	border: none;
}
.c-pickup__item span {
	display: none
}
.c-ranking__list-wrap {
	margin-right: -3%
}
.c-ranking__item {
	margin-bottom: 12px
}
.c-product__item {
	margin-bottom: 12px
}
.c-catalog .col6_box {
	margin-right: 0
}
.c-catalog .col6 {
	width: 100% !important
}
}
.u-bgc-default {
	background-color: #fff
}
.u-bgc-light-gray3 {
	background-color: #f0f0f0
}
.u-bgc-white {
	background-color: #fff
}
.u-flex {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex
}
.u-block {
	display: block
}
.u-inline {
	display: inline
}
.u-inline-block {
	display: inline-block
}
.u-flex-none {
	box-flex: inherit;
	-webkit-box-flex: inherit;
	-webkit-flex-grow: inherit;
	-ms-flex-positive: inherit;
	flex-grow: inherit;
	box-flex: inherit;
	-webkit-flex: inherit;
	-ms-flex: inherit;
	flex: inherit
}
.u-flex-g1 {
	box-flex: 1;
	-webkit-box-flex: 1;
	-webkit-flex-grow: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	box-flex: 1;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1
}
.u-jc-fs {
	box-pack: start;
	flex-pack: start;
	-webkit-box-pack: start;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start
}
.u-jc-fe {
	box-pack: end;
	flex-pack: end;
	-webkit-box-pack: end;
	-webkit-justify-content: flex-end;
	-ms-flex-pack: end;
	justify-content: flex-end
}
.u-jc-c {
	box-pack: center;
	flex-pack: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center
}
.u-flt-l {
	float: left
}
.u-flt-r {
	float: right
}
.u-cf {
	zoom: 1
}
.u-cf:before, .u-cf:after {
	content: "";
	display: table
}
.u-cf:after {
	clear: both
}
.u-pos-r {
	position: relative
}
.u-pos-a {
	position: absolute
}
.u-pos-s {
	position: static
}
.u-ta-l {
	text-align: left
}
.u-ta-c {
	text-align: center
}
.u-ta-r {
	text-align: right
}
.u-m-xxl {
	margin: 50px
}
.u-m-xl {
	margin: 40px
}
.u-m-l {
	margin: 30px
}
.u-m-m {
	margin: 20px
}
.u-m-s {
	margin: 15px
}
.u-m-xs {
	margin: 10px
}
.u-m-xxs {
	margin: 8px
}
.u-mt-xxl {
	margin-top: 50px
}
.u-mt-xl {
	margin-top: 40px
}
.u-mt-l {
	margin-top: 30px
}
.u-mt-m {
	margin-top: 20px
}
.u-mt-s {
	margin-top: 15px
}
.u-mt-xs {
	margin-top: 10px
}
.u-mt-xxs {
	margin-top: 8px
}
.u-mr-xxl {
	margin-right: 50px
}
.u-mr-xl {
	margin-right: 40px
}
.u-mr-l {
	margin-right: 30px
}
.u-mr-m {
	margin-right: 20px
}
.u-mr-s {
	margin-right: 15px
}
.u-mr-xs {
	margin-right: 10px
}
.u-mr-xxs {
	margin-right: 8px
}
.u-mb-xxl {
	margin-bottom: 50px
}
.u-mb-xl {
	margin-bottom: 40px
}
.u-mb-l {
	margin-bottom: 30px
}
.u-mb-m {
	margin-bottom: 20px
}
.u-mb-s {
	margin-bottom: 15px
}
.u-mb-xs {
	margin-bottom: 10px
}
.u-mb-xxs {
	margin-bottom: 8px
}
.u-ml-xxl {
	margin-left: 50px
}
.u-ml-xl {
	margin-left: 40px
}
.u-ml-l {
	margin-left: 30px
}
.u-ml-m {
	margin-left: 20px
}
.u-ml-s {
	margin-left: 15px
}
.u-ml-xs {
	margin-left: 10px
}
.u-ml-xxs {
	margin-left: 8px
}
.u-p-xxl {
	padding: 50px
}
.u-p-xl {
	padding: 40px
}
.u-p-l {
	padding: 30px
}
.u-p-m {
	padding: 20px
}
.u-p-s {
	padding: 15px
}
.u-p-xs {
	padding: 10px
}
.u-p-xxs {
	padding: 8px
}
.u-pt-xxl {
	padding-top: 50px
}
.u-pt-xl {
	padding-top: 40px
}
.u-pt-l {
	padding-top: 30px
}
.u-pt-m {
	padding-top: 20px
}
.u-pt-s {
	padding-top: 15px
}
.u-pt-xs {
	padding-top: 10px
}
.u-pt-xxs {
	padding-top: 8px
}
.u-pr-xxl {
	padding-right: 50px
}
.u-pr-xl {
	padding-right: 40px
}
.u-pr-l {
	padding-right: 30px
}
.u-pr-m {
	padding-right: 20px
}
.u-pr-s {
	padding-right: 15px
}
.u-pr-xs {
	padding-right: 10px
}
.u-pr-xxs {
	padding-right: 8px
}
.u-pb-xxl {
	padding-bottom: 50px
}
.u-pb-xl {
	padding-bottom: 40px
}
.u-pb-l {
	padding-bottom: 30px
}
.u-pb-m {
	padding-bottom: 20px
}
.u-pb-s {
	padding-bottom: 15px
}
.u-pb-xs {
	padding-bottom: 10px
}
.u-pb-xxs {
	padding-bottom: 8px
}
.u-pl-xxl {
	padding-left: 50px
}
.u-pl-xl {
	padding-left: 40px
}
.u-pl-l {
	padding-left: 30px
}
.u-pl-m {
	padding-left: 20px
}
.u-pl-s {
	padding-left: 15px
}
.u-pl-xs {
	padding-left: 10px
}
.u-pl-xxs {
	padding-left: 8px
}
.is-hidden {
	display: none
}
.u-fs-xxl {
	font-size: 20px
}
.u-fs-xl {
	font-size: 18px
}
.u-fs-l {
	font-size: 16px
}
.u-fs-m {
	font-size: 14px
}
.u-fs-s {
	font-size: 12px
}
.u-fs-xs {
	font-size: 11px
}
.u-fs-xxs {
	font-size: 10px
}
.u-tc-gray {
	color: #999
}
.u-tc-light-gray {
	color: #ddd
}
.u-tc-dark-gray {
	color: #666
}
.u-tc-white {
	color: #fff
}
.u-tc-red {
	color: #f00
}
.u-fw-n {
	font-weight: normal
}
.u-fw-b {
	font-weight: bold
}
.u-td-u {
	text-decoration: underline
}
.u-td-n {
	text-decoration: none
}
.u-lh-xl {
	line-height: 1.8
}
.u-lh-l {
	line-height: 1.6
}
.u-lh-m {
	line-height: 1.4
}
.u-lh-s {
	line-height: 1.2
}
.u-lh-none {
	line-height: 0
}
.u-visible-pc {
	display: block
}
.u-visible-pc--inline {
	display: inline
}
.u-visible-sp {
	display: none
}
.u-visible-sp--inline {
	display: none
}
.u-visible-sp--flex {
	display: none
}

@media (min-width:421px) {
.u-m-xxl-pc {
	margin: 50px
}
.u-m-xl-pc {
	margin: 40px
}
.u-m-l-pc {
	margin: 30px
}
.u-m-m-pc {
	margin: 20px
}
.u-m-s-pc {
	margin: 15px
}
.u-m-xs-pc {
	margin: 10px
}
.u-m-xxs-pc {
	margin: 8px
}
.u-mt-xxl-pc {
	margin-top: 50px
}
.u-mt-xl-pc {
	margin-top: 40px
}
.u-mt-l-pc {
	margin-top: 30px
}
.u-mt-m-pc {
	margin-top: 20px
}
.u-mt-s-pc {
	margin-top: 15px
}
.u-mt-xs-pc {
	margin-top: 10px
}
.u-mt-xxs-pc {
	margin-top: 8px
}
.u-mr-xxl-pc {
	margin-right: 50px
}
.u-mr-xl-pc {
	margin-right: 40px
}
.u-mr-l-pc {
	margin-right: 30px
}
.u-mr-m-pc {
	margin-right: 20px
}
.u-mr-s-pc {
	margin-right: 15px
}
.u-mr-xs-pc {
	margin-right: 10px
}
.u-mr-xxs-pc {
	margin-right: 8px
}
.u-mb-xxl-pc {
	margin-bottom: 50px
}
.u-mb-xl-pc {
	margin-bottom: 40px
}
.u-mb-l-pc {
	margin-bottom: 30px
}
.u-mb-m-pc {
	margin-bottom: 20px
}
.u-mb-s-pc {
	margin-bottom: 15px
}
.u-mb-xs-pc {
	margin-bottom: 10px
}
.u-mb-xxs-pc {
	margin-bottom: 8px
}
.u-ml-xxl-pc {
	margin-left: 50px
}
.u-ml-xl-pc {
	margin-left: 40px
}
.u-ml-l-pc {
	margin-left: 30px
}
.u-ml-m-pc {
	margin-left: 20px
}
.u-ml-s-pc {
	margin-left: 15px
}
.u-ml-xs-pc {
	margin-left: 10px
}
.u-ml-xxs-pc {
	margin-left: 8px
}
.u-p-xxl-pc {
	padding: 50px
}
.u-p-xl-pc {
	padding: 40px
}
.u-p-l-pc {
	padding: 30px
}
.u-p-m-pc {
	padding: 20px
}
.u-p-s-pc {
	padding: 15px
}
.u-p-xs-pc {
	padding: 10px
}
.u-p-xxs-pc {
	padding: 8px
}
.u-pt-xxl-pc {
	padding-top: 50px
}
.u-pt-xl-pc {
	padding-top: 40px
}
.u-pt-l-pc {
	padding-top: 30px
}
.u-pt-m-pc {
	padding-top: 20px
}
.u-pt-s-pc {
	padding-top: 15px
}
.u-pt-xs-pc {
	padding-top: 10px
}
.u-pt-xxs-pc {
	padding-top: 8px
}
.u-pr-xxl-pc {
	padding-right: 50px
}
.u-pr-xl-pc {
	padding-right: 40px
}
.u-pr-l-pc {
	padding-right: 30px
}
.u-pr-m-pc {
	padding-right: 20px
}
.u-pr-s-pc {
	padding-right: 15px
}
.u-pr-xs-pc {
	padding-right: 10px
}
.u-pr-xxs-pc {
	padding-right: 8px
}
.u-pb-xxl-pc {
	padding-bottom: 50px
}
.u-pb-xl-pc {
	padding-bottom: 40px
}
.u-pb-l-pc {
	padding-bottom: 30px
}
.u-pb-m-pc {
	padding-bottom: 20px
}
.u-pb-s-pc {
	padding-bottom: 15px
}
.u-pb-xs-pc {
	padding-bottom: 10px
}
.u-pb-xxs {
	padding-bottom: 8px
}
.u-pl-xxl-pc {
	padding-left: 50px
}
.u-pl-xl-pc {
	padding-left: 40px
}
.u-pl-l-pc {
	padding-left: 30px
}
.u-pl-m-pc {
	padding-left: 20px
}
.u-pl-s-pc {
	padding-left: 15px
}
.u-pl-xs-pc {
	padding-left: 10px
}
.u-pl-xxs-pc {
	padding-left: 8px
}
}

@media (max-width:420px) {
.u-visible-sp {
	display: block
}
.u-visible-sp--inline {
	display: inline
}
.u-visible-sp--flex {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex
}
.u-visible-pc {
	display: none
}
.u-visible-pc--inline {
	display: none
}
.u-hidden-sp {
	display: none
}
.u-width-full-sp {
	width: 100% !important
}
.u-flex-sp {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex
}
.u-m-xxl-pc {
	margin: 50px
}
.u-m-xl-pc {
	margin: 40px
}
.u-m-l-pc {
	margin: 30px
}
.u-m-m-pc {
	margin: 20px
}
.u-m-s-pc {
	margin: 15px
}
.u-m-xs-pc {
	margin: 10px
}
.u-m-xxs-pc {
	margin: 8px
}
.u-mt-xxl-sp {
	margin-top: 50px
}
.u-mt-xl-sp {
	margin-top: 40px
}
.u-mt-l-sp {
	margin-top: 30px
}
.u-mt-m-sp {
	margin-top: 20px
}
.u-mt-s-sp {
	margin-top: 15px
}
.u-mt-xs-sp {
	margin-top: 10px
}
.u-mt-xxs-sp {
	margin-top: 8px
}
.u-mr-xxl-sp {
	margin-right: 50px
}
.u-mr-xl-sp {
	margin-right: 40px
}
.u-mr-l-sp {
	margin-right: 30px
}
.u-mr-m-sp {
	margin-right: 20px
}
.u-mr-s-sp {
	margin-right: 15px
}
.u-mr-xs-sp {
	margin-right: 10px
}
.u-mr-xxs-sp {
	margin-right: 8px
}
.u-mb-xxl-sp {
	margin-bottom: 50px
}
.u-mb-xl-sp {
	margin-bottom: 40px
}
.u-mb-l-sp {
	margin-bottom: 30px
}
.u-mb-m-sp {
	margin-bottom: 20px
}
.u-mb-s-sp {
	margin-bottom: 15px
}
.u-mb-xs-sp {
	margin-bottom: 10px
}
.u-mb-xxs-sp {
	margin-bottom: 8px
}
.u-ml-xxl-sp {
	margin-left: 50px
}
.u-ml-xl-sp {
	margin-left: 40px
}
.u-ml-l-sp {
	margin-left: 30px
}
.u-ml-m-sp {
	margin-left: 20px
}
.u-ml-s-sp {
	margin-left: 15px
}
.u-ml-xs-sp {
	margin-left: 10px
}
.u-ml-xxs-sp {
	margin-left: 8px
}
.u-p-xxl-sp {
	padding: 50px
}
.u-p-xl-sp {
	padding: 40px
}
.u-p-l-sp {
	padding: 30px
}
.u-p-m-sp {
	padding: 20px
}
.u-p-s-sp {
	padding: 15px
}
.u-p-xs-sp {
	padding: 10px
}
.u-p-xxs-sp {
	padding: 8px
}
.u-pt-xxl-sp {
	padding-top: 50px
}
.u-pt-xl-sp {
	padding-top: 40px
}
.u-pt-l-sp {
	padding-top: 30px
}
.u-pt-m-sp {
	padding-top: 20px
}
.u-pt-s-sp {
	padding-top: 15px
}
.u-pt-xs-sp {
	padding-top: 10px
}
.u-pt-xxs-sp {
	padding-top: 8px
}
.u-pr-xxl-sp {
	padding-right: 50px
}
.u-pr-xl-sp {
	padding-right: 40px
}
.u-pr-l-sp {
	padding-right: 30px
}
.u-pr-m-sp {
	padding-right: 20px
}
.u-pr-s-sp {
	padding-right: 15px
}
.u-pr-xs-sp {
	padding-right: 10px
}
.u-pr-xxs-sp {
	padding-right: 8px
}
.u-pb-xxl-sp {
	padding-bottom: 50px
}
.u-pb-xl-sp {
	padding-bottom: 40px
}
.u-pb-l-sp {
	padding-bottom: 30px
}
.u-pb-m-sp {
	padding-bottom: 20px
}
.u-pb-s-sp {
	padding-bottom: 15px
}
.u-pb-xs-sp {
	padding-bottom: 10px
}
.u-pb-xxs-sp {
	padding-bottom: 8px
}
.u-pl-xxl-sp {
	padding-left: 50px
}
.u-pl-xl-sp {
	padding-left: 40px
}
.u-pl-l-sp {
	padding-left: 30px
}
.u-pl-m-sp {
	padding-left: 20px
}
.u-pl-s-sp {
	padding-left: 15px
}
.u-pl-xs-sp {
	padding-left: 10px
}
.u-pl-xxs-sp {
	padding-left: 8px
}
}
