@charset "utf-8";

@font-face {
	font-family: 'Typicons';
	src: url('https://nenga.aisatsujo.jp/sp/common/fonts/typicons-regular-webfont.eot');
	src: url('https://nenga.aisatsujo.jp/sp/common/fonts/typicons-regular-webfont.eot?#iefix') format('embedded-opentype'),
		url('https://nenga.aisatsujo.jp/sp/common/fonts/typicons-regular-webfont.woff') format('woff'),
		url('https://nenga.aisatsujo.jp/sp/common/fonts/typicons-regular-webfont.ttf') format('truetype'),
		url('https://nenga.aisatsujo.jp/sp/common/fonts/typicons-regular-webfont.svg#TypiconsRegular') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'FontAwesome';
	src: url('https://nenga.aisatsujo.jp/sp/common/fonts/fontawesome-webfont.eot');
	src: url('https://nenga.aisatsujo.jp/sp/common/fonts/fontawesome-webfont.eot?#iefix') format('embedded-opentype'),
		url('https://nenga.aisatsujo.jp/sp/common/fonts/fontawesome-webfont.woff') format('woff'),
		url('https://nenga.aisatsujo.jp/sp/common/fonts/fontawesome-webfont.ttf') format('truetype'),
		url('https://nenga.aisatsujo.jp/sp/common/fonts/fontawesome-webfont.svg#TypiconsRegular') format('svg');
	font-weight: normal;
	font-style: normal;
}

/* 共通設定
========================================================================== */
:root{ 
	--color-main: #ED6B00;
	--color-important: #D70C18;
	--color-caution: #FFFCB7;
	--color-text: #333;
	--color-btn-main: #FF9600;
	--color-btn-sub: #6FB92C;
	--color-border-normal: #EEEEEE;
	--color-border-bold: #CCCCCC;
	--color-company: #1C2F61;
}
* {
	box-sizing: border-box;
}
html {
	height: 100%;
}
body {
	margin:0;
	padding: 0;
  height: 100%;
  font-family: "BIZ UDPGothic","Noto Sans JP", メイリオ, Meiryo, sans-serif;
  font-size: calc(30 * 100vw / 750);
	font-size: min(calc(30 * 100vw / 750), 30px);
  line-height: 1.48;
  background: #FFF;
	letter-spacing: 0.06em;
  color: #333;
}
a {
  color: #333;
  -webkit-tap-highlight-color: rgba(2, 109, 236, 0.9);
}
/* a:link {
	color: #0271fb;
} */

input, textarea, select {
	font-family: "Noto Sans JP", sans-serif!important;
	resize: vertical;
	font-family: unset;
	font-size: unset;
	font-weight: unset;
}

/* タップハイライトカラーが出る対策 */
div {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

#box_tag {
	width:1px;
	height:1px;
	overflow:hidden;
	position:absolute;
	top:-1px;
	left:-1px;
	z-index:-5000;
}

/* レイアウト
--------------------------------------------------------- */
#container {
	min-height: 100%;
	position: relative;
	overflow: hidden;
}
#inner {
	position: relative;
	margin-inline: auto;
	width: min(750px, 100%);
	z-index:100;
	/* position:relative; */
	-moz-transition-property: margin-left;
	-webkit-transition-property: margin-left;
	-o-transition-property: margin-left;
	-ms-transition-property: margin-left;
	-moz-transition-duration:0.5s;
	-webkit-transition-duration:0.5s;
	-o-transition-duration:0.5s;
	-ms-transition-duration:0.5s;
	-moz-transition-timing-function:ease;
	-webkit-transition-timing-function:ease;
	-o-transition-timing-function:ease;
	-ms-transition-timing-function:ease;
	box-shadow: 0 0 min(calc(10 * 100vw / 750), 10px) rgba(0, 0, 0, 0.1);
}

#contents {
	background:#FFF;
}

#main > section > div,
#main .box {
  margin: 0 min(calc(24* 100vw / 750), 24px);
}

