/*----------------------------------------------------
|
|	TAG
|	--------------------------------------------------
|	TAG基本デザイン CSS SETTING
|	--------------------------------------------------
|	AUTHOR	: 
|
-----------------------------------------------------*/

/***********************************
**
**	SECTION SETTING
**	--------------------------------
**	SET
**
***********************************/

section{
	margin: 0;
	padding: 0;
	border: none;
	clear: both;
}


/***********************************
**
**	DIV / P CLASS SETTING
**	--------------------------------
**	SET
**
***********************************/

/* DIV */
div{
	white-space: -moz-pre-wrap; /* Mozilla */
	word-wrap: break-word;      /* IE 5.5+ */
	word-break: break-all;
	margin: 0;
	padding: 0;
}


/* p */
p{
	white-space: -moz-pre-wrap; /* Mozilla */
	word-wrap: break-word;      /* IE 5.5+ */
	word-break: break-all;
	margin: 0;
	padding: 0;
}


/***********************************
**
**	UL LI CLASS SETTING
**	--------------------------------
**	list style -> none
**
***********************************/

ul{
	margin: 0;
	padding: 0;
	border: none;
	list-style-type: none;
}

li{
	margin: 0;
	padding: 0;
	border: none;
	list-style-type: none;
}


/***********************************
**
**	IMAGE TAG
**
***********************************/

img{
	vertical-align: bottom;
	/* 画像保存禁止 */
	user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
	-webkit-user-select:none;
	-khtml-user-select:none;
	-webkit-user-drag: none;
	-khtml-user-drag: none;
	touch-callout:none;
	-webkit-touch-callout:none;
	-moz-touch-callout:none;
	border: 0px;
}



/***********************************
**
**	FORM TAG
**
***********************************/

form{
    display: inline;
}



/***********************************
**
**	i
**
***********************************/

i{
	margin-left: 3px;
	margin-right: 3px;
}


/***********************************
**
**	dl
**
***********************************/

dl dt dd{
	margin: 0px;
	padding: 0px;
	list-style-type: none;
}



/***********************************
**
**	PRE SETTING
**	--------------------------------
**	SET
**
***********************************/

pre{
	margin: none;
	background-color: #000000;
	color: #FFFFFF;
}



/***********************************
**
**	HR TAG CLASS
**
***********************************/

hr{
	height: 0px;
	border: none;
	border-top: 1px solid #CCCCCC;
}



/***********************************
**
**	FONT TAG
**
***********************************/

h1,h2,h3,h4,h5,h6{
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	list-style-type: none;
}

h2{
	font-size: 140%;
	font-weight: bold;
	padding: 5px 0 15px;
}

h3{
	font-size: 120%;
	padding: 5px 0 12px;
}

h4{
	padding: 5px 0 8px;
}


/***********************************
**
**	INPUT TAG CLASS SETTING
**	--------------------------------
**	
**
***********************************/

button,input,select,textarea{
	margin:0;
	vertical-align:middle;
}

label,input,button,select{
	font-weight: normal;
}

textarea{
	height: auto;
	font-size:100%;
	font-weight:normal;
	line-height:24px;
}

input,button,select,textarea{
	font-family:"Helvetica Neue",
	Helvetica,Arial,sans-serif;
}

select,textarea,input[type="text"],input[type="password"]{
	display: inline-block;
	font-size:120%;
	color:#555555;
	border: 1px solid #CCCCCC;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	border-radius:3px;
	-webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);
	-moz-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);
	box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);
	-webkit-transition:border linear 0.2s,box-shadow linear 0.2s;-moz-transition:border linear 0.2s,box-shadow linear 0.2s;
	-ms-transition:border linear 0.2s,box-shadow linear 0.2s;
	-o-transition:border linear 0.2s,box-shadow linear 0.2s;
	transition:border linear 0.2s,box-shadow linear 0.2s;
}

textarea,input[type="text"],input[type="password"]{
	background-color:#FFFFFF;
	border: 1px solid #CCCCCC;
}

textarea:focus,input[type="text"]:focus,input[type="password"]:focus{
	background-color: rgb(233, 238, 242);
	border-color:rgba(82, 168, 236, 0.8);
	outline:0;
	outline:thin dotted \9;
	-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6);
	-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6);
	box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6);
}

