@charset "utf-8";

:not(input):not(button) {
	margin: 0;
	padding: 0;
}
html, body {
	height: 100%;
}
body {
	line-height: normal;
	font-size: 14px;
	background-color: #fff;
	color: #000;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
a:focus { 
	outline: none; 
}
a {
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
a:active.link {
	color: #FF0000 !important;
	text-decoration: underline !important;
}
li {
	line-height: normal;
	list-style-type: none;
}
h1,h2,h3,h4,h5 {
	font-weight: normal;
	font-size: medium;
}
button {
	cursor: pointer;
}
img {
	border: 0;
	vertical-align: text-bottom;
}
form {
	display: inline;
}
select {
	font-size: 1.1rem;
	padding: 3px !important;
}
input {
	vertical-align: baseline;
}
input[type="text"], input[type="tel"] {
	padding: 5px !important;
}
input[type=button], input[type=submit] {
	cursor: pointer;
}
input[type="text"], input[type="password"], input[type="tel"], input[type="email"] {
	font-size: medium;
	box-sizing: border-box;
}
textarea {
	font-size: 1.1rem;
	line-height: 1.2rem;
	box-sizing: border-box;
	padding: 5px !important; 
}
.scroll-table {
	overflow: auto;
	white-space: nowrap;
}
.btn-w {
	width: 100%;
}
/* スマホの場合 */
@media screen and (max-width: 767px) {
	.pc-only {
		display: none !important;
	}
	.scroll-table-sp {
		overflow: auto;
		white-space: nowrap;
	}
	.btn-w {
		width: 100%;
	}
}
/* PCの場合 */
@media screen and (min-width: 768px) {
	.sp-only {
		display: none !important;
	}
	.btn-w {
		width: 50%;
		font-size:1.1rem;
	}
}


/* センタリング */
.centering {
	position: relative;
	overflow: hidden;
}
.centering ul {
	position: relative;
	float: left;
	left: 50%;
}
.centering ul li {
	position: relative;
	float: left;
	left: -50%;
	/*
	display: inline;
	*/
}


/* タグをデフォルト設定に戻す */
a:link.link {
	color: #0000EE !important;
	text-decoration: underline !important;
}
a:visited.link {
	color: #551A8B !important;
	text-decoration: underline !important;
}


.underline {
	text-decoration: underline !important;
}
.ofh {
	overflow: hidden !important;
}
.fleft, .fl {
	float: left !important;
}
.fright, .fr {
	float: right !important;
}
.cb, .cf, .fc, .fclear {
  clear: both !important; 
}
.cl, .flclear, .fcl, .flc, .cfl {
  clear: left !important; 
}
.cr, .frclear, .fcr, .frc, cfr {
  clear: right !important; 
}
.cn {
  clear: none !important; 
}
.nowrap {
	line-height: 1em !important;
	height: 1em !important;
	overflow: hidden !important;
}
.nodisp {
	display: none !important;
}
.hidden {
	visibility: hidden !important;
}
.inline {
	display: inline !important;
}
.block {
	display: block !important;
}
.inline-block {
	display: inline-block !important;
}
.relative {
	position: relative !important;
}
.absolute {
	position: absolute !important;
}
.nopointer {
	cursor: default !important;
}
.pointer {
	cursor: pointer !important;
}
.bold {
	font-weight: bold !important;
}
.normal {
	font-weight: normal !important;
}
.border-white {
	border-bottom: 1px solid #FFF !important;
}
.border-black {
	border-bottom: 1px solid #000 !important;
}
.ttl {
	font-weight: bold !important;
}


/* color */
.red {
	color: #F00 !important;
}
.black {
	color: #000 !important;
}
.white {
	color: #FFF !important;
}
.blue {
	color: #0F0 !important;
}
.yellow {
	color: #FF0 !important;
}

.bgRed {
	color: #FFF !important;
	background-color: #F00 !important;
}
.bgBlack {
	color: #FFF !important;
	background-color: #F00 !important;
}
.bgBlue {
	color: #FFF !important;
	background-color: #0F0 !important;
}
.bgSkyBlue {
	color: #FFF !important;
	background-color: #66F !important;
}
.bgYellow {
	color: #000 !important;
	background-color: #FF0 !important;
}
.bgGray {
	color: #FFF !important;
	background-color: #666 !important;
}
.bgGray2 {
	color: #FFF !important;
	background-color: #999 !important;
}
.bgGray3 {
	color: #FFF !important;
	background-color: #CCC !important;
}


/* border */
.noborder, .nb {
	border: 0 !important;
}
.noborderTop, .nbt {
	border-top: 0 !important;
}
.noborderBottom, .nbb {
	border-bottom: 0 !important;
}
.noborderRight, .nbr {
	border-right: 0 !important;
}
.noborderLeft, .nbr {
	border-left: 0 !important;
}


/* margin */
.nomargin, .nm, .m0 {
	margin: 0 !important;
}
.nomarginTop, .nmt, .mt0 {
	margin-top: 0 !important;
}
.nomarginBottom, .nmb, .mb0 {
	margin-bottom: 0 !important;
}
.nomarginRight, .nmr, .mr0 {
	margin-right: 0 !important;
}
.nomarginLeft, nml, .ml0 {
	margin-left: 0 !important;
}
.mt2 {
	margin-top: 2px !important;
}
.mt5 {
	margin-top: 5px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mb2 {
	margin-bottom: 2px !important;
}
.mb5 {
	margin-bottom: 5px !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mb50 {
	margin-bottom: 50px !important;
}
.mr2 {
	margin-right: 2px !important;
}
.mr5 {
	margin-right: 5px !important;
}
.mr10 {
	margin-right: 10px !important;
}
.mr20 {
	margin-right: 20px !important;
}
.ml2 {
	margin-left: 2px !important;
}
.ml5 {
	margin-left: 5px !important;
}
.ml10 {
	margin-left: 10px !important;
}
.ml20 {
	margin-left: 20px !important;
}


/* padding */
.nopadding, np {
	padding: 0 !important;
}
.nopadding-top, .npt {
	padding-top: 0 !important;
}
.nopadding-bottom, .npb {
	padding-bottom: 0 !important;
}
.nopadding-right, .npr {
	padding-right: 0 !important;
}
.nopadding-left, .npl {
	padding-left: 0 !important;
}
.pt5 {
	padding-top: 5px !important;
}
.pt10 {
	padding-top: 10px !important;
}
.pt20 {
	padding-top: 20px !important;
}
.pb5 {
	padding-bottom: 5px !important;
}
.pb10 {
	padding-bottom: 10px !important;
}
.pb20 {
	padding-bottom: 20px !important;
}
.pr5 {
	padding-right: 5px !important;
}
.pr10 {
	padding-right: 10px !important;
}
.pr20 {
	padding-right: 20px !important;
}
.pl5 {
	padding-left: 5px !important;
}
.pl10 {
	padding-left: 10px !important;
}
.pl20 {
	padding-left: 20px !important;
}


/* font-size */
.xxsmall {
	font-size: xx-small !important;
}
.xsmall {
	font-size: x-small !important;
}
.small {
	font-size: small !important;
}
.medium {
	font-size: medium !important;
}
.large {
	font-size: large !important;
}
.xlarge {
	font-size: x-large !important;
}
.xxlarge {
	font-size: xx-large !important;
}
.f8 {
	font-size: 8px !important;
}
.f9 {
	font-size: 9px !important;
}
.f10 {
	font-size: 10px !important;
}
.f11 {
	font-size: 11px !important;
}
.f12 {
	font-size: 12px !important;
}
.f14 {
	font-size: 14px !important;
}
.f16 {
	font-size: 16px !important;
}
.f18 {
	font-size: 18px !important;
}
.f20 {
	font-size: 20px !important;
}
.f22 {
	font-size: 22px !important;
}
.f24 {
	font-size: 24px !important;
}
.f30 {
	font-size: 30px !important;
}
.f36 {
	font-size: 36px !important;
}
.f38 {
	font-size: 38px !important;
}
.f40 {
	font-size: 40px !important;
}

/* width */
.xxxshort {
	width: 30px !important;
}
.xxshort {
	width: 50px !important;
}
.xshort {
	width: 100px !important;
}
.short {
	width: 150px !important;
}
.middle {
	width: 200px !important;
}
.long {
	width: 300px !important;
}
.xlong {
	width: 400px !important;
}
.xxlong {
	width: 500px !important;
}
.xxxlong {
	width: 600px !important;
}
.w20p {
	width: 20% !important;
}
.w30p {
	width: 30% !important;
}
.w40p {
	width: 40% !important;
}
.w50p {
	width: 50% !important;
}
.w60p {
	width: 60% !important;
}
.w70p {
	width: 70% !important;
}
.w80p {
	width: 80% !important;
}
.w90p {
	width: 90% !important;
}
.w100p {
	width: 100% !important;
}
.w10 {
	width: 10px !important;
}
.w20 {
	width: 20px !important;
}
.w30 {
	width: 30px !important;
}
.w40 {
	width: 40px !important;
}
.w50 {
	width: 50px !important;
}
.w60 {
	width: 60px !important;
}
.w70 {
	width: 70px !important;
}
.w80 {
	width: 80px !important;
}
.w90 {
	width: 90px !important;
}
.w100 {
	width: 100px !important;
}
.w110 {
	width: 110px !important;
}
.w120 {
	width: 120px !important;
}
.w130 {
	width: 130px !important;
}
.w140 {
	width: 140px !important;
}
.w150 {
	width: 150px !important;
}
.w160 {
	width: 160px !important;
}
.w170 {
	width: 170px !important;
}
.w180 {
	width: 180px !important;
}
.w190 {
	width: 190px !important;
}
.w200 {
	width: 200px !important;
}
.w250 {
	width: 250px !important;
}
.w300 {
	width: 300px !important;
}
.w350 {
	width: 350px !important;
}
.w400 {
	width: 400px !important;
}
.w450 {
	width: 450px !important;
}
.w500 {
	width: 500px !important;
}
.w550 {
	width: 550px !important;
}
.w600 {
	width: 600px !important;
}
.w650 {
	width: 650px !important;
}
.w700 {
	width: 700px !important;
}
.w750 {
	width: 750px !important;
}
.w800 {
	width: 800px !important;
}

/* height */
.h5 {
	height: 5px !important;
}
.h10 {
	height: 10px !important;
}
.h20 {
	height: 20px !important;
}
.h30 {
	height: 30px !important;
}
.h40 {
	height: 40px !important;
}
.h50 {
	height: 50px !important;
}
.h60 {
	height: 60px !important;
}
.h70 {
	height: 70px !important;
}
.h80 {
	height: 80px !important;
}
.h90 {
	height: 90px !important;
}
.h100 {
	height: 100px !important;
}
.h120 {
	height: 120px !important;
}
.h150 {
	height: 150px !important;
}
.h200 {
	height: 200px !important;
}
.h250 {
	height: 250px !important;
}
.h300 {
	height: 300px !important;
}
.h350 {
	height: 350px !important;
}
.h400 {
	height: 400px !important;
}
.h450 {
	height: 450px !important;
}
.h500 {
	height: 500px !important;
}


/* line-height */
.lhn {
	line-height: normal !important;
}
.lh100p {
	line-height: 100% !important;
}
.lh110p {
	line-height: 110% !important;
}
.lh120p {
	line-height: 120% !important;
}
.lh130p {
	line-height: 130% !important;
}
.lh140p {
	line-height: 140% !important;
}
.lh150p {
	line-height: 150% !important;
}
.lh200p {
	line-height: 200% !important;
}

/* text-align */
.left {
	text-align: left !important;
}
.center {
	text-align: center !important;
}
.right {
	text-align: right !important;
}


.errMsg {
	color: #F00 !important;
	margin: 0 0 5px !important;
}
.msg {
	margin: 0 0 5px !important;
}
.result {
	margin: 0 0 5px !important;
}
.com {
	margin: 0 0 5px !important;
}


/* clearfix */
.clearfix: after {
  content: "."; 
  display: block; 
  height: 0; 
	line-height: 0;
  clear: both; 
  visibility: hidden;
}

.clearfix {
	display: inline-block;
}

/* Dreamweaverバグ用 */
.clearfix {
	overflow:hidden;
}

/* MacIE用 */
*+html .clearfix { height: 1%; }
* html .clearfix { height: 1%; }
.clearfix { display: block; }



/* ulデフォルト */
ul.default {
	margin: 0 0 20px;
}
ul.default li {
	margin: 0 0 5px;
}

/* ulデフォルト(行間大) */
ul.default2 {
	margin: 0 0 20px;
}
ul.default2 li {
	margin: 0 0 10px;
}

/* dlデフォルト */
dl.default {
	margin: 0 0 20px;
}
dl.default dt {
	margin: 0 0 2px;
}
dl.default dd {
	margin: 0 0 10px;
}


/* テーブルリスト(縦線なし) */
table.list {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px solid #000;
	border-left: 1px solid #000;
	border-right: 1px solid #000;
	margin: 0 0 20px;
}
table.list tr {
	border-bottom: 1px solid #000;
}
table.list tr:nth-child(odd) {
	/*
	background-color: #efefef;
	*/
}
table.list th, table.list td {
	padding: 5px;
	font-size: 14px;

}
table.list th {
	background-color: #999999;
	color: #FFF;
	text-align: center;
}
table.list td {
	text-align: left;
}


/* テーブルリスト(縦線あり) */
table.list2 {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px solid #000;
	border-left: 1px solid #000;
	margin: 0 0 20px;
}
table.list2 tr {
	border-bottom: 1px solid #000;
}
table.list2 tr:nth-child(odd) {
	/*
	background-color: #efefef;
	*/
}
table.list2 th, table.list2 td {
	border-right: 1px solid #000;
	padding: 6px;
	font-size: 14px;
}
table.list2.smaill th, table.list2.small td {
	padding: 5px 2px;
	margin: 0;
	font-size: 12px;
	line-height: 1.2em;
}
table.list2.center td {
	text-align: center;
}
table.list2 th {
	background-color: #999999;
	color: #FFF;
	text-align: center;
}
table.list2 td {
	text-align: left;
}

/* テーブルリスト(フォームなど 縦にth) */
table.list3.th20 th {
	width: 20%;
}
table.list3.default th {
	color: #FFFFFF!important;
	background-color: #FF0000 !important;
}
table.list3 {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px solid #000;
	border-left: 1px solid #000;
	margin: 0 0 20px;
}
table.list3 tr {
	border-bottom: 1px solid #000;
}
table.list3 tr:nth-child(odd) {
	/*
	background-color: #efefef;
	*/
}
table.list3 th, table.list3 td {
	padding: 5px;
	font-size: 14px;
	border-right: 1px solid #000;
}
table.list3 th {
	width: 30%;
	background-color: #999999;
	color: #FFF;
	text-align: left;
	vertical-align: middle;
}
table.list3 th.memberBg {
	background-color: #666666;
}
table.list3 th.kokyakuBg {
	background-color: #333333;
}
table.list3 td {
	width: 70%;
	color: #000;
	text-align: left;
}
table.list3.bg01 th {
	color: #000;
	background-color: #ffcc99;
}

/* ボタン風チェックボックス */
.like_btn label {
    cursor: pointer;
    padding: 5px;
    background: lightgray;
    border: 1px solid #aaa;
    border-radius: 3px;
}
.like_btn input, .like_btn input {
    display: none;
}
.like_btn:not(.red) input:checked + label {
    color: white;
    background: blue;
}
.like_btn.red input:checked + label {
    color: white;
    background: red;
}
.like_btn input:disabled + label {
    color: white;
    background: lightgray;
}