/* タイポグラフィ
--------------------------------------------------------- */
#main h1 {
	margin-bottom: min(calc(60 * 100vw / 750), 60px);
	padding: 0 min(calc(16 * 100vw / 750), 16px) min(calc(4 * 100vw / 750), 4px);
	font-size: min(calc(48 * 100vw / 750), 48px);
	font-weight: 700;
	letter-spacing: .02em;
	border-bottom: min(calc(6 * 100vw / 750), 6px) solid var(--color-main);
}
#main h2 {
	margin-bottom: min(calc(40 * 100vw / 750), 40px);
	padding: min(calc(20 * 100vw / 750), 20px) 0 min(calc(20 * 100vw / 750), 20px) min(calc(24 * 100vw / 750), 24px);
	font-size: min(calc(40 * 100vw / 750), 40px);
	font-weight: 700;
	letter-spacing: .02em;
	background: var(--color-main);
	color: #fff;
}
#main h3 {
	position: relative;
	margin-bottom: min(calc(40 * 100vw / 750), 40px);
	padding: min(calc(16 * 100vw / 750), 16px) 0 min(calc(16 * 100vw / 750), 16px) min(calc(24 * 100vw / 750), 24px);
	font-size: min(calc(36 * 100vw / 750), 36px);
	font-weight: bold;
	letter-spacing: .02em;
	background: var(--color-border-normal);
}
#main h4 {
	position: relative;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: .06em;
	line-height: 1.6;
	display: flex;
	gap: 8px;
	
}
#main h4::before {
	content: "";
	width: 6px;
	height: auto;
	background: #333;
}

.caution, 
.caution_r,
.caution_r_b {
	font-size: min(calc(24 * 100vw / 750), 24px);
	letter-spacing: 0.02em;
}
.caution_r,
.caution_r_b {
	color: var(--color-important);
}
.caution_r_b {
	font-weight: 700;
}
.caution::before,
.caution_r::before,
.caution_r_b::before {
	content: "※ ";
}
.font_r {
	color: var(--color-important);
}
.font_r_b {
	color: var(--color-important);
	font-weight: bold;
}
.box_error {
	margin-top: min(calc(12 * 100vw / 750), 12px);
	font-size: min(calc(24 * 100vw / 750), 24px);
	color: var(--color-important);
}

/* .box_att {
	padding:5px;
	border:#F00 solid 1px;
	background: #FDD;
} */

.font10 {
	font-size: 72%;
}
.font11 {
	font-size: 79%;
}
.font12 {
	font-size: 86%;
}
.font13 {
	font-size: 93%;
}
.font14 {
	font-size: 100%;
}
.font15 {
	font-size: 108%;
}
.font16 {
	font-size: 115%;
}
.font17 {
	font-size: 122%;
}
.font18 {
	font-size: 129%;
}
.font19 {
	font-size: 136%;
}
.font20 {
	font-size: 143%;
}
.font21 {
	font-size: 150%;
}
.font22 {
	font-size: 158%;
}
.font23 {
	font-size: 165%;
}
.font24 {
	font-size: 172%;
}
.font25 {
	font-size: 179%;
}
.font26 {
	font-size: 186%;
}

/* 共通コンポーネント
========================================================================== */
/* リード文
--------------------------------------------------------- */
.lead_text {
	margin-bottom: min(calc(40 * 100vw / 750), 40px);
}
.lead_desc {
	padding: 0 min(calc(24 * 100vw / 750), 24px);
	font-size: min(calc(30 * 100vw / 750), 30px);
	letter-spacing: .02em;
	+.lead_desc {
		margin-top:  min(calc(16 * 100vw / 750), 16px);
	}
}

/* エラーメッセージ 
--------------------------------------------------------- */
.box_att {
	margin: 12px 0;
	padding:12px;
	border:var(--color-important) solid 1px;
	background:#FFE1E1;
	color:var(--color-important);
	font-weight:bold;
	position:relative;
}
.box_att dt {
	margin-top:0 !important;
}

/* 注釈ボックス
--------------------------------------------------------- */
/* 注釈（高） */
.box_warning {
	padding: min(calc(24 * 100vw / 750), 24px) min(calc(28 * 100vw / 750), 28px);
	font-size: min(calc(24 * 100vw / 750), 24px);
	background: #FFEEEE;
	color: var(--color-important);
}
.box_warning ul {
	display: flex;
	flex-direction: column;
	gap: min(calc(8 * 100vw / 750), 8px);
}
/* 注釈（中） */
.box_caution {
	padding: min(calc(24 * 100vw / 750), 24px) min(calc(28 * 100vw / 750), 28px);
	background: var(--color-caution);
}
.box_caution dt {
	margin-bottom: min(calc(8 * 100vw / 750), 8px);
	font-size: min(calc(28 * 100vw / 750), 28px);
	font-weight: bold;
	letter-spacing: .06em;
}
.box_caution dd {
	font-size: min(calc(24 * 100vw / 750), 24px);
}
.box_caution ol {
	display: flex;
	flex-direction: column;
	gap: min(calc(8 * 100vw / 750), 8px);
}
.box_caution .link {
	margin-top: min(calc(16 * 100vw / 750), 16px);
}

