@charset "UTF-8";
/*------------------------------------------------
	脱炭素ポータル - メールフォーム
------------------------------------------------*/
/*------------------------------------------------
	Base
------------------------------------------------*/
* {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
}

body {
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴシック", "Hiragino Sans", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Noto Sans CJK JP", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 500;
	word-wrap: break-word;
	word-wrap: anywhere;
	text-align: left;
	line-height: 2;
	background: #fff;
	color: #2C2C2C;
}

main {
	font-size: 100%;
	line-height: 2;
}

@media only screen and (max-width: 767px) {
	main {
		font-size: 93.8%;
		line-height: 1.867;
	}
}

/*------------------------------------------------
	Reset
------------------------------------------------*/
body, div,
p, ul, ol, li, dl, dt, dd,
h1, h2, h3, h4, h5, h6,
table, th, td, caption,
blockquote, pre, code,
form, fieldset, legend,
input, button, select, optgroup, textarea {
	margin: 0;
	padding: 0;
}

main, header, footer, hgroup,
section, article, aside, nav,
address, figure, details {
	display: block;
	margin: 0;
	padding: 0;
}

summary {
	display: list-item;
}

img {
	border: none;
	vertical-align: middle;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

fieldset {
	border: 0;
}

abbr, acronym {
	border: 0;
	font-variant: normal;
	text-decoration: underline;
	-webkit-text-decoration: underline dotted;
	        text-decoration: underline dotted;
}

button, input {
	overflow: visible;
}

button, input[type="button"] {
	border-radius: 0;
}

button, select {
	text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/*------------------------------------------------
	Font
------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: 500;
}

table {
	font-size: 100%;
}

th, caption {
	font-weight: 500;
	text-align: left;
}

address, caption,
i, u, em, time, cite, code, dfn, var {
	font-style: normal;
}

b, strong {
	font-weight: bolder;
}

small {
	font-size: 0.875em;
}

input, button, select, optgroup, textarea {
	font-size: 100%;
	font-style: normal;
	font-family: inherit;
	font-weight: 500;
}

pre, code, kbd, samp, tt {
	font-family: monospace;
	font-size: 100%;
	line-height: 1.5;
}

/*------------------------------------------------
	Focus
------------------------------------------------*/
a:focus, button:focus, input:focus, select:focus, textarea:focus, area:focus, [tabindex]:focus {
	outline: 1px solid #008070 !important;
}

[tabindex="-1"]:focus {
	outline: none !important;
}

/*------------------------------------------------
	other
------------------------------------------------*/
hr {
	-webkit-box-sizing: content-box;
	        box-sizing: content-box;
	overflow: visible;
	height: 0;
	margin: 2em 0;
	padding: 0;
	border: 0;
	border-top: 1px solid #E0E0E0;
}

/* 隠し属性 */
template {
	display: none;
}

[hidden] {
	display: none !important;
}

/*------------------------------------------------
	Link
------------------------------------------------*/
a,
main .links a {
	-webkit-transition: background-color 0.12s ease-out, color 0.12s ease-out, border-color 0.12s ease-out, opacity 0.12s ease-out, -webkit-box-shadow 0.12s ease-out, -webkit-transform 0.12s ease-out;
	transition: background-color 0.12s ease-out, color 0.12s ease-out, border-color 0.12s ease-out, opacity 0.12s ease-out, -webkit-box-shadow 0.12s ease-out, -webkit-transform 0.12s ease-out;
	transition: background-color 0.12s ease-out, color 0.12s ease-out, border-color 0.12s ease-out, box-shadow 0.12s ease-out, opacity 0.12s ease-out, transform 0.12s ease-out;
	transition: background-color 0.12s ease-out, color 0.12s ease-out, border-color 0.12s ease-out, box-shadow 0.12s ease-out, opacity 0.12s ease-out, transform 0.12s ease-out, -webkit-box-shadow 0.12s ease-out, -webkit-transform 0.12s ease-out;
}

a:link,
main .links a:link {
	color: #326EAA;
}

a:visited,
main .links a:visited {
	color: #326EAA;
}

a:hover,
main .links a:hover {
	color: #A50;
}

a:active,
main .links a:active {
	color: #A50;
}

a[href],
main .links a[href] {
	text-decoration: underline;
}

a img {
	-webkit-transition: opacity 0.12s ease-out;
	transition: opacity 0.12s ease-out;
}

a[href]:hover img, a[href]:active img, a[href]:focus img {
	opacity: 0.75;
}

main .links li {
	color: inherit;
	font-size: 1em;
	overflow: visible;
	white-space: normal;
}

/*------------------------------------------------
	スクリーンリーダー用 (テキストの読み上げ専用)
------------------------------------------------*/
.reader {
	overflow: hidden;
	position: absolute !important;
	left: -9999px !important;
	width: 0;
	height: 0;
}

/*------------------------------------------------
	PC、タブレット、スマートフォン表示切替用
------------------------------------------------*/
.sp,
.tab,
.not-pc {
	display: none !important;
}

.pc,
.not-sp,
.not-tab {
	display: block !important;
}

@media (max-width: 1199px) {
	.sp,
	.pc,
	.not-tab {
		display: none !important;
	}
	.tab,
	.not-sp,
	.not-pc {
		display: block !important;
	}
}

@media only screen and (max-width: 767px) {
	.pc,
	.tab,
	.not-sp {
		display: none !important;
	}
	.sp,
	.not-pc,
	.not-tab {
		display: block !important;
	}
}

br.sp,
br.tab,
br.not-pc {
	display: none !important;
}

br.pc,
br.not-sp,
br.not-tab {
	display: inline-block !important;
}

@media (max-width: 1199px) {
	br.sp,
	br.pc,
	br.not-tab {
		display: none !important;
	}
	br.tab,
	br.not-sp,
	br.not-pc {
		display: inline-block !important;
	}
}

@media only screen and (max-width: 767px) {
	br.pc,
	br.tab,
	br.not-sp {
		display: none !important;
	}
	br.sp,
	br.not-pc,
	br.not-tab {
		display: inline-block !important;
	}
}

/*------------------------------------------------
	見出し
------------------------------------------------*/
main h1, main h2, main h3, main h4, main h5, main h6 {
	margin: 1.6em auto 1em;
	font-weight: bold;
}

main h1 a, main h2 a, main h3 a, main h4 a, main h5 a, main h6 a {
	color: inherit;
}

main h1 a:hover, main h1 a:active, main h1 a:focus, main h2 a:hover, main h2 a:active, main h2 a:focus, main h3 a:hover, main h3 a:active, main h3 a:focus, main h4 a:hover, main h4 a:active, main h4 a:focus, main h5 a:hover, main h5 a:active, main h5 a:focus, main h6 a:hover, main h6 a:active, main h6 a:focus {
	text-decoration: none;
}

main h1 {
	margin: 0 auto 0.786em;
	letter-spacing: 0.06em;
	font-size: 175%;
	line-height: 1.715;
}

@media only screen and (max-width: 767px) {
	main h1 {
		margin-bottom: 0.841em;
		letter-spacing: 0.03em;
		font-size: 146.7%;
		line-height: 1.455;
	}
}

main h2 {
	margin-bottom: 1em;
	font-size: 150%;
	line-height: 1.709;
}

@media only screen and (max-width: 767px) {
	main h2 {
		margin-bottom: 0.862em;
		font-size: 120%;
		line-height: 1.667;
	}
}

/*------------------------------------------------
	Clear
------------------------------------------------*/
.clearfix:after,
.container:after {
	content: "";
	display: block;
	clear: both;
	height: 0;
}

.clear {
	clear: both;
}

/*------------------------------------------------
	メインコンテンツ
------------------------------------------------*/
main p, main ul, main ol, main dl,
main table, main blockquote, main pre {
	margin: 1.5em 0;
}

@media only screen and (max-width: 767px) {
	main p, main ul, main ol, main dl,
	main table, main blockquote, main pre {
		margin: 1.063em 0;
	}
}

main .center {
	text-align: center;
}

main ul, main ol, main dl, main pre {
	text-align: left;
}

@media (max-width: 479px) {
	main p {
		text-align: left;
	}
	main p.nav, main p.center {
		text-align: center;
	}
}

main ul, main dd {
	padding-left: 2em;
}

main dt {
	font-weight: bold;
}

main p:last-child, main ul:last-child, main ol:last-child, main li:last-child, main dl:last-child, main dt:last-child, main dd:last-child,
main table:last-child, main blockquote:last-child, main pre:last-child,
main fieldset:last-child, main figure:last-child, main details:last-child {
	margin-bottom: 0 !important;
}

main p.summary {
	margin: 2em auto;
}

main h1 + p.summary {
	margin-top: 0;
}

main p.note {
	max-width: none;
	font-size: 93.8%;
}

@media only screen and (max-width: 767px) {
	main p.note {
		font-size: 93.4%;
	}
}

main strong, main em {
	font-weight: bold;
}

main strong {
	color: #D82E20;
}

@media (max-width: 1199px) {
	main img {
		max-width: 100%;
		height: auto;
	}
}

main img.ico, main img[src*="/ico"] {
	position: relative;
	vertical-align: middle;
}

main figure, main .figure {
	position: relative;
	z-index: 2;
	display: block;
}

main figure.left, main .figure.left {
	float: left;
	margin: 0 50px 10px 0;
}

main figure.right, main .figure.right {
	float: right;
	margin: 0 0 10px 50px;
}

@media (max-width: 1199px) {
	main figure.left, main .figure.left {
		margin-right: 4.5%;
	}
	main figure.right, main .figure.right {
		margin-left: 4.5%;
	}
}

@media only screen and (max-width: 767px) {
	main figure.left, main figure.right, main .figure.left, main .figure.right {
		float: none;
		margin: 0 0 1em;
		text-align: center;
	}
}

main figure img, main .figure img {
	vertical-align: bottom;
}

main details {
	padding: 0 15px 1em;
	border: 1px solid #C1C1C1;
}

main details summary {
	margin: 0 -15px;
	padding: 0.5em 15px;
	outline: 1px solid #C1C1C1;
	text-align: left;
	cursor: pointer;
	-webkit-transition: color 0.2s ease-out;
	transition: color 0.2s ease-out;
	-webkit-transition-property: color, outline-color;
	transition-property: color, outline-color;
}

main details summary:hover, main details summary:active {
	outline-color: #008070;
	color: #A50;
}

/*------------------------------------------------
	Layout
------------------------------------------------*/
.wrapper {
	position: relative;
	clear: both;
	display: block;
}

.container {
	position: relative;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	display: block;
	width: 1120px;
	margin: 0 auto;
	padding: 0;
}

@media (max-width: 1199px) {
	.container {
		width: 95%;
	}
}

@media (max-width: 767px) {
	.container {
		width: auto;
		padding-left: 2.5% !important;
		padding-right: 2.5% !important;
	}
}

@media only screen and (max-width: 767px) {
	.container {
		width: auto;
		padding-left: 24px !important;
		padding-right: 24px !important;
	}
}

@media (max-width: 479px) {
	.container {
		width: auto;
		padding-left: 18px !important;
		padding-right: 18px !important;
	}
}

/*------------------------------------------------
	Main
------------------------------------------------*/
main {
	margin: 2.375em auto 2.5em;
	min-height: 180px;
	text-align: center;
}

/*------------------------------------------------
	Contents
------------------------------------------------*/
#contents {
	width: 776px;
}

@media (max-width: 1199px) {
	#contents {
		width: 776px;
	}
}

