@charset "utf-8";
/* ----------------------------------------------------------- */
body, input, select, textarea {
	color: #333 ;
	font-size: 1rem ;
	font-family: "メイリオ", Meiryo, sans-serif ;
}
a:hover { text-decoration: none ;}
em { font-style: normal ;}
sup {
	position: relative ;
	top: -0.4em ;
	font-size: 70% ;
}

/* h1 ------------------------------------------
   footerに表示するため、表示位置はbodyを基準に
   position/bottomでページ下部からのpxで指定
------------------------------------------------ */
/* h1 layout */
body {
	position: relative ;
}
.footer {
	height: 570px ;/* h1位置 */
}
.footer_nav {
	border-top: 21px solid #894093 ;
}
.page_title {
	bottom: 468px ;/* h1位置 */
	height: 21px ;

	position: absolute ;
	left: 0 ;
	display: block ;
	width: 100% ;
	box-sizing: border-box ;
	z-index: 1 ;
}
.impression_img {
	position: absolute ;
	bottom: 0 ;
	left: 0 ;
	width: 0 ;
	height: 0 ;
}
/* h1 style */
.page_title {
	color: #fff ;
	font-size: 0.7rem ;
	font-weight: normal ;
	padding: 4px 6px 0 ;
	white-space: nowrap ;
	overflow: hidden ;
}
/* h1 touch scroll */
.page_title {
	overflow: hidden ;
}
.page_title span {
	display: block ;
	height: 40px ;/* scrollbar隠し */
	overflow-x: auto ;
	overflow-y: hidden ;
	overflow-scrolling        : touch;
	-webkit-overflow-scrolling: touch;
}

/* -----------------------------------------------------------
   header
-------------------------------------------------------------- */
.header {
	height: 70px ;
	background-color: #fff ;
	/* border-bottom: 1px solid #ddd ;*/
}
.header_logo {
	position: absolute ;
	top: 15px ;
	left: 15px ;
}
.header_logo a,
.header_logo span {
	display: block ;
	width: 167px ;
	height: 40px ;
	text-indent: 100% ;
	background-image: url(/smp/img/header_logo-petadpark.png);
	background-position: top left ;
	background-repeat: no-repeat ;
	background-size: contain ;
	white-space: nowrap ;
	overflow: hidden ;
}

