@charset "utf-8";

* {
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","メイリオ", Meiryo, Osaka,"ＭＳ Ｐゴシック", "MS PGothic",sans-serif;}
*, *: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;}
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
	display:block;}
ol, ul {
	list-style: none;
	list-style-type: none;}
address {
	font-style: normal;}
table{
	margin: 0 auto;
	table-layout: fixed;
	border-collapse: collapse;
	border-spacing: 0;}
th,td{
	font-weight: normal;
	word-wrap: break-word;
	overflow-wrap: break-word;}
a {
	margin:0;
	padding:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	color: inherit;
	font-family: inherit;
	text-decoration: none;}
abbr[title], dfn[title] {
	border-bottom:1px dotted;
	cursor:help;}
del {
	text-decoration: line-through;}
hr {
	display:block;
	height:1px;
	border:0;  
	border-top:1px solid #cccccc;
	margin:1em 0;
	padding:0;}
img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
	font-size: 0;
	line-height: 1;}
p,dd,td,li,th {
	color: #4d4d4d;}
sup {
	vertical-align: middle;}
span, label, small {
	color: inherit;}
h1, h2, h3, h4, h5, h6 {
	font-weight: normal;}

input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;}

label input[type="checkbox"],
label input[type="radio"] {
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -100;
	width: 100%;
	height: 100%;}
label input[type="checkbox"] + span,
label input[type="radio"] + span {
	padding: 5px;
	padding-left: 26px;
	color: #666;
	position: relative;}
label input[type="checkbox"] + span::before{
	content: "";
	display: block;
	position: absolute;
	top: 3px;
	left: 0;
	width: 20px;
	height: 20px;
	background-color: #ddd;
	border-radius: 3px;}
label input[type="checkbox"] + span::after {
	content: "";
	display: block;
	position: absolute;
	top: 5px;
	left: 7px;
	width: 7px;
	height: 14px;
	transform: rotate(40deg);
	border-bottom: 3px solid #fff;
	border-right: 3px solid #fff;}
label input[type="checkbox"]:checked + span {
	color: #000;}
label input[type="checkbox"]:checked + span::before {
	background-color: #2a5b89;}
label input[type="checkbox"]:focus + span::before {
	border: 1px solid #3498db;}
label input[type="checkbox"]:disabled + span {
	color: #ccc;}
label input[type="checkbox"]:disabled + span::before{
	border-color: #ccc;
	background-color: #ddd;}

label input[type="radio"] + span::before {
	content: "";
	display: block;
	position: absolute;
	top: 3px;
	left: 0;
	width: 20px;
	height: 20px;
	background-color: #ddd;
	border-radius: 50%;}
label input[type="radio"] + span::after {
	content: "";
	display: block;
	position: absolute;
	top: 6px;
	left: 3px;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background-color: #fff;}
label input[type="radio"]:checked + span::after {
	border: solid 3px #fff;
	background-color: transparent;}
label input[type="radio"]:checked + span {
	color: #000;}
label input[type="radio"]:checked + span::before {
	background-color: #2a5b89;}
label input[type="radio"]:focus + span::before {
	border: 1px solid #3498db;}
label input[type="radio"]:disabled + span {
	color: #ccc;}
label input[type="radio"]:disabled + span::before{
	border-color: #ccc;
	background-color: #ddd;}

::-webkit-input-placeholder{
	color: #cccccc;}
::-moz-placeholder{
	color: #aaaaaa;}
:-moz-placeholder{
	color: #aaaaaa;}
input:-ms-input-placeholder,
:-ms-input-placeholder{
	color: #cccccc;}

input[type="submit"],
input[type="button"] {
	border: none;
	cursor: pointer;
	background-color: #2a5b89;
	font-size: 1.8rem;
	color: #fff;
	display: inline-block;
	padding: .5em 40px;
	border-radius: 3px;}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
	display: none;}
input[type="submit"]:focus,
input[type="button"]:focus {
	outline-offset: -2px;}
input[type="submit"]:disabled,
input[type="button"]:disabled {
	background-color: #ccc;}
button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;}

textarea,
input[type="text"],
input[type="tel"],
input[type="date"],
input[type="email"],
input[type="number"],
input[type="password"],
select {
	color: #4b4b4b;
	border-radius: 5px;
	border: solid 1px #ddd;
	padding: 5px;}
textarea:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
input[type="password"]:focus,
select:focus {
	border: 1px solid #3498db;}

/*
font-size
*/
html {
	font-size: 62.5%;}
body {
	-webkit-text-size-adjust: 100%;
	line-height: 1.8;
	font-size: 1.6rem;}
small {
	font-size: 1.4rem;}

@media only screen and (max-width: 767px){
body {
	font-size: 1.4rem;}
small {
	font-size: 1.2rem;}}