@media (max-width: 767px) {
	#contents {
		width: auto;
	}
}

#contents:after {
	content: none;
}

/*------------------------------------------------
	ヘッダー
------------------------------------------------*/
#header {
	border-bottom: 1px solid #E3E3E3;
	background: #fff;
	color: #2C2C2C;
	text-align: center;
}

#header > .container {
	padding-top: 15px;
	padding-bottom: 15px;
}

@media (max-width: 767px) {
	#header > .container {
		display: block;
		padding-top: 6px;
		padding-bottom: 6px;
	}
}

#header a {
	color: #2C2C2C;
	text-decoration: none;
}

#header .site-title {
	position: relative;
	font-size: 150%;
	line-height: 1.167;
}

@media only screen and (max-width: 767px) {
	#header .site-title {
		font-size: 125%;
		line-height: 1.2;
	}
}

#header .site-title a {
	position: relative;
	display: inline-block;
	padding: 2px 2px 1px;
	color: #000;
	text-decoration: none;
	vertical-align: top;
}

#header .site-title a:after {
	content: none;
}

#header .site-title img {
	vertical-align: top;
}

/*------------------------------------------------
	フッター
------------------------------------------------*/
#footer {
	clear: both;
	margin-top: 4em;
	padding: 32px 0;
	border-top: 1px solid #E3E3E3;
	background: #fff;
	color: #2C2C2C;
	text-align: center;
	font-size: 93.8%;
	line-height: 1.734;
}

