@charset "utf-8";
/* -----------------------------------------------------
下層ページ要素記述用CSSファイル sub.css
----------------------------------------------------- */

/* 親項目コメントアウト
----------------------------------------------------- */


/* 子項目コメントアウト */

/* グロナビ
----------------------------------------------------- */
ul#global_navi {
	margin-bottom: 20px;
	height: 21px;
}
#global_navi li:last-child img{
	position: relative;
	top: -20px;
}

/* 下層ページトップ共通 #article
----------------------------------------------------- */
#article {
	margin-bottom: 80px;
}
.inner,
#article .inner {
	width: 1200px;
	margin: 0 auto;
}
.thin_inner, .content.content900 {
	width: 900px;
	margin: 0 auto;
}
.content.content680 {
	width: 680px;
	margin: 0 auto;
}
#article .content_title,
#view_post .content_title {
	color: #2f2f2f;
	font-size: 40px;
	font-family: 'IM Fell DW Pica SC', serif;
	line-height: 1.6;
	margin-bottom: 35px;
	font-weight: normal;
	border-bottom: 2px solid #2f2f2f;
	position: relative;
}
#article .content_title span,
#view_post .content_title span {
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	font-weight: bold;
	font-size: 18px;
	margin-left: 15px;
}
#article .content_title span.tar{
	position: absolute;
	right: 20px;
	top: 25px;
	font-weight: normal;
}
/* 下層ページ詳細（共通）#view_post
----------------------------------------------------- */
#view_post {
	margin-bottom: 80px;
}
#view_post #top_main {
	margin-bottom: 25px;
}
.social_share_widget_wrap {
	min-width: 260px;
	display: inline-block;
}
.social_share_widget {
	margin-bottom: 10px;
	height: 25px;
	display: flex;
	justify-content: space-between;
}
.interviewee {
	display: inline-block;
	width: 590px;
	vertical-align: top;
	text-align: right;
	font-weight: bold;
	color: #666;
}
/* #caption_box */
#caption_box {
	outline: 2px solid #2f2f2f;
	border: 1px solid #919191;
	padding: 20px;
	margin-bottom: 50px;
	font-size: 16px;
	line-height: 1.75;
}
.interviewer {
  font-size: 14px;
  text-align: right;
  color: #666;
}

/* #view_body */
#view_body {
	margin-bottom: 80px;
}
#view_body h2 {
	font-size: 24px;
	line-height: 1.75;
}
#view_body h3 {
	font-size: 20px;
	line-height: 1.75;
}
#view_body h4 {
	font-size: 18px;
	line-height: 1.75;
}
#view_body p {
	font-size: 16px;
	color: #2f2f2f;
	line-height: 1.75
}
#view_body p.img_shadow{
/*	box-shadow: -30vw -2rem 0px 0px #F3F3F3;
	    -moz-box-shadow: -30vw -2rem 0px 0px #F3F3F3;
	    -webkit-box-shadow: -30vw -2rem 0px 0px #F3F3F3;
	width: 670px;
	margin: 0 auto;*/
}
#view_body p > img {
	margin: 0 auto;
	display: table;
	margin-bottom: 60px;
	max-width: 900px;
}
#view_body p.p_img {
  background: url(../img/sub/img_p.png) no-repeat;
  background-position: 0 7px;
  padding: 0 0 0 15px;
  font-size: 12px;
  color: #666;
  width: 660px;
  margin: 0 auto;
  margin-top: -52px;
  margin-bottom: 60px;
}

#view_body a {
	color: #2eb7cb;
}
#view_body .color_red {
	color: #f15a7d;
}
#view_body .color_blue {
	color: #2eb7cb;
}
#view_body .style_marker {
	font-size: 1.2em;
  background: linear-gradient(transparent 10%, #fffbd9 70%);
	display: inline;
}
#view_body .caution {
	font-size: 0.8em;
}

#view_body .shop_info {
	margin-bottom: 110px;
}
#view_body .shop_info h2 {
	font-size: 30px;
	line-height: 1;
	margin-bottom: 25px;
  padding-top: 30px;
	font-weight: normal;
}
#view_body .shop_info .shop_info_box {
	outline: 2px solid #2f2f2f;
	border: 1px solid #919191;
	box-sizing: border-box;
	width: 700px;
	margin: 0 auto;
}
#view_body .shop_info .shop_info_box img {
	max-width: 315px;
	height: auto;
}
#view_body .shop_info .shop_info_box table {
	border-spacing: 0;
	text-align: left;
}
#view_body .shop_info .shop_info_box table .plr_25 {
	padding: 0;
	padding-left: 25px;
	padding-right: 25px;
	word-break: break-all;
	height: 30px;
}
#view_body .shop_info .shop_info_box table .fs_18 {
	font-size: 18px;
}
#view_body .shop_info .simple_btn.wide {
	width: 310px;
	color: #FFF;
	font-size: 13px;
	height: 40px;
	padding: 12px;
}
#view_body .paginator {
	text-align: center;
	width: 900px;
	margin: 30px auto 60px;
}
#view_body .paginator li {
	font-size: 14px;
	font-family: 'Open Sans', sans-serif;
	display: inline-block;
}
#view_body .paginator .ul_pager_li_02 {
	font-size: 12px;
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}
#view_body .paginator li a,
#view_body .paginator li span.current {
	line-height: 45px;
	padding: 0 18px;
	display: block;
	color: #2f2f2f;
}
#view_body .paginator li.ul_pager_li_02 a {
	border: 1px solid #dfdfdf;
	width: 80px;
}
#view_body .paginator li.ul_pager_li_02.long a {
	width: 110px;
}
#view_body .paginator li.ul_pager_li_02 a:hover {
	border: 1px solid #FFF;
}
#view_body .paginator li a:hover,
#view_body .paginator li span.current {
	background: #f3f3f3;
	text-decoration: none;
}
#view_body .read_btn {
	border: 2px solid #dfdfdf;
	color: #2f2f2f;
  padding: 15px 40px;
	font-size: 12px;
}
#view_body .read_btn:hover {
	background-color: #dfdfdf;
	text-decoration: none;
}

.video{
  position:relative;
  width:100%;
  padding-top:56.25%;
}
.video iframe{
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%!important;
}

/* 最新記事（共通）
----------------------------------------------------- */
#top_main {
	margin-bottom: 60px;
}
#top_main > a, #top_main > div.img_area {
	position: relative;
	display: block;
	/*background-color: #000;*/
	height: 600px;
}
#top_main img {
	width: 100%;
	height: 100%;
	/*opacity: .8;*/
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

#top_main.fifth_layout {
	position: relative;
	display: block;
	background-color: #000;
	height: 600px;
}
#top_main.fifth_layout a {
	float: left;
	width: 25%;
	display: block;
}
#top_main.fifth_layout a:first-child {
	float: left;
	width: 50%;
}


.ribbon16-wrapper {
    display: block;
    position: relative;
    margin: 15px auto;
    padding: 10px 0;
    /* width: 300px; */
    /* background: #f1f1f1; */
    box-sizing: border-box;
    margin-bottom: -35px;
  }

.ribbon16 {
	display: inline-block;
	position: absolute;
	top: -15px;
	left: 5px;
	margin: 0;
	padding: 10px 0 7px;
	z-index: 2;
	width: 40px;
	text-align: center;
	color: #fff;
	font-size: 13px;
	font-weight: bold;
	background: #2e2e2e;
	border-radius: 2px 0 0 0;
  }

.ribbon16:before {
  /*position: absolute;*/
  /*content: '';*/
  top: 0;
  right: -5px;
  border: none;
  border-bottom: solid 6px #d07676;
  border-right: solid 5px transparent;
}

.ribbon16:after {
  content: '';
  position: absolute;
  left: 0;
  top: 100%;
  height: 0;
  width: 0;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-top: 10px solid #2e2e2e;
}
.ribbon21-wrapper {  
  display: block;
  position: relative;
  margin: 0 auto;
  /*padding: 20px 0;*/
  /*width: 300px;*/
  /*background: #f1f1f1;*/
  }
.ribbon21 {
  display: inline-block;
  position: absolute;
  left: 0;
  top: 8px;
  box-sizing: border-box;
  padding: 0 14px;
  margin: 0;
  height: 30px;
  line-height: 30px;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.1em;
  color: white;
  background: #2e2e2e;
  box-shadow: 1px -1px 1px rgba(0, 0, 0, 0.1);
}
.ribbon21:before {
  position: absolute;
  content: '';
  top: -8px;
  left: -7px;
  border: none;
  height: 38px;
  width: 7px;
  background: #2e2e2e;
  border-radius: 5px 0 0 5px;
}
.ribbon21:after {
  position: absolute;
  content: '';
  top: -7px;
  left: -5px;
  border: none;
  height: 7px;
  width: 5px;
  background: #1f1f1f;
  border-radius: 5px 0 0 5px;
}



