@charset "utf-8";
#acting_alert {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 240px;
	margin: 5px;
	z-index: 1000;
	opacity: .60;
	-moz-opacity: .60;
 filter:progid:DXImageTransform.Microsoft.Alpha(opacity=60);
}
#acting_alert p.close_alert {
	margin: 0;
	padding: 3px;
	background: #1393c0;
	text-align: right;
	height: 25px;
}
#acting_alert p.content {
	padding: 1em;
	margin: 0;
	background: #fff;
	border: 1px solid #1393c0;
	height: 100%;
}
#acting_alert span.top, #acting_alert span.bottom {
	display: block;
	background: #fff;
}
#acting_alert span.top span, #acting_alert span.bottom span {
	display: block;
	height: 1px;
	overflow: hidden;
	background: #1393c0;
}
#acting_alert span.r1 {
	margin: 0 5px;
}
#acting_alert span.r2 {
	margin: 0 3px;
}
#acting_alert span.r3 {
	margin: 0 2px;
}
#acting_alert span.top span.r4, span.bottom span.r4 {
	margin: 0 1px;
	height: 2px;
}
#acting_alert span.item {
	font-size: 12px;
}
.close_alert a {
	background-image: url(../img/bannerClose.gif);
	display: block;
	width: 23px;
	height: 23px;
}
.close_alert a img {
	display: none;
}

/* JS error */
.alert-danger, .alert-error {
	color: #b94a48;
	background-color: #f2dede;
	border-color: #eed3d7;
	width: 90%;
	margin: auto;
	padding: 10px;
	border-radius: 4px;
	margin-bottom: 10px;
}
.alert-danger h4, .alert-error h4 {
	color: #b94a48;
}
.btn_link__wrap--fixed .alert-danger,.btn_link__wrap--fixed .alert-error {
    color: #FFF;
    background-color: transparent;
    border-color: transparent;
}
/* バリデート部分 */
.formError {
	display:block;
}
.formError .formErrorContent {
	color:#f89406;
	font-weight:bold;
	margin-left:3px;
}
.label-warning, .badge-warning {
	background-color: #f89406;
	color: #FFFFFF;
}
.label-warning[href], .badge-warning[href] {
	background-color: #c67605;
}
.ss_error_msg, .errorMsg {
    margin-left: 3px;
    color: #F89406;
    font-weight: bold;
}
.formError + br{
	display:none;
}

/*フォームデザイン修正*/
.birthday_dd .ss_input,.birthday_mm .ss_input{
	width: 100%;
}
	.ddmmselect{
		display: flex;
		width: 100%;
		align-items: center;
		flex-wrap: wrap;
	}

	.page-input .birthday .birthday__wrap .birthday_mm  .ss_input select,
	.page-input .birthday .birthday__wrap .birthday_dd  .ss_input select {
	  width: 80%;
	}
	.page-input .birthday .birthday__wrap .birthday_mm  .ss_input .ddmmselect select,
	.page-input .birthday .birthday__wrap .birthday_dd  .ss_inputt .ddmmselect select {
	  width: 80%;
	}

.page-input .name > div{
	width: 100%;
	display: flex;
	flex-wrap: unset;
}
.page-input .name .ss_input{
	width:47%;
}
.page-input .name .ss_input input{
    width: 75%;
    margin-right: 8px;
}

.page-input .postal_code > div{
	width: 100%;
}
.page-input .postal_code .ss_input{
    display: inline-block;
}
.page-input .postal_code .ss_input input{
    margin-right: 8px;
}
.page-confirm .name .ss_input,
.page-confirm #zip .ss_input{
	display:inline-block;
}
.btn_register button {
	background-color: #ff7474;
	color: #fff;
  }
.btn_link button {
  display: block;
  text-align: center;
  text-decoration: none;
  font-size: 1.3rem;
  font-weight: bold;
  padding: 12px 24px;
  border-radius: 50px;
  width: 100%;
}

.hide{
  display: none;
}

/* shanon.2020.04.10.審査番号を追加(文書審査番号,社内審査番号). */
.judging_no {
  padding: 0 2.5rem;
  text-align: right;
}