@media only screen and (max-width: 767px) {
	#footer {
		font-size: 87.5%;
		line-height: 1.715;
	}
}

@media only screen and (max-width: 767px) {
	#footer {
		margin-top: 1.822em;
	}
}

#footer .logo {
	margin-bottom: 0.688em;
}

#footer .logo a:after {
	content: none;
}

#footer .copyright small {
	font-size: 100%;
}

/*------------------------------------------------
	フォーム要素
------------------------------------------------*/
#main .form {
	margin: 2em auto 1.25em;
	padding: 0;
	color: #2C2C2C;
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴシック", "Hiragino Sans", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Noto Sans CJK JP", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 100%;
	line-height: 2;
}

@media only screen and (max-width: 767px) {
	#main .form {
		font-size: 100%;
		line-height: 1.867;
	}
}

#main .form p, #main .form .form-field {
	clear: both;
	margin: 1.25em auto 0;
	padding: 0;
	line-height: 2;
}

@media only screen and (max-width: 767px) {
	#main .form p, #main .form .form-field {
		line-height: 1.867;
	}
}

#main .form p span, #main .form .form-field span {
	font-weight: 500;
}

#main .form p:empty {
	display: none;
}

#main .form .form-field,
#main .form .error.no-label {
	position: relative;
	width: auto;
	padding-left: 292px;
	text-align: left;
}

