@charset "UTF-8";

/* ==========================================================================
   Foundation
========================================================================== */

/* Reset
   ----------------------------------------------------------------- */
* {
	margin: 0px;
	padding: 0px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
a {
	margin:0;
	padding:0;
	font-size:inherit;
	color: inherit;
	vertical-align:baseline;
	background:transparent;
}
ul,li{
	list-style-type:none;
}


/* Base
   ----------------------------------------------------------------- */
html {
	font-size: 16px;
}
body {
	color:#333333;
	line-height: 1.3;
	background: #fffefb url(img/top/bg.png) 0 0 repeat-x;
	font-family:"游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	/* 明朝体は下記を使用
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
 */
}
/* a:link{
	color: #333333;
	text-decoration: underline;
	cursor: pointer;
}
a:visited{
	color: #333333;
	text-decoration: underline;
	cursor: pointer;
}
a:hover{
	color: #333333;
	text-decoration: none;
	cursor: pointer;
}
a:active{
	color: #333333;
	text-decoration: none;
	cursor: pointer;
} */
img{
	border-style: none;
	vertical-align: top;
	max-width: 100%;
}
input {
	vertical-align: middle;
	padding: 5px;
}
select {
	vertical-align: middle;
	padding:5px;
	border:solid 1px #888;
}

/* ==========================================================================
   Layout
========================================================================== */

/* body */
#body{
	background: url(img/top/body_bg_01.png) repeat;
}
.bodyBg-01{
	width: 100%;
	background: url(img/top/body_bg_02.png) top center repeat-y;
}
.bodyBg-02{
	width: 100%;
	background: url(img/top/header_bg_01.png) top center no-repeat,url(img/top/header_bg_02.png) 0 -30px repeat-x;
}
.bodyBg-03{
	width: 960px;
	margin: 0 auto;
	background: url(img/top/body_bg_02.png) top center repeat-y;
}
.bodyBg-04{
	width: 960px;
	margin: 0 auto;
	background: url(img/top/header_bg_01.png) top center no-repeat,url(img/top/header_bg_02.png) 0 -30px repeat-x;
}

/* header */
#header > a{
	display: block;
	width: 100%;
	height: 432px;
}

/* nav */
#nav{
	width: 886px;
	margin: 0 auto;
	overflow: hidden;
}
.nav_item{
	float: left;
	width: 214px;
	margin-left: 10px;
}
.nav_item:first-of-type{
	margin-left: 0;
}
.nav_link{
	display: block;
	width: 100%;
	height: 44px;
}
.nav_link:hover{
	background-position: 0 bottom;
}
.nav_link-type__1{
	background: url(img/nav/nav_item_01.png) 0 0 no-repeat;
}
.nav_link-type__2{
	background: url(img/nav/nav_item_02.png) 0 0 no-repeat;
}
.nav_link-type__3{
	background: url(img/nav/nav_item_03.png) 0 0 no-repeat;
}
.nav_link-type__4{
	background: url(img/nav/nav_item_04.png) 0 0 no-repeat;
}
.nav_link img{
	display: none;
}

#main{
	padding-top: 15px;
	padding-bottom: 100px;
}

.footer{
	text-align: center;
	color: #333;
	padding: 3% 0;
	width: 93%;
	margin: 0 auto;
}
.footer_menu > *{
	display: inline-block;
	margin: 0 2% 2% 0;
}
.footer_subInfo{
	margin-top: 3%;
}
.footer_subInfo img{
	width: auto;
	max-width: 100%;
}
.footer_link{
	margin-top: 3%;
}
.footer_link_head{
	margin-bottom: 1%;
}

/* ISP */
.niftyHeader{
	background: #000;
}
.niftyHeader table {
	width: 900px;
	margin: 0 auto;
	background: #000;
}

/* ==========================================================================
   Object
========================================================================== */

/* Component
----------------------------------------------------------------- */

/* menu */
.c-menu{}
.c-menu-size__large{
	width: 830px;
	margin: 0 auto 10px;
}
.c-menu-size__small{
	width: 404px;
	margin: 0 auto 10px;
	float: left;
}
.c-menu_main-type__renai{
	background: url(img/top/menu_inner_large_bg_renai.png) top center repeat-y;
	padding: 10px 45px;
}
.c-menu_main-type__deai{
	background: url(img/top/menu_inner_large_bg_deai.png) top center repeat-y;
	padding: 10px 45px;
}
.c-menu_main-type__jinsei{
	background: url(img/top/menu_inner_large_bg_jinsei.png) top center repeat-y;
	padding: 10px 45px;
}
.c-menu_main-size__small{
	background: url(img/top/menu_inner_small_bg.png) top center repeat-y;
	padding: 10px 30px;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}
