@charset "utf-8";
.narrow{
	max-width:600px;
	margin: auto;
}
.left{
	text-align: left;
}
.message p {
	text-indent:1.1em;
	line-height:1.3em;
	font-size:1.1em;
	color:#000;
	text-align:left;
	margin:0 1em;
	padding:0;
	vertical-align:middle;
}
img.port{
	pointer-events: none;
	user-select: none;
	-webkit-user-select: none; /* Chrome, Safari */
	-moz-user-select: none;    /* Firefox */
	-ms-user-select: none;     /* IE/Edge */
	-webkit-user-drag: none;   /* Chrome, Safari (ドラッグ防止) */
	float:left;
	margin:5px;
	border:solid 1px #09f;
	border-radius: 5px;
}
/*  ---------------------
   checkbox
 --------------------- */ 
/* チェックボックスのテキスト */
.c-checkbox__text{
  display: inline-block;
  font-size: 1.1em;
  padding-left: 40px;
  position: relative;
}

/* チェックボックスのデフォルトの状態を隠す */
input[type="checkbox"]{
  opacity:0;
  position: absolute;
}

/* チェックボックスの枠のスタイル */
input[type="checkbox"] + .c-checkbox__text::before {
	content: "";
	border: 3px solid #49c;
	background: #fff;
	display: inline-block;
	margin-right: 12px;
	width: 28px;
	height: 28px;
	position: absolute;
	top: -3px;
	left: 0;
	border-radius:10px;
}

/* チェックマークのスタイル */
input[type="checkbox"] + .c-checkbox__text::after {
  content: "";
  border-right: 3px solid #03f;
  border-bottom: 3px solid #03f;
  position: absolute;
  opacity: 0;
  transform: rotate(45deg);
  transition: all .3s;
  width: 12px;
  height: 16px;
  top: 1px;
  left: 10px;
  z-index: 1;
}

/* フォーカス時に外枠のborderの色を変更 */
input[type="checkbox"]:focus + .c-checkbox__text::before {
  border: 3px solid #fce;
}

/* チェックされた時にチェックマークを表示 */
input[type="checkbox"]:checked + .c-checkbox__text::after {
  opacity: 1;
} 
/*  ---------------------
   radio
 --------------------- */ 

/* ラジオボタンのテキスト（チェックボックと同じ） */
.c-radio__text{
	display: inline-block;
	font-size: 1.1em;
	padding-left: 40px;
	position: relative;
}

/* ラジオボタンのデフォルトの状態を隠す */
input[type="radio"]{
  opacity:0;
  position: absolute;
}

/* ラジオボタンの枠のスタイル */
input[type="radio"] + .c-radio__text::before {
  content: "";
  border: 3px solid #49c;
  background: #fff;
  border-radius: 50%;
  display: inline-block;
  margin-right: 12px;
  width: 28px;
  height: 28px;
  position: absolute;
  top: -3px;
  left: 0;
}

/* チェックのスタイル */
input[type="radio"] + .c-radio__text::after {
  content: "";
  background: #03f;
  border-radius: 50%;
  position: absolute;
  opacity: 0;
  transition: all .3s;
  width: 19px;
  height: 19px;
  top: 4px;
  left: 8px;
  z-index: 1;
}

/* フォーカス時に外枠のborderの色を変更 */
input[type="radio"]:focus + .c-radio__text::before {
  border: 3px solid #fce;
}

/* チェックされた時にチェックマークを表示 */
input[type="radio"]:checked + .c-radio__text::after {
  opacity: 1;
} 

input.text {
	width:100%;
	background:#fff;
	border:solid 3px #49c;
	border-radius: 10px; /*ボックス角の丸み*/
	font-family: sans-serif;
	padding: 5px 5px; /*ボックスを大きくする*/
	margin: 2px;
	font-size: 1.1em;
	box-sizing: border-box; /*横幅の解釈をpadding, borderまでとする*/
}
input.text:focus {
    border: 3px solid #fce;
    z-index: 10;
    outline: 0;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
    -moz-appearance:textfield;
}
input[type="text"]{
	font-size:1.1em;
	line-height:1.3em;
	padding: 5px 5px; /*ボックスを大きくする*/
	margin: 2px;
	border:2px solid #49c;
	border-radius: 10px;
}
input[type="text"]:focus {
    border: 3px solid #fce;
    z-index: 10;
    outline: 0;
}
input[type="email"]{
	font-size:1.1em;
	line-height:1.3em;
	padding: 5px 5px; /*ボックスを大きくする*/
	margin: 2px;
	border:2px solid #49c;
	border-radius: 10px;
}
input[type="email"]:focus {
    border: 3px solid #fce;
    z-index: 10;
    outline: 0;
}
textarea.text {
	font-size:1.1em;
	line-height:1.3em;
	padding: 5px 5px; /*ボックスを大きくする*/
	margin: 2px;
	border:solid 1px #49c;
	font-family: sans-serif;
	width:100%;
	height:10em;
	resize:none;
}
.p-country-name{
	display: none;
}
.p-postal-code {
	width:6em;
	height:1.4em;
}
.p-region{
	width:6em;
	height:1.4em;

}
.p-locality{
	width:10em;
	height:1.4em;
}
.p-street-address{
	width:90%;
	height:1.4em;
}
.p-extended-address{
	width:90%;
	height:1.4em;
}
.p-name{
	width:90%;
	height:1.4em;
}
.p-furigana{
	width:90%;
	height:1.4em;
}
.p-email{
	width:90%;
	height:1.4em;
}
div.buttonarea{
	width: 100%;
	text-align: center;
}
.styled {
	background-color:#eee;
	border: 2px #6786FF;
	padding: 10px 30px;
	margin: 5px;
	font-size: 1em;
	border-radius: 3px;
	box-shadow: inset 2px 2px 3px rgba(255, 255, 255, 0.6), inset -2px -2px 3px rgba(0, 0, 0, 0.6);
}
.styled:active {
    box-shadow: inset -2px -2px 3px rgba(255, 255, 255, 0.6), inset 2px 2px 3px rgba(0, 0, 0, 0.6);
}
.styled2 {
	background-color:#DCF3FF;
	border: 2px #6786FF;
    padding: 10px 30px;
	margin: 5px;
    font-size: 1em;
    border-radius: 3px;
    box-shadow: inset 2px 2px 3px rgba(255, 255, 255, 0.6), inset -2px -2px 3px rgba(0, 0, 0, 0.6);
}
.styled2:active {
    box-shadow: inset -2px -2px 3px rgba(255, 255, 255, 0.6), inset 2px 2px 3px rgba(0, 0, 0, 0.6);
}
.styled3 {
	background-color:#FFE0F2;
	border: 2px #6786FF;
    padding: 10px 30px;
	margin: 5px;
    font-size: 1em;
    border-radius: 3px;
    box-shadow: inset 2px 2px 3px rgba(255, 255, 255, 0.6), inset -2px -2px 3px rgba(0, 0, 0, 0.6);
}
.styled2:active {
    box-shadow: inset -2px -2px 3px rgba(255, 255, 255, 0.6), inset 2px 2px 3px rgba(0, 0, 0, 0.6);
}

p.kakunin {
	font-family: sans-serif;
}