#main .form .form-field:after,
#main .form .error.no-label:after {
	content: "";
	display: block;
	clear: both;
	height: 0;
}

@media only screen and (max-width: 767px) {
	#main .form .form-field,
	#main .form .error.no-label {
		padding-left: 0;
		padding-right: 0 !important;
	}
}

#main .form .error.no-label {
	margin-top: 0.625em;
}

#main .form .error {
	color: #CC4E00;
}

#main .form .form-field {
	color: #2C2C2C;
}

#main .form .form-field.pd-text {
	padding-right: 97px;
}

#main .form .form-field.pd-select {
	padding-right: 97px;
}

#main .form .form-field.pd-textarea {
	padding-right: 0px;
}

#main .form #resubscribeConfirmText.error {
	margin: 1.25em 97px;
	padding: 0.75em 1em;
	border: 1px solid #C1C1C1;
	color: #2C2C2C !important;
}

#main .form #resubscribeLink {
	font-weight: bold;
}

#main .form #resubscribeLink:after {
	content: "\a";
	white-space: pre;
}

#main .form .form-item {
	position: relative;
}

#main .form p:first-child:not(.form-field),
#main .form style:first-child + p:not(.form-field) {
	margin-bottom: 2em;
}

#main .form .form-field > label,
#main .form .field-label {
	float: left;
	position: relative;
	display: inline-block;
	width: 220px;
	margin-left: -256px;
	margin-right: 36px;
	padding: 0.688em 0 0;
	font-weight: bold;
	color: #2C2C2C;
	text-align: right;
	vertical-align: middle;
}