/*別Verここから*/
#view_post > .inner{
	/*width: 100%;*/
}
/*背景画像の設定をする*/
#top_main.blur{
  background-size: cover;
  position: relative;
  z-index: 0;
  overflow: hidden;/*ブラー効果でボヤけた部分を非表示*/
	/*width: 1200px;*/
	/*max-width: 1200px;*/
	min-width: 900px;
	width: 100%;
	height: 640px;
	margin: 0 auto;
	margin-bottom: 80px;
}
/*:beforeにぼかし効果を設定する*/
#top_main.blur:before{
  content: '';
  background: inherit;/*.bgImageで設定した背景画像を継承する*/
  -webkit-filter: blur(5px);
  -moz-filter: blur(8px);
  -o-filter: blur(8px);
  -ms-filter: blur(8px);
  filter: blur(8px);
  position: absolute;
  /*ブラー効果で画像の端がボヤけた分だけ位置を調整*/
  top: -5px;
  left: -5px;
  right: -5px;
  bottom: -5px;
  z-index: -1;/*重なり順序を一番下にしておく*/
}
#top_main.blur > a, #top_main.blur > div.img_area {
	position: relative;
	display: block;
	background-color: #000;
	width: 900px;
	height: 560px;
	margin: 0 auto;
	margin-top: 40px;
}
#top_main.blur img {
}
/*別Verここまで*/

#top_main .text_area {
	position: absolute;
	bottom: 0;
	padding-top: 80px;
	padding-left: 40px;
	padding-bottom: 25px;
	font-weight: bold;
	width: 100%;
	min-height: 246px;
	background: url(/img/common/title_shadow.png) no-repeat bottom;
	box-sizing: border-box;
}
#top_main.fifth_layout .text_area {
	width: 50%;
	min-height: 200px;
	padding-bottom: 45px;
}
#top_main .text_area .content_title {
	color: #9BD7DF;
	font-size: 20px;
	margin-bottom: 15px;
	padding: 0;
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	border: none;
}
#top_main .text_area .content_title span {
	font-size: 15px;
	margin-left: 5px;
}
#top_main .text_area .main_title {
	color: #FFF;
	font-size: 32px;
	margin-bottom: 10px;
	line-height: 1.2;
}
#top_main .text_area .main_title span{
	font-size: 20px;
	display: block;
}
#top_main .text_area .detailed {
	color: #D8D6D6;
	font-size: 13px;
}
#top_main .text_area .detailed .new {
	background-color: #D8D6D6;
	color: #4d4b48;
	border-radius: 15px;
	padding: 3px 7px;
}
#top_main .text_area .detailed .posted {
	padding: 0 8px;
	border-right: 2px solid #D8D6D6;
}
#top_main .text_area .detailed .hashtag {
	padding: 0 8px;
}
#top_main .text_area .detailed .lock {
	font-size: 16px;
}

/* バーテンダーカクテル
----------------------------------------------------- */
#bartender_cocktails {
	margin-bottom: 40px;
}
#cocktail_hide {
	height: 320px;
	overflow: hidden;
	transition: .3s;
}
#bartender_cocktails .title {
	font-family: 'IM Fell DW Pica SC', serif;
	font-size: 40px;
	color: #2f2f2f;
	margin-bottom: 30px;
	line-height: 1;
}
#bartender_cocktails .cocktail_item {
	width: 220px;
	height: 320px;
	float: left;
	margin-left: 25px;
}
#bartender_cocktails .cocktail_item:nth-child(5n-4) {
	margin-left: 0;
}
#bartender_cocktails .cocktail_item .thumb {
	position: relative;
	margin-bottom: 15px;
}
#bartender_cocktails .cocktail_item .thumb img {
	width: 220px;
	height: 220px;
}
#bartender_cocktails .cocktail_item .thumb .new {
	background-color: #e8e8e8;
	color: #000;
	border-radius: 15px;
	padding: 1px 6px;
	font-size: 13px;
	font-weight: bold;
	position: absolute;
	bottom: 10px;
	left: 7px;
}
#bartender_cocktails .cocktail_item a {
	color: #2f2f2f;
	font-size: 16px;
}
#bartender_cocktails .cocktail_item .name_en {
	font-family: 'Open Sans', sans-serif;
	margin-bottom: 5px;
}

#bartender_cocktails .btn {
	color: #2f2f2f;
  border: 2px solid #2f2f2f;
  padding: 16px 33px;
  border-radius: 30px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  display: inline-table;
  margin-bottom: 40px;
}
#bartender_cocktails .btn:hover {
	color: #FFF;
	background-color: #2f2f2f;
	text-decoration: none;
}

/* バックナンバー（共通）
----------------------------------------------------- */
#back_number .title {
	font-family: 'IM Fell DW Pica SC', serif;
	font-size: 40px;
	color: #2f2f2f;
	margin-bottom: 30px;
	line-height: 1;
	font-weight: normal;
}
#back_number .title.long {
	font-size: 28px;
}
#back_number .title.jp {
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	font-size: 28px;
}
#back_number .article_item {
  width: 360px;
  height: 350px;
  float: left;
  margin-right: 60px;
  margin-bottom: 45px;
}
#back_number .article_item.tail {
  margin-right: 0;
}
#back_number .article_item .thumb {
  position: relative;
  margin-bottom: 5px;
}
#back_number .article_item .thumb img {
  width: 360px;
  height: 240px;
  object-fit: cover;
}
.sob #back_number .article_item .thumb img {
	max-height: 220px;
	max-width: 100%;
	width: auto;
	margin: 0 auto;
	display: block;
}
#back_number .article_item .thumb .category {
  position: absolute;
  font-family: 'Open Sans', sans-serif;
  color: #FFF;
  border: 2px solid #FFF;
  border-radius: 20px;
  padding: 5px 10px;
  bottom: 8px;
  left: 8px;
  font-weight: bold;
}
#back_number .article_item .thumb .pay, #back_number .article_item .thumb .youtube {
  position: absolute;
  background: rgba(0,0,0,0.5);
  font-size: 15px;
  border-radius: 50%;
  padding: 8px;
  color: #d0cecd;
  top: 5px;
  right: 5px;
}
#back_number .article_item .thumb .pay + .youtube {
    right: 40px;
}
#back_number .article_item p.posted {
  font-size: 16px;
  color: #979797;
	font-family: 'Open Sans', sans-serif;
}
#back_number .article_item p {
  font-size: 16px;
  color: #2f2f2f;
  line-height: 1.6;
}
#back_number .article_item p span {
    font-size: 0.8em;
    font-weight: bold;
    color: #444;
    display: block;
}
#back_number .article_item p span br{
	display: none;
}
#back_number .paginator {
	text-align: center;
	width: 1200px;
	margin: 0 auto;
}
#back_number .paginator li {
	font-size: 14px;
	font-family: 'Open Sans', sans-serif;
	display: inline-block;
}
#back_number .paginator .ul_pager_li_02 {
	font-size: 12px;
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}
#back_number .paginator li a,
#back_number .paginator li span.current {
	line-height: 45px;
	padding: 0 18px;
	display: block;
	color: #2f2f2f;
}
#back_number .paginator li a:hover,
#back_number .paginator li span.current {
	background: #f3f3f3;
	text-decoration: none;
}
#back_number .article_item p.caption{
	font-size: 14px;
}
#back_number .article_item p.caption span{
	line-height: 1.8;
	padding-left: 18px;
}
#back_number .article_item p.caption span.bartender{
	background: url(/img/sub/cocktail_bartender.png) no-repeat 0px 0px;
}
#back_number .article_item p.caption span.shop{
	background: url(/img/sub/cocktail_shop.png) no-repeat 0px 0px;
}
#back_number .article_item p.caption span.data{
	background: url(/img/sub/cocktail_data.png) no-repeat 0px 0px/14px;
}
/* 海外トピックス world_topics
----------------------------------------------------- */
#top_main span.world_tag > img {
	width: 70px;
  vertical-align: middle;
  margin-left: 5px;
}

/* コンペティション
----------------------------------------------------- */
#competition .competition_wrap {
	margin-bottom: 60px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
#competition .competition_item {
	width: 580px;
	float: left;
	margin-right: 40px;
	margin-bottom: 80px;
	margin-top: -100px;
	padding-top: 100px;
}
#competition .competition_item.tail {
	margin-right: 0;
}
#competition .competition_item .thumb {
	margin-bottom: 10px;
}
#competition .competition_item .thumb img {
	width: 580px;
	height: auto;
	object-fit: cover;
	font-family: 'object-fit: cover;';
	max-height: 340px;
}
#competition .competition_item h2 {
	color: #152642;
	font-size: 18px;
	margin-bottom: 15px;
}
#competition .competition_item h2 a {
	color: #152642;
}
#competition .competition_item h2 span{
	display: block;
	font-size: 0.8em;
	font-weight: normal;
	line-height: 1.8em;
}
#competition .competition_item .year_list {
	margin-bottom: 15px;
}
#competition .competition_item .year_list li {
	display: inline-block;
  background: url(../img/common/arrow_icon.jpg) left no-repeat;
  padding-left: 10px;
  margin-right: 15px;
}
#competition .competition_item .year_list li.latest-year {
	display: block;
	}