input[type="radio"],input[type="checkbox"]{
	margin: 3px 0;
	*margin-top:0;
	line-height:normal;
	cursor:pointer;
}

input[type="reset"],input[type="button"],input[type="radio"],input[type="checkbox"]{
	width:auto;
}

select,input[type="file"]{
	height:28px;
	*margin-top:4px;
	line-height:28px;
}

select{
    display: inline;
	font-size: 100%;
	vertical-align:middle;
	border:1px solid #bbb;
}

select[multiple],select[size]{
	height:auto;
}

.radio{
	min-height:18px;
	padding-left:18px;
}

body ::-webkit-input-placeholder {
	color: #bbb;
}

body ::-moz-placeholder {
	color: #bbb;
	opacity: 1;
}

body :-ms-input-placeholder {
	color: #bbb;
}



/***********************************
**
**	INPUT TAG CLASS
**
***********************************/

/* DEFAULT TAGS */
input[type="text"]{
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,Verdana,'ＭＳ Ｐゴシック',sans-serif;
	width: 100%;
	padding: 10px;
	height: 50px;
	line-height: 50px;
}

input[type="password"]{
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,Verdana,'ＭＳ Ｐゴシック',sans-serif;
	width: 100%;
	padding: 10px;
	height: 50px;
	line-height: 50px;
}

input[type="image"]{
	margin: 0px;
	padding: 0px;
	border: none;
    display: inline;
}


input[type="file"]{
	font-size: 12px;
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,Verdana,'ＭＳ Ｐゴシック',sans-serif;
	margin-top: 2px;
	padding: 2px;
	border: 1px solid #CCCCCC;
}

textarea{
	width: 80%;
	height: 150px;
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,Verdana,'ＭＳ Ｐゴシック',sans-serif;
	margin-top: 2px;
	padding: 10px;
	border: 1px solid #CCCCCC;
}