/* フローナビ
-------------------------------------------------------------------------- */
.header_flow {
	margin-bottom: min(calc(48 * 100vw / 750), 48px);
}
.flow_nav-list {
  display: flex;
}
.flow_nav-item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}
.flow_nav-item::before,
.flow_nav-item::after {
  content: '';
  position: absolute;
  top: min(calc(28 * 100vw / 750), 28px);
  height: min(calc(6 * 100vw / 750), 6px);
  width: 50%;
  background: var(--color-border-bold);
  z-index: 0;
}
.flow_nav-item::before { 
	left: 0;
}
.flow_nav-item::after  { 
	right: 0;
}

.flow_nav-item:first-child::before,
.flow_nav-item:last-child::after { 
	display: none; 
}
.flow_nav-item.-done::before,
.flow_nav-item.-done::after,
.flow_nav-item.-active::before {
  background: var(--color-main);
}

/* ドット */
.flow_nav-item span {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(12 * 100vw / 750), 12px);
  font-size: min(calc(20 * 100vw / 750), 20px);
	font-weight: 700;
	line-height: min(calc(20 * 100vw / 750), 20px);
  color: var(--color-border-bold);
	z-index: 1;
}
.flow_nav-item span::before {
  content: '';
  display: block;
  width: min(calc(60 * 100vw / 750), 60px);
  height: min(calc(60 * 100vw / 750), 60px);
  border-radius: 50%;
  box-sizing: border-box;
  border: min(calc(6 * 100vw / 750), 6px) solid var(--color-border-bold);
	background: #fff;
}
.flow_nav-item.-done span {
	color: var(--color-text);
}
.flow_nav-item.-done span::before {
  background: var(--color-main);
  border-color: var(--color-main);
}
.flow_nav-item.-active span::before {
  border: min(calc(6 * 100vw / 750), 6px) solid var(--color-main);
	background: #fff;
}
.flow_nav-item.-active span {
  color: var(--color-main);
}
.flow_nav-item span.-coupon {
	line-height: 1.2;
	text-align: center;
}

/* 進む・戻るボタン
--------------------------------------------------------- */
.page_navi {
	margin: min(calc(100 * 100vw / 750), 100px) auto 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: min(calc(48 * 100vw / 750), 48px);
}

/* 進むボタン */
.next_btn {
	margin-inline: auto;
	width: min(calc(624 * 100vw / 750), 624px);
	padding: min(calc(40 * 100vw / 750), 40px) 0;
	font-size: min(calc(48 * 100vw / 750), 48px);
	font-weight: 700;
	letter-spacing: .06em;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	border: initial;
	border-radius: min(calc(16 * 100vw / 750), 16px);
	background: #FF9600;
	color: #fff;
}
.next_btn .next_arrow {
	position: relative;
	width: min(calc(48 * 100vw / 750), 48px);
	height: min(calc(48 * 100vw / 750), 48px);
	border-radius: 50%;
	left: min(calc(12 * 100vw / 750), 12px);
	background: #fff;
}
.next_btn .next_arrow::after {
	position: absolute;
	content: "";
	top: 50%;
	left: 56%;
	transform: translate(-50%, -50%);
	width: min(calc(20 * 100vw / 750), 20px);
	height: min(calc(24 * 100vw / 750), 24px);
	background: #FF9600;
	clip-path: polygon(0 0, 0 100%, 100% 50%);
}