#competition .competition_item .year_list li a {
	color: #152642;
}
#competition .competition_item .concept {
	font-size: 16px;
	padding: 20px;
	line-height: 1.5;
	background-color: #f3f3f3;
	overflow: hidden;
	min-height: 100px;
}

#comp_top_wrap {
	margin-bottom: 50px;
}
#comp_top_left {
	width: 580px;
	float: left;
}
#comp_top_left .comp_top_title {
	font-size: 24px;
	margin-bottom: 15px;
	line-height: 1.4;
}
#comp_top_left .comp_top_title span{
	display: block;
	font-size: 0.7em;
	font-weight: normal;
}
#comp_top_left .concept_title {
	font-size: 18px;
	margin-bottom: 10px;
	border-bottom: 1px solid #333;
  padding: 0 0 3px 3px;
}
#comp_top_left .concept_content {
	font-size: 16px;
	margin-bottom: 20px;
	line-height: 1.5;
}
#comp_top_left ul:before{
	content: "大会年度";
	font-weight: bold;
	margin-right: 10px;

}
#comp_top_left ul li {
	display: inline-block;
  background: url(../img/common/arrow_icon.jpg) left no-repeat;
  padding-left: 10px;
  margin-right: 15px;
}
#comp_top_left ul li a {
	color: #152642;
}
#comp_top_right {
	width: 580px;
	float: right;
}
#comp_top_right img {
	max-width: 100%;
	max-height: 500px;
	margin: 0 auto;
	display: block;
}

.comp_item {
	margin-bottom: 80px;
  margin-top: -40px;
  padding-top: 40px;
}
.comp_item h2 {
	border-bottom: 2px solid #2f2f2f;
	padding-bottom: 10px;
	margin-bottom: 20px;
	line-height: 1;
}
.comp_item p {
  font-size: 16px;
  padding: 0 0 20px 0;
  line-height: 1.4;
}
.comp_item .comp_item_inner {
	/*border: 2px solid #2f2f2f;*/
	padding: 40px 70px;
}
.comp_item h3.award_rank {
	font-size: 32px;
	margin-bottom: 30px;
	line-height: 1;
}
.comp_item h3.award_rank a span {
	font-size: 12px;
	position: relative;
	bottom: 10px;
}
.comp_item h3.award_rank a img{
	vertical-align: sub;
}
.comp_item .comp_item_inner_wrap {
	margin-bottom: 50px;
}
.comp_item .comp_item_inner_left {
	width: 500px;
	float: left;
}
.comp_item .comp_item_inner_left .thumb {
	margin-bottom: 30px;
}
.comp_item .comp_item_inner_left .thumb img {
	width: 100%;
}
.comp_item .comp_item_inner_left .comp_info {
	/*background-color: #F0F0F0;*/
	padding: 30px 20px;
}
.comp_item .comp_item_inner_left .comp_info th {
	text-align: right;
	width: 115px;
	padding: 5px 0;
}
.comp_item .comp_item_inner_left .comp_info a {
	font-weight: bold;
	color: #152642;
}
.comp_item .comp_item_inner_right {
	width: 500px;
	float: right;
}
.comp_item .comp_item_inner_right .cocktail_thumb {
	margin-bottom: 30px;
}
.comp_item .comp_item_inner_right .cocktail_thumb img {
	width: 100%;
}
.comp_item .comp_item_inner_right .cocktail_table tr:nth-child(odd) td,
.comp_item .comp_item_inner_right .cocktail_table tr:nth-child(odd) th {
	background-color: #f3f3f3;
}
.comp_item .comp_item_inner_right .cocktail_table tr:nth-child(even) td,
.comp_item .comp_item_inner_right .cocktail_table tr:nth-child(even) th {
	background-color: #FFF;
}
.comp_item .comp_item_inner_right .cocktail_table th {
	border-right: 2px solid #dfdfdf;
	text-align: left;
	font-weight: normal;
}
.comp_item .comp_item_inner_right .cocktail_table tr:first-child th {
	text-align: center;
	font-weight: bold;
}
.comp_item .comp_item_inner_right .cocktail_table td {
	text-align: center;
}
.comp_item .comp_item_inner_right .cocktail_table .member_login{
	padding: 0;
}
.comp_item .comp_item_inner_right .cocktail_table #member_login{
	margin-top: 0;
}
.comp_item .comp_item_inner_right .cocktail_table #member_login p.member_message{
	margin-bottom: 0;
	white-space: nowrap;
}
.comp_item .comp_item_inner_right .cocktail_table #member_login .box_color{
	width: auto;
	padding: 20px 35px;
	border-top: 2px solid #dfdfdf;
	height: 350px;
	overflow-y: scroll;
}
.comp_item .comp_item_inner_right .cocktail_table #member_login .registration, .comp_item .comp_item_inner_right .cocktail_table #member_login .login{
	margin-right: 0;
	width: auto;
	padding: 30px 15px;
}
.comp_item .comp_item_inner_right .cocktail_table #member_login .login a{
	text-align: center;
}
details.comp_finalist{
	margin-bottom: 20px;
}
details.comp_finalist summary {
	margin-bottom: 2px;
	padding: 5px 20px;
	width: fit-content;
	background-color: #21b7cd;
	border: none;
	box-shadow: 3px 3px 4px #00000026;
	cursor: pointer;
	font-size: 1.2em;
	color: #FFF;
}
details.comp_finalist summary span{
	font-size: 0.8em;
}
details.comp_finalist[open] summary span{
	display: none;
}
details.comp_finalist li{
	list-style: none;
	line-height: 1.8em;
	padding: 20px 30px;
}
/* カクテル
----------------------------------------------------- */
#cocktail_top {
	margin-bottom: 60px;
}
#cocktail_top .thumb {
	width: 600px;
	float: left;
}
#cocktail_top .thumb img {
	width: auto;
	height: auto;
	max-height: 500px;
	max-width: 100%;
	margin: 0 auto;
	display: block;
}
#cocktail_top .pcm-link img{
    margin-top: 30px;
    width: 50%;
}
#cocktail_top .cocktail_info {
	width: 600px;
	float: right;
	box-sizing: border-box;
	padding-left: 30px;
}
#cocktail_top .cocktail_info h1 {
	line-height: 1.5;
	font-size: 32px;
	color: #152642;
	margin-bottom: 30px;
}
#cocktail_top .cocktail_info h1 span {
	font-size: 20px;
	/*margin-left: 5px;*/
}
#cocktail_top .cocktail_info .social_share_widget_wrap {
	float: right;
}
#cocktail_top .cocktail_info .social_share_widget_wrap {
	
}
#cocktail_top .cocktail_info p.method{
	margin-right: 10px;
}
#cocktail_top .cocktail_info p.method,#cocktail_top .cocktail_info p.style {
	margin-bottom: 18px;
	display: inline-block;
	word-break: break-word;
}
#cocktail_top .cocktail_info .caption {
	clear: right;
	margin-bottom: 25px;
	line-height: 1.2;
  font-size: 18px;
  color: #2EB7CB;
  font-weight: bold;

}
#cocktail_top .cocktail_info .body {
	font-size: 16px;
	margin-bottom: 20px;
	line-height: 1.2;
}
#cocktail_top .cocktail_info .tags_wrap {
 background: #f3f3f3;
 padding: 20px 10px;
 clear: both;
}
#cocktail_top .cocktail_info .tags_wrap .head {
	font-weight: bold;
	float: left;
	width: 100px;
	font-size: 14px;
}
#cocktail_top .cocktail_info .tags_wrap .tags_list {
	float: right;
	width: 450px;
}
#cocktail_top .cocktail_info .tags_wrap .tags_list li {
	display: inline-block;
	margin-right: 10px;
	margin-bottom: 5px;
}
#cocktail_top .cocktail_info .tags_wrap .tags_list li a {
	color: #2f2f2f;
	font-size: 14px;
}
#cocktail_recip_left {
	width: 450px;
	float: left;
	margin-bottom: 40px;
}
#cocktail_recip_right {
	width: 720px;
	float: right;
	margin-bottom: 40px;
}
#cocktail_recip_left table tr:nth-child(odd) td,
#cocktail_recip_left table tr:nth-child(odd) th {
	background-color: #f3f3f3;
}
#cocktail_recip_left table tr:nth-child(even) td,
#cocktail_recip_left table tr:nth-child(even) th {
	background-color: #FFF;
}
#cocktail_recip_left table th {
	border-right: 2px solid #dfdfdf;
	text-align: left;
	font-weight: normal;
}
#cocktail_recip_left table tr:first-child th {
	text-align: center;
	font-weight: bold;
}
#cocktail_recip_left table td {
	text-align: center;
}
.box_simple.competition_intro{
	width: 900px;
	margin: 0 auto;
	padding: 30px;
	margin-bottom: 60px;
}