/* burger menu -------------------- */
/* burger menu animation */
.header_nav-disp {
	display: none ;
}
.header_nav_back {
	position: fixed ;
	left: 0 ;
	top: 0 ;
	display: none ;
	width: 100% ;
	height: 100% ;
	background-color: rgba(0, 0, 0, 0.7);
	z-index: 100 ;
}
.header_nav_disp  {
	display: inline-block ;
}
.header_nav-disp:checked + .header_nav_disp .header_nav_back {
	display: block ;
}
.header_nav_wrap {
	position: fixed ;
	right: -100%;
	top: 0 ;
	width: 75% ;
	height: 100% ;
	background-color: #fff ;
	z-index: 105 ;

	transition        : right 0.2s;
	-webkit-transition: right 0.2s;
}
.header_nav-disp:checked + .header_nav_disp .header_nav_wrap {
	right: 0;
}
.header_nav_body {
	position: relative ;
	top: 0 ;
	left: 0 ;
	width: 100% ;
	height: 100% ;
	/* scroll */
	overflow: auto ;
	overflow-scrolling        : touch;
	-webkit-overflow-scrolling: touch;
}
/* burger menu btn */
.header_nav {
	float: right ;
	margin-top: 12px ;
	margin-right: 12px ;
}
.header_nav_label {
	position: relative ;
	display: inline-block ;
	width: 40px ;
	height: 40px ;
	background-color: #fff ;
	border: 2px solid #ddd ;
	border-radius: 5px ;
	cursor: pointer ;
}
.header_nav_label:before,
.header_nav_label:after {
	content:"";
	position: absolute ;
	top: 50% ;
	left: 50% ;
	display: block ;
}
.header_nav_label:before {
	width: 20px ;
	height: 14px ;
	margin-top: -9px ;
	margin-left: -10px ;
	border-top: 2px solid #ddd ;
	border-bottom: 2px solid #ddd ;
}
.header_nav_label:after {
	width: 20px ;
	height: 0 ;
	margin-top: -1px ;
	margin-left: -10px ;
	border-top: 2px solid #ddd ;
}
.header_nav_btn-close {
	position: absolute ;
	top: 0 ;
	left: -60px ;
	z-index: 10 ;
}
.header_nav_btn-close label {
	position: relative ;
	top: 0 ;
	left: 0 ;
	display: block ;
	width: 60px ;
	height: 60px ;
	z-index: 12 ;
}
.header_nav_btn-close:before,
.header_nav_btn-close:after {
	content:"";
	position: absolute ;
	top: 50% ;
	left: 50% ;
	display: block ;
	width: 4px ;
	height: 23px ;
	margin-top: -12px ;
	margin-left: -2px ;
	background-color: #fff ;
	border: 0 ;
	border-radius: 1px ;
	z-index: 11 ;
}
.header_nav_btn-close:before {
	transform        : rotate(45deg);
	-webkit-transform: rotate(45deg);
}
.header_nav_btn-close:after {
	transform        : rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
/* burger menu list */
.header_nav_title a {
	position: relative ;
	display: block ;
	color: #333 ;
	font-size: 1.1rem ;
	font-weight: bold ;
	line-height: 1 ;
	text-decoration: none ;
	padding: 20px 0 19px 48px ;
}
.header_nav_title a:before {
	content:"";
	position: absolute ;
	top: 50% ;
	left: 13px ;
	display: block ;
	width: 25px ;
	height: 25px ;
	margin-top: -12px ;
	background-image: url(/smp/pet/img/ico_menu_v3.png);
	background-position: top left ;
	background-repeat: no-repeat ;
	background-size: 25px auto ;
}
.header_nav-list {
	font-size: 0.95rem ;
	line-height: 1 ;
	vertical-align: baseline ;
	padding-bottom: 5px ;
	list-style-type: none ;
}
.header_nav-list dt {
	color: #fff ;
	font-weight: bold ;
	background-color: #e31e77 ;
	padding: 6px 10px 4px ;
	margin-bottom: 5px ;
}
.header_nav-list .header_nav-list_home {
	color: #fff ;
	background-color: #0e8ad1 ;
}
.header_nav-list a {
	position: relative ;
	display: block ;
	color: #333 ;
	text-decoration: none ;
	padding: 15px 10px 15px 48px ;
}
.header_nav-list a:before {
	content:"";
	position: absolute ;
	top: 49% ;
	left: 13px ;
	display: block ;
	width: 25px ;
	height: 25px ;
	margin-top: -12px ;
	background-image: url(/smp/pet/img/ico_menu_v3.png);
	background-repeat: no-repeat ;
	background-size: 25px auto ;
}
.header_nav-list .header_nav-list_top a:before         { background-position: 0 0 ;}
.header_nav-list .header_nav-list_save a:before        { background-position: 0  -25px ; margin-top: -13px ;}
.header_nav-list .header_nav-list_fav a:before         { background-position: 0  -50px ; margin-top: -13px ;}

.header_nav-list .header_nav-list_search a:before      { background-position: 0  -75px ; margin-top: -13px ;}
.header_nav-list .header_nav-list_search-shop a:before { background-position: 0 -100px ; margin-top: -13px ;}
.header_nav-list .header_nav-list_last-view-list a:before { background-position: 0 -425px ; margin-top: -14px ;}

.header_nav-list .header_nav-list_dogresort a:before   { background-position: 0 -125px ;}
.header_nav-list .header_nav-list_dognavi a:before     { background-position: 0 -150px ;}
.header_nav-list .header_nav-list_recipe a:before      { background-position: 0 -175px ;}
.header_nav-list .header_nav-list_estate a:before      { background-position: 0 -250px ;}
.header_nav-list .header_nav-list_symbiosis a:before   { background-position: 0 -225px ;}
.header_nav-list .header_nav-list_howto a:before       { background-position: 0 -200px ;}

.header_nav-list .header_nav-list_sitemap a:before     { background-position: 0 -275px ;}
.header_nav-list .header_nav-list_question a:before    { background-position: 0 -300px ;}
.header_nav-list .header_nav-list_privacy a:before     { background-position: 0 -325px ;}
.header_nav-list .header_nav-list_corporation a:before { background-position: 0 -350px ;}
.header_nav-copy {
	background-color: #ebf1f5 ;
	padding: 17px 10px 50px 15px ;
}
.header_nav-copy_title {
	display: block ;
	font-size: 0.9rem ;
	font-weight: bold ;
	line-height: 120% ;
	padding-bottom: 10px ;
}
.header_nav-copy_title a {
	color: #333 ;
	text-decoration: none ;
}
.header_nav-copy_txt {
	display: block ;
	font-size: 0.7rem ;
	line-height: 120% ;
}
/* /burger menu end */

/* -----------------------------------------------------------
   footer
-------------------------------------------------------------- */
.footer {
	background-color: #fff ;
}
/* footer jump top ------------- */
.footer_jump-top {
	background-color: #f9f9f9 ;
}
.footer_jump-top a {
	position: relative ;
	display: block ;
	height: 50px ;
	padding-top: 20px ;
	padding-right: 40px ;
	border-top: 1px solid #ccc ;
	box-sizing: border-box ;

	color: #333 ;
	font-size: 0.8rem ;
	text-align: right ;
	text-decoration: none ;
}
.footer_jump-top a:before {
	content:"";
	position: absolute ;
	top: 50% ;
	right: 15px ;
	display: block ;
	width: 8px ;
	height: 8px ;
	margin-top: -1px ;
	border-top: 2px solid #ccc ;
	border-right: 2px solid #ccc ;
	transform        : rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
/* footer nav ------------- */
.footer_nav ul {
	background-color: #bb72c5 ;
	zoom: 1 ;
}
.footer_nav ul:after {
	/* clearfix */
	content:"";
 	display: block ;
	clear: both ;
	height: 0 ;
	visibility: hidden ;
}
.footer_nav li {
	float: left ;
	width: 50% ;
	list-style-type: none ;
}
.footer_nav a {
	position: relative ;
	display: block ;
	height: 40px ;
	box-sizing: border-box ;

	color: #fff ;
	font-size: 0.85rem ;
	line-height: 1 ;
	text-decoration: none ;
	padding: 14px 15px 0 10px ;
}
.footer_nav li:nth-child(1) a    { border-bottom: 1px solid #894093 ;}
.footer_nav li:nth-child(2) a    { border-bottom: 1px solid #894093 ;}
.footer_nav li:nth-child(even) a { border-left: 1px solid #894093 ;}
.footer_nav a:before {
	content:"";
	position: absolute ;
	top: 50% ;
	right: 10px ;
	display: block ;
	width: 7px ;
	height: 7px ;
	margin-top: -5px ;
	border-top: 2px solid #fff ;
	border-right: 2px solid #fff ;
	transform        : rotate(45deg);
	-webkit-transform: rotate(45deg);
}
.footer_copy {
	height: 210px ;
	box-sizing: border-box ;

	font-size: 0.9rem ;
	text-align: center ;
	background-color: #fff ;
}
.footer_copy span {
	display: block ;
}
.footer_copy_company a {
	color: #333 ;
	font-weight: bold ;
	text-decoration: none ;
}
.footer_copy_copyright {
	color: #888 ;
	font-size: 0.7rem ;
	padding-top: 8px ;
}
.footer_logo_petadpark {
	padding-top: 25px ;
	padding-bottom: 20px ;
}
.footer_logo_petadpark a {
	display: block ;
	width: 118px ;
	height: 86px ;
	text-indent: 100% ;
	background-image:url(/smp/pet/img/footer_logo-petadpark.png);
	background-position: top left ;
	background-repeat: no-repeat ;
	background-size: contain ;
	margin-left: auto ;
	margin-right: auto ;
	white-space: nowrap ;
	overflow: hidden ;
}
/* crumb list ------------- */
/* crumb touch scroll */
.crumb_footer {
	height: 30px ;
	overflow-y: hidden ;
	box-sizing: border-box ;
}
.js-crumb_footer_scroll {
	height: 50px ;
	overflow-x: auto ;
	overflow-y: hidden ;
	white-space: nowrap ;
	overflow-scrolling        : touch ;
	-webkit-overflow-scrolling: touch ;
}
.crumb_footer li {
	width: auto ;
	display: inline-block ;
}
/* crumb style */
.crumb_footer {
	background-color: #fff ;
	border-top: 1px solid #ccc ;
}
.crumb_footer ol {
	position: relative ;
	zoom: 1 ;
}
.crumb_footer ol:after {
	/* clearfix */
	content:"";
 	display: block ;
	clear: both ;
	height: 0 ;
	visibility: hidden ;
}
.crumb_footer li {
	position: relative ;
	vertical-align: top ;
	list-style-type: none ;
}
.crumb_footer li:last-child {
	margin-right: 20px ;
}
/* crumb arrow */
.crumb_footer li:after,
.crumb_footer li:before {
	content:"";
	position: absolute ;
	top: 50% ;
	display: block ;
	width: 0 ;
	height: 0 ;
	margin-top: -17px ;
	border-width: 17px 8px ;
	border-style: solid ;
	border-color: transparent ;
}
.crumb_footer li:before {
	left: 1px ;
	border-left-color: #ccc ;
}
.crumb_footer li:after {
	left: 0 ;
	border-left-color: #fff ;
}
.crumb_footer li:first-child:before,
.crumb_footer li:first-child:after {
	display: none ;
}
/* crumb link */
.crumb_footer a,
.crumb_footer span {
	position: relative ;
	display: block ;
	height: 30px ;
	white-space: nowrap ;
	box-sizing: border-box ;

	color: #333 ;
	font-size: 0.75rem ;
	text-decoration: none ;
	padding: 8px 5px 0 16px ;
}
.crumb_footer li:first-child a {
	padding-left: 10px ;
}
.crumb_footer a span {
	padding: 0 ;
}

/* contents --------------------------------------------------- */
/* special_newscast お知らせ */
#special_newscast {
	background-color: #eeddfb ;
	padding: 10px 15px ;
}
#special_newscast .title {
	font-size: 0.8rem ;
	line-height: 120% ;
	font-weight: bold ;
	list-style-type: none ;
}
#special_newscast .title .icon {
	display: none ;
}
#special_newscast .txt {
	display: none ;
	position: relative ;
	font-size: 0.75rem;
	line-height: 135% ;
	background-color: #fff ;
	border-radius: 5px ;
	padding: 8px 10px ;
	margin-top: 8px ;
	margin-bottom: 3px ;
	list-style-type: none ;
}

/* icon */
.ico-rail {
	position: relative ;
	display: inline-block ;
	width: 28px ;
	height: 28px ;
	background-color: #e31e77 ;
	border-radius: 4px ;
}
.ico-rail:before,
.ico-rail:after {
	content:"";
	position: absolute ;
	bottom: -7px ;
	display: block ;
	width: 2px ;
	height: 16px ;
	background-color: #e31e77 ;
	border-radius: 2px ;
}
.ico-rail:before {
	left: 7px ;
	transform:         rotate(45deg);
	-webkit-transform: rotate(45deg);
}
.ico-rail:after {
	right: 7px ;
	transform:         rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
.ico-rail div {
	position: relative ;
	display: block ;
	width: 22px ;
	height: 10px ;
	margin-top: 3px ;
	margin-left: 3px ;
	background-color: #fff ;
	border-radius: 2px ;
}
.ico-rail div:before,
.ico-rail div:after {
	content:"";
	position: absolute ;
	bottom: -9px ;
	display: block ;
	width: 5px ;
	height: 5px ;
	background-color: #fff ;
	border-radius: 3px ;
}
.ico-rail div:before {
	left: 0 ;
}
.ico-rail div:after {
	right: 0 ;
}
.ico-area {
	position: relative ;
	display: inline-block ;
	width: 30px ;
	height: 30px ;
	background-color: #e31e77 ;
	border-radius: 20px 20px 0 20px ;
	transform:         rotate(45deg);
	-webkit-transform: rotate(45deg);
}
.ico-area:before {
	content:"";
	position: absolute ;
	top: 8px ;
	left: 8px ;
	display: block ;
	width: 14px ;
	height: 14px ;
	background-color: #fff ;
	border-radius: 10px ;
}



/* -----------------------------------------
   最近見た物件
----------------------------------------- */
.history_last_view {
	display: none ;
	position:relative ;
	background-color: #e3e3e3 ;
	padding: 20px 30px ;
	overflow: hidden ;
}
.history_last_view_wrap {
	/* width: 985px ;*/
	height: 150px ;
	/* margin: 0 auto ;*/
}
.history_last_view_title {
	position: relative ;
	left: -15px ;
	padding-left: 30px ;
	margin-bottom: 15px ;
}
.history_last_view_title:before {
	content:"";
	position: absolute ;
	top: 50% ;
	left: 0 ;
	display: block ;
	width: 24px ;
	height: 24px ;
	margin-top: -13px ;
	background-image: url(/smp/pet/img/ico_menu_v3.png);
	background-position: 0px -408px ;
	background-repeat: no-repeat ;
	background-size: 24px auto ;
}
.history_last_view_delete {
	position: relative ;
	display: block ;
	color: #666 ;
	font-size: 0.8rem ;
	text-align: center ;
	text-decoration: none ;
	border: 1px solid #aaa ;
	border-radius: 4px ;
	padding: 12px ;
	margin-top: 10px ;
}
/* 最近見た物件 js書き出し部 */
.view_history {
	font-size: 1rem ;
}
.view_history_bk {
	width: 48% ;
	margin-right: 2% ;
	background-color: #fff ;
	box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.05);
}
.view_history_link {
	display: block ;
	color: #333 ;
	text-decoration: none ;
}
.view_history_title {
	float: none ;
	width: auto ;
	font-size: 0.8rem ;
	line-height: 130% ;
	padding: 5px 10px 0 ;
}
.view_history_img {
	width: 100% ;
	height: 80px ;
	background-position: center ;
	background-repeat: no-repeat ;
	background-size: cover ;
}
.view_history_category {
	display: inline-block ;
	font-size: 0.75rem ;
	font-weight: bold ;
	background-color: #eee ;
	padding: 3px 15px 2px ;
	margin-top: 7px ;
	margin-left: 10px ;
}
.view_history_chintai {
	color: #fff ;
	background-color: #e31e77 ;
}
.view_history_chuko-mansion {
	color: #fff ;
	background-color: #fa832b ;
}
.view_history_detail {
	font-size: 0.75rem ;
	line-height: 130% ;
	padding: 0 10px 10px ;
	list-style-type: none ;
}
.view_history_detail li {
	padding-top: 3px ;
}
.view_history_detail sup {
	font-size: 0.6rem ;
	line-height: 0 ;
	vertical-align: super ;
}
.history_last_view_next,
.history_last_view_prev {
	display: none ;
	width: 30px ;
	text-indent: 100% ;
	white-space: nowrap ;
	overflow: hidden ;
}
.history_last_view_next {
	left: -2px ;
}
.history_last_view_prev {
	right: -2px ;
}
.history_last_view .swiper-button-prev:before,
.history_last_view .swiper-button-next:before {
	width: 8px ;
	height: 8px ;
}

/* -----------------------------------------
   PC-スマホ 切り替えボタン
----------------------------------------- */
.viewmode {
	position: absolute ;
	bottom: 120px ;
	width: 100% ;
	padding: 10px 0 ;
}
.viewmode ul {
	width: 90% ;
	background-color: #fff ;
	border: 1px solid #894093 ;
	border-radius: 5px ;
	margin: 0 auto ;
	list-style-type: none ;
}
.viewmode ul:after {
	/* clearfix */
	content: "";
 	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.viewmode li {
	float: left ;
	width: 50% ;
	font-size: 75% ;
	font-weight: bold ;
	text-align: center ;
}
.viewmode li.sp {
	color: #fff ;
	background-color: #894093 ;
}
.viewmode li.pc a,
.viewmode li.sp {
	padding: 11px 0 ;
}
.viewmode li.pc a {
	display: block ;
	color: #894093 ;
	text-decoration: none ;
}
/* viewmode_v3 */
#js-sp_link-block-in_pc { display: none ;}
.viewmode_v3_wrap {
	display: table ;
	width: 90% ;
	margin: 20px auto 50px ;
}
.viewmode_v3_btn,
.viewmode_v3_reset {
	display: table-cell ;
	text-align: center ;
	vertical-align: middle ;
	border: 1px solid #bb72c5 ;
	padding: 0.8rem 0 ;
}
.viewmode_v3_btn {
	color: #fff ;
	font-size: 0.9rem ;
	font-weight: bold ;
	text-decoration: none ;
	background-color: #bb72c5 ;
	/* border-radius: 4px 0 0 4px ; */
	border-radius: 4px ;
}
.viewmode_v3_reset {
	color: #888 ;
	font-size: 0.75rem ;
	border-radius: 0 4px 4px 0 ;
	
	display: none ;
}

/* toolbar ---------------------------------------------- */
/* toolbar 表示ギミック部 */
.toolbar_wrap {
	position: fixed ;
	bottom: 0 ;
	left: 0 ;
	width: 100% ;
	z-index: 5 ;
}
.toolbar {
	position: relative ;
	display: none ;
}
.js-toolbar_up {
	animation-name				: toolbar_up ;
	-webkit-animation-name		: toolbar_up ;
    animation-duration			: 0.5s ;
    -webkit-animation-duration	: 0.5s ;
	animation-fill-mode			: forwards ;
	-webkit-animation-fill-mode	: forwards ;
}
@keyframes toolbar_up {
	0%	{ transform: translate(0%, 100%);}
	100%{ transform: translate(0%, 0%);}
}
@-webkit-keyframes toolbar_up {
	0%	{ -webkit-transform: translate(0%, 100%);}
	100%{ -webkit-transform: translate(0%, 0%);}
}
.js-toolbar_down {
	animation-name				: toolbar_down ;
	-webkit-animation-name		: toolbar_down ;
    animation-duration			: 0.5s ;
    -webkit-animation-duration	: 0.5s ;
	animation-fill-mode			: forwards ;
	-webkit-animation-fill-mode	: forwards ;
}
@keyframes toolbar_down {
	0%	{ transform: translate(0%, 0%);}
	100%{ transform: translate(0%, 100%);}
}
@-webkit-keyframes toolbar_down {
	0%	{ -webkit-transform: translate(0%, 0%);}
	100%{ -webkit-transform: translate(0%, 100%);}
}
.js-toolbar_fadein {
    animation        : toolbar_fadein 0.3s ease 0s 1 forwards;
    -webkit-animation: toolbar_fadein 0.3s ease 0s 1 forwards;
}
@keyframes toolbar_fadein {
      0% { opacity: 0 ;}
    100% { opacity: 1 ;}
}
@-webkit-keyframes toolbar_fadein {
      0% { opacity: 0 ;}
    100% { opacity: 1 ;}
}
.js-toolbar_fadeout {
    animation        : toolbar_fadeout 0.3s ease 0s 1 forwards;
    -webkit-animation: toolbar_fadeout 0.3s ease 0s 1 forwards;
}
@keyframes toolbar_fadeout {
      0% { opacity: 1 ;}
    100% { opacity: 0 ;}
}
@-webkit-keyframes toolbar_fadeout {
      0% { opacity: 1 ;}
    100% { opacity: 0 ;}
}
/* btn_jump_top */
.toolbar_jump-top-btn {
	position: absolute ;
	top: -53px ;
	right: 8px ;
	width: 20% ;
}
.toolbar_jump-top-btn a {
	position: relative ;
	display: block ;
	height: 45px ;
	box-sizing: border-box ;

	color: #fff ;
	font-size: 0.75rem ;
	text-align: center ;
	text-decoration: none ;
	background-color: rgba(0, 0, 0, 0.8);
	border-radius: 7px ;
	padding-top: 26px ;
}
.toolbar_jump-top-btn a:after {
	content:"";
	position: absolute ;
	top: 12px ;
	left: 50% ;
	display: block ;
	width: 9px ;
	height: 9px ;
	margin-left: -5px ;
	border-top: 2px solid #fff ;
	border-right: 2px solid #fff ;
	transform        : rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
/* /toolbar end */

/*----------------------------------------------------
	201505 adpark
	checkbox & radio custom style
------------------------------------------------------
	class="custom_checkbox" 配下の全ての
	input type="checkbox / radio" に反映
	selectメニューもカスタムデザイン化
	
	注意：labelはinputの直後に置くこと
	例　：○<input ～ /><label>～</label>
	　　　×<label><input ～ /></label>
----------------------------------------------------*/

/* css3非対応ブラウザ退避処理(IE8以下は普通のinputを表示) */
@media(min-width: 1px){
	.custom_checkbox input[type=radio] + label,
	.custom_checkbox input[type=checkbox] + label {
		display: inline-block ;
		position: relative ;
		line-height: 120% ;
		cursor: pointer ;
	}
	/* input radio/input checkbox 本体を非表示 */
	.custom_checkbox input[type=radio],
	.custom_checkbox input[type=checkbox] {
		display: none ;
		margin: 0 ;
	}
	/* チェックボタン表示用スペース */
	.custom_checkbox input[type=radio] + label,
	.custom_checkbox input[type=checkbox] + label {
		padding: 5px 0 5px 21px ;
	}
	/* input radio/input checkbox 枠線 */
	.custom_checkbox input[type=radio] + label::before,
	.custom_checkbox input[type=checkbox] + label::before {
		content:"";
		display: block ;
		position: absolute ;
		top: 50% ;
		left: 0 ;
		margin-top: -11px ;
		background-color: #FFF ;
		border: 2px solid #d7d7d7 ;
		box-sizing: border-box ;
		-moz-box-sizing: border-box ;
	}
	.custom_checkbox input[type=radio] + label::before {
		width: 22px ;
		height: 22px ;
		border-radius: 34px ;
	}
	.custom_checkbox input[type=checkbox] + label::before {
		width: 21px ;
		height: 21px ;
		border-radius: 3px ;
	}
	/* input radio/input checkbox チェックマーク */
	.custom_checkbox input[type=radio] + label::after,
	.custom_checkbox input[type=radio]:checked + label::after,
	.custom_checkbox input[type=checkbox] + label::after,
	.custom_checkbox input[type=checkbox]:checked + label::after {
		content:"";
		display: block ;
		position: absolute ;
		-moz-box-sizing: border-box ;
		box-sizing: border-box ;
	}
	.custom_checkbox input[type=radio] + label::after,
	.custom_checkbox input[type=radio]:checked + label::after {
		top: 50% ;
		left: 6px ;
		width: 10px ;
		height: 10px ;
		margin-top: -5px ;
		border-radius: 8px ;
	}
	.custom_checkbox input[type=radio] + label::after {
		background-color: #eee ;
	}
	.custom_checkbox input[type=radio]:checked + label::after {
		/* background-color: #fa1f3e ; 赤 */
		background-color: #ff6600 ;
	}
	.custom_checkbox input[type=checkbox] + label::after,
	.custom_checkbox input[type=checkbox]:checked + label::after {
		top: 50% ;
		left: 4px ;
		width: 13px ;
		height: 9px ;
		margin-top: -7px ;
		border-style: solid ;
		border-width: 0 0 3px 3px ;
		-webkit-transform: rotate(-45deg) ;
		-ms-transform: rotate(-45deg) ;
		transform: rotate(-45deg) ;
	}
	.custom_checkbox input[type=checkbox] + label::after {
		border-color: #e4e4e4 ;
	}
	.custom_checkbox input[type=checkbox]:checked + label::after {
		/* border-color: #fa1f3e ; 赤 */
		border-color: #ff7917 ;
	}
	/* custom select menu */
	.custom_checkbox select {
		background-image: url(/img/share/custom_select_arrow.png);
		background-position: 100% 50% ;
		background-repeat: no-repeat ;
		background-size: 22px auto ;
		padding: 7px 22px 6px 7px ;
		border: 2px solid #d7d7d7 ;
		border-radius: 3px ;
	
		appearance: none;
		-moz-appearance: none;
		-webkit-appearance: none;
	}
	.custom_checkbox select::-ms-expand {
		display: none;
	}
	:root .custom_checkbox select { padding-right: 6px \0/IE9;}
}

/* clearfixを入れる場合は↓のclassの内容を各要素に個別に指定してください
   (htmlにclass="clearfix"と書かず、cssに個別に書いてください)
.clearfix:after {
	content: "";
 	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
*/