/* 戻るボタン */
.back_btn {
	margin-inline: auto;
	width: min(calc(624 * 100vw / 750), 624px);
	padding: min(calc(30 * 100vw / 750), 30px) 0;
	font-size: min(calc(40 * 100vw / 750), 40px);
	font-weight: 700;
	letter-spacing: .06em;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	border: min(calc(2 * 100vw / 750), 2px) solid #888;
	border-radius: min(calc(16 * 100vw / 750), 16px);
	background: #fff;
	color: #888;
}
.back_btn .back_arrow {
	position: relative;
	width: min(calc(40 * 100vw / 750), 40px);
	height: min(calc(40 * 100vw / 750), 40px);
	border-radius: 50%;
	right: min(calc(12 * 100vw / 750), 12px);
	background: #888;
}
.back_btn .back_arrow::after {
	position: absolute;
	content: "";
	top: 50%;
	left: 45%;
	transform: translate(-50%, -50%);
	width: min(calc(14 * 100vw / 750), 14px);
	height: min(calc(18 * 100vw / 750), 18px);
	background: #fff;
	clip-path: polygon(100% 0, 100% 100%, 0 50%);
}

/* ボタン色変更 */
.next_btn.-sub,
.next_btn.-sub span::after,
.next_btn.-sub .-input::after {
	background: #6FB92C;
}
.next_btn.-significant,
.next_btn.-significant span::after,
.-input.-significant::after {
	background: var(--color-important);
}

/* リンク
-------------------------------------------------------------------------- */
.link {
	font-size: min(calc(24 * 100vw / 750), 24px);
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: min(calc(8 * 100vw / 750), 8px);
}
.link::before {
	content: "";
	width: min(calc(28 * 100vw / 750), 28px);
	height: min(calc(28 * 100vw / 750), 28px);
	background: url("https://nenga.aisatsujo.jp/group_common/images/link/img_arrow_y.webp") 0 0 no-repeat;
	background-size: cover;
}

/* 個人情報の取扱いについて
--------------------------------------------------------- */
#privacy .privacy_iframe {
	border: 1px solid var(--color-border-bold);
}
#privacy iframe {
	width: calc(100% - 1px);
	height: 200px;
	background: #fff;
}
#privacy .privacy_title {
	padding: min(calc(20 * 100vw / 750), 20px) 0;
	font-size: min(calc(40 * 100vw / 750), 40px);
	letter-spacing: .1em;
	text-align: center;
	font-weight: 700;
	text-decoration: none;
	background: #FF9600;
	color: #fff;
}
#privacy .privacy_head{
	text-decoration: none;
	color: #fff;
}
#privacy .privacy_agree {
	margin-top: min(calc(40 * 100vw / 750), 40px);
	display: flex;
	align-items: center;
	gap: min(calc(16 * 100vw / 750), 16px);
	flex-direction: column;
}
#privacy .privacy_select {
	display: flex;
	gap: min(calc(40 * 100vw / 750), 40px);
}
#privacy .privacy_agree-text {
	font-size: min(calc(36 * 100vw / 750), 36px);
  text-align: center;
}
#privacy .privacy_select-innner {
	font-size: min(calc(36 * 100vw / 750), 36px);
	display: flex;
	align-items: center;
	gap: min(calc(8 * 100vw / 750), 8px);
}
#privacy .privacy_select-innner input[type="radio"] {
	width: min(calc(36 * 100vw / 750), 36px);
	height: min(calc(36 * 100vw / 750), 36px);
}

/* 必須アイコン
--------------------------------------------------------- */
.ico_must {
	width: min(calc(72 * 100vw / 750), 72px);
	font-size: min(calc(22 * 100vw / 750), 22px);
	font-weight: 700;
	letter-spacing: .04em;
	border-radius: min(calc(4 * 100vw / 750), 4px);
	background: var(--color-important);
	color: #fff;
	display: flex;
	justify-content: center;
}

/* グループバナー
--------------------------------------------------------- */
.box_groupsite-desc {
	margin-bottom: min(calc(30 * 100vw / 750), 30px);
}
.box_groupsite-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: min(calc(24 * 100vw / 750), 24px);
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
.box_groupsite-item img {
	vertical-align: bottom;
	border:1px solid var(--color-border-bold);
}

/* 会員登録 訴求ボックス
--------------------------------------------------------- */
/* 会員登録されていない方 */
.not_member {
	margin-bottom: min(calc(80 * 100vw / 750), 80px);
}
.mypage_appeal {
	margin-bottom: min(calc(40 * 100vw / 750), 40px);
}
.mypage_appeal-headtext {
	margin-bottom: min(calc(24 * 100vw / 750), 24px);
	font-weight: 700;
	text-align: center;
	letter-spacing: .06em;
}
.mypage_appeal-headtext span {
	font-size: min(calc(28 * 100vw / 750), 28px);
	color: var(--color-important);
}