select{
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,Verdana,'ＭＳ Ｐゴシック',sans-serif;
	background-color: #FFFFFF;
	width: calc(100% - 5px);
	height: 50px;
	padding-left: 5px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: url(/images/selecter-arrow.png) right 50% no-repeat, -webkit-linear-gradient(top, #FFFFFF 0%,#FFFFFF 100%);
	background: url(/images/selecter-arrow.png) right 50% no-repeat, linear-gradient(to bottom, #FFFFFF 0%,#FFFFFF 100%);
	background-size: 20px, 100%;
}

select::-ms-expand {
	display: none;
}

select:focus,input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{
	outline:thin dotted #333;
	outline:5px auto -webkit-focus-ring-color;
	outline-offset:-2px;
}

input:focus:required:invalid,textarea:focus:required:invalid,select:focus:required:invalid{
	color:#b94a48;
	border-color:#ee5f5b;
}

input:focus:required:invalid:focus,textarea:focus:required:invalid:focus,select:focus:required:invalid:focus{
	border-color:#e9322d;
	-webkit-box-shadow:0 0 6px #f8b9b7;
	-moz-box-shadow:0 0 6px #f8b9b7;
	box-shadow:0 0 6px #f8b9b7;
}

input[type="checkbox"]{
	display: none;
}

option {
	color: #333;
}


/***********************************
**
**	CHECKBOX
**
***********************************/

.checkSheet {
	-webkit-transition: background-color 0.2s linear;
	transition: background-color 0.2s linear;
	position: relative;
	display: inline-block;
	padding: 0 0 0 30px;
	vertical-align: middle;
	cursor: pointer;
}

.checkSheet:hover:after {
	border-color: #0171bd;
}

.checkSheet:after {
	-webkit-transition: border-color 0.2s linear;
	transition: border-color 0.2s linear;
	position: absolute;
	top: 50%;
	left: 0px;
	display: block;
	margin-top: -10px;
	width: 18px;
	height: 18px;
	border: 2px solid #ccc;
	border-radius: 6px;
	content: '';
}

.checkSheet:before {
	-webkit-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
	position: absolute;
	top: 50%;
	left: 7px;
	display: block;
	margin-top: -9px;
	width: 7px;
	height: 13px;
	border-right: 3px solid #0171bd;
	border-bottom: 3px solid #0171bd;
	content: '';
	opacity: 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

input[type="checkbox"]:checked + .checkSheet:before {
	opacity: 1;
}


.boxCheckSheet {
	-webkit-transition: background-color 0.2s linear;
	transition: background-color 0.2s linear;
	position: relative;
	display: inline-block;
	padding: 0 0 0 30px;
	vertical-align: middle;
	cursor: pointer;
}

.boxCheckSheet:hover:after {
	border-color: #0171bd;
}

.boxCheckSheet:after {
	-webkit-transition: border-color 0.2s linear;
	transition: border-color 0.2s linear;
	position: absolute;
	top: 10px;
	right: 10px;
	background-color: #FFFFFF;
	display: block;
	margin-top: -10px;
	width: 18px;
	height: 18px;
	border: 2px solid #FFFFFF;
	border-radius: 6px;
	content: '';
}

.boxCheckSheet:before {
	-webkit-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
	position: absolute;
	top: 10px;
	right: 17px;
	display: block;
	margin-top: -9px;
	width: 7px;
	height: 13px;
	border-right: 3px solid #0099FF;
	border-bottom: 3px solid #0099FF;
	content: '';
	opacity: 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	z-index: 999;
}

input[type="checkbox"]:checked + .boxCheckSheet:before {
	opacity: 1;
}


/***********************************
**
**	RADIO
**
***********************************/

.radio{
	display: none;
}

.radio + label{
	padding-left: 20px;
	position: relative;
	margin-right: 20px;
}

.radio + label::before{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 15px;
	height: 15px;
	border: 1px solid #999;
	border-radius: 50%;
}

.radio:checked + label{
	color: #009a9a;
}

.radio:checked + label::after{
	content: "";
	display: block;
	position: absolute;
	top: 3px;
	left: 3px;
	width: 11px;
	height: 11px;
	background: #009a9a;
	border-radius: 50%;
}



/***********************************
**
**	TEXT
**
***********************************/

input.text-20{
	width: 20px;
}

input.text-30{
	width: 30px;
}

input.text-40{
	width: 40px;
}

input.text-50{
	width: 50px;
}

input.text-60{
	width: 60px;
}

input.text-80{
	width: 80px;
}

input.text-100{
	width: 100px;
}

input.text-120{
	width: 120px;
}

input.text-150{
	width: 150px;
}

input.text-200{
	width: 200px;
}

input.text-250{
	width: 250px;
}

input.text-300{
	width: 300px;
}

input.text-350{
	width: 350px;
}

input.text-80per{
	width: 80%;
}

input.text-full{
	width: 100%;
}

input.text-num{
	ime-mode: disabled;
}

input.text-center{
    text-align: center;
}

input.text-right{
    text-align: right;
}

input.text-center::placeholder{
    text-align: center;
}

input.text-right::placeholder{
    text-align: right;
}

input.text-year{
	width: 100px;
    text-align: placeholder;
	ime-mode: disabled;
}

input.text-month{
	width: 60px;
    text-align: center;
	ime-mode: disabled;
}

input.text-year::placeholder{
    text-align: left;
}

input.text-month::placeholder{
    text-align: center;
}



/***********************************
**
**	ALL DISABLED
**
***********************************/

.disabled input , .disabled radio , .disabled label{
	pointer-events : none;
    -ms-user-select: text;
    -webkit-user-select: auto;
    -moz-user-select: text;
}



/***********************************
**
**	RADIO / SELECTER
**
***********************************/

/* SELECTOR */
.radioSelect input {
	display: none;
}
.radioSelect label{
	display: block;
	float: left;
	cursor: pointer;
	width: 60px;
	margin: 0;
	padding: 10px;
	background: #FFFFFF;
	color: #66CCFF;
	font-size: 16px;
	text-align: center;
	line-height: 1;
	transition: .2s;
	border: 1px solid #66CCFF;
}
.radioSelect label:first-of-type{
	border-radius: 3px 0 0 3px;
}
.radioSelect label:last-of-type{
	border-radius: 0 3px 3px 0;
}
.radioSelect input[type="radio"]:checked + .switch-on {
	background-color: #66CCFF;
	color: #FFFFFF;
}
.radioSelect input[type="radio"]:checked + .switch-off {
	background-color: #66CCFF;
	color: #FFFFFF;
}


