@charset "utf-8";

/*! minireset.css v0.0.3 | MIT License | github.com/jgthms/minireset.css */html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6,a{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select,textarea{margin:0}html{box-sizing:content-box}*,*:before,*:after{box-sizing:inherit}img,embed,iframe,object,audio,video{height:auto;max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0;text-align:left}

input, select {vertical-align:middle;}
input:placeholder-shown,
input::-webkit-input-placeholder,
input::-moz-placeholder {
	color: #f2f2f2!important;
}


/* フォームのデフォルトスタイルを削除 */
input, button, textarea, select { margin: 0; padding: 0; background: none; border: none; border-radius: 0; outline: none; -webkit-appearance: none; -moz-appearance: none; appearance: none;}

img {
    vertical-align: top;
    font-size: 0;
    line-height: 0;
}

*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display:block;}
ol, ul {list-style: none;}
body {
	width: 100%;
	line-height:1;
}

p,ol,ul,li,dl,dt,dd,h1,h1,h2,h3,h4,h5,th,td,a,div{
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI","游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	color: #333;
	font-size: 15px;
	line-height: 1.8;
}

a {
	text-decoration: none;
	display: block;
	transition: 0.2s linear all;
	color: #333;
    vertical-align:baseline;
    background:transparent;
}

img{width: 100%;}
figure{vertical-align: top;}


/********************
Structure
*********************/
.display__Block{display: block;}


/********************
Layout
*********************/
.width__100{width:100%;}

.marginTop__20px{margin-top: 20px;}
.marginTop__40px{margin-top: 40px;}
.marginTop__60px{margin-top: 60px;}
.marginTop__80px{margin-top: 80px;}
.marginTop__100px{margin-top: 100px;}
.marginTop__120px{margin-top: 120px;}

.marginBottom__20px{margin-bottom: 20px;}
.marginBottom__40px{margin-bottom: 40px;}
.marginBottom__60px{margin-bottom: 60px;}
.marginBottom__80px{margin-bottom: 80px;}
.marginBottom__100px{margin-bottom: 100px;}
.marginBottom__120px{margin-bottom: 120px;}

.padding__30px{padding: 30px;}

.paddingTop__20px{padding-top: 20px;}
.paddingTop__40px{padding-top: 40px;}
.paddingTop__60px{padding-top: 60px;}
.paddingTop__80px{padding-top: 80px;}
.paddingTop__100px{padding-top: 100px;}
.paddingTop__120px{padding-top: 120px;}

.paddingBottom__20px{padding-bottom: 20px;}
.paddingBottom__40px{padding-bottom: 40px;}
.paddingBottom__60px{padding-bottom: 60px;}
.paddingBottom__80px{padding-bottom: 80px;}
.paddingBottom__100px{padding-bottom: 100px;}
.paddingBottom__120px{padding-bottom: 120px;}

.textAlign__center{text-align: center;}
.textAlign__left{text-align: left;}
.textAlign__right{text-align: right;}


/********************
Skin
*********************/
.fontSize__12px{font-size: 12px;}
.fontSize__13px{font-size: 13px;}
.fontSize__14px{font-size: 14px;}
.fontSize__15px{font-size: 15px;}
.fontSize__16px{font-size: 16px;}
.fontSize__18px{font-size: 18px;}
.fontSize__20px{font-size: 20px;}
.fontSize__22px{font-size: 22px;}
.fontSize__24px{font-size: 24px;}
.fontSize__26px{font-size: 26px;}
.fontSize__30px{font-size: 30px;}
.fontSize__32px{font-size: 32px;}
.fontSize__36px{font-size: 36px;}
.fontSize__42px{font-size: 42px;}
.fontSize__48px{font-size: 48px;}

.fontWeight__bold{font-weight: bold;}