.table {
	width: 100%;
	margin: 8px 0;
}
.table th, .table td {
	padding: 8px;
	line-height: 20px;
	/* text-align: left; */
	vertical-align: middle;
	border-top: 1px solid #dddddd;
}
.session_timetable th, .session_timetable td{
  vertical-align: top;
}
.table th {
	font-weight: bold;
}
.table thead th {
	vertical-align: bottom;
}
.table caption + thead tr:first-child th, .table caption + thead tr:first-child td, .table colgroup + thead tr:first-child th, .table colgroup + thead tr:first-child td, .table thead:first-child tr:first-child th, .table thead:first-child tr:first-child td {
	border-top: 0;
}
.table tbody + tbody {
	border-top: 2px solid #dddddd;
}
.table .table {
	background-color: #ffffff;
}
.table-condensed th, .table-condensed td {
	padding: 4px 5px;
}
.table-bordered {
	border: 1px solid #dddddd;
	border-collapse: separate;
 *border-collapse: collapse;
	border-left: 0;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
.table-bordered th, .table-bordered td {
	border-left: 1px solid #dddddd;
}
.table-bordered caption + thead tr:first-child th, .table-bordered caption + tbody tr:first-child th, .table-bordered caption + tbody tr:first-child td, .table-bordered colgroup + thead tr:first-child th, .table-bordered colgroup + tbody tr:first-child th, .table-bordered colgroup + tbody tr:first-child td, .table-bordered thead:first-child tr:first-child th, .table-bordered tbody:first-child tr:first-child th, .table-bordered tbody:first-child tr:first-child td {
	border-top: 0;
}
.table-bordered thead:first-child tr:first-child > th:first-child, .table-bordered tbody:first-child tr:first-child > td:first-child, .table-bordered tbody:first-child tr:first-child > th:first-child {
	-webkit-border-top-left-radius: 4px;
	border-top-left-radius: 4px;
	-moz-border-radius-topleft: 4px;
}
.table-bordered thead:first-child tr:first-child > th:last-child, .table-bordered tbody:first-child tr:first-child > td:last-child, .table-bordered tbody:first-child tr:first-child > th:last-child {
	-webkit-border-top-right-radius: 4px;
	border-top-right-radius: 4px;
	-moz-border-radius-topright: 4px;
}
.table-bordered thead:last-child tr:last-child > th:first-child, .table-bordered tbody:last-child tr:last-child > td:first-child, .table-bordered tbody:last-child tr:last-child > th:first-child, .table-bordered tfoot:last-child tr:last-child > td:first-child, .table-bordered tfoot:last-child tr:last-child > th:first-child {
	-webkit-border-bottom-left-radius: 4px;
	border-bottom-left-radius: 4px;
	-moz-border-radius-bottomleft: 4px;
}
.table-bordered thead:last-child tr:last-child > th:last-child, .table-bordered tbody:last-child tr:last-child > td:last-child, .table-bordered tbody:last-child tr:last-child > th:last-child, .table-bordered tfoot:last-child tr:last-child > td:last-child, .table-bordered tfoot:last-child tr:last-child > th:last-child {
	-webkit-border-bottom-right-radius: 4px;
	border-bottom-right-radius: 4px;
	-moz-border-radius-bottomright: 4px;
}
.table-bordered tfoot + tbody:last-child tr:last-child td:first-child {
	-webkit-border-bottom-left-radius: 0;
	border-bottom-left-radius: 0;
	-moz-border-radius-bottomleft: 0;
}
.table-bordered tfoot + tbody:last-child tr:last-child td:last-child {
	-webkit-border-bottom-right-radius: 0;
	border-bottom-right-radius: 0;
	-moz-border-radius-bottomright: 0;
}
.table-bordered caption + thead tr:first-child th:first-child, .table-bordered caption + tbody tr:first-child td:first-child, .table-bordered colgroup + thead tr:first-child th:first-child, .table-bordered colgroup + tbody tr:first-child td:first-child {
	-webkit-border-top-left-radius: 4px;
	border-top-left-radius: 4px;
	-moz-border-radius-topleft: 4px;
}
.table-bordered caption + thead tr:first-child th:last-child, .table-bordered caption + tbody tr:first-child td:last-child, .table-bordered colgroup + thead tr:first-child th:last-child, .table-bordered colgroup + tbody tr:first-child td:last-child {
	-webkit-border-top-right-radius: 4px;
	border-top-right-radius: 4px;
	-moz-border-radius-topright: 4px;
}
.table-striped tbody > tr:nth-child(odd) > td, .table-striped tbody > tr:nth-child(odd) > th {
	background-color: #f9f9f9;
}
/*IE6～8*/
.table-striped tbody > tr.odd th, .table-striped tbody > tr.odd td {
	background-color: #f9f9f9;
}
.table-hover tbody tr:hover > td, .table-hover tbody tr:hover > th {
	background-color: #f5f5f5;
}
table td[class*="span"], table th[class*="span"], .row-fluid table td[class*="span"], .row-fluid table th[class*="span"] {
	display: table-cell;
	float: none;
	margin-left: 0;
}
.table td.span1, .table th.span1 {
	float: none;
	width: 44px;
	margin-left: 0;
}
.table td.span2, .table th.span2 {
	float: none;
	width: 124px;
	margin-left: 0;
}
.table td.span3, .table th.span3 {
	float: none;
	width: 204px;
	margin-left: 0;
}
.table td.span4, .table th.span4 {
	float: none;
	width: 284px;
	margin-left: 0;
}
.table td.span5, .table th.span5 {
	float: none;
	width: 364px;
	margin-left: 0;
}
.table td.span6, .table th.span6 {
	float: none;
	width: 444px;
	margin-left: 0;
}
.table td.span7, .table th.span7 {
	float: none;
	width: 524px;
	margin-left: 0;
}
.table td.span8, .table th.span8 {
	float: none;
	width: 604px;
	margin-left: 0;
}
.table td.span9, .table th.span9 {
	float: none;
	width: 684px;
	margin-left: 0;
}
.table td.span10, .table th.span10 {
	float: none;
	width: 764px;
	margin-left: 0;
}
.table td.span11, .table th.span11 {
	float: none;
	width: 844px;
	margin-left: 0;
}
.table td.span12, .table th.span12 {
	float: none;
	width: 924px;
	margin-left: 0;
}
.table tbody tr.success > td {
	background-color: #dff0d8;
}
.table tbody tr.error > td {
	background-color: #f2dede;
}
/*
.table tbody tr.warning > td {
	background-color: #fcf8e3 !important;
}
*/
.table tbody tr.info > td {
	background-color: #d9edf7;
}
.table-hover tbody tr.success:hover > td {
	background-color: #d0e9c6;
}
.table-hover tbody tr.error:hover > td {
	background-color: #ebcccc;
}
.table-hover tbody tr.warning:hover > td {
	background-color: #faf2cc !important;
}
.table-hover tbody tr.info:hover > td {
	background-color: #c4e3f3;
}
 [class^="icon-"], [class*=" icon-"] {
 display: inline-block;
 width: 14px;
 height: 14px;
 margin-top: 1px;
 *margin-right: .3em;
 line-height: 14px;
 vertical-align: text-top;
 background-image: url("../img/glyphicons-halflings.png");
 background-position: 14px 14px;
 background-repeat: no-repeat;
}

.table td.ss_cart_price, .table td.ss_cart_sum, .table td.ss_cart_discount, .table td.ss_cart_sum_price {
	text-align: right;
}

.table-bordered td .ss_input td {
	border: none;
    padding: 0px 5px 0px 0px;
	background-color:inherit !important;
}

table{
  max-width: 100%;
  background-color: transparent;
  border-collapse: collapse;
  border-spacing: 0;
}

.table input{
	-webkit-appearance: checkbox !important;
	margin: 0 5px 3px;
}

.btn_primary input:disabled{
	background-color: #DEF3DF;
    color: #fff;
}

.img_no{
	display: none;
}

._sp{
	display: none;
}

.page-input .gender select {
	width: 130px;
}

/* 次へボタンカーソルオーバー時、指マーク */
.hover_btn{
	cursor: pointer;
}

.br_sp{
    display: none;
 }

@media print{
    #ss_seminar_preview_hall_img img , .bottom_img, h2.title img{
		width: 600px;
	}
	.page-intro main{
		padding-bottom: initial;
	}
	@page {
		margin: 0;
	  }
}
/* セッション詳細画面　ボタンのデザイン0709 */
.button_color a{
		display: block;
		text-align: center;
		text-decoration: none;
		font-size: 1.3rem;
		font-weight: bold;
		padding: 12px 24px;
		border-radius: 10px;
		width: 100%;
		background-color: #f79646;
		color: #fff;
}