@media only screen and (max-width: 767px) {
	#main .form .form-field > label,
	#main .form .field-label {
		float: none;
		display: block;
		width: auto;
		margin: 0 0 0.7em;
		padding: 0;
		text-align: left;
	}
}

#main .form label.inline {
	display: inline;
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
	background: none;
	font-weight: 500;
	line-height: 2;
	line-height: inherit;
}

#main .form input.text, #main .form select, #main .form textarea {
	max-width: 100%;
	padding: 10px 16px;
	border: 1px solid #727272;
	border-radius: 3px;
	background: #fff;
	color: #2C2C2C;
	font-weight: 500;
	line-height: 1.5;
}

@media only screen and (max-width: 767px) {
	#main .form input.text, #main .form select, #main .form textarea {
		line-height: 1.6;
	}
}

@media only screen and (max-width: 767px) {
	#main .form input.text, #main .form select, #main .form textarea {
		width: 100% !important;
	}
}

#main .form input.text[readonly] {
	padding: 11px 1px;
	border-width: 0;
	outline: 0 !important;
}

#main .form .form-text {
	display: block;
	padding: 0.688em 1px;
}

#main .form input.text {
	width: 387px;
	height: 3.375em;
}

#main .form select {
	width: 387px;
	height: 3.375em;
}

#main .form textarea {
	display: block;
	width: 484px;
	height: 11.25em;
}

@media only screen and (max-width: 767px) {
	#main .form textarea {
		height: 13.334em;
	}
}

#main .form input[type="checkbox"],
#main .form input[type="radio"] {
	padding: 0;
	font-weight: 500;
}

#main .form input[type="checkbox"] + label,
#main .form input[type="radio"] + label {
	padding-left: 0.4em;
}

#main .form span.value {
	display: block;
	margin-left: 0;
	padding-top: 0.688em;
}

@media only screen and (max-width: 767px) {
	#main .form span.value {
		padding-top: 0;
	}
}

#main .form .form-field.pd-radio span.value,
#main .form .form-field.pd-checkbox span.value {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	max-width: 100%;
	width: 411px;
}

#main .form .form-field.pd-radio span.value > span,
#main .form .form-field.pd-checkbox span.value > span {
	display: block;
	min-width: 50%;
	padding-right: 24px;
}

#main .form .error input.text, #main .form .error select, #main .form .error textarea {
	border-color: #CC4E00;
	border-color: rgba(204, 78, 0, 0.5);
	-webkit-box-shadow: 0 0 5px rgba(204, 78, 0, 0.3);
	        box-shadow: 0 0 5px rgba(204, 78, 0, 0.3);
	background: #fef7f5;
}

#main .form .error input.text:focus, #main .form .error select:focus, #main .form .error textarea:focus {
	background: #fff !important;
	color: #2C2C2C !important;
}

#main .form .error input.text.changed:not(.novalue), #main .form .error select.changed:not(.novalue), #main .form .error textarea.changed:not(.novalue) {
	border-color: #727272;
	background: #fff !important;
	color: #2C2C2C !important;
	-webkit-box-shadow: none;
	        box-shadow: none;
}

#main .form .description {
	clear: both;
	display: block;
	margin-top: 0.924em;
	margin-left: 292px;
	text-align: left;
	font-size: 82.5%;
	line-height: 1.7;
}

@media only screen and (max-width: 767px) {
	#main .form .description {
		font-size: 88%;
	}
}

@media only screen and (max-width: 767px) {
	#main .form .description {
		margin-left: 0;
	}
}

#main .form .form-field .description {
	margin-left: 0;
}

#main .form .form-field.pd-text .description,
#main .form .form-field.pd-select .description {
	margin-right: -3px;
}

#main .form .form-field.pd-radio .description,
#main .form .form-field.pd-checkbox .description {
	margin-top: 0.308em;
}

#main .form .g-recaptcha {
	margin: 2.5em 0 0;
	text-align: center;
}

#main .form .g-recaptcha > div {
	margin: 0 auto !important;
}