.color__black1{color: #000;}
.color__black2{color: #232323;}
.color__black3{color: #595757;}

.color__yellow1{color: #ffd900;}
.color__yellow2{color: #FFF4B3;}
.color__yellow3{color: #FFF9D9;}

.background__white{background: #fff;}



/********************
Parts
*********************/
.restaurants_color{color: #f19947;}
.restaurants_bgColor{background-color: #f19947; color: #fff;}
.restaurants_bgColor_lighter{background-color: #fef7f1;}/*rgba(241, 153, 71, 0.08)*/
.beauty_color{color: #e8839b;}
.beauty_bgColor{background-color: #e8839b; color: #fff;}
.beauty_bgColor_lighter{background-color: #fdf2f5;}/*rgba(232, 131, 155, 0.10)*/
.realestate_color{color: #a66aad;}
.realestate_bgColor{background-color: #a66aad; color: #fff;}
.realestate_bgColor_lighter{background-color: #efe4f1;}
.jobs_color{color: #82b158;}
.jobs_bgColor{background-color: #82b158; color: #fff;}
.medical_color{color: #4c9fc1;}
.medical_bgColor{background-color: #4c9fc1; color: #fff;}
.forum_color{color: #a66aad;}
.forum_bgColor{background-color: #a66aad; color: #fff;}
.sub_color{color: #007791;}
.sub_bgColor{background-color: #007791; color: #fff;}

.fontSize__12px{font-size: 12px;}
.fontSize__13px{font-size: 13px;}
.fontSize__14px{font-size: 14px;}
.fontSize__15px{font-size: 15px;}
.fontSize__16px{font-size: 16px;}
.fontSize__18px{font-size: 18px;}
.fontSize__20px{font-size: 20px;}
.fontSize__22px{font-size: 22px!important;}

.marginBottom__8px{margin-bottom: 8px;}

.ins {display: block!important;}
.ins_inline {display: inline!important;}
.del {display: none!important;}
.display_flex{display: flex!important;}

.staticPage__inner{margin-bottom: 60px;}
.staticPage_ttl{
	font-weight: bold;
	margin-bottom: 8px;
}
h3.staticPage_ttl{font-size: 18px;}
h4.staticPage_ttl{font-size: 16px;}

.tag__new {
	color: #fff;
    background: #ec5252;
    font-size: 11px;
    padding: 2px 3px;
    margin: 0 0 0 8px;
    /* display: flex; */
    line-height: 1;
    -webkit-border-radius: 2px;
            border-radius: 2px;
}


@media screen and (max-width:768px) {
	.ins {display: none!important;}
	.ins_inline {display: none!important;}
	.del {display: block!important;}
}





/* ------------------------------------------------
header  --------------------------------------------*/

header{
	width: 100%;
	background: #fff;
    position: relative;
    z-index: 3333;
    -webkit-box-shadow: 0 0 16px rgba(0, 0, 0, 0.10);
    		box-shadow: 0 0 16px rgba(0, 0, 0, 0.10);
}


.headArea{
	max-width: 1200px;
	width: 96%;
	margin: 0 auto;
	height: 56px;
	display: flex;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
	-webkit-align-items: center;
	        align-items: center;
}

.headArea_inner{
	display: flex;
	-webkit-align-items: center;
	        align-items: center;
}

.headArea_inner a{
	display: inline-block;
	margin-right: 20px;
	min-width: 158px;
    max-width: 158px;
}

.headmenu {
	min-width: 602px;
}

.headmenu_list {
	display: flex;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
	-webkit-align-items: center;
	        align-items: center;
}

.headmenu_list li {
	margin-left: 32px;
}

.headmenu_list li:last-child{margin-left: 12px;}
.headmenu_list li.headmenu_list_header_nav{margin-left: 24px;}

.headmenu_list li a {
    padding: 6px 0 4px;
    line-height: 1;
}

.headmenu_list li a.semiActive {
	border: 1px solid #232323;
	color: #232323;
    border-radius: 4px;
    padding: 12px 20px;
    margin: 0 2px;
}

.headmenu_list li a.active {
	background: #ec5252;
	border: none;
	color: #fff;
    border-radius: 4px;
    padding: 12px 20px;
    margin: 0 2px;
}

@media screen and (max-width:920px){
	header{
		/* padding: 2px 0; */
		position: fixed;
	}
	.top header{
		height: auto;
		position: fixed;
		-webkit-box-shadow: 0 0px 16px rgba(0,0,0,0.12);
				box-shadow: 0 0px 16px rgba(0,0,0,0.12);
	}
	.food_detail header,
	.beauty_detail header{
		padding: 2px 0;
		position: static;
	}
	.headArea{
		max-width: 92%;
		width: 100%;
	}
	.headArea_inner{
		height: 58px;
	    display: flex;
	    align-items: center;
	    width: 92%;
	}
	.headArea_inner a{
	    display: flex;
	    margin-right: 16px;
	}
	.headArea_inner h1{
	    font-size: 12px;
	}
	.headmenu {
		display: none;
	}
}


@media screen and (max-width:750px){
	.headArea_inner a{
		width: 45%;
		min-width: 0;
	}
	.headArea_inner h1{
		width: 55%;
	    font-size: 11px;
	}
}

/* ------------------------------------------------
gronavArea  --------------------------------------------*/

.gronavArea.top ul{
	display: flex;
	justify-content: center;
	text-align: center;
	border-top: none;
}

.gronavArea ul{
	display: flex;
	justify-content: center;
	text-align: center;
	border-top: 1px solid #eaeaea;
}

.gronav_list{
	width: 180px;
	position: relative;
}

.gronavArea.top ul .gronav_list::before{
	content: "";
	height: 60px;
	width: 1px;
	background: #aaa;
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}

.gronavArea.top ul .gronav_list.gronav_listForum::before{
	content: "";
	background: none;
}

.gronavArea.top ul .gronav_list a{
	padding: 18px 0;
	font-size: 16px;
}

.gronavArea.top ul .gronav_list .gronav_list_icon{
	width: 40px;
	display: block;
	margin: 0 auto;
	padding-bottom: 8px;
}

.gronav_list::before{
	content: none;
}

.gronav_list a{
	padding: 18px 0;
	font-size: 16px;
}

.gronav_list .gronav_list_icon,
.headmenu_list .headmenu_list_icon,
.foot_cateArea_list .foot_list_icon{
	width: 22px;
    display: inline-block;
    margin-right: 4px;
}

.headmenu_list .headmenu_list_icon{
	width: 18px;
    padding-bottom: 0px;
    line-height: 1;
    vertical-align: text-top;
}

.h2_icon .gronav_list_icon{
	width: 32px;
	display: inline-block;
	vertical-align: top;
}

.gronav_list_catchForum{
	font-size: 13px;
	display: block;
}

.navFixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2222;
  width: 100%;
  transition: .3s;
  transform: translateY(-100%);
  background: #FFF;
  -webkit-box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.17);
          box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.17);
}
.is-show {
  transform: translateY(0);
}

@media screen and (max-width:768px){
	.gronavArea{
		display: none;
	}
	.top .gronavArea {
		display: none;
	}
	.top .gronavArea ul{
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.top .gronav_list{
		width: 42%;
	    border-radius: 4px;
		margin: 0 2% 2% 2%;
		-webkit-box-shadow: 0px 0px 3px rgba(0,0,0, .2);
		box-shadow: 0px 0px 3px rgba(0,0,0, .2);
	}
	.top .gronav_list::before{
		content: none;
	}
	.gronav_list .gronav_list_icon{
		padding-bottom: 0;
	}
	.top .gronav_listForum{
		width: 88%;
		margin: 10px 0 30px;
	}
	.top .gronav_list a{
		padding: 6px 0;
	}
	.top .gronav_listForum a{
		padding: 18px 0;
		height: auto;
	}
	.top .gronav_list .icon-icon:before {
	  font-size: 1.4rem;
	}
	.is-show.gronavArea ul{
		display: flex;
	}
	.is-show.gronavArea .gronav_list{
		width: 20%;
	}
	.is-show.gronavArea .gronav_listForum{
		display: none;
	}
}



/* ------------------------------------------------
side_menuArea  ------------------------------------*/


.side_menuArea,
.menuBtn{
	display: none;
}

@media screen and (max-width:920px){
	.menuBtn {
	    display: block;
	    width: 30px;
	    height: 42px;
	    cursor: pointer;
	    z-index: 3333;
	    text-align: center;
	    position: relative;
	}
	.food_detail .menuBtn,
	.beauty_detail .menuBtn{
		position: absolute;
	}

	.menuBtn span {
	    display: block;
	    position: absolute;
	    width: 30px;
	    border-bottom: solid 3px #ec5252;
	    -webkit-transition: .3s ease-in-out;
	    -moz-transition: .3s ease-in-out;
	    transition: .3s ease-in-out;
	}

	.menuBtn span:nth-child(1) {
	    top: 9px;
	}

	.menuBtn span:nth-child(2) {
	    top: 18px;
	}

	.menuBtn span:nth-child(3) {
	    top: 27px;
	}

	.menuBtn.active span:nth-child(1) {
	    top: 18px;
	    left: 0;
	    -webkit-transform: rotate(-45deg);
	    -moz-transform: rotate(-45deg);
	    transform: rotate(-45deg);
	}

	.menuBtn.active span:nth-child(2),
	.menuBtn.active span:nth-child(3) {
	    top: 18px;
	    -webkit-transform: rotate(45deg);
	    -moz-transform: rotate(45deg);
	    transform: rotate(45deg);
	}

	.side_menuArea{
		display: block;
		width: 100%;
		height: 100%;
		background: #fff;
		position: fixed;
	    z-index: 9999;
	    top: 56px;
	    left: 0;
	    text-align: center;
	    transform: translateX(100%);
	    transition: all 0.6s;
	    padding-top: 12px;
	    padding-bottom: 80px;
	    overflow-y: scroll;
	    -webkit-overflow-scrolling: touch;
	}
	.side_menuArea_inner{
		padding: 0 5%;
	}
	.side_menuArea_inner_btn{
		margin: 0 0 20px 0;
	}
	.side_menuArea_inner .side_menuArea_account{
		display: flex;
		align-items: center;
		padding: 0 0 16px;
		border-bottom: 1px solid #ddd;
	}
	.side_menuArea_inner__ttl{
		padding-left: 12px;
	    line-height: 1;
	    font-size: 16px;
	    font-weight: bold;
	    margin-top: 40px;
	    margin-bottom: 10px;
	    border-left: 5px solid #007791;
	    text-align: left;
	}
	/* .side_menuArea_inner__ttl.is_authenticated:first-child{
		margin-top: 10px;
	} */
	.side_menuArea_inner ul{
		display: flex;
	    justify-content: center;
	    -webkit-flex-wrap: wrap;
    	flex-wrap: wrap;
	}

	.side_menuArea_list{
		width: 100%;
		margin: 0 auto;
		position: relative;
	    text-align: left;
	    border-bottom: 1px solid #eee;
	}

	.side_menuArea_list a{
		font-size: 15px;
		padding: 16px 0;
	}

	.side_menuArea_icon {
		width: 26px;
	    display: inline-block;
		margin-right: 20px;
	    text-align: center;
	}

	.side_menuArea.active {
	    transform: translateX(0%);
	}

	.side_menuArea ul li.side_menuArea_listForum .side_menuArea_catchForum{
		display: inline-block;
		padding-left: 8px;
		font-size: 13px;
	}

	.side_menuArea ul li.side_menuArea_contact{
		width: 100%;
		border: none;
		text-align: left;
		display: block;
		font-size: 13px;
	}

	.side_menuArea_icon span:before{
		font-size: 20px;
		color: #ac873d;
	}
	.gronav_list_icon{
		width: 20px;
    	display: inline-block;
    	margin-right: 8px;
	}

}


/* ------------------------------------------------
side_area  ------------------------------------- */
.columnReverse{
	-webkit-flex-direction: row-reverse;
    		flex-direction: row-reverse;
}

.contentLeft{
	width: 68%;
	max-width: 810px;
	margin: 0 40px 120px 0;
}
.contentLeft.columnReverse{
	margin: 0 0 0 60px;
}

.contentRight{
	width: 345px;
	margin-bottom: 120px;
}

@media screen and (max-width:768px){
	main {
		padding-top: 56px;
	}
	.food_detail main,
	.beauty_detail main {
		padding-top: 0;
	}

	.contentLeft.columnReverse{
		margin: 0;
	}
	.contentLeft{
		width: 100%;
		max-width: 100%;
		margin: 0;
	}

	.contentRight{
		width: 100%;
		max-width: 100%;
		margin-bottom: 0;
	}
}

/* ------------------------------------------------
bnrArea ----------------------------------------- */

.bnrArea{
	margin-bottom: 20px;
}

.bnrArea a:hover{
	-webkit-box-shadow: 0px 3px 12px 4px rgba(0, 0, 0, 0.12);
	box-shadow: 0px 3px 12px 4px rgba(0, 0, 0, 0.12);
}

.ads_bnr__asp{
	margin-top: 20px;
	line-height: 1;
}
.ads_bnr__asp > img{height:1px;}

/* ------------------------------------------------
recommendArea ------------------------------------ */

.recommendArea {
	padding: 22px 18px 32px;
	background: #fff;
	margin-bottom: 30px;
}

.recommendArea h3{
	font-size: 22px;
	text-align: center;
	margin-bottom: 20px;
	font-weight: bold;
	border-bottom: solid 1px #ddd;
    padding: 0 0 10px 0;
}

.recommendArea h3 span{
	font-size: 16px;
	display: block;
	line-height: 1.2;
}

.recommendArea_list_article{
	padding-bottom: 18px;
	margin-bottom: 20px;
	border-bottom: 1px dashed #aaa;
}

.recommendArea_list_article:last-child{
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 0;
}

.recommendArea_list_article figure{
	width: 38%;
	height: 100%;
	margin-right: 12px;
	background: #999;
	display: inline-block;
	overflow: hidden;
}

.recommendArea_list_article figure img {
	width: 100%;
    max-width: 100%;
    height: 100%;
    max-height: 100%;
    object-fit: cover;
    transition-duration: 0.25s;
}

.recommendArea_list_article figure img:hover {
	transform: scale(1.08);
    transition-duration: 0.25s;
}

.recommendArea_list_article h4{
	width: 55%;
	display: inline-block;
	font-weight: bold;
	line-height: 1.4;
}

 #twitter-widget-0{
	width: 740px!important;
}



/****************************************
foot
****************************************/
footer{
	background: #222;
	padding: 40px 0;
}

footer.form_footer{
	background: #f6f6f6;
}

footer a{
	color: #f3f4f4;
}

footer.form_footer a{
	color: #444;
}

footer a:hover{
	opacity: .6;
}

.foot_inner{
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
	position: relative;
}

.foot_ttlArea {
	padding-bottom: 8px;
	margin-bottom: 16px;
	position: absolute;
	right: 0;
}

.foot_ttlArea figure{
	width: 140px;
}

.foot_cateArea {
	margin-bottom: 42px;
}

.foot_ttlArea h2{
	color: #f3f4f4;
	line-height: 2.6;
	margin-bottom: 10px;
}

.foot_ttlArea p{
	color: #f3f4f4;
	line-height: 2.6;
	margin-bottom: 10px;
}

.foot_snsArea > ul > li {
	display: inline-block;
    padding-right: 24px;
    margin-right: 18px;
	position: relative;
}

.foot_snsArea > ul > li > a{
	font-size: 20px;
}

.snsArea_fb:before{
	content: "";
	width: 1px;
	height: 16px;
	background: #666;
	position: absolute;
	right: 0;
	top: 8px;
}

.foot_cateArea h2{
	color: #f3f4f4;
    font-size: 22px;
    letter-spacing: 0.1rem;
    margin: 0 0 7px 0;
}

.foot_cateArea_list{
	display: inline-block;
	margin-right: 32px;
}

.foot_cateArea_list a{
	font-size: 15px;
}

.foot_cateArea_list .icon-icon{
	padding-right: 6px;
}

.foot_list > ul > li{
	display: inline-block;
	padding-right: 20px;
}

.foot_list > ul > li > a{
	font-size: 12px;
}

.copyright{
	text-align: center;
	font-size: 12px;
	color: #f3f4f4;
	margin: 20px auto 0;
}

footer.form_footer .copyright{
	color: #444;
}

.foot_cateArea_icon .icon-icon-01 .path1:before {
  color: #fff;
}
.foot_cateArea_icon .icon-icon-01 .path2:before {
  color: #fff;
}
.foot_cateArea_icon .icon-icon-01 .path5:before {
  color: #fff;
}
.foot_cateArea_icon .icon-icon-01 .path6:before {
  color: #fff;
}
.foot_cateArea_icon .icon-icon-02:before {
  color: #fff;
}
.foot_cateArea_icon .icon-icon-03:before {
  color: #fff;
}
.foot_cateArea_icon .icon-icon-04 .path4:before {
  color: #fff;
}
.foot_cateArea_icon .icon-icon-04 .path5:before {
  color: #fff;
}
@media screen and (max-width:768px){
	.foot_inner{
		width: 100%;
		max-width: 100%;
		padding: 0 5%;
	}
	.foot_ttlArea {
		position: static;
	}
	.foot_ttlArea h2 {
		line-height: 1.6;
		padding-top: 20px;
	}
	.foot_cateArea {
		display: none;
	}
	.foot_list > ul > li {
		padding-bottom: 10px;
		padding-right: 12px;
	}
	.foot_list > ul > li > a {
		font-size: 13px;
		text-align: center;
	}
}

.pageTop {
	width: 100%;
	background: #555;
	text-align: center;
	padding: 2px 5%;
	margin-bottom: 0!important;
}

.pageTop a {
	color: #FFF;
	font-size: 15px;
}

.terms_shop {
	padding: 0 5% 18px;
	text-align: right;
}

.terms_shop a{
	font-size: 13px;
}





/****************************************
検索 サイドエリア
****************************************/

.searchArea {
	margin-bottom: 40px;
	background: #fff;
}

.searchArea h3 {
    padding: 8px 0;
    text-align: center;
    font-weight: bold;
    color: #fff;
}

.searchArea form {
	padding: 20px 20px 30px;
}

.searchArea__Box {
	margin-bottom: 36px;
}

.searchArea__Box h4 {
    padding-left: 12px;
    position: relative;
    font-weight: bold;
    line-height: 1;
    font-size: 16px;
    margin-bottom: 16px;
}

.searchArea__Box h4:before {
    content: "";
    background: #333;
    width: 4px;
    height: 16px;
    position: absolute;
    left: 0;
}

.searchArea__Box__inner {
}

.searchArea__Box__inner li {
	margin: 8px 0;
	font-size: 14px;
}
.searchArea__Box__inner li label {
	cursor: pointer;
}

.searchArea__Box__inner input[type='checkbox'] {
	position: relative;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 16px;
    height: 16px;
    margin-right: 10px;
    cursor: pointer;
    transition: all 0.15s ease-out 0s;
    color: #fff;
    background: #fff;
    border: 1px solid #007791;
    padding: 0;
    display: inline-block;
    border-radius: 3px;
    box-shadow: 0px 1px 2px 0px rgba(0,0,0,.1);
}

.searchArea__Box__inner input[type='checkbox']:checked {
	background: #007791;
}

.searchArea__Box__inner input[type='checkbox']:checked::before {
	font-size: 12px;
    line-height: 14px;
    position: absolute;
    display: inline-block;
    width: 14px;
    height: 14px;
    content: '✔';
    text-align: center;
    z-index: 22;
    color: #fff;
}

.searchArea__Box__inner input[type='checkbox']:checked::after {
    position: relative;
    display: block;
    content: '';
}

.searchArea__Box__select {
  overflow: hidden;
  width: 100%;
  text-align: center;
}
.searchArea__Box__select select {
  width: 100%;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}
.searchArea__Box__select select::-ms-expand {
  display: none;
}
.searchArea__Box__select {
  position: relative;
  border-radius: 4px;
  border: 1px solid #ccc;
}
.searchArea__Box__select::before {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 10px;
  width: 0;
  height: 0;
  padding: 0;
  content: '';
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #aaa;
  pointer-events: none;
}
.searchArea__Box__select select {
  padding: 8px 38px 8px 10px;
}





/****************************************
プロフィール画像スタイル
****************************************/
.profileNameBlock{
	display: flex;
	align-items: center;
}

.profile_photo{
	width: 36px;
	min-width: 36px;
	height: 36px;
	min-height: 36px;
	border-radius: 50%;
	display: inline-block;
	margin-right: 12px;
	border: 1px solid #ddd;
	background-position: center center;
	-webkit-background-size: cover;
	     -o-background-size: cover;
	        background-size: cover;
	background-repeat: no-repeat;
}

@media screen and (max-width:750px) {
	.profile_photo{
		width: 32px;
		min-width: 32px;
		height: 32px;
		min-height: 32px;
		margin-right: 12px;
	}
}








/****************************************
ボタンスタイル
****************************************/
/***** ボタン基本スタイル *****/
.btnBox{
	width:calc(100% - 30px);
	margin: 0 auto;
}

.btn{
	width: 100%;
	display: block;
	text-align: center;
    height: 60px;
    line-height: 60px;
    font-size: 16px;
    -webkit-transition: .2s;
       -moz-transition: .2s;
        -ms-transition: .2s;
         -o-transition: .2s;
            transition: .2s;
    border-radius: 100px;
    cursor: pointer;
}

.btn:hover{
	opacity: .6;
	text-decoration: none;
}



/***** ボタンスタイル バリエーション *****/
.btn.btn_fixed_width{
	width: 320px;
	margin: 0 auto;
}
.btn.btn_fixed_small{
	width: 108px;
	height: 32px;
	line-height: 32px;
	font-size: 13px;
}

.btn.btn_bold{font-weight: bold;}
.btn.btn_2row{line-height: 1.6;}
.btn.btn_color_main{
	color: #fff;
	background: #ec5252;
	box-shadow: 0 3px 0 #a52c2c;
}
.btn.btn_color_sub{
	color: #fff;
	background: #007791;
	box-shadow: 0 3px 0 #004958;
}
.btn.btn_color_reverse{
	color: #ec5252;
	background: #fff;
	box-shadow: 0 6px 12px rgba(0,0,0,0.12);
}
.btn.btn_color_gradient{
	color: #fff;
	background: linear-gradient(to right,#a52c2c,#ec5252);
}
.btn.btn_color_accent{

}
.btn.btn_color_base{

}
.btn.btn_unClickable{
	color: #ccc;
	background: #eaeaea;
}
.btn.btn_border{
	color: #333;
	border: 1px solid #333;
}
.btn.btn_new_post::before{

}

.btn_custom_1{
	width: 80%;
	margin: 0 auto;
	height: 46px;
	line-height: 46px;
	font-size: 14px;
}



/***** ボタンスタイル キャンセルあり *****/
.updateBox__btnArea{
	display: flex;
    justify-content: space-between;
}

.updateBox__btnArea .btn__03 {
	width: 68%;
	-webkit-box-shadow: none;
			box-shadow: none;
}

.updateBox__btnArea .btn__04 {
	width: 30%;
	margin-bottom: 18px;
}



/***** ボタンスタイル スマホ対応 *****/
@media screen and (max-width:768px) {
	.updateBox__btnArea .btn__03 {
		height: 48px;
		line-height: 48px;
	}
}

@media screen and (max-width:750px) {
	.btn.btn_fixed_width{
		width: 100%;
	}
}







/****************************************
ワンカラム
****************************************/

.oneColumn {
	width: 100%;
	margin: 80px auto 0;
}


@media screen and (max-width:750px) {
	.oneColumn {
		margin: 100px auto 0;
		padding: 0 5%;
	}

	.oneColumn_marginTopSmall {
		margin:40px auto 0;
	}
}





/****************************************
リンクスタイル
****************************************/
.linkStyle.linkStyle_marginTop_20px{margin: 20px 0 0;}
.linkStyle.linkStyle_center{text-align: center;}
.linkStyle.linkStyle_right{text-align: right;}
.linkStyle.linkStyle_left{text-align: left;}
.linkStyle.linkStyle_inlineBlock{display: inline-block;}
.linkStyle_image{transition: .2s linear all;}
.linkStyle a,
.linkStyle button.closeLink{
	font-size: 14px;
    color: #007791;
    display: inline-block;
    padding-right: 18px;
    position: relative;
    font-weight: normal;
    cursor: pointer;
}

.linkStyle a:hover,
.linkStyle button.closeLink:hover{
	text-decoration: underline;
}

.linkStyle_image:hover{
	-webkit-box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.18);
    		box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.18);
    -webkit-transform: translateY(-12px);
       -moz-transform: translateY(-12px);
    	-ms-transform: translateY(-12px);
    	 -o-transform: translateY(-12px);
    		transform: translateY(-12px);
}

.linkStyle a::before,
.linkStyle button.closeLink::before{
    content: '';
    background: url(/static/img/common/icon/arrow_right_simple_007791.svg) no-repeat;
    position: absolute;
    top: 8px;
    right: 0;
    width: 10px;
    height: 10px;
}








/****************************************
タグスタイル
****************************************/
.contents_tag{
	border-radius: 3px;
    display: inline-block;
    line-height: 1;
    padding: 3px 6px;
    margin: 8px 2px 0 0;
    background: hsla(40, 42%, 52%, 0.12);
}

.contents_tag span {
    font-size: 11px;
    color: #b79550;
    font-weight: bold;
}

@media screen and (max-width:768px) {
	.contents_tag span {
		font-size: 12px;
	}
}







/****************************************
口コミ（スター）アイコン
****************************************/
.star_icon {
	display: inline-block;
	width: 20px;
}

@media screen and (max-width:768px) {
	.star_icon {
		display: inline-block;
		width: 6%;
	}
}








/****************************************
予算（ランチ・ディナー）アイコン
****************************************/
.ranch_icon,
.dinner_icon {
	position: relative;
	padding-left: 20px;
}

.ranch_icon::before,
.dinner_icon::before  {
	content: "";
	position: absolute;
	left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
	width: 14px;
	height: 14px;
}

.ranch_icon::before {
	background: url(/static/img/common/icon/sun.svg) no-repeat;
}

.dinner_icon::before {
	background: url(/static/img/common/icon/moon.svg) no-repeat;
}








/****************************************
アラートメッセージ
****************************************/
.alertBox{
	position: relative;
	width: 100%;
	margin: 0 auto;
	padding: 12px 16px;
    font-size: 16px;
}
.alertBox.success{
	background: #e7f4e2;
	color: #6daf66;
	font-weight: bold;
}

.alertBox.error{
	background: #f2dede;
	color: #a94442;
	border-top: 1px solid #ebccd1;
	border-bottom: 1px solid #ebccd1;
}

/***** アラートメッセージ閉じるアイコン *****/
.alertClose {
	display: block;
	width: 15px;
	height: 15px;
	border: none;
	cursor: pointer;
	background: none;
	position: absolute;
	top: 34px;
	right: 12px;
	-webkit-transform: translate(-50%, -50%);
    		transform: translate(-50%, -50%);
}
.alertClose span::before,
.alertClose span::after {
	display: block;
	content: '';
	position: absolute;
	width: 15px;
	height: 1px;
}
.alertClose span::before {transform: rotate(-45deg);}
.alertClose span::after {transform: rotate(45deg);}
.alertClose.success span::before, .alertClose.success span::after{background: #6daf66;}
.alertClose.error span::before, .alertClose.error span::after{background: #a94442;}







/****************************************
フォームスタイル
****************************************/

.contact_detailArea {
	width: 800px;
	margin: 60px auto 120px;
}

.contact_detailArea h3 {
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 40px;
}



.formStyleBox{
	width: 100%;
	background: #f6f6f6;
	padding: 40px 60px;
}

.formStyleBox.formStyleBox__jobs{
	margin: -40px 0 60px;
}

.formStyle.formStyle__jobs{
	margin: 0 0 40px;
}

.formStyle.formStyle__jobs span{
	font-weight: bold;
}

.formStyleBox__jobs__ttl{
	text-align: center;
    font-size: 18px;
    font-weight: bold;
    margin: 0 0 40px 0;
    border-bottom: 1px solid #ddd;
    padding-bottom: 18px;
}

.formStyle__itemBox {
    margin-bottom: 40px;
}

.formStyle__itemBox label {
	display: block;
	font-size: 14px;
	color: #666;
}

.formStyle__itemBox label span {
	font-size: 12px;
	color: #999;
}

.forum .formStyle h3{margin-top: 15px;}
.formStyle input[type='text'],
.formStyle input[type='checkbox'],
.formStyle input[type='url'],
.formStyle input[type='number'],
.formStyle input[type='password'],
.formStyle input[type='email'],
.formStyle textarea,
.formStyle select {
	font: 15px/24px sans-serif;
	box-sizing: border-box;
	width: 100%;
	margin: 15px 0 0;
	padding: 15px 18px;
	transition: .3s;
	letter-spacing: 1px;
	color: #333;
	border: 2px solid #fff;
	border-radius: 4px;
	background: #f4f4f4;
	display: block;
	font-size: 13px;
}

.formStyle input[type='file'] {
	font: 15px/24px sans-serif;
	box-sizing: border-box;
	width: 100%;
	transition: .3s;
	letter-spacing: 1px;
	color: #333;
	border-radius: 4px;
	display: block;
	line-height: 1;
}

.formStyle input[type='text']:focus,
.formStyle input[type='checkbox']:focus,
.formStyle input[type='url']:focus,
.formStyle input[type='number']:focus,
.formStyle input[type='password']:focus,
.formStyle input[type='email']:focus,
.formStyle textarea:focus,
.formStyle select:focus {
	border: 2px solid #007791;
    outline: none;
    /* box-shadow: 0 0 5px 1px rgba(172, 135, 61, .5); */
}

.formStyle textarea{overflow: hidden;}

button {
	font-size: 14px;
	font-weight: bold;
}


@media screen and (max-width:768px){
	.formStyle input[type='text'],
	.formStyle input[type='checkbox'],
	.formStyle input[type='url'],
	.formStyle input[type='number'],
	.formStyle input[type='password'],
	.formStyle input[type='email'],
	.formStyle textarea,
	.formStyle select {
		font: 14px/24px sans-serif;
		margin: 10px 0 0;
		font-size: 16px;
	}
	.contact_detailArea {
		width: 92%;
	}
}






/***** フォームスタイル 投稿欄 *****/
.post__boxArea label,
.photoArea label:not(.img__btn__name) {
	font-size: 14px;
	position: relative;
	padding-left: 20px;
}
.post__boxArea label::before,
.photoArea label:not(.img__btn__name)::before {
    content: '';
    position: absolute;
    left: 0;
    top: 5px;
    bottom: 0;
    width: 14px;
    height: 14px;
}
.post__boxArea label::before{background: url(/static/img/common/icon/edit.svg) no-repeat;}
.photoArea label:not(.img__btn__name)::before {top: 3px; background: url(/static/img/common/icon/image.svg) no-repeat;}

.post__boxArea .formStyle__inner {
	/*background: #fff;*/
	border-radius: 4px;
}

.img__boxArea {
	display: flex;
	justify-content: space-between;
}

.img__boxArea input[type='file']{
	margin-top: 10px;
}

.img__boxArea img {
	width: 20px;
	height: 20px;
}

label.img__btn {
	width: 30%;
	height: 48px;
	line-height: 48px;
    text-align: center;
	display: inline-block;
    border-radius: 5px;
    color: #ffffff;
    background: #007791;
    cursor: pointer;
    font-weight: bold;
    position: relative;
}

label.img__btn:hover {
	opacity: 0.7;
}

label.img__btn:before {
	content: "";
	background: url(/static/img/common/icon/upload.svg) no-repeat;
	width: 20px;
	height: 20px;
	position: absolute;
	left: 12px;
    top: 2px;
    bottom: 0;
    margin: auto;
}

.formStyle .img__btn__name {
	width: 68%;
}

.formStyle .img__btn__name input[type='text']{
	margin: 0!important;
	font: 14px/24px sans-serif;
	padding: 12px 20px;
}





/***** セレクトボックス *****/
.formStyle select { /* デフォルトスタイルを消去 */
	cursor: pointer;
	-webkit-appearance: none;
			appearance: none;
}
.formStyle .selectItemBox {
	position: relative;
	width: 320px;
}
.formStyle .selectItemBox::before { /* 矢印のスタイル */
	position: absolute;
	top: 24px;
	right: 20px;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid #666666;
	pointer-events: none;
}
.formStyle .selectItemBox::after { /* 線のスタイル */
	position: absolute;
	top: 0;
	right: 52px;
	bottom: 0;
	width: 1px;
	content: '';
	border-left: 1px solid #ddd;
}
.formStyle__jobs div {width: 280px;} /* 求人情報の例外処理 */
.formStyle select::-ms-expand {display: none;} /* IEの例外処理 */


.formStyle .birthdayForm select {
	position: relative;
	width: 32%;
}
.formStyle .birthdayForm select::before { /* 矢印のスタイル */
	position: absolute;
	top: 24px;
	right: 20px;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid #666666;
	pointer-events: none;
}
.formStyle .birthdayForm select::after { /* 線のスタイル */
	position: absolute;
	top: 0;
	right: 52px;
	bottom: 0;
	width: 1px;
	content: '';
	border-left: 1px solid #ddd;
}

@media screen and (max-width:768px){
	.formStyle .selectItemBox {
		max-width: 280px;
		width: 100%;
	}
}






/***** 並列フォーム *****/
.parallelForm{
	display: flex;
	align-items: center;
}
.parallelForm div {
	width: 32%;
	margin-right: 30px;
}
.parallelForm div:last-child{margin-right: 0;}

.birthdayForm {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.birthdayForm select {width: 32%;}
.birthdayForm { margin-bottom: 10px;}

@media screen and (max-width:768px){
	.parallelForm{
		flex-wrap: wrap;
	}
	.parallelForm div {
		width: 100%;
		margin-right: 0;
	}
}






/***** チェックボックス *****/
.formStyle__inner{
	display: flex;
	flex-wrap: wrap;
}

.formStyle__inner li{
	margin: 20px 45px 5px 0;
}

.formStyle__inner li input[type='checkbox']{
	width: 90%;
	margin: 0 auto;
	text-align: left;
}

.formStyle__inner li input[type='checkbox'] {
	position: relative;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 30px;
	height: 30px;
	margin-right: 10px;
	cursor: pointer;
	transition: all 0.15s ease-out 0s;
	color: #fff;
	border: none;
	outline: none;
	background: #fff;
    border: 1px solid #ac873d;
	-webkit-appearance: none;
	        appearance: none;
	padding: 0;
	display: inline-block;
}

.formStyle__inner li input[type='checkbox']:checked {background: #ac873d;}
.formStyle__inner li input[type='checkbox']:checked::before {
	font-size: 20px;
	line-height: 30px;
	position: absolute;
	display: inline-block;
	width: 30px;
	height: 30px;
	content: '✔';
	text-align: center;
}

.formStyle__inner li input[type='checkbox']:checked::after {
	position: relative;
	display: block;
	content: '';
	background: #ac873d;
}

.formStyle__inner li input[type='checkbox']:disabled {
	cursor: not-allowed;
	background: #b8b7b7;
}

.formStyle__inner li input[type='checkbox']:disabled::before {
	font-size: 20px;
	line-height: 30px;
	position: absolute;
	display: inline-block;
	width: 30px;
	height: 30px;
	content: '✖︎';
	text-align: center;
}










/***** ファイルアップロード *****/

.formStyle .fileArea,
.formStyle .addFileArea{
	margin-bottom: 40px;
	font-size: 14px;
}

.formStyle .fileArea input[type='checkbox']{
    width: 16px;
    height: 16px;
    cursor: pointer;
    transition: all 0.15s ease-out 0s;
    color: #fff;
    background: #fff;
    border: 1px solid #007791;
    padding: 0;
    margin: 0;
    display: inline-block;
    border-radius: 3px;
    box-shadow: 0px 1px 2px 0px rgba(0,0,0,.1);
}

.formStyle .fileArea input[type='checkbox']:checked{
    background: #007791;
}

.formStyle .fileArea input[type='checkbox']:checked::before{
	font-size: 12px;
    line-height: 14px;
    position: absolute;
    display: inline-block;
    width: 14px;
    height: 14px;
    content: '✔';
    text-align: center;
    z-index: 22;
}

.addImgBtn {
	position: relative;
	padding: 0 0 40px 20px;
}

.addImgBtn:before {
    font-family: "Font Awesome 5 Free";
    content: '\f055';
    font-weight: bold;
    position: absolute;
    left: 0;
    line-height: 1.6;
}






/********** 確認画面 **********/

.form__confirm {
	background: #f6f6f6;
	padding: 72px 60px;
	margin-bottom: 60px;
}

.form__confirm__list {
	display: flex;
	width: 100%;
	margin-bottom: 40px;
}

.form__confirm__list::last-child {
	margin-bottom: 0;
}

.confirm__listName {
	width: 20%;
	margin-right: 10px;
	font-size: 14px;
    color: #666;
    line-height: 2;
}

@media screen and (max-width:750px)  {
	.form__confirm {
	    padding: 25px;
	    margin-bottom: 60px;
	}
	.form__confirm__list{
		flex-direction: column;
	}
	.confirm__listName {
		width: 100%;
	}

}






/****************************************
ページネーション
****************************************/
.pagination {
    overflow: hidden;
    margin: 40px 0 0 0;
}
.mypageArea .pagination {margin: 70px 0 0 0;}

.pagination ul {
    list-style: none;
    position: relative;
    left: 50%;
    float: left;
}

.pagination ul li {
    margin: 0 3px;
    position: relative;
    left: -50%;
    float: left;
}

.pagination ul li a,
.pagination ul li a.current {
    display: block;
    font-size: 16px;
    padding: 10px 18px;
    -webkit-border-radius: 3px;
            border-radius: 3px;
}

.pagination ul li a {
    background: #ddd;
    color: #333;
    text-decoration: none;
}

.pagination ul li a.current {
    background: none;
}

.pagination ul li a:hover {
    background: #007791;
    color: #fff;
}

.pagination ul li a.current:hover {
    background: none;
    color: #333;
}