/* 完了画面　ボタンのデザイン0709 */
.complete_area{
    text-align:-webkit-center;
  }
  
	.complete_area .button_line_green .button_green{
	display: block;
	text-align: center;
	text-decoration: none;
    font-size: 1.3rem;
	font-weight: bold;
	padding: 12px 24px;
	border-radius: 10px;
	width: 100%;
	background-color: #51caaf;
	}
	.complete_area .button_line_green .button_green a{
		font-size: 16px;
		color: #fff;
		text-decoration: none !important;
	}
	.complete_area .button_line_green {
		width: 450px;
		margin: 0 0 2rem 0;
		border-radius: 12px;
		border: 3px solid #5586A3;
	} 
	.complete_area .button_line_green .contract	{
		padding: 12px 30px;
	}
	/* FF用 */
	@-moz-document url-prefix() {
	.complete_area{
		text-align: -moz-center;
	    }
	}
   /* IE用 */
   @media all and (-ms-high-contrast: none) {
	.complete_area{
		text-align: center;
		margin-left:auto;
		margin-right:auto;
		padding: 0;
	  }
	}
	@media screen and (max-width:480px) {
		.complete_area .button_line_green {
			width: 89%;
			display: block;
		}
		.complete_area .button_line_green .button_green{
		padding: 12px 0 12px 0;
	    }
	.complete_area .button_line_green .button_green a{
		font-size: 100%;
	    }
    }

	/* 完了画面の文言0712 */
	main p.registration {
		text-align: center;
		font-size: 2.5rem;
		margin-top: 40px;
	}
	
	main p.insurance {
		text-align: center;
		font-size: 3.0rem;
		font-weight: bold;
	}
	@media screen and (max-width:480px) {
		main p.registration {
			text-align: center;
			font-size: 1.3rem;
			margin-top: 40px;
		}
		
		main p.insurance {
			text-align: center;
			font-size: 2.0rem;
			font-weight: bold;
		}
	}
	/* IE用セッション画面　ボタン調整0712 */
	@media all and (-ms-high-contrast: none) {
		.button_line{
			width: 100%;
			border: 3px solid #f79646;
		}	
	}
	/* 完了画面　ボタンレスポンシブ　0714 */
	.width480{
		display: inline-block;
	}
	@media screen and (max-width:480px) {
		.width480 {
        display: block;
		}
	} 

	/* 完了画面　ボタンの遷移　0714 */
	.complete_area ._sp{
		display: none;
	}
	@media screen and (max-width:940px) {
		.width480 {
			display: block;
	    }
		.complete_area ._pc{
			display: block;
		}
		.complete_area ._sp{
			display: none;
		}
		.complete_area .br_sp{
			display: block;
		 }
	}
	@media screen and (max-width:480px) {
		.complete_area ._pc{
			display: none;
		}
		.complete_area ._sp{
			display: block;
		}
		.complete_area .br_sp{
			display: block;
		 }
	}
	/* 入力画面　ボタン上部の文言追加　0714 */
	p.event_text {
		font-size: 20px;
		font-weight: bold;
	}
	.square {
		display: inline-block;
		width: 10px;
		height: 34px;
		background-color: #7d7d7d;
		margin-right: 10px;
	}
	.head {
		display: flex;
	}
	@media screen and (max-width:480px) {
		p.event_text {
			font-size: 15px;
			font-weight: bold;
		}
		.square {
			display: inline-block;
			width: 10px;
			height: 23px;
			background-color: #7d7d7d;
			margin-right: 10px;
		}
	}

			/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.ss_complete_image_sp { display: block !important; }