/* ブランド辞典 Secret of Brand
----------------------------------------------------- */
.brand_data tr:first-child {
	border-bottom: 1px solid #dfdfdf;
}
.brand_data tr th {
	border-right: 1px solid #dfdfdf;
	background: #f3f3f3;
	width: 160px;
}
.brand_data tr:nth-child(even) th {
	background: #FFF;
}

#tasting_note,
#secrets_of_brand  {
	margin-bottom: 50px;
}
#tasting_note .title,
#secrets_of_brand .title {
	font-family: 'IM Fell DW Pica SC', serif;
	font-size: 32px;
	color: #2f2f2f;
	margin-bottom: 30px;
	line-height: 1;
}
#tasting_note table th {
	width: 80px;
}
#tasting_note table th,
#tasting_note table td {
	padding: 5px 0;
}

/* お問い合わせ contact
----------------------------------------------------- */
.form_table {
	border: 2px solid #dfdfdf;
	border-spacing: 1px;
	color: #2F2F2F;
	font-size: 16px;
}
.pages .content tr.cell_color th, .pages .content tr.cell_color td {
	background-color: #f3f3f3!important;
}

.contact .content .form_table tr th,
.mypage .content .form_table tr th,
.registration .content .form_table tr th {
	width: 30%;
	font-size: 16px;
}
.contact .content .form_table tr td,
.mypage .content .form_table tr td,
.registration .content .form_table tr td {
	width: 70%;
	font-size: 16px;
	padding: 15px;
}
#contact_form {
	border: 1px #e0e0e0 solid;
	border-spacing: 1px;
	/*margin: 0 25px 15px;*/
}

#contact_form tr th {
	width: 20%;
	padding: 5px 10px;
	background: #f3f3f3;
	color: #666;
	font-weight: normal;
	border-collapse: collapse;
	border-right: 1px #eee solid;
	border-bottom: 1px #eee solid;
	height: 52px;
}

.required {
	color: #fd0061;
	margin: 0 3px;
	font-size: 0.6em;
	vertical-align: bottom;
}

#contact_form tr td {
	width: 80%;
	padding: 5px 10px;
	background: #fdfdfd;
	border-collapse: collapse;
	border-top: 1px #fff solid;
	border-bottom: 1px #e9e9e9 solid;
	border-left: 1px #f3f3f3 solid;
}

.cellodd th {
	background: #f9f9f9 !important;
	border-bottom: none !important;
}

.cellodd td {
	background: #fff !important;
	border-top: none !important;
	border-bottom: 1px #f9f9f9 solid !important;
	border-left: 1px #f9f9f9 solid !important;
}

.info{
	color: #2EB7CB;
	margin-bottom: 0!important;
}

.notice {
	font-size: 12px;
	color: #fd0061;
	display: block;
	margin-bottom: 0!important;
}
.notice_message{
	font-weight: bold;
	color: #fd0061;
}
main .notice_message{
	max-width: 1200px;
  margin: 0 auto;
}
.error-message{
	font-weight: bold;
	color: #fd0061;
}
.example {
	color: #aeaeae;
	margin-bottom: 0!important;
}

.warning {
	background: url(../img/sub/ico_error.png) 0 50% no-repeat;
	color: #f00;
	font-size: 12px;
	font-weight: bold;
	padding: 0 0 0 15px;
	margin: 3px 0 0!important;
}

.terms {
    overflow: auto;
    font-size: 12px;
    line-height: 1.4em;
    max-height: 200px;
    border: 1px solid #CCC;
    padding: 15px;
    margin-bottom: 0px!important;
    background: #FFF;
}

#contact_form input {
	margin: 0 3px;
	padding: 2px;
	vertical-align: middle;
	border: 1px #7f9db9 solid;
}

#contact_form_approach li,#contact_form_member ,#contact_form_sex li {
	list-style: none;
	display: inline;
	margin: 0 5px 0 0;
}

textarea {
	padding: 2px;
	border: 1px #7f9db9 solid;
}

input[type="text"],input[type="password"]{
	height: 40px;
	font-size: 14px;
	padding: 10px 15px;
	box-sizing: border-box;
	border: 1px solid #dfdfdf;
}
input[type="radio"]{
	margin-right: 5px;
}
input[type="radio"] + label{
	margin-right: 15px;
}
select{
	height: 30px;
	font-size: 14px;
	border: 1px solid #dfdfdf;
	background-color: #FFF;
}
.form_S {
  width: 180px;
}
.form_M {
  width: 270px;
}
.form_L {
	width: 400px;
}

.ml_14{
	margin-left: 14px;
	line-height: 1.5em;
}

.lh_20{
	font-weight:normal;
}

.lh_20 span{
	margin-right:5px;
}

.height_220{
  height: 220px;

}

.link_postBI{
margin-top: 25px;
text-align: left;
line-height: 140%;
}

.link_postBI img.first{
	margin-right: 10px;
}

a.readmore-js-toggle{
	float: right;
	text-align: center;
	font-size: 12px;
	padding: 2px 5px;
	width: 140px;
	background-color: #122641;
	color: #FFFFFF;
	text-decoration: none;
}

.content_box_right .toggleBI{
	width: 80px;
}



/* 会員登録 user_registration
----------------------------------------------------- */
.registration .content .box_color.inline{
	width: 520px;
	float: left;
	box-sizing: border-box;
	margin-bottom: 50px;
	padding: 30px 20px;
}
.registration .content .box_color.inline h2{
	font-size: 20px;
}
.registration .content .box_color.inline.ml_20{
	width: 360px;
}
.pages.registration .content .box_simple{
	padding: 15px;
	box-sizing: border-box;
}
.pages.registration .content .box_simple p{
	font-size: 15.9px;
	line-height: 2;
	margin-bottom: 0;
}
.registration .content p.caution{
	font-size: 14px;
	padding-top: 15px;
	margin-bottom: 8px;
}
.registration .info{
	font-size: 16px;
}
.registration .info a.tar{
	/*display: block;*/
	text-decoration: underline;
	margin-left: 10px;
	font-weight: bold;
}




/* ログイン user_login
----------------------------------------------------- */
#member_login{
	margin-top: 50px;
}
.member_login .inner {
    width: 1200px;
    margin: 0 auto;
    background: #F3F3F3;
}
.member_login .content{
	line-height: 1.6em;
	font-size: 16px;
}