/* 訴求ボックス */
.mypage_appeal-list {
	margin-bottom: min(calc(24 * 100vw / 750), 24px);
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: min(calc(24 * 100vw / 750), 24px);
}
.mypage_appeal-item {
	border: min(calc(4 * 100vw / 750), 4px) solid var(--color-main);
	border-radius: min(calc(24 * 100vw / 750), 24px);
	color: var(--color-main);
}
.mypage_appeal-inner {
	font-family: "Noto Sans JP", sans-serif;
	padding: min(calc(20 * 100vw / 750), 20px) 0;
	height: 100%;
	font-weight: 700;
	letter-spacing: .02em;
	display: flex;
	flex-direction: column;
	text-align: center;
	justify-content: center;
	line-height: 1;
}
.mypage_appeal-title {
	font-size: min(calc(40 * 100vw / 750), 40px);
	line-height: 1.2;
}
.mypage_appeal-desc {
	font-size: min(calc(28 * 100vw / 750), 28px);
	display: flex;
	align-items: center;
	gap: min(calc(6 * 100vw / 750), 6px);
	justify-content: center;
}
.mypage_appeal_normal {
	font-size: min(calc(24 * 100vw / 750), 24px);
	text-decoration: line-through;
}
.mypage_appeal .-yen {
	font-size: min(calc(20 * 100vw / 750), 20px);
}
.mypage_appeal_discount {
	font-size: min(calc(40 * 100vw / 750), 40px);
}

.mypage_appeal-inner.-camaddress {
	gap: min(calc(8 * 100vw / 750), 8px);
}
.mypage_appeal-inner.-postage {
	gap: min(calc(16 * 100vw / 750), 16px);
}
.mypage_appeal-inner.-address {
	gap: min(calc(8 * 100vw / 750), 8px);
	line-height: 1.4;
}
.mypage_appeal-inner.-book {
	line-height: 1.4;
}
.mypage_appeal-inner.-coupon {
	gap: min(calc(8 * 100vw / 750), 8px);
	line-height: 1.4;
}
/* ラジオボタン ボックス
--------------------------------------------------------- */
#radiobtn .radiobtn_list {
	display: flex;
	flex-direction: column;
	gap: min(calc(48 * 100vw / 750), 48px);
}
#radiobtn .radiobtn_item {
	position: relative;
	border: min(calc(2 * 100vw / 750),2px) solid var(--color-border-bold);
	border-radius: min(calc(8 * 100vw / 750), 8px);
}

#radiobtn .radio_box {
	padding: min(calc(38 * 100vw / 750), 38px) min(calc(40 * 100vw / 750), 40px);
	/* display: flex;
	align-items: center;
	gap: min(calc(12 * 100vw / 750), 12px); */
	display: block;
	cursor: pointer;
}
#radiobtn .radiobtn_choice {
	margin-bottom: min(calc(4 * 100vw / 750), 4px);
	display: flex;
	align-items: center;
	gap: min(calc(8 * 100vw / 750), 8px);
	line-height: 1;
}
#radiobtn .radiobtn_title {
	font-size: min(calc(36 * 100vw / 750), 36px);
	font-weight: bold;
}
#radiobtn .radiobtn_title .caution {
	font-size: min(calc(20 * 100vw / 750), 20px);
	color: var(--color-important);
}
#radiobtn .radiobtn_text {
	padding-top: min(calc(28 * 100vw / 750), 28px);
}
#radiobtn .radiobtn_images {
	flex-shrink: 0;
}
#radiobtn .radiobtn_desc {
	font-size: min(calc(30 * 100vw / 750), 30px);
	letter-spacing: .04em;
	text-align: justify;
}

#radiobtn .radiobtn_item:has(.radio_box input[type="radio"]:checked) {

}

#radiobtn input[type="radio"] {
	width: min(calc(36 * 100vw / 750), 36px);
	height: min(calc(36 * 100vw / 750), 36px);
	flex-shrink: 0;
}

/* はがき有 */
#radiobtn .radiobtn_text.-card {
	gap: min(calc(24 * 100vw / 750), 24px);
}
#radiobtn .radiobtn_text.-card .radiobtn_images {
	width: min(calc(240 * 100vw / 750), 240px);
	border: min(calc(1 * 100vw / 750), 1px) solid var(--color-border-bold);
}
#radiobtn .radiobtn_text.-card .radiobtn_desc {
	padding-top: min(calc(20 * 100vw / 750), 20px);
}

