body {
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
	font-feature-settings: "palt" on;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.75;
	color: #151514;
}
fieldset {
	margin: 0;
	padding: 0;
	border: none;
}
input, button, textarea, select {
	margin: 0;
	padding: 0;
	border: none;
	border-radius: 0;
	outline: none;
	font-size: 1em;
}
label h3 {
	font-size: 1em;
	display: inline-block;
	margin: 0 0 0.5em;
	font-weight: bold;
}
label .badge-optional {
	display: none;
}
label .badge-required,
legend .badge-required {
	display: inline-block;
	width: auto;
	font-size: .66666em;
	line-height: 1;
	color: #fff;
	margin-left: .5em;
	padding: .25em .5em;
	background-color: #e60000;
	border-radius: .25em;
	vertical-align: .2em;
}
button {
	display: inline-block;
	padding: 0.5em 1em;
	text-align: center;
	cursor: pointer;
	border: 1px solid #6a767d;
	border-radius: 4px;
	margin: 0 0.5em 0 0;
	background-color: #fff;
}
button.button-submit {
	background-color: #316a8b;
	border: 1px solid #316a8b;
	color: #fff;
}
button.button-submit span.fa {
	margin-right: 4px;
}
/*鍵マーク消す*/
button.button-submit span.fa-lock:before {
	display:none;
}
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
textarea {
	height: auto;
	width: 100%;
	min-width: 500px;
	max-width: 100%;
	outline: none;
	line-height: 1.5;
	padding: .75em 1em;
	border: 1px solid #aaaeaf;
	transition: all 0.3s;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
textarea:focus {
	box-shadow: 0 0 2px #88c6ea;
	border: 1px solid #88c6ea;
}
textarea {
	width: 100%;
	height: 10em;
}
input[type="file"] {
	display: block;
	line-height: 1.75;
}
input[type="password"] {
	height: 1.75em;
	width: 100%;
	outline: none;
	border: 1px solid #6a767d;
	transition: all 0.3s;
}
select {
	display: block;
	width: auto;
	height: auto;
	padding: .75em 1.5em .75em 1em;
	border: 1px solid #aaaeaf;
}
a {
	color: #a59aca;
}

.container {
	max-width: 100%;
	border: 0;
}
.help-block,
.description-block {
	color: #333;
}
.help-block {
	font-size: .75em;
}
input+.description-block,
textarea+.description-block {
	font-size: .875em;
	color: #767676;
}
.form-column {
	position: relative;
	margin-bottom: 2em;
}
.form-column .label {
	width: 100%;
	font-size: 1.125em;
	margin: 0 0 .5em;
}
.form-column-heading h2 {
	font-size: 1.125em;
	font-weight: bold;
	margin: 0;
}
.button-group {
	margin-top: 2em;
	padding: 2em 0;
	border-top: 2px solid #ddd;
	text-align: center;
}
.button-group .button {
	display: inline-block;
	max-width: 280px;
	width: 100%;
	font-size: 1.125em;
	font-weight: bold;
	line-height: 1;
	color: #0069b4;
	margin: 0 .5em;
	padding: 1em;
	background: #fff;
	border: 2px solid #0069b4;
	border-radius: 3em;
}
.button-group .button.button-confirm,
.button-group .button.button-submit {
	color: #fff;
	background-color: #0069b4;
}
.button-group .help-block {
	font-size: .875em;
	margin-top: 1em;
}
.form-column-date .input-group select {
	width: auto;
	display: inline-block;
}
.form-column-calendar input {
	width: auto;
}
.form-column-zip-code-jp .input-group input {
	width: auto;
	min-width: auto;
	display: inline-block;
}
.form-column-zip-code-autofill.form-column {
	border-bottom: 0;
	margin-bottom: 0;
}
.form-column-checkbox label,
.form-column-radio label {
	position: relative;
	display: inline-block;
	margin-right: 1em;
	cursor: pointer;
}
.form-column-checkbox label input[type=checkbox],
.form-column-radio label input[type=radio] {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
}
.form-column-checkbox label input[type=checkbox]+.option-text,
.form-column-radio label input[type=radio]+.option-text {
	position: relative;
	display: inline-block;
	padding-left: 30px;
}
.form-column-checkbox label input[type=checkbox]+.option-text::before{
	display: block;
	position: absolute;
	top: 5px;
	left: 0;
	width: 18px;
	height: 18px;
	content: "";
	border: 1px solid #6a767d;
	border-radius: 4px;
}
.form-column-checkbox label input[type=checkbox]:checked+.option-text::after{
	display: block;
	position: absolute;
	top: 3px;
	left: 6px;
	width: 8px;
	height: 16px;
	content: "";
	transform: rotate(40deg);
	border-bottom: 3px solid #0069b4;
	border-right: 3px solid #0069b4;
}
.form-column-radio label input[type=radio]+.option-text::before{
	display: block;
	position: absolute;
	top: 5px;
	left: 0;
	width: 18px;
	height: 18px;
	content: "";
	border: 1px solid #6a767d;
	border-radius: 50%;
}
.form-column-radio label input[type=radio]:checked+.option-text::after{
	display: block;
	position: absolute;
	top: 8px;
	left: 3px;
	width: 12px;
	height: 12px;
	content: "";
	background: #0069b4;
	border-radius: 50%;
}
.preview-block {
	padding-top: 0;
}

/* 【入力画面】上部のテキスト表示エリア1 */
.form-column.form-column-79463fe9-02d0-4ef3-9a0b-f9d5262e9b5f {
	margin: 0 0 1em;
	padding: 0;
}
.form-column.form-column-79463fe9-02d0-4ef3-9a0b-f9d5262e9b5f .description-block {
	font-size: 1.125em;
	margin: 0;
}
.form-column.form-column-79463fe9-02d0-4ef3-9a0b-f9d5262e9b5f a {
	color: #0069b4;
	text-decoration: underline;
}

/* 【入力画面】上部のテキスト表示エリア2 */
.form-column.form-column-b7e780c1-330b-4959-9590-733f8cabc2ed {
	margin: 1.5em 0 2em;
	padding: 0 0 2em;
	border-bottom: 2px solid #ddd;
}
.form-column.form-column-b7e780c1-330b-4959-9590-733f8cabc2ed .description-block {
	margin: 0;
}
.form-column.form-column-b7e780c1-330b-4959-9590-733f8cabc2ed p.head {
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: .5em;
}
.form-column.form-column-b7e780c1-330b-4959-9590-733f8cabc2ed p.list {
	position: relative;
	font-size: .875em;
	line-height: 1.7;
	margin-top: .25em;
	padding-left: 1.5em;
}
.form-column.form-column-b7e780c1-330b-4959-9590-733f8cabc2ed p.list::before {
	position: absolute;
	top: .6em;
	left: .2em;
	width: .5em;
	height: .5em;
	content: "";
	background: #0069b4;
	border-radius: 1em;
}

/* 【入力画面】ステップ表示 */
.form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .description-block {
	display: flex;
}
.form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .form-step-item {
	flex: 1;
	height: 60px;
	background: #f5f5f5;
	font-weight: 600;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	padding-left: 10px;
}
.form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .form-step-item:after {
	content: "";
	display: block;
	position: absolute;
	z-index: 1;
	width: 44px;
	height: 44px;
	background: linear-gradient(45deg, transparent 50%, #f5f5f5 50%);
	transform: translateX(50%) rotate(45deg);
	right: 0;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	top: 0;
	bottom: 0;
	margin: auto;
}
.form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .form-step-item:first-of-type {
	z-index: 3;
}
.form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .form-step-item:nth-of-type(2) {
	z-index: 2;
}
.form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .form-step-item:last-of-type {
	z-index: 1;
}
.form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .form-step-item:last-of-type:after,
.form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .form-step-item:last-of-type:before {
	content: none;
}
#form-container .form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .form-step-item.input,
#confirmation-container .form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .form-step-item.confirm {
	background: #0069b4;
	color: #fff;
}
#form-container .form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .form-step-item.input:after,
#confirmation-container .form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .form-step-item.confirm:after {
	background: linear-gradient(45deg, transparent 50%, #0069b4 50%);
}

/* 手帳IDまたは本会員登録用番号 */
.form-column.form-column-5a0696b1-3f2a-4c31-bb2b-d32136210f87 {
	margin-bottom: .5em;
}
.form-column.form-column-648d781c-949e-4519-8e65-c07d6fda3da2 .label {
	font-size: 1em;
	font-weight: normal;
	margin-bottom: 1em;
}

/* 端末情報 */
.form-column.form-column-f1050edf-503a-47f8-84ab-255b8057ba09 {
	margin-bottom: 1em;
}

/* 端末情報の下層設問 */
.form-column.form-column-d619bd44-ef77-4491-bfe1-f58335079973,
.form-column.form-column-a370b30f-3e57-4696-a956-0c438c83b918,
.form-column.form-column-d45ba75d-b007-465c-bfdb-99ee7d639004,
.form-column.form-column-3f0a47b4-74e6-4d28-b141-9c7da8872755,
.form-column.form-column-f4fcc4b2-e138-4899-ba38-114682c8ce5c {
	padding-left: 2rem;
}

/* ■スマートフォンをご利用の方＆■パソコンをご利用の方 */
.form-column.form-column-d619bd44-ef77-4491-bfe1-f58335079973,
.form-column.form-column-3f0a47b4-74e6-4d28-b141-9c7da8872755 {
	font-size: 1.125em;
	font-weight: bold;
	margin: 1em 0 .5em;
}
.form-column.form-column-d619bd44-ef77-4491-bfe1-f58335079973 .description-block,
.form-column.form-column-3f0a47b4-74e6-4d28-b141-9c7da8872755 .description-block {
	margin: 0;
}

/* ご利用の端末のOSをご入力下さい */
.form-column.form-column-a370b30f-3e57-4696-a956-0c438c83b918 {
	margin-bottom: .5em;
}

/* ご利用の端末のOSをご入力下さい＆ご利用の端末の機種名をご入力下さい＆ご利用のブラウザをご入力下さい */
.form-column.form-column-a370b30f-3e57-4696-a956-0c438c83b918  > label,
.form-column.form-column-d45ba75d-b007-465c-bfdb-99ee7d639004  > label,
.form-column.form-column-f4fcc4b2-e138-4899-ba38-114682c8ce5c  > label {
	font-weight: normal;
	margin: 0 0 .5em;
	padding: 0;
	border: none;
}

/* お問い合わせに関する個人情報の取扱いについて */
.form-column.form-column-faf5f2f3-1c33-44df-bce8-c3daf28843f5 {
	padding-bottom: 2em;
}
.form-column.form-column-faf5f2f3-1c33-44df-bce8-c3daf28843f5 .description-block {
	height: 200px;
	font-size: 1em;
	padding: .5em 1.5em;
	border: 1px solid #ddd;
	border-radius: 5px;
	overflow: auto;
}
.form-column.form-column-faf5f2f3-1c33-44df-bce8-c3daf28843f5 .description-block p {
	margin: 1em 0;
}
.form-column.form-column-faf5f2f3-1c33-44df-bce8-c3daf28843f5 .input-group {
	position: absolute;
	bottom: 0px;
}

/* 【確認画面】上部のテキスト表示エリア1＆2、入力欄下の注釈、手帳IDまたは本会員登録用番号下のテキストを非表示 */
#confirmation-container .form-column.form-column-79463fe9-02d0-4ef3-9a0b-f9d5262e9b5f,
#confirmation-container .form-column.form-column-b7e780c1-330b-4959-9590-733f8cabc2ed,
#confirmation-container .preview-block+.description-block,
#confirmation-container .form-column.form-column-648d781c-949e-4519-8e65-c07d6fda3da2 .label {
	display: none;
}