.member_login .content .content900, .member_login .content.content900{
	width: 900px;
	margin: 0 auto;
	margin-bottom: 60px;
}
.pages.member_login .content .content900 h1{
	font-size: 36px;
  font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	border-bottom: none;
}
.pages.member_login .content .box_simple{
	padding: 15px 25px;
}
#member_login .box_simple p, .pages.member_login .content .box_simple p{
	font-size: 18px;
}
.member_login .content p{
	margin-bottom: 20px;
}
.member_login h1 {
    color: #2f2f2f;
    font-size: 40px;
    font-family: 'IM Fell DW Pica SC', serif;
    line-height: 1.6;
    margin-bottom: 35px;
    font-weight: normal;
    border-bottom: 2px solid #2f2f2f;
}
.member_login .content .box_color,#member_login .box_color{
	padding: 43px;
	background: #F3F3F3;
	overflow: hidden;
	width: 900px;
	margin: 0 auto;
}
.member_login .content .box_simple,#member_login .box_simple{
	outline: 2px solid #2F2F2F;
	border: 1px solid #909090;
	padding: 10px 20px;
	margin-bottom: 40px;
}
#member_login p.member_message {
	font-size: 24px;
	text-align: center;
	font-weight: bold;
	margin-bottom: 20px;
}
/*#member_login .box_simple p,*/
.member_login .content .box_simple p{
	margin-bottom: 0;
	font-size: 14px;
	line-height: 1.8;
}
.member_login .content .registration, .member_login .content .login,
#member_login .registration, #member_login .login{
	background: #FFF;
	float: left;
	width: 390px;
	padding: 30px 35px;
	box-sizing: border-box;
}
.member_login .content .registration,#member_login .registration{
	margin-right: 30px;
}
.member_login .content .registration h3, .member_login .content .login h3,
#member_login .registration h3, #member_login .login h3{
	text-align: center;
	margin-bottom: 30px;
	padding-bottom: 15px;
	position: relative;
}
#member_login .registration h3:after, #member_login .login h3:after, .member_login .content h3:after {
    content: "";
    display: block;
    width: 150px;
    height: 0px;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    border-bottom: 2px solid #909090;
    /* border-top: 2px solid #2F2F2F; */
}
.member_login .content p.caution,#member_login p.caution{
	font-size: 13px;
	padding-top: 10px;
	margin-bottom: 40px;
	line-height: 1.6;
}
#member_login input[type="text"],#member_login input[type="password"]{
	background: #f3f3f3;
	border: none;
}
.member_login .content .login li span, #member_login .login li span, .member_login .content .registration li span, #member_login .registration li span{
  margin: 7px;
  display: block;
  position: relative;
  display: inline-block;
  font-size: 15px;
}
.member_login .content .login li span:before, #member_login .login li span:before, .member_login .content .registration li span:before, #member_login .registration li span:before{
	content: "";
	display: inline-block;
	border-top: 1px solid #000;
	width: 5.5em;
	height: 0px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: -6.5em;
}
.member_login .content .login li span:after, #member_login .login li span:after, .member_login .content .registration li span:after, #member_login .registration li span:after{
	content: "";
	display: inline-block;
	border-top: 1px solid #000;
	width: 5.5em;
	height: 0px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: -6.4em;
}
.member_login .content .login,#member_login .login{
	text-align: center;
}
.member_login .content .login span,#member_login .login span{
	margin: 7px;
	display: inline-block;
	position: relative;
}
.member_login .content .login span:before,#member_login .login span:before{
	content: "";
	display: inline-block;
	border-top: 1px solid #000;
	width: 7em;
	height: 0px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: -8em;
}
.member_login .content .login span:after,#member_login .login span:after{
	content: "";
	display: inline-block;
	border-top: 1px solid #000;
	width: 7em;
	height: 0px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: -8em;
}
.member_login .content .login .form_M,#member_login .login .form_M{
	width: 306px;
}
.member_login .content .login a,#member_login .login a{
	color: #2EB7CB;
	text-align: right;
	font-size: 14px;
	display: block;
	margin-bottom: 25px;
}
.member_login .content .login .error-message,#member_login .login .error-message{
	font-size: 12px;
  color: #f15a7d;
  font-weight: bold;
}
#member_login a.settlement {
	text-align: center;
	display: block;
	color: #FFF;
	background-color: #1FB7CD;
	width: 320px;
	height: 70px;
	box-sizing: border-box;
	padding: 20px;
	font-size: 18px;
	line-height: 1.7;
	font-weight: bold;
	margin: 0 auto;
}
#member_login input[type="text"],#member_login input[type="password"]{
	background: #f3f3f3;
	border: none;
}
input[type="text"].disable,input[type="email"].disable,input[type="password"].disable{
	background-color: #eee;
}
/* マイページ mypage
----------------------------------------------------- */
.mypage .member_status{
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
  line-height: 1.4;
}
.mypage .content_left{
	width: 270px;
	float: left;
}
.mypage .content_left h2{
	font-size: 18px;
	margin-bottom: 20px;
	text-align: center;
	padding-bottom: 15px;
	position: relative;
}
.mypage .content_left h2 a{
	color: #2F2F2F;
}
.mypage .content_left h2:after{
	content: "";
	display: block;
	width: 180px;
	height: 0px;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	border-bottom: 2px solid #909090;
	/*border-top: 2px solid #2F2F2F;*/
}
.mypage .content.content_left .box_simple{
	padding: 20px 10px 0px 10px;
}
.mypage .content.content_left .box_simple .simple_btn{
	margin: 0 0 15px;
	width: 100%;
}
.mypage .content.content_left .box_simple .simple_btn.red{
	background-color: #e91e63;
	border: 2px solid #e91e63;
}
.mypage .content.content_left .box_simple .simple_btn.red:hover{
	background-color: #f15a7d;
	border: 2px solid #f15a7d;
}
.mypage .content_right{
	float: right;
}
.mypage .content.content_left .box_simple .simple_btn.fb{
	background-color: #4167B2;
	border: 2px solid #4167B2;
}
.mypage .content.content_left .box_simple .simple_btn.fb:hover{
	background-color: #5c81ca;
	border: 2px solid #5c81ca;
}
.mypage .user_navList {
	padding-left: 7px;
	padding-right: 7px;
	margin-bottom: 26px;
}
.mypage .user_navList a {
	display: block;
	padding: 16px 0px 13px 52px;
    font-size: 18px;
    font-weight: bold;
	line-height: 1;
	border-bottom: solid 1px #2F2F2F;
	color: #2F2F2F;
}
.mypage .user_navList .my_recipes a {
	background: url(/img/common/icon_recipes.png) no-repeat left 10px center;
	background-size: 28px auto;
}
.mypage .user_navList .my_articles a {
	background: url(/img/common/icon_articles.png) no-repeat left 10px center;
	background-size: 27px auto;
}
.mypage .user_navList a:hover {
	color: #2EB7CB;
	text-decoration: none;
}
.mypage .content .box_simple.box_tokuten{
	border: 5px solid #2F2F2F;
	outline: none;
	border-radius: 10px;
	padding: 40px 45px;
	margin-top: 40px;
	margin-bottom: 40px;
}
.mypage .content .box_simple.box_tokuten ul li {
	margin-bottom: 20px;
}
.mypage .content .box_simple.box_tokuten ul li:last-child {
	margin-bottom: 0;
}
/* clearfix */
.mypage .content .box_simple.box_tokuten ul li::after {
	content: "";
	display: block;
	clear: both;
}
.mypage .content .box_simple.box_tokuten li > p{
	float: left;
	width: 100px;
	border: 2px solid #9f9f9f;
	border-radius: 100px;
	height: 100px;
	position: relative;
	background: #fbfbff;
	margin: 0;
}
.mypage .content .box_simple.box_tokuten li > p img{
	display: table-cell;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
.mypage .content .box_simple.box_tokuten li > dl{
	float: left;
	width: 670px;
	padding: 15px 0 0 0;
	margin-left: 20px;
}
.mypage .content .box_simple.box_tokuten li > dl dt{
  display: inline-block;
  font-size: 21px;
  margin-bottom: 10px;
  padding-bottom: 5px;
  padding-right: 10px;
  font-weight: bold;
  color: #2C2C2C;
  border: none;
  background: linear-gradient(transparent 50%, #fffbd9 50%);
}
.mypage .content .box_simple.box_tokuten li > dl dt span{
  font-size: 22px;
  color: #2eb7cb;
}
.mypage .content .box_simple.box_tokuten li strong {
  display: inline-block;
  padding-top: 5px;
  color: #e91e63;
}
.mypage .content .my_favorite_area {
	margin-top: 40px;
}
.mypage .content .my_favorite_area,
.mypage .content .my_favorite_area div > ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.mypage .content .my_favorite_area div > ul{
	justify-content: flex-start;
}
.mypage .content .my_favorite_area div > ul li {
	margin-right: 15px;
	margin-top: 15px;
}
.mypage .content .my_favorite_area div > ul li:nth-child(3n) {
	margin-right: 0px;
}
.mypage .content .my_favorite_area div > ul a {
	vertical-align: top;
	position: relative;
	display: block;
}
.mypage .content .my_favorite_area div > ul a::before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	border: solid 3px #1FB7CD;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	transition: all ease-in-out .2s;
	opacity: 0;
	background-color: transparent;
}
.mypage .content .my_favorite_area div > ul a:hover::before {
	opacity: 1;
	background-color: rgba(255, 255, 255, 0.2);
}
.mypage .content .my_favorite_area > div {
	width: 420px;
}
.mypage .content .my_favorite_area .simple_btn {
	font-size: 16px;
	width: 300px;
}
.mypage h3.my_recipes_title,
.mypage h3.my_articles_title {
	display: block;
	text-align: center;
	border-bottom: solid 3px #2F2F2F;
	color: #2F2F2F;
    font-size: 24px;
    font-weight: bold;
}
.mypage h3.my_recipes_title span,
.mypage h3.my_articles_title span {
	display: inline-block;
	line-height: 1;
	padding: 16px 0px 13px 0px;
}
.mypage .my_favorite_area > h3 {
	margin-bottom: 5px;
}
.mypage h3.my_recipes_title span {
	background: url(/img/common/icon_recipes.png) no-repeat left center;
	background-size: 36px auto;
	padding-left: 43px;
}
.mypage h3.my_articles_title span {
	background: url(/img/common/icon_articles.png) no-repeat left center;
	background-size: 39px auto;
	padding-left: 48px;
}
.mypage .no_register_area {
	padding-top: 40px; 
	text-align: center;
}
.mypage .no_register_area p.txt {
	font-size: 18px;
	margin-bottom: 50px;
}
.mypage .no_register_area .simple_btn {
	min-width: 280px;
}
.has_ui {
	position: relative;
}
.ui_sortList_area,
.ui_sortList {
	display: flex;
	align-items: center;
}
.ui_sortList_area {
	position: absolute;
	right: 0;
	top: 10px;
	font-size: 14px;
}
.ui_sortList_area h4 {
	font-size: 13px;
	font-weight: normal;	
}
.ui_sortList_area h4 {
	display: inline-block;
	margin-right: 20px;
	margin-bottom: 0;
}
.ui_sortList li {
	padding: 8px 15px 6px;
	display: inline-block;
	min-width: 160px;
	background-color: #cccccc;
	text-align: center;
	cursor: pointer;
	box-sizing: border-box;
}
.ui_sortList li:hover {
	background-color: #dddddd;
}
.ui_sortList li.active,
.ui_sortList li:hover.active {
	color: #ffffff;
	font-weight: bold;
	background-color: #323232;
	cursor: default;
}
.ui_sortList li:first-child {
	border-radius: 4px 0 0 4px;
}
.ui_sortList li:last-child {
	border-radius: 0 4px 4px 0;
}
.mypage .btn_edit,
.mypage .btn_done {
	top: 16px;
	position: absolute;
	padding: 6px 10px 5px;
	border: solid 2px #2f2f2f;
	font-size: 13px;
	line-height: 1em;
	color: #2f2f2f;
	font-weight: bold;
	box-sizing: border-box;
}
.mypage .btn_edit:hover,
.mypage .btn_edit.active:hover,
.mypage .btn_done:hover,
.mypage .btn_done.active:hover {
	color: #ffffff;
	background-color: #2EB7CB;
	border-color: #2EB7CB;
	text-decoration: none;
}
#ui_fixed_all_check {
	opacity: 0;
	position: fixed;
	bottom: -60px;
	left: 0;
	width: 100%;
	background: #97d7e1;
	padding: 12px 30px;
	z-index: 15;
	border-top: 5px solid #3a4547;
	transition: all 0.4s linear;
}
.edit_mode #ui_fixed_all_check{
	opacity: 1;
	bottom: 0;
}
#ui_fixed_all_check .inner {
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
#ui_fixed_all_check ul {
	width: 930px;
	margin-left: auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#ui_fixed_all_check ul li {
	position: relative;
	cursor: pointer;
}
#ui_fixed_all_check ul li.all_check {
	line-height: 1.4;
	padding-left: 35px;
	font-size: 18px;
	font-weight: bold;
	cursor: pointer;
}
#ui_fixed_all_check input[type="checkbox"] {
	display: none;
	cursor: pointer;
}
#ui_fixed_all_check label {
	cursor: pointer;
}
#ui_fixed_all_check .delete {
	display: inline-block;
	position: relative;
	top: -3px;
	line-height: 1.4;
	padding-left: 30px;
	padding-top: 5px;
    font-size: 18px;
    font-weight: bold;
	cursor: pointer;
	background: url(/img/svg/icon_delete.svg) no-repeat left center;
	background-size: 25px 27px;
	color: #231414;
	cursor: pointer;
}
#ui_fixed_all_check .delete:hover {
	text-decoration: none;
}
#ui_fixed_all_check .delete.disable {
	opacity: .4;
	cursor: default;
}