.c-menu_head{
	display: table;
	width: 100%;
	table-layout: fixed;
}
.c-menu_icon{
	display: table-cell;
	vertical-align: top;
	width: 12%;
	position: relative;
}
.c-menu_icon-size__large{
	width: 22%;
}
.c-menu_badge{
	position: absolute;
	top: -30%;
	right: 65%;
	width: 80%;
}
.c-menu_title{
	display: table-cell;
	vertical-align: top;
	padding-left: 3%;
	font-size: 2rem;
	font-weight: bold;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	color: #fcc;
}
.c-menu_title-color__red{
	color: #600;
}
.c-menu_title-color__blue{
	color: #606;
}
.c-menu_link{
	text-decoration: none;
}
.c-menu_link:hover{
	text-decoration: underline;
}
.c-menu_link-decoration{
	text-decoration: underline;
}
.c-menu_link-decoration:hover{
	text-decoration: none;
}
.c-menu_tail{
	margin-top: 2%;
}
.c-menu_caption{
	font-size: 1.0625rem;
	font-weight: bold;
}
.c-menu_caption-color__white{
	color: #fff;
}
.c-menu_caption-weight__normal{
	font-weight: normal;
}
.c-menu_price{
	margin-top: 1%;
	text-align: right;
	font-weight: bold;
}
.c-menu_price-size__small{
	font-size: 0.75rem;
}
.c-menu_price-color__white{
	color: #fff;
}

/* XXXXXXXXXXXX
下記「-review」はコーディングルールを破っていますが、例外として無視してください
XXXXXXXXXXXX */
.c-menu_main-review__01{
	background: url(img/top/review_list_bg_01.png) top center repeat-y;
	padding: 2% 8%;
}
.c-menu_main-review__02{
	background: url(img/top/review_list_bg_02.png) top center repeat-y;
	padding: 2% 8%;
}
.c-menu_title-review__01{
	font-size: 1.875rem;
	color: #333;
}
.c-menu_title-review__02{
/* 	font-size: 1.875rem;
	color: rgba(255, 255, 255, 1);
	-webkit-text-fill-color: transparent;
	background: -webkit-linear-gradient(transparent, transparent),url(img/top/text_bg_gold.jpg) repeat;
	background: -o-linear-gradient(transparent, transparent);
	-webkit-background-clip: text;
	-moz-background-clip: text;
	background-clip: text; */
}
.c-menu_title-review__02:hover{
	opacity: 0.7;
}

/* btn */
/*
画像のボタン用
SPと切り替える際にまとめて指定できるように
 */
.c-btn{
	margin: 0 auto;
}
.c-btn_link{
	display: block;
}
.c-btn_link:hover{
	background-position: 0 bottom;
}
.c-btn_link img{
	display: none;
}

/* table */
.c-table{
	display: table;
	width: 100%;
}
.c-table-fixed{
	display: table;
	width: 100%;
	table-layout: fixed;
}
.c-table_cell{
	display: table-cell;
	vertical-align: top;
}
.c-table_cell-size__small{
	width: 20%;
}

/* tag */
.c-tag{
	font-size: 0;
	line-height: 0;
}
.c-tag_item{
	display: inline-block;
	margin-right: 10px;
}

/* other */
.c-caution{
	font-weight: bold;
	color: #f00;
	font-size: 1.2em;
}
.c-rakutenFooter{
	background: #fff;
}
/* Project
----------------------------------------------------------------- */