/* radiobtn_text開閉 */
#radiobtn .radio_box:not(:has(input[type="radio"]:checked)) .radiobtn_text {
	display: none;
}
#radiobtn .radio_box:has(input[type="radio"]:checked) .radiobtn_text {
	display: block;
}
#radiobtn .radio_box:has(input[type="radio"]:checked) .radiobtn_text.-card {
	display: flex;
	justify-content: center;
}

/* ヘッダー
========================================================================== */
#header.header {
	margin-bottom: min(calc(48 * 100vw / 750), 48px);
	height: min(calc(96 * 100vw / 750), 96px);
	background: var(--color-border-normal);
	align-content :center;
}
#header .header_inner {
	padding: 0 min(calc(16 * 100vw / 750), 16px);
	display: flex;
  justify-content: space-between;
	align-items: center;
	margin: auto;
}
#header .header_logo-images {
	display: block;
	/* width: min(calc(320 * 100vw / 750), 320px); */
	height: min(calc(40 * 100vw / 750), 40px);
}

#header .header_procedure a {
	font-size: min(calc(16 * 100vw / 750), 16px);
	font-weight: 700;
	text-decoration: none;

}

/*フッター
========================================================================== */
#footer {
	width:100%;
	margin: min(calc(180 * 100vw / 750), 180px) auto 0;
	padding: min(calc(20 * 100vw / 750), 20px) min(calc(16 * 100vw / 750), 16px) min(calc(60 * 100vw / 750), 60px);
	border-top: min(calc(4 * 100vw / 750), 4px) solid var(--color-border-bold);
	color: #888;
}

/* ログアウト */
#footer .box_keep {
	margin-bottom: min(calc(40 * 100vw / 750), 40px);
	display: flex;
	align-items: center;
	justify-content: flex-end;
	font-size: min(calc(24 * 100vw / 750), 24px);
	letter-spacing: 0;
}
#footer .box_keep span.name{
	padding-right: min(calc(16 * 100vw / 750), 16px);
}
#footer .box_keep .logout_btn {
	padding: min(calc(10 * 100vw / 750), 10px) min(calc(25 * 100vw / 750), 25px);
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: 700;
	line-height: 1;
	border: min(calc(2 * 100vw / 750), 2px) solid #888;
	border-radius: min(calc(48 * 100vw / 750), 48px);
	text-decoration: none;
	color: #888;
}

/* コピーライト */
#footer .copyright{
	font-size: min(calc(20 * 100vw / 750), 20px);
	font-weight: 700;
	letter-spacing: 0;
	text-align: right;
}



/* ---------------------------------------------------------
   Form
--------------------------------------------------------- */
form {
	/* margin: 20px 10px 0;
	text-align: center; */
}
fieldset {
	box-sizing: border-box;
}