/* mypage recipes */
.mypage.recipes h3.my_recipes_title {
	text-align: left;
	font-size: 28px;
}
.mypage.recipes .btn_edit,
.mypage.recipes .btn_done {
	left: 313px;
}
.mypage.recipes .recipesList li a {
	color: initial;
	text-decoration: none;
	transition: all .2s ease-in-out;
}
.mypage.recipes .recipesList li a:hover {
	opacity: .7;
}
.mypage.recipes .recipesList li,
.mypage.recipes .recipesList li a,
.mypage.recipes .recipesList li.edit label {
	display: flex;
}
.mypage.recipes .recipesList li.edit {
	position: relative;
}
.mypage.recipes .recipesList li.edit label, 
.mypage.recipes .recipesList li.edit input[type='checkbox']  {
	cursor: pointer;
}
.mypage.recipes .recipesList li.edit label {
	transition: all ease-in-out .2s;
}
.mypage.recipes .recipesList li.edit label:hover *,
.mypage.recipes .recipesList li.edit.active label *{
	color: #cccccc;
}
.mypage.recipes .recipesList li.edit label figure {
	transition: all ease-in-out .2s;
}
.mypage.recipes .recipesList li.edit label:hover figure,
.mypage.recipes .recipesList li.edit.active figure {
	opacity: .6;
}
.mypage.recipes .recipesList li.edit label:hover .tags_list li,
.mypage.recipes .recipesList li.edit.active .tags_list li {
	border-color: #cccccc;
}
.mypage.recipes .recipesList li.edit label:hover .recipe_author,
.mypage.recipes .recipesList li.edit.active .recipe_author,
.mypage.recipes .recipesList li.edit label:hover .recipe_liquor,
.mypage.recipes .recipesList li.edit.active .recipe_liquor {
	color: #999999;
	opacity: .6;
}
.mypage.recipes .checkbox_parts {
	width: 60px;
	position: relative;
	top: 50%;
	margin-top: -16px;
}
.checkbox_parts:before {
	position: absolute;
	top: -1px;
	left: 0;
	display: block;
	width: 20px;
	height: 20px;
	content: "";
	border: #393939 solid 3px;
	border-radius: 4px;
	background-color: #faf9f7;
	z-index: 10;
}
.mypage.recipes input[type="checkbox"] {
	display: none;
}

input[type="checkbox"]:checked + .checkbox_parts:before {
	border: solid 3px #636363;
	background-color: #636363;
	animation: 0.4s ease-in-out 0s normal 1 scale_nanimetion;
}
input[type="checkbox"]:checked + .checkbox_parts:after {
    position: absolute;
    top: 4px;
    left: 9px;
    display: block;
    width: 6px;
    height: 10px;
    content: "";
    transform: rotate(40deg);
    border-right: 2px solid #ffffff;
	border-bottom: 2px solid #ffffff;
	z-index: 11;
}

.mypage.recipes .recipesList > li {
	margin-bottom: 40px;
}
.mypage.recipes .recipesList > li:last-child {
	margin-bottom: 0;
}
.mypage.recipes .recipesList li p {
	margin-bottom: 0;
}
.mypage.recipes .recipesList li figure {
	margin-right: 4%;
	position: relative;
}
.mypage.recipes .recipesList li figure .youtube {
  position: absolute;
  background: #00000080;
  font-size: 15px;
  border-radius: 50%;
  padding: 8px;
  color: #d0cecd;
  top: 5px;
  right: 5px;
}
.mypage.recipes .recipesList li .recipe_description {
	font-size: 14px;
	line-height: 1.5em;
	width: 640px;
}
.mypage.recipes .recipesList li input[type="checkbox"],
.mypage.recipes .recipesList li span.checkbox_parts {
	display: none;
}
.mypage.recipes .recipesList li.edit span.checkbox_parts{
	display: block;
}
.mypage.recipes .recipesList li.edit .recipe_description{
	width: 564px;
}

.mypage.recipes .recipesList li .recipe_description figcaption {
	font-size: 24px;
	line-height: 1.4em;
	display: block;
	font-weight: bold;
	margin-bottom: 3px;
	transition: all ease-in-out .2s;
}
.mypage.recipes .recipesList li .recipe_description .recipe_caption {
	font-weight: bold;
	color: #2EB7CB;
	letter-spacing: 1.4px;
	transition: all ease-in-out .2s;
}
.mypage.recipes .recipesList li .recipe_description .tags_list {
	font-size: 12px;
	line-height: 1.2em;
	display: flex;
	flex-wrap: wrap;
}
.mypage.recipes .recipesList li .recipe_description .recipe_author {
	padding-left: 20px;
	background: url(/img/svg/icon_author.svg) no-repeat left 2px;
	background-size: 16px 16px;
	letter-spacing: 1.1px;
	margin-bottom: 4px;
	font-family: 'Open Sans', sans-serif;
	transition: all ease-in-out .2s;
}
.mypage.recipes .recipesList li .recipe_description .recipe_liquor {
	margin-top: 8px;
	border-top: solid 1px #dddddd;
	padding-top: 8px;
	padding-left: 20px;
	background: url(/img/svg/icon_liquor.svg) no-repeat left 8px;
	background-size: 18px 18px;
	letter-spacing: 1.1px;
	font-family: 'Open Sans', sans-serif;
	transition: all ease-in-out .2s;
}
.mypage.recipes .recipesList li .recipe_description .tags_list li {
	display: inline-block;
	padding: 4px 15px 3px;
	margin-right: 1%;
	margin-top: 5px;
	border-radius: 25px;
	border: solid 1px #808080;
	background-color: #f2f2f2;
	transition: all ease-in-out .2s;
}

/* mypage articles */
.mypage.articles h3.my_articles_title {
	text-align: left;
	font-size: 28px;
}
.mypage.articles .btn_edit,
.mypage.articles .btn_done {
	left: 263px;
}
.articleItemList {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 20px;
}
.articleItemList > div {
	margin-right: 21px;
}
.articleItemList > div:nth-child(3n) {
	margin-right: 0;
}
.mypage.articles .thumb {
	position: relative;
	margin-bottom: 5px;
}
.mypage.articles .thumb .category {
    position: absolute;
    font-family: 'Open Sans', sans-serif;
    color: #FFF;
    border: 2px solid #FFF;
    border-radius: 20px;
    padding: 5px 10px;
    bottom: 8px;
    left: 8px;
	font-weight: bold;
	line-height: 1.4em;
	font-size: 14px;
}
.mypage.articles .article_item {
	margin-bottom: 20px;
	width:282px;
}
.mypage.articles .article_item a p {
    font-size: 14px;
    color: #2f2f2f;
    line-height: 1.6;
}