#main .form #error_for_Recaptchapi_Recaptcha + .error.no-label {
	padding-left: 0;
	text-align: center;
}

@media (max-width: 479px) {
	#main .form #error_for_Recaptchapi_Recaptcha + .error.no-label {
		width: 20em;
		max-width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
}

#main .form .buttons,
#main .form p.submit {
	margin: 2.5em 0 2em;
	text-align: center;
}

#main .form [type="submit"],
#main .form [type="button"] {
	min-width: 280px;
}

#main .form .pd-select {
	position: relative;
}

#main .form .pd-select select {
	-webkit-appearance: none;
	-moz-appearance: none;
	     appearance: none;
}

#main .form .pd-select select::-ms-expand {
	display: none;
}

#main .form .pd-select::before,
#main .form .pd-select .form-item::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	vertical-align: middle;
	background: url("https://go.pardot.com/l/912991/2021-03-25/23cl/912991/16167260122AKt8c88/ico_select_arrow_2x.png") no-repeat center;
	background-size: contain;
	width: 1.125em;
	height: 1.125em;
	margin-top: -0.5625em;
	top: 1.125em;
	right: 16px;
	margin-top: 0;
	pointer-events: none;
}

@media only screen and (max-width: 767px) {
	#main .form .pd-select::before,
	#main .form .pd-select .form-item::before {
		width: 1.2em;
		height: 1.2em;
		margin-top: -0.6em;
	}
}

@media only screen and (max-width: 767px) {
	#main .form .pd-select::before,
	#main .form .pd-select .form-item::before {
		right: 15px;
	}
}

#main .form .pd-select::before {
	right: 113px;
}

@media only screen and (max-width: 767px) {
	#main .form .pd-select::before {
		top: 3.7em;
		right: 15px;
		margin-top: 0;
	}
}

#main .form p.errors {
	width: 95%;
	margin-bottom: 2.5em !important;
	padding: 1em;
	border: 1px solid #CC4E00;
	border-radius: 6px;
	background: #fff;
	color: #CC4E00;
}

@media only screen and (max-width: 767px) {
	#main .form p.errors {
		width: auto;
	}
}

#main .req {
	text-decoration: none;
	color: #D82E20;
}

#main .required > label,
#main .required .field-label {
	position: relative;
	background: none !important;
}

#main .required > label:after,
#main .required .field-label:after {
	content: "*";
	position: absolute;
	color: #D82E20;
	margin-left: 0.25em;
}

/*------------------------------------------------
	フォーム要素
------------------------------------------------*/
#main .form table {
	width: 776px;
	margin: 1em auto;
}

#main .form table tr.form-field {
	margin: 0;
	padding: 0 !important;
}

#main .form table tr.form-field:after {
	content: none;
}

#main .form table th, #main .form table td {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	position: relative;
	padding: 0.625em 0;
	text-align: left;
	vertical-align: top;
}

#main .form table th {
	width: 292px;
	padding-right: 36px;
	font-weight: bold;
	text-align: right;
}

#main .form table td {
	width: 484px;
}

#main .form table tr.form-field.pd-text td {
	padding-right: 97px;
}

#main .form table tr.form-field.pd-select td {
	padding-right: 97px;
}

#main .form table tr.form-field.pd-textarea td {
	padding-right: 0px;
}

#main .form table label {
	float: none;
	width: auto;
	margin-left: 0;
	margin-right: 0;
}

#main .form table .description {
	margin-left: 0;
	margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
	#main .form table {
		display: block;
		width: auto;
	}
	#main .form table tbody, #main .form table tr, #main .form table th, #main .form table td {
		display: block;
		width: auto;
		margin: 0 0 1.334em;
		padding: 0;
	}
}

#main .form table tr.pd-select::before {
	content: none;
}

#main .form tr.pd-captcha.hidden {
	display: block;
	position: relative;
	left: 0;
	width: auto;
}

#main .form tr.pd-captcha.hidden td {
	position: relative;
	left: 236px;
	display: block;
	width: auto;
	margin: 0;
	padding-bottom: 0;
	text-align: center;
}