/* headline */
.p-headline{
	background: url(img/top/main_bg_01.png) top center no-repeat;
	text-align: center;
}
.p-headline_head{
}
.p-headline_head img{
	width: auto;
	max-width: 100%;
}
.p-headline_link{
	color: #99ff00;
	font-weight: bold;
	font-size: 1.5625rem;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.p-headline_link a:hover{
	text-decoration: none;
}
.p-headline_info{
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 1.25rem;
	font-weight: bold;
	color: #60f;
	text-shadow: 2px 0px 0px #fff,-2px 0px 0px #fff,0px 2px 0px #fff,0px -2px 0px #fff,2px 2px 0px #fff,-2px 2px 0px #fff,2px -2px 0px #fff,-2px -2px 0px #fff;
	line-height: 2.5;
}

/* new */
.p-new{
	width: 908px;
	margin: 0 auto;
}
.p-new_main{
	background: url(img/top/new_bg.png) top center repeat-y;
}
.p-new_menu{
	width: 755px;
	margin: 0 auto;
}
.p-new_main .c-menu + .c-menu{
	margin-top: 1%;
}
.p-new_menu .c-menu_main{
	background: url(img/top/new_menu_bg.png) top center repeat-y;
	padding: 0 6%;
}

/* soulmate */
.p-soulmate{
	width: 908px;
	margin: 0 auto;
}
.p-soulmate_main{
	position: relative;
	background: url(img/top/soulmate_bg.png) top center repeat-y;
	padding-bottom: 7%;
}
.p-soulmate_menu{
	width: 820px;
	margin: 0 auto;
}
.p-soulmate_btn{
	width: 808px;
	top: 70%;
	left: 0;
	right: 0;
	position: absolute;
}
.p-soulmate_link{
	width: 100%;
	height: 132px;
	background: url(img/top/soulmate_btn_01.png) 0 0 no-repeat;
}

/* review */
.p-review{
	width: 908px;
	margin: 0 auto;
}
.p-review_main{
	padding-top: 1%;
	background: url(img/top/review_bg.png) top center repeat-y;
}
.p-review_inner{
	width: 796px;
	margin: 0 auto 1%;
	padding: 1.5%;
	box-shadow:0px 0px 5px 3px #fff;
	-moz-box-shadow:0px 0px 5px 3px #fff;
	-webkit-box-shadow:0px 0px 5px 3px #fff;
	border-radius: 2px;
}
.p-review_inner-type__01{
	background-color: rgba(254,189,180,0.7);
}
.p-review_inner-type__02{
	background-color: rgba(223,191,255,0.7);
}
.p-review_icon{
	width: 85%;
}
.p-review_icon-right{
	margin-left: auto;
}
.p-review_balloon{
	position: relative;
	box-shadow:0px 0px 1px 4px #f3edcd;
	-moz-box-shadow:0px 0px 1px 4px #f3edcd;
	-webkit-box-shadow:0px 0px 1px 4px #f3edcd;
	border-radius: 15px;
	color: #fff;
	font-size: 1.125rem;
	padding: 1em;
}
.p-review_balloon-type__01{
	background-color: #f14288;
}
.p-review_balloon-type__02{
	background-color: #be3dcf;
}
.p-review_arrow{
	position: absolute;
}
.p-review_arrow-type__01{
	top: 22%;
	left: -3.6%;
}
.p-review_arrow-type__02{
	top: 22%;
	right: -3.6%;
}
.p-review_arrow img{
	width: auto;
	max-width: 100%;
}
.p-review_menu{
	width: 810px;
	margin: 0 auto;
}
.p-review_main .c-menu{
	margin-top: 2%;
}
.p-review_subMenu .c-menu_title{
	font-size: 1.4375rem;
}
.p-review_subMenu a{
	text-decoration: underline;
}
.p-review_subMenu a:hover{
	text-decoration: none;
}

/* about */
.p-about{
	width: 906px;
	margin: 2% auto 0;
}
.p-about_top{
	vertical-align: bottom;
}
.p-about_mid{
	background: url(img/profile/about_bg.png) top center repeat-y;
	padding: 2% 3% 0;
}
.p-about_head{
	margin-bottom: 2%;
	color: #fff;
	font-size: 1.25rem;
}
.p-about_notes{
	font-size: 0.875rem;
	color: #fff;
}
.p-aboutCategory{
	overflow: hidden;
	margin-top: 3%;
}
.p-aboutCategory_left{
	float: left;
	width: 320px;
}
.p-aboutCategory_right{
	float: right;
}
.p-aboutCategory_head{
	margin-bottom: 5%;
}
.p-aboutCategory_text{
	color: #fff;
}
.p-aboutInr{
	overflow: hidden;
}
.p-aboutInr_left{
	float: left;
}
.p-aboutInr_right{
	float: right;
}
.p-aboutFortune{
	width: 416px;
}
.p-aboutFortune_mid{
	padding: 350px 15px 0;
}
.p-aboutFortune_mid-01{
	background: url(img/profile/about_fortune1_img_02.png) 50% 0 no-repeat,url(img/profile/about_fortune1_bg.png) top center repeat-y;
}
.p-aboutFortune_mid-02{
	background: url(img/profile/about_fortune2_img_02.png) 50% 0 no-repeat,url(img/profile/about_fortune2_bg.png) top center repeat-y;
}
.p-aboutFortune_text{
	color: #fff;
	font-weight: bold;
	line-height: 1.5;
}
.p-about_image{
	text-align: center;
}
.p-about_btm{
	position: relative;
}
.p-about_btn{
	position: absolute;
	width: 808px;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
}
.p-about_link{
	height: 132px;
	display: block;
	margin: 0 auto;
	background: url(img/profile/about_btn_01.png) 0 0 no-repeat;
}
.p-about_link:hover{
	background-position: 0 bottom;
}
.p-about_link img{
	display: none;
}
/* special */
.p-special{
	background: url(img/top/special_bg.png) 50% 30px no-repeat;
	position: relative;
}
.p-special_head{
	text-align: center;
}
.p-special_tail{
	margin: 1% auto 0;
	width: 60%;
}
.p-special_text{
	margin-top: 1%;
	color: #fff;
	font-size: 1.0625rem;
}
.p-special_text-head{
	color: #ff0;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 1.5rem;
}
.p-special_btn{
	margin-top: 1%;
	width: 808px;
}
.p-special_link{
	width: 100%;
	height: 132px;
	background: url(img/top/special_btn.png) 0 0 no-repeat;
}
.p-special_icon{
	position: absolute;
	top: 10%;
	right: 10%;
	width: 20%;
}

/* pack */
.p-pack{
	width: 900px;
	margin: 3% auto 0;
}
.p-pack_main{
	background: url(img/top/pack_bg.png) top center repeat-y;
	padding: 0 5%;
}
.p-pack_inner{
	display: table;
	table-layout: fixed;
}
.p-pack_left{
	display: table-cell;
	vertical-align: top;
	padding-right: 1%;
}
.p-pack_right{
	display: table-cell;
	vertical-align: top;
	padding-left: 1%;
}
.p-pack_background{
	padding: 5% 2.5%;
	box-shadow:0px 0px 6px 3px rgba(255,255,255,0.4) inset;
	-moz-box-shadow:0px 0px 6px 3px rgba(255,255,255,0.4) inset;
	-webkit-box-shadow:0px 0px 6px 3px rgba(255,255,255,0.4) inset;
}
.p-pack_background-type__01{
	background-color: #000033;
}
.p-pack_background-type__02{
	background-color: #330033;
}
.p-pack_head{
	margin-bottom: 2%;
	text-align: center;
}
.p-pack_head img{
	max-width: 100%;
	width: auto;
}
.p-pack_btn{
	width: 374px;
	margin: 0 auto 3%;
}
.p-pack_link-type__01{
	background: url(img/top/pack_btn_01.png) 0 0 no-repeat;
	height: 220px;
}
.p-pack_link-type__02{
	background: url(img/top/pack_btn_02.png) 0 0 no-repeat;
	height: 220px;
}
.p-pack_tail{
	padding: 0 2%;
}
.p-pack_text{
	margin-bottom: 2%;
	color: #fff;
}
.p-pack_text-head{
	margin-bottom: 3%;
	font-size: 1.125rem;
	font-weight: bold;
	color: #f00;
}
.p-pack_price{
	color: #fff;
	font-size: 1.125rem;
	font-weight: bold;
}
.p-pack_price-special{
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 1.375rem;
	color: #f00;
	letter-spacing: 0.1rem;
}
.p-pack_price-large{
	font-size: 1.625rem;
}

/* info */
.p-info{
	width: 818px;
	margin: 5% auto 0;
}
.p-info_main{
	background: url(img/top/info_bg.png) top center repeat-y;
	text-align: center;
}
.p-info_link{
	color: #9f0;
	font-size: 1.5rem;
	line-height: 1;
	font-weight: bold;
}
.p-info_link:hover{
	text-decoration: none;
}

/* ranking */
.p-ranking{
	width: 900px;
	margin: 5% auto 0;
}
.p-ranking_main{
	background: url(img/top/ranking_bg.png) top center repeat-y;
	padding: 0 50px;
}
.p-ranking_menu{
	width: 800px;
	margin: 0 auto 10px;
}
.p-ranking_menu .c-menu_main{
	background: url(img/top/ranking_menu_bg.png) top center repeat-y;
	padding: 0 38px;
}
.p-ranking_menu .c-menu_head{
	background: url(img/top/ranking_list_head_bg.png) top center repeat-y;
	padding: 10px 15px;
}
.p-ranking_menu .c-menu_title{
	color: #330066;
	text-shadow:2px 2px 3px #fff,-2px 2px 3px #fff,2px -2px 3px #fff,-2px -2px 3px #fff;
}
.p-ranking_menu .c-menu_tail{
	padding: 0 15px 10px;
}

/* moreRecommend */
.p-moreRecommend{
	background-color: rgba(255,255,255,0.6);
	padding: 4% 3% 3%;
	position: relative;
}
.p-moreRecommend_head{
	text-shadow:2px 2px 4px #3A0303,-2px 2px 4px #3A0303,2px -2px 4px #3A0303,-2px -2px 4px #3A0303;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	text-align: center;
	position: absolute;
	width: 100%;
	top: -10%;
	left: 0;
}
.p-moreRecommend_head img{
	width: auto;
	max-width: 100%;
}
.p-moreRecommend_body{
	font-size: 1.125rem;
	text-align: center;
	font-weight: bold;
	color: #900;
}
.p-moreRecommend_link{
	text-decoration: underline;
}
.p-moreRecommend_link:hover{
	text-decoration: none;
}

/* free */
.p-free{
	width: 900px;
	margin: 20px auto 0;
}
.p-free_main{
	background: url(img/top/free_bg.png) top center repeat-y;
	padding: 0 40px;
}
.p-free_inr{
	overflow: hidden;
}
.p-free_left{
	float: left;
	width: 404px;
}
.p-free_right{
	float: left;
	width: 404px;
	margin-left: 12px;
}
.p-free_menu .c-menu_main{
	background: url(img/top/free_menu_bg.png) top center repeat-y;
	padding: 0 27px 10px;
}
.p-free_icon{
	text-align: center;
	margin-bottom: 10px;
}
.p-free_title{
	margin-bottom: 10px;
}
.p-free_link:hover{
	opacity: 0.8;
}
.p-free_description{
	font-weight: bold;
	margin-bottom: 10px;
	padding: 0 10px;
}
.p-free_price{
	text-align: right;
	color: #900;
	font-weight: bold;
	font-size: 1.25rem;
}

/* categoryBtn */
.p-categoryBtn{
	display: table;
	table-layout: fixed;
	width: 890px;
	margin: 30px auto 10px;
}
.p-categoryBtn_item{
	display: table-cell;
}
.p-categoryBtn_link{
	display: block;
	width: 293px;
	height: 96px;
	margin: 0 auto;
}
.p-categoryBtn_link-type__renai{
	background: url(img/top/btn_renai_menu.png) 0 0 no-repeat;
}
.p-categoryBtn_link-type__deai{
	background: url(img/top/btn_deai_menu.png) 0 0 no-repeat;
}
.p-categoryBtn_link-type__jinsei{
	background: url(img/top/btn_jinsei_menu.png) 0 0 no-repeat;
}
.p-categoryBtn_link:hover{
	background-position: 0 bottom;
}
.p-categoryBtn_link img{
	display: none;
}

/* category */
.p-category{
	width: 900px;
	margin: 10px auto 0;
}
.p-category_main{
	background: url(img/top/menu_bg.png) top center repeat-y;
}
.p-category_inr{
	overflow: hidden;
	width: 820px;
	margin: 0 auto;
}
.p-category_inr .c-menu-size__small:nth-of-type(odd){
	margin-right: 12px;
}
.p-category_inr .c-menu_title{
	font-size: 1.25rem;
	color: #609;
	font-family:"游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
}
.p-category_table > .c-table_cell-size__small{
	width: 35%;
}

/* rule */
.p-rule{
	text-align: center;
}
.p-rule_image{
	max-width: 100%;
	width: auto;
	margin-bottom: 1.5rem;
}

/* Utitlity
----------------------------------------------------------------- */

/* color */
.u-yellow{
	color: #ff0;
}

/* margin */
.u-mts{
	margin-top: 10px;
}
.u-mtm{
	margin-top: 30px;
}

/* PC表示用 */
.u-pcBlock{
	display: block;
}

/* SP表示用 */
.u-spBlock{
	display: none;
}

/* for nifty */
.u-defaultPrice{}
.u-premiumPrice{
	display: none;
	color: #f00;
	font-weight: bold;
}
.u-nif{
	display: none;
}