.mypage.articles .articleItemList .article_item input[type="checkbox"],
.mypage.articles .articleItemList .article_item span.checkbox_parts{
	display: none;
}

.mypage.articles .articleItemList .article_item.edit span.checkbox_parts{
	display: block;
}
.mypage.articles .article_item p {
	margin-bottom: 0;
}
.mypage.articles .article_item.edit {
	position: relative;
}
.mypage.articles input[type="checkbox"] {
	display: none;
}
.mypage.articles .article_item.edit label, 
.mypage.articles .article_item.edit input[type='checkbox']  {
	cursor: pointer;
	transition: all .2s ease-in-out;
}
.mypage.articles .article_item.edit label .thumb {
	transition: all .2s ease-in-out;
}
.mypage.articles .article_item.edit label:hover .thumb {
	opacity: .6;
}
.mypage.articles .article_item.edit label:hover {
	color: #cccccc;
}
.mypage.articles .article_item.edit input[type="checkbox"]:checked ~ .thumb {
	opacity: .6;
}
.mypage.articles .article_item.edit input[type="checkbox"]:checked ~ .thumb + p {
	color: #cccccc;
}
.mypage.articles .article_item.edit .checkbox_parts {
	position: absolute;
    right: 5px;
    top: 5px;
    width: 30px;
    height: 30px;
}

/* 検索 content_search
----------------------------------------------------- */
.ContentSearchBox{
  width: 49%;
  display: inline-block;
  margin-bottom: 50px;
  vertical-align: top;
}
.ContentSearchBoxRow .ContentSearchBox:first-child{
	margin-right: 1.5%;
}
.ContentSearchBox a {
	display: block;
	margin-bottom: 15px;
	line-height: 1.2;
}
.content_search_key_ward{
	/*width: 600px;*/
}
.content_search .content_search_key_ward input[type="text"]{
	width: 580px;
	background: #f3f3f3;
	border-radius: 20px;
	border: none;
	height: 36px;
	line-height: 36px;
	font-size: 14px;
	padding: 0 10px 0 40px;
	box-sizing: border-box;
}
.content_search .content_search_key_ward form {
    position: relative;
}
.content_search .content_search_key_ward button {
    color: #cdcdcd;
    position: absolute;
    left: 15px;
    font-size: 18px;
    border: none;
    top: 10px;
    background: #0000;
}
.content_search .content_search_key_ward button i:before {
    content: "\f002";
}

.ContentSearchBox h2{
	font-family: 'IM Fell DW Pica SC', serif;
	border-bottom: 1px solid #2f2f2f;
	font-weight: normal;
	font-size: 32px;
	margin-bottom: 20px;
}
.ContentSearchBox h2 span {
    font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
    font-weight: bold;
    font-size: 16px;
    margin-left: 15px;
}
/* pages共通
----------------------------------------------------- */
#article.pages{
	margin-top: 20px;
	margin-bottom: 60px;
}
.pages .content{
	line-height: 1.6em;
	font-size: 16px;
}
.pages .content p{
	margin-bottom: 20px;
}
.pages .inner {
    width: 1200px;
    margin: 0 auto;
}
.pages h1{
	color: #2f2f2f;
	font-size: 40px;
	font-family: 'IM Fell DW Pica SC', serif;
	line-height: 1.6;
	margin-bottom: 35px;
	font-weight: normal;
	border-bottom: 2px solid #2f2f2f;
}
.pages h1 span {
    font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
    font-weight: bold;
    font-size: 18px;
    margin-left: 15px;
}

/* どりぷらTV pages/tv
----------------------------------------------------- */
.pages.tv h1{
	padding-left: 60px;
	background: url(/img/sub/pages/h1_tv.jpg) top left no-repeat;
}

.pages.tv .content ul{
	font-size: 0;
}
.pages.tv .content li{
	width: 370px;
	margin-bottom: 20px;
	vertical-align: top;
	display: inline-block;
	position: relative;
	margin-right: 45px;
}
.pages.tv .content li:nth-child(3n){
	margin-right: 0;
}
.pages .img_border{
	background-color: #fff;
	border: 1px solid #ccc;
	padding: 4px;
}
.pages .content h3 a {
	font-size: 18px;
	color: #2f2f2f;
	line-height: 1.6;
	font-weight: normal;
}
.pages .content img.new_icon {
	position: absolute;
	top: 202px;
	left: 12px;
}

/* Bar向けおすすめサイトのご紹介 pages/link
----------------------------------------------------- */
.pages .content table{
	width: 100%;
	border: 1px solid #DFDFDF;
}
.pages .content table tr{
    border-bottom: 1px solid #DFDFDF;
}
.pages .content table th{
	width: 365px;
	font-size: 18px;
	padding: 20px;
	border-right: 1px solid #DFDFDF;
}
.pages .content table td{
	font-size: 16px;
	padding: 30px 20px;
}
.pages .content table td:not(first-child){
	border-left: 1px solid #DFDFDF;
}
.pages .content table tr:nth-child(odd) th, .pages .content table tr:nth-child(odd) td {
	background: #FFF;
}
.pages .content table tr:nth-child(even) th, .pages .content table tr:nth-child(even) td {
	background: #F3F3F3;
}
.pages .content table th a{
	color: #2F2F2F;
}

.pages .content table.content900{
	width: 900px;
	margin: 0 auto;
}
.pages .content table.content900 th, .pages .content.content900 table th{
	width: 270px;
}

/* 個人情報保護方針 pages/privacy
----------------------------------------------------- */
.pages .content dl dt{
	font-size: 20px;
	margin-bottom: 10px;
	padding-bottom: 5px;
	border-bottom: 1px solid #2F2F2F;
}
.pages .content dl dd{
	margin-bottom: 30px;
	font-size: 16px;
	line-height: 1.6em;
}

/* お試しフォーム pages/otameshi
----------------------------------------------------- */
.pages .content .box_simple{
	outline: 2px solid #2F2F2F;
	border: 1px solid #909090;
	padding: 40px;
}
.pages .content table.otameshi{

}
.pages .content table.otameshi th{
	/*width: 190px;*/
		background: #F3F3F3;
}
.pages .content table.otameshi td{
	width: 180px;
	background: #FFFFFF;
}

/* よくあるご質問 pages/faq
----------------------------------------------------- */
.pages .content table.faq_box dl dt{
	border-bottom: none;
	font-size: 16px;
	line-height: 1.5;
	margin-bottom: 0px;
	margin-top: 20px;
	padding-bottom: 0;
	padding-left: 30px;
	background: url(/img/sub/faq/icon_faq.png) no-repeat left center;
	font-weight: bold;
}
.pages .content table.faq_box td > dl:first-child dt{
	margin-top: 0;
}
.pages .content table.faq_box dl dt a{
	color: #2EB7CB;
}
.pages .content table.faq_box dl dd{
	margin-top: 10px;
}
.pages .content table.faq_box tr:nth-child(even) dl dd{
	outline: 2px solid #DFDFDF;
	border: 1px solid #EEEEEE;
	padding: 10px;
	background: #FFF;
}
.pages .content table.faq_box tr:nth-child(odd) dl dd{
	padding: 13px;
	background: #F3F3F3;
}
.pages .content table.faq_box th{
	width: 250px;
}

/* 決済方法について pages/kessai
----------------------------------------------------- */
.pages .content table.tr_brb tr{
    border-bottom: 1px solid #DFDFDF;
}
.pages.about_settlement h2{
	padding-bottom: 10px;
	border-bottom: 1px solid;
	margin-bottom: 20px;
}
.pages.about_settlement h3{
	background: url(../img/sub/h2/h4_text_bg.png) no-repeat left top 4px;
	padding-left: 10px;
}
.pages.about_settlement table tr td:first-child {
    border-bottom: 1px solid #DFDFDF;
}

.pages.registration span.campaign,.pages.about_settlement span.campaign{
    display: block;
    border: 1px solid #fd0062;
    width: 140px;
    border-radius: 20px;
    color: #FFF;
    background: #fd0062;
    text-align: center;
    padding: 2px 0;
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 5px;
}


/* LP
----------------------------------------------------- */
.pages.lp #top_main {
	margin-bottom: 40px;
}
.pages.lp #top_main > div.img_area {
    height: 400px;
}