/* テキスト */
input:is([type="text"] ,[type="email"],[type="number"],[type="tel"],[type="password"]),
select,
textarea {
	width: 100%;
	height: min(calc(80 * 100vw / 750), 80px);
	font-size: min(calc(30 * 100vw / 750), 30px);
	line-height: 1.6;
	text-indent: .5em;
	border: min(calc(2 * 100vw / 750), 2px) solid #999;
}
::placeholder {
	font-size: min(calc(28 * 100vw / 750), 28px);
	font-family: "Noto Sans JP", sans-serif!important;
  color: #999;
}
input.error,
select.error,
textarea.error {
	background: -webkit-gradient(linear, left top, left bottom, from(#FFCCCC), to(#FFDDDD));
	background: -moz-linear-gradient(top, #FFCCCC, #FFDDDD);
	background: -o-linear-gradient(top, #FFCCCC, #FFDDDD);
	background: -ms-linear-gradient(top, #FFCCCC, #FFDDDD);
	background: linear-gradient(to bottom, #FFCCCC, #FFDDDD);
	background-color: #FFCCCC;
}
/* input[type=text],
input[type=email],
input[type=number],
input[type=tel],
input[type=password],
select,
textarea {
	box-sizing: border-box;
	padding: 8px 5px;
	border: 1px solid #999;
	color: #333;
	background: -webkit-gradient(linear, left top, left bottom, from(#F0F0F0), to(#FCFCFC));
	background: -moz-linear-gradient(top, #F0F0F0, #FCFCFC);
	background: -o-linear-gradient(top, #F0F0F0, #FCFCFC);
	background: -ms-linear-gradient(top, #F0F0F0, #FCFCFC);
	background: linear-gradient(to bottom, #F0F0F0, #FCFCFC);
	background-color: #FFF;
	font-size: 100%;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	-o-border-radius:2px;
	-ms-border-radius:2px;
	border-radius: 2px;
	-webkit-box-shadow: inset var(--color-border-bold) 1px 1px 1px;
	-moz-box-shadow: inset var(--color-border-bold) 1px 1px 1px;
	-o-box-shadow: inset var(--color-border-bold) 1px 1px 1px;
	-ms-box-shadow: inset var(--color-border-bold) 1px 1px 1px;
	box-shadow: inset var(--color-border-bold) 1px 1px 1px;
} */


/* input[type=radio] */
/* input[type=checkbox]
 {
	width: min(calc(20 * 100vw / 750), 20px);
	height: min(calc(20 * 100vw / 750), 20px);
	margin-right:min(calc(6 * 100vw / 750), 6px);
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	display: inline-block;
	line-height: 1em;
	vertical-align:-4px;
	border: 1px solid #999;
	background: #FFF;
	background: -webkit-gradient(linear, left top, left bottom, from(#EEEEEE), to(#FFFFFF));
	background: -moz-linear-gradient(top, #EEEEEE, #FFFFFF);
	background: -o-linear-gradient(top, #EEEEEE, #FFFFFF);
	background: -ms-linear-gradient(top, #EEEEEE, #FFFFFF);
	background: linear-gradient(to bottom, #EEEEEE, #FFFFFF);
	-webkit-appearance: none;
	-moz-appearance:none;
	-ms-appearance:none;
	-o-appearance:none;
	appearance:none;
	-webkit-box-shadow:inset 1px 1px 1px var(--color-border-bold);
	-moz-box-shadow:inset 1px 1px 1px var(--color-border-bold);
	-ms-box-shadow:inset 1px 1px 1px var(--color-border-bold);
	-o-box-shadow:inset 1px 1px 1px var(--color-border-bold);
	box-shadow:inset 1px 1px 1px var(--color-border-bold);
} */

input[type=checkbox] {
	-webkit-border-radius: min(calc(4 * 100vw / 750), 4px);
	-moz-border-radius: min(calc(4 * 100vw / 750), 4px);
	-ms-border-radius: min(calc(4 * 100vw / 750), 4px);
	-o-border-radius: min(calc(4 * 100vw / 750), 4px);
	border-radius: min(calc(4 * 100vw / 750), 4px);
}
/* input[type=radio] {
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
} */
input[type=submit]:disabled,
input[type=button]:disabled,
button:disabled {
	-webkit-opacity:0.5;
	-moz-opacity:0.5;
	filter:alpha(opacity=50);
	-o-opacity:0.5;
	opacity:0.5;
}
input[type=checkbox]:checked {
	background: url("../../images/checkon.png") no-repeat center center / contain;
}
/* input[type=radio]:checked {
	background: url(../../images/radioon.png) no-repeat center center;
	-webkit-background-size: 20px 20px;
} */
/* select {
	-moz-appearance: button;
    -webkit-appearance: button;
    appearance: button;
	padding-right:30px;
}
label.select {
	display:inline-block;
	position:relative;
}
label.select:after {
	content:'7';
	font:14px "Typicons";
	color:#666;
	-webkit-transform:rotate(90deg);
	position:absolute;
	right:5px;
	top:10px;
	padding:3px 2px 1px 3px;
	pointer-events:none;
	border:1px solid #AAA;
	background: -webkit-gradient(linear, left top, right top, from(#FEFEFE), to(#EFEFEF));
	background: -moz-linear-gradient(left, #FEFEFE, #EFEFEF);
	background: linear-gradient(to right, #FEFEFE, #EFEFEF);
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	-o-border-radius:2px;
	-ms-border-radius:2px;
	border-radius: 2px;
	-webkit-box-shadow: inset #FFF -1px -1px 0;
	-moz-box-shadow: inset #FFF -1px -1px 0;
	-o-box-shadow: inset #FFF -1px -1px 0;
	-ms-box-shadow: inset #FFF -1px -1px 0;
	box-shadow: inset #FFF -1px -1px 0;
	line-height:1em;
} */