@media only screen and (max-width: 767px) {
	#main .form tr.pd-captcha.hidden td {
		position: static;
		left: 0;
	}
}

#main .form tr.pd-captcha.hidden td .g-recaptcha {
	margin-top: 1.25em;
}

@media only screen and (max-width: 767px) {
	#main .form tr.pd-captcha.hidden td .g-recaptcha {
		margin-top: 2.667em;
	}
}

/*------------------------------------------------
	ボタン関係
------------------------------------------------*/
#main [type="submit"],
#main [type="button"] {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	display: inline-block;
	margin: 0;
	padding: 16px 2em;
	font-size: 112.5%;
	line-height: 1.667;
	border-radius: 4em;
	border: 1px solid #C1C1C1;
	background: #fff;
	color: #2C2C2C;
	text-decoration: none;
	text-shadow: none;
	text-align: center;
	vertical-align: middle;
	font-weight: bold;
	cursor: pointer;
	-webkit-transition: background-color 0.12s ease-out, color 0.12s ease-out, border-color 0.12s ease-out, -webkit-box-shadow 0.12s ease-out;
	transition: background-color 0.12s ease-out, color 0.12s ease-out, border-color 0.12s ease-out, -webkit-box-shadow 0.12s ease-out;
	transition: background-color 0.12s ease-out, color 0.12s ease-out, border-color 0.12s ease-out, box-shadow 0.12s ease-out;
	transition: background-color 0.12s ease-out, color 0.12s ease-out, border-color 0.12s ease-out, box-shadow 0.12s ease-out, -webkit-box-shadow 0.12s ease-out;
}

@media only screen and (max-width: 767px) {
	#main [type="submit"],
	#main [type="button"] {
		font-size: 106.7%;
		line-height: 1.625;
	}
}

@media only screen and (max-width: 767px) {
	#main [type="submit"],
	#main [type="button"] {
		padding: 22px 2.25em;
	}
}

@media (-ms-high-contrast: active), (-ms-high-contrast: none) {
	#main [type="submit"],
	#main [type="button"] {
		padding-top: 19px;
		padding-bottom: 13px;
	}
}

#main [type="submit"]:hover, #main [type="submit"]:active, #main [type="submit"]:focus,
#main [type="button"]:hover,
#main [type="button"]:active,
#main [type="button"]:focus {
	-webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.12);
	        box-shadow: 0 3px 6px rgba(0, 0, 0, 0.12);
}

#main [type="submit"]:focus,
#main [type="button"]:focus {
	outline: none !important;
	-webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.12), 0 0 0 1px #008070;
	        box-shadow: 0 3px 6px rgba(0, 0, 0, 0.12), 0 0 0 1px #008070;
}

#main [type="submit"] + .btn,
#main [type="button"] + .btn {
	margin-left: 0.5em;
}

#main [type="submit"] {
	border-color: #008070;
	background: #008070;
	color: #fff;
}

#main [type="submit"]:hover, #main [type="submit"]:active, #main [type="submit"]:focus {
	border-color: #155A4E;
	background: #155A4E;
	color: #fff;
}

/*------------------------------------------------
	登録
------------------------------------------------*/
.Subscribe #main .form-field.pd-text.email .description {
	margin-right: -60px;
}

@media only screen and (max-width: 767px) {
	.Subscribe #main .form-field.pd-text.email .description {
		margin-right: 0;
	}
}

/*------------------------------------------------
	登録完了
------------------------------------------------*/
/*------------------------------------------------
	配信停止
------------------------------------------------*/
.Unsubscribe #main .form .form-field.email {
	padding-left: 0;
	padding-right: 0;
	text-align: center;
}

.Unsubscribe #main .form .form-field.email .field-label {
	display: none;
}

.Unsubscribe #main .form .error.no-label {
	padding-left: 0;
	text-align: center;
}

/*------------------------------------------------
	配信停止確認
------------------------------------------------*/
/*------------------------------------------------
	配信停止完了
------------------------------------------------*/