.ss_complete_image_sp { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 767px) {
    .ss_complete_image_pc { display: none !important; }
    .ss_complete_image_sp { display: block !important; }
}

[type='radio'] {
	-webkit-appearance: radio;
}

[type='checkbox'] {
	-webkit-appearance: checkbox;
}

/* ヘッダーフッター対応 2022/03/07 */
header.l-header.l-header-level2.js-header.js-include {
	background-color: #ffffff;
}

@media screen and (max-width: 960px){
	.l-header {
		position: static;
	}
}

/* 2022.03 キャンペーン サブタイトル追加 */
.form_title{
	text-align:center;
	font-size: x-large;
}
@media screen and (max-width:480px) {
	.form_title{
	font-size: 2rem;
    }
}
/* 2022.07 */
.page-confirm main form .form_list__wrap .form_list .birthday{
	border-bottom: 1px solid #dfdec7;
    margin-bottom: 1rem;
    padding-bottom: 1rem;
}
/* 202207 LP印刷調整 */
.print_img{
	display: none;
}
/*******************
* 20251205 入力茶帯修正 *
*******************/
/* 入力画面設問茶帯デザイン */
.page-input .form_list dt{
	background-color: #c09e61;
	color: #fff;
	margin-bottom: 8px;
	padding: 0 24px 0 15px;
	font-size: 1.4rem;
	position: relative;
	display: inline-block;
	clip-path: polygon(100% 0%, calc(100% - 8px) 50%, 100% 100%, 0% 100%, 0 50%,0 0);
}
dt::after {
	display: none;
  }