.pages.lp .content_left {
	width: 780px;
	float: left;
}
.pages.lp .tokuten {
	margin-bottom: 130px;
}
.pages.lp .tokuten .box_simple{
	border: 5px solid #2F2F2F;
	outline: none;
	border-radius: 10px;
	padding: 40px 45px;
	margin: 0 16px;
}
.pages.lp .tokuten h2{
	text-align: center;
}
.pages.lp .tokuten ul{
	overflow: hidden;
}
.pages.lp .tokuten ul li:not(:last-child){
	height: 150px;
}

.pages.lp .tokuten li > p{
	float: left;
	width: 100px;
	border: 2px solid #9f9f9f;
	border-radius: 100px;
	height: 100px;
	position: relative;
	background: #fbfbff;
}
.pages.lp .tokuten li > p img{
	display: table-cell;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
.pages.lp .tokuten li > dl{
	float: right;
	width: 520px;
	padding: 15px 0 0 0;
}
.pages.lp .tokuten li > dl dt{
	display: inline-block;
  font-size: 18px;
  margin-bottom: 10px;
  padding-bottom: 5px;
  padding-right: 10px;
  font-weight: bold;
  color: #2C2C2C;
	border: none;
	background: linear-gradient(transparent 50%, #fffbd9 50%);
}
.pages.lp .tokuten li > dl dt span{
  font-size: 22px;
  color: #2eb7cb;
}

.pages.lp .payment {
	margin-bottom: 80px;
}
.pages.lp .payment .tbl_kessai {
	border: 5px solid #2F2F2F;
	outline: none;
	border-radius: 10px;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	width: 748px;
	margin: 0 auto;
}
.pages.lp .payment .tbl_kessai span.campaign{
	display: inline-block;
	border: 1px solid #fd0062;
	width: 90px;
	border-radius: 20px;
	color: #FFF;
	background: #fd0062;
	text-align: center;
	padding: 2px 0;
	font-size: 12px;
	font-weight: bold;
	margin-bottom: 5px;
	margin-right: 8px;
}
.pages.lp .payment .tbl_kessai .bg_blue {
	background-color: #2eb7cb;
	color: #FFF;
}
.pages.lp .payment .tbl_kessai .bg_gray {
	background-color: #dfdfdf;
	color: #2f2f2f;
}
.pages.lp .payment th {
	font-size: 20px;
	padding-top: 25px;
	padding-bottom: 25px;
}
.pages.lp .payment td {
	background-color: #FFF!important;
	border-bottom: 1px solid #DFDFDF;
}
.pages.lp .payment .tbl_kessai i {
	margin-right: 12px;
}
.pages.lp .payment h2 {
	font-size: 24px;
}

.pages.lp .content_right {
	float: right;
	width: 390px;
	height: 1705px;
	position: relative;
}
.pages .registration.fixed {
	position: absolute;
	width: 390px;
	right: 0;
	top: 0;
}
.pages .registration {
	width: 100%;
	background-color: #f8f8f8;
	padding: 45px 35px 30px;
	box-sizing: border-box;
}
.pages .registration h2{
	font-size: 32px;
}
.pages .registration .box_inner{
	background: #FFF;
	padding: 30px 0 20px 0;
	
}
.pages .registration .box_inner ul{
	
}
.pages .registration .box_inner li{
	display: inline-block;
	width: 389px;
	vertical-align: middle;
	text-align: center;
}
.pages .registration .box_inner li.tac{
	width: 25px;
}
.pages .registration .box_inner li p{
	font-size: 14px;
	padding: 5px 0;
	width: 320px;
	text-align: left;
	margin: 0 auto;
	line-height: 1.4;
}
.pages.lp .registration h2{
	color: #2f2f2f;
	font-size: 20px;
	margin-bottom: 45px;
}
.pages.lp .registration li{
	width: 320px;
	font-size: 12px;
	line-height: 70px;
	vertical-align: middle;
	text-align: center;
}
.pages.lp .registration li span {
	margin: 7px;
	display: block;
	position: relative;
	display: inline-block;
}
.pages.lp .registration li span:before,
.pages.lp .registration li span:after {
	content: "";
	display: inline-block;
	border-top: 1px solid #000;
	width: 5.5em;
	height: 0px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
}
.pages.lp .registration li span:before {
	left: -6.5em;
}
.pages.lp .registration li span:after {
	right: -6.5em;
}
.pages.lp .registration p.caution{
	font-size: 12px;
	padding: 15px 0;
	width: 320px;
	text-align: left;
	color: #2f2f2f;
	line-height: 1.4;
}

.pages.lp .message{
	padding: 80px 0 120px;
	min-width: 1200px;
	background-color: #ebf7f9;
	background-image: url(/img/sub/lp2/bg_cocktail.png);
	background-repeat: no-repeat;
	background-position: left 80% bottom 100px;
}
.pages.lp .message h2{
	text-align: left;
	font-size: 24px;
	color: #2f2f2f;
	line-height: 1.7;
	margin-bottom: 30px;
}
.pages.lp .message div p {
	font-size: 16px;
	line-height: 36px;
}
.pages.lp .message div a {
	color: #000000;
}
.pages.lp .message .message_inner {
	width: 1200px;
	margin: 0 auto;
}
.pages.lp .message .message_left,
.pages.lp .message .message_right {
	width: 570px;
}
.pages.lp .message .message_left {
	float: left;
}
.pages.lp .message .message_right {
	float: right;
}



.photo_left{
	float:left;
	width:750px;
}

.photo_right{
	float:left;
	width:150px;
}

.photo_right ul{
	list-style:none;
}

.photo_right ul li{
	float:left;
	width:75px;
	height:75px;
}
#view_body .photo_left .p_img{
	background-position:0 7px;
	padding:0 0 0 15px;
	font-size:12px;
	color:#666;
	width:720px;
	margin-top: 0;
	margin-bottom: 0;
}

/* ------------------------------
*Jobs 求人募集ページ
*/

.jobs .jobs_item .thumb{
	margin-bottom: 8px;
	position: relative;
}
.jobs .jobs_item .thumb a img{
	width: 270px;
	height: 180px;
}
.jobs_item .thumb .status{
	position: absolute;
	display: inline-block;
	font-family: 'Open Sans', sans-serif;
	color: #FFF;
	background: #ea4e78;
	text-align: center;
	border: 1px solid #ea4e78;
	bottom: 8px;
	left: 8px;
	border-radius: 	10px;
	padding: 4px 8px;
}
.jobs h2{
	margin-bottom: 0px;
	line-height: 1.4;
	font-size: 16px;
	height: 36px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
}
.jobs_item h2 a{
		color: #152642;
}
.jobs hr{
	width: 250px;
	border-top: 1px solid #e5e5e5;
}
.jobs .jobs_item .detail{
	margin-top: 5px;
	font-size: 14px;
	color: #222;
	border: none;
	border-collapse: initial;
	width: 250px;
}
.jobs .jobs_item .detail tr{
	vertical-align: baseline;
}
.jobs .jobs_item .detail th,
.jobs .jobs_item .detail td{
	font-weight: normal;
	padding: 0;
	background-color: #fff;
	text-align: left;
	/*vertical-align: top;*/
}
.jobs .jobs_item .detail th{
	line-height: 1.8;
	width: 31%;
}
.jobs .jobs_item .detail td{
	text-indent: -1em;
}
.jobs .jobs_item .detail td::before{
	content: ":";
	font-size: 14px;
	padding-right: 3px;
}
.jobs .jobs_item .detail span{
	display: inline-block;
	padding-right: 5px;
}
.jobs_list .jobs_item{
	/*padding-right: 20px;*/
	padding-right: 17px;
	padding-bottom: 10px;
	border-right: 2px solid #e5e5e5;
	border-bottom: 2px solid #e5e5e5;
	width: 270px;
	margin-left: 15px;
}
.jobs_list .jobs_item.recommend{
    background: #e5e5e5;
    box-shadow: -8px -8px 0px 8px #e5e5e5;
    border-color: #e5e5e5;
}
.jobs .jobs_item.recommend hr{
	border-color: #795548;
}
.jobs .jobs_item.recommend .detail th, .jobs .jobs_item.recommend .detail td{
    background: #e5e5e5;
}
.jobs_list .jobs_item:first-child{
	margin-left: 0;
}
.jobs_list .jobs_item:last-child{
	margin-right: 0px;
}
.jobs .jobs_list{
	display: flex;
	margin-bottom: 40px;
	width: 1205px;
	margin-right: auto;
	margin-left: auto;
	justify-content: center;
}

/* ------------------------------
*No Jobsページ
*/
.no_jobs h2{
	text-align: center;
	font-size: 20px;
	margin-top: 60px;
	margin-bottom: 40px;
}
.no_jobs .lead{
	text-align: center;
	font-size: 20px;
	line-height: 1.6;
}
.no_jobs .lead a{
	text-decoration: underline;
}
.no_jobs .lead_box{
	margin-bottom: 40px;
}
.no_jobs .img_nojobs img{
	width: 20%;
}