/* 【完了画面】メッセージ */
#success-container .message-block-complete {
	padding: 1.5em;
	text-align: left;
}


@media screen and (max-width:740px) {
	
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	input[type="url"],
	textarea {
		width: 100%;
		min-width: 100%;
	}
	select {
		width: 100%;
	}
	.container {
		padding: 0;
	}
	.form-column-calendar input {
		width: auto;
		min-width: auto;
	}
	.button-group .button {
		font-size: 1em;
	}
	
	/* 【入力画面】上部のテキスト表示エリア1 */
	.form-column.form-column-79463fe9-02d0-4ef3-9a0b-f9d5262e9b5f .description-block {
		font-size: 1em;
	}
	
	/* お問い合わせに関する個人情報の取扱いについて */
	.form-column.form-column-faf5f2f3-1c33-44df-bce8-c3daf28843f5 .description-block {
		padding: .5em 1em;
	}
	
	/* 【確認画面】下部ボタン */
	#confirmation-container .button-group .button {
		width: 46%;
		margin: 0 1%;
	}
	
	/* 【入力画面】ステップ表示 */
	.form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .description-block {
		margin: 1rem 0;
	}
	.form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .form-step-item {
		text-align: left;
		padding-left: 18px;
		text-indent: -18px;
		font-size: 13px;
		height: 50px;
	}
	.form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .form-step-item:after {
		width: 36px;
		height: 37px;
		transform: translateX(50%) scaleX(.5) rotate(45deg);
	}
	.form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .form-step-item:nth-of-type(2) {
		padding-left: 25px;
	}
	.form-column.form-column-74e8080d-94ca-4cb6-b7a3-264c21e4b7fe .form-step-item:last-of-type {
		flex: 1.2;
	}
}