/*******************
* 20230420 LP修正 *
*******************/
.contents .contents_01__inner .btn_textSize {
    text-align: center;
    font-size: 2.1rem;
	cursor: default;
	pointer-events: none
}

@media (max-width: 768px){
    .contents .contents_01__inner .btn_textSize {
    text-align: center;
    font-size: 1.4rem;
}
}
.contents .contents_01__inner .btn_textSize::after {
    content: "";
    border-top: none;
    border-right: none;
}

.contents .contents_01__inner .btn_textSize:hover {
    opacity: 1;
}

@media (min-width: 769px) {
	.contents_02 .contents_02__inner .chance_02 h3 p {
	  width: 450px;
	}
  }

.contents.contents-02 {
    border-color: #30A98A;
    margin-top: 50px;
}
.contents .link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 500px;
    height: 60px;
    border-radius: 30px;
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    text-decoration: none;
    text-align: center;
}
.contents.contents-02 .link {
    background-color: #30A98A;
    margin: 30px auto 50px;
}
  /*******************
* 20250627 LP修正 *
*******************/
/* 印刷するボタン */
.ss_Printbtn {
	text-align: center;
}
  .print .print_link a {
	display: block;
	text-align: center;
	text-decoration: none;
	font-size: 2rem;
	font-weight: bold;
	padding: 12px 10rem;
	border-radius: 10px;
	width: 100%;
	background-color: #51caaf;
	border-radius: 12px;
	color: #fff;
	border: 3px solid #5586A3;
	cursor: pointer;
}
.output_qrcode {
	display: flex;
	justify-content: center;
}
@media print {
  body::after {
    content: none !important;
  }
}
@media screen and (max-width: 360px) {
  .page-input .form_list dt {
    font-size: 1.2rem;
  }
}
@charset "UTF-8";

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/* FFのみ適用 */
@-moz-document url-prefix() { 
  [type="checkbox"], [type="radio"]{
    appearance: auto;
    position: initial;
    margin-right: 0.2rem;
  }
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* --------------------------------------------
Custom CSS reset
Last Updated: 2020-03-01
-------------------------------------------- */
/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}