/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */
html,
body,
p,
ol,
ul,
li,
dl,
dt,
dd,
blockquote,
figure,
fieldset,
legend,
textarea,
pre,
iframe,
hr,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
}

ul {
  list-style: none;
}

button,
input,
select,
textarea {
  margin: 0;
}

html {
  box-sizing: border-box;
}

*, *::before, *::after {
  box-sizing: inherit;
}

img,
video {
  height: auto;
  max-width: 100%;
}

iframe {
  border: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}
td:not([align]),
th:not([align]) {
  text-align: inherit;
}

input:is([type=button], [type=submit], [type=reset]) {
  appearance: none;
  border-radius: 0;
}

/* Bulma Utilities */
.file-cta,
.file-name, .select select, .textarea, .input {
  -moz-appearance: none;
  -webkit-appearance: none;
  align-items: center;
  border: 1px solid transparent;
  border-radius: 4px;
  box-shadow: none;
  display: inline-flex;
  font-size: 1rem;
  height: 2.5em;
  justify-content: flex-start;
  line-height: 1.5;
  padding-bottom: calc(0.5em - 1px);
  padding-left: calc(0.75em - 1px);
  padding-right: calc(0.75em - 1px);
  padding-top: calc(0.5em - 1px);
  position: relative;
  vertical-align: top;
}
.file-cta:focus,
.file-name:focus, .select select:focus, .textarea:focus, .input:focus, .is-focused.file-cta,
.is-focused.file-name, .select select.is-focused, .is-focused.textarea, .is-focused.input, .file-cta:active,
.file-name:active, .select select:active, .textarea:active, .input:active, .is-active.file-cta,
.is-active.file-name, .select select.is-active, .is-active.textarea, .is-active.input {
  outline: none;
}
[disabled].file-cta,
[disabled].file-name, .select select[disabled], [disabled].textarea, [disabled].input, fieldset[disabled] .file-cta,
fieldset[disabled] .file-name, fieldset[disabled] .select select, .select fieldset[disabled] select, fieldset[disabled] .textarea, fieldset[disabled] .input {
  cursor: not-allowed;
}

.file {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.select:not(.is-multiple):not(.is-loading)::after {
  border: 3px solid transparent;
  border-radius: 2px;
  border-right: 0;
  border-top: 0;
  content: " ";
  display: block;
  height: 0.625em;
  margin-top: -0.4375em;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: rotate(-45deg);
  transform-origin: center;
  width: 0.625em;
}

.message:not(:last-child) {
  margin-bottom: 1.5rem;
}

.select.is-loading::after, .control.is-loading::after {
  animation: spinAround 500ms infinite linear;
  border: 2px solid hsl(0, 0%, 86%);
  border-radius: 9999px;
  border-right-color: transparent;
  border-top-color: transparent;
  content: "";
  display: block;
  height: 1em;
  position: relative;
  width: 1em;
}

.message {
  background-color: hsl(0, 0%, 96%);
  border-radius: 4px;
  font-size: 1rem;
}
.message strong {
  color: currentColor;
}
.message a:not(.button):not(.tag):not(.dropdown-item) {
  color: currentColor;
  text-decoration: underline;
}
.message.is-small {
  font-size: 0.75rem;
}
.message.is-medium {
  font-size: 1.25rem;
}
.message.is-large {
  font-size: 1.5rem;
}
.message.is-white {
  background-color: hsl(0, 0%, 100%);
}
.message.is-white .message-header {
  background-color: hsl(0, 0%, 100%);
  color: hsl(0, 0%, 4%);
}
.message.is-white .message-body {
  border-color: hsl(0, 0%, 100%);
}
.message.is-black {
  background-color: hsl(0, 0%, 98%);
}
.message.is-black .message-header {
  background-color: hsl(0, 0%, 4%);
  color: hsl(0, 0%, 100%);
}
.message.is-black .message-body {
  border-color: hsl(0, 0%, 4%);
}
.message.is-light {
  background-color: hsl(0, 0%, 98%);
}
.message.is-light .message-header {
  background-color: hsl(0, 0%, 96%);
  color: rgba(0, 0, 0, 0.7);
}
.message.is-light .message-body {
  border-color: hsl(0, 0%, 96%);
}
.message.is-dark {
  background-color: hsl(0, 0%, 98%);
}
.message.is-dark .message-header {
  background-color: hsl(0, 0%, 21%);
  color: #fff;
}
.message.is-dark .message-body {
  border-color: hsl(0, 0%, 21%);
}
.message.is-primary {
  background-color: hsl(171, 100%, 96%);
}
.message.is-primary .message-header {
  background-color: hsl(171, 100%, 41%);
  color: #fff;
}
.message.is-primary .message-body {
  border-color: hsl(171, 100%, 41%);
  color: hsl(171, 100%, 29%);
}
.message.is-link {
  background-color: hsl(229, 53%, 96%);
}
.message.is-link .message-header {
  background-color: hsl(229, 53%, 53%);
  color: #fff;
}
.message.is-link .message-body {
  border-color: hsl(229, 53%, 53%);
  color: hsl(229, 53%, 47%);
}
.message.is-info {
  background-color: hsl(207, 61%, 96%);
}
.message.is-info .message-header {
  background-color: hsl(207, 61%, 53%);
  color: #fff;
}
.message.is-info .message-body {
  border-color: hsl(207, 61%, 53%);
  color: hsl(207, 61%, 41%);
}
.message.is-success {
  background-color: hsl(153, 53%, 96%);
}
.message.is-success .message-header {
  background-color: hsl(153, 53%, 53%);
  color: #fff;
}
.message.is-success .message-body {
  border-color: hsl(153, 53%, 53%);
  color: hsl(153, 53%, 31%);
}
.message.is-warning {
  background-color: hsl(44, 100%, 96%);
}
.message.is-warning .message-header {
  background-color: hsl(44, 100%, 77%);
  color: rgba(0, 0, 0, 0.7);
}
.message.is-warning .message-body {
  border-color: hsl(44, 100%, 77%);
  color: hsl(44, 100%, 29%);
}
.message.is-danger {
  background-color: hsl(348, 86%, 96%);
}
.message.is-danger .message-header {
  background-color: hsl(348, 86%, 61%);
  color: #fff;
}
.message.is-danger .message-body {
  border-color: hsl(348, 86%, 61%);
  color: hsl(348, 86%, 43%);
}

.message-header {
  align-items: center;
  background-color: hsl(0, 0%, 29%);
  border-radius: 4px 4px 0 0;
  color: #fff;
  display: flex;
  font-weight: 700;
  justify-content: space-between;
  line-height: 1.25;
  padding: 0.75em 1em;
  position: relative;
}
.message-header .delete {
  flex-grow: 0;
  flex-shrink: 0;
  margin-left: 0.75em;
}
.message-header + .message-body {
  border-width: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.message-body {
  border-color: hsl(0, 0%, 86%);
  border-radius: 4px;
  border-style: solid;
  border-width: 0 0 0 4px;
  color: hsl(0, 0%, 29%);
  padding: 1.25em 1.5em;
}
.message-body code,
.message-body pre {
  background-color: hsl(0, 0%, 100%);
}
.message-body pre code {
  background-color: transparent;
}

.select select, .textarea, .input {
  background-color: hsl(0, 0%, 100%);
  border-color: hsl(0, 0%, 86%);
  border-radius: 4px;
  color: hsl(0, 0%, 21%);
}
.select select::-moz-placeholder, .textarea::-moz-placeholder, .input::-moz-placeholder {
  color: rgba(53.55, 53.55, 53.55, 0.3);
}
.select select::-webkit-input-placeholder, .textarea::-webkit-input-placeholder, .input::-webkit-input-placeholder {
  color: rgba(53.55, 53.55, 53.55, 0.3);
}
.select select:-moz-placeholder, .textarea:-moz-placeholder, .input:-moz-placeholder {
  color: rgba(53.55, 53.55, 53.55, 0.3);
}
.select select:-ms-input-placeholder, .textarea:-ms-input-placeholder, .input:-ms-input-placeholder {
  color: rgba(53.55, 53.55, 53.55, 0.3);
}
.select select:hover, .textarea:hover, .input:hover, .select select.is-hovered, .is-hovered.textarea, .is-hovered.input {
  border-color: hsl(0, 0%, 71%);
}
.select select:focus, .textarea:focus, .input:focus, .select select.is-focused, .is-focused.textarea, .is-focused.input, .select select:active, .textarea:active, .input:active, .select select.is-active, .is-active.textarea, .is-active.input {
  border-color: hsl(229, 53%, 53%);
  box-shadow: 0 0 0 0.125em rgba(71.6295, 94.92035, 198.6705, 0.25);
}
.select select[disabled], [disabled].textarea, [disabled].input, fieldset[disabled] .select select, .select fieldset[disabled] select, fieldset[disabled] .textarea, fieldset[disabled] .input {
  background-color: hsl(0, 0%, 96%);
  border-color: hsl(0, 0%, 96%);
  box-shadow: none;
  color: hsl(0, 0%, 48%);
}
.select select[disabled]::-moz-placeholder, [disabled].textarea::-moz-placeholder, [disabled].input::-moz-placeholder, fieldset[disabled] .select select::-moz-placeholder, .select fieldset[disabled] select::-moz-placeholder, fieldset[disabled] .textarea::-moz-placeholder, fieldset[disabled] .input::-moz-placeholder {
  color: rgba(122.4, 122.4, 122.4, 0.3);
}
.select select[disabled]::-webkit-input-placeholder, [disabled].textarea::-webkit-input-placeholder, [disabled].input::-webkit-input-placeholder, fieldset[disabled] .select select::-webkit-input-placeholder, .select fieldset[disabled] select::-webkit-input-placeholder, fieldset[disabled] .textarea::-webkit-input-placeholder, fieldset[disabled] .input::-webkit-input-placeholder {
  color: rgba(122.4, 122.4, 122.4, 0.3);
}
.select select[disabled]:-moz-placeholder, [disabled].textarea:-moz-placeholder, [disabled].input:-moz-placeholder, fieldset[disabled] .select select:-moz-placeholder, .select fieldset[disabled] select:-moz-placeholder, fieldset[disabled] .textarea:-moz-placeholder, fieldset[disabled] .input:-moz-placeholder {
  color: rgba(122.4, 122.4, 122.4, 0.3);
}
.select select[disabled]:-ms-input-placeholder, [disabled].textarea:-ms-input-placeholder, [disabled].input:-ms-input-placeholder, fieldset[disabled] .select select:-ms-input-placeholder, .select fieldset[disabled] select:-ms-input-placeholder, fieldset[disabled] .textarea:-ms-input-placeholder, fieldset[disabled] .input:-ms-input-placeholder {
  color: rgba(122.4, 122.4, 122.4, 0.3);
}

.label {
  color: hsl(0, 0%, 21%);
  display: block;
  font-size: 1rem;
  font-weight: 700;
}
.label:not(:last-child) {
  margin-bottom: 0.5em;
}
.label.is-small {
  font-size: 0.75rem;
}
.label.is-medium {
  font-size: 1.25rem;
}
.label.is-large {
  font-size: 1.5rem;
}

.help {
  display: block;
  font-size: 0.75rem;
  margin-top: 0.25rem;
}
.help.is-white {
  color: hsl(0, 0%, 100%);
}
.help.is-black {
  color: hsl(0, 0%, 4%);
}
.help.is-light {
  color: hsl(0, 0%, 96%);
}
.help.is-dark {
  color: hsl(0, 0%, 21%);
}
.help.is-primary {
  color: hsl(171, 100%, 41%);
}
.help.is-link {
  color: hsl(229, 53%, 53%);
}
.help.is-info {
  color: hsl(207, 61%, 53%);
}
.help.is-success {
  color: hsl(153, 53%, 53%);
}
.help.is-warning {
  color: hsl(44, 100%, 77%);
}
.help.is-danger {
  color: hsl(348, 86%, 61%);
}

.field:not(:last-child) {
  margin-bottom: 0.75rem;
}
.field.has-addons {
  display: flex;
  justify-content: flex-start;
}
.field.has-addons .control:not(:last-child) {
  margin-right: -1px;
}
.field.has-addons .control:not(:first-child):not(:last-child) .button,
.field.has-addons .control:not(:first-child):not(:last-child) .input,
.field.has-addons .control:not(:first-child):not(:last-child) .select select {
  border-radius: 0;
}
.field.has-addons .control:first-child:not(:only-child) .button,
.field.has-addons .control:first-child:not(:only-child) .input,
.field.has-addons .control:first-child:not(:only-child) .select select {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.field.has-addons .control:last-child:not(:only-child) .button,
.field.has-addons .control:last-child:not(:only-child) .input,
.field.has-addons .control:last-child:not(:only-child) .select select {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.field.has-addons .control .button:not([disabled]):hover, .field.has-addons .control .button:not([disabled]).is-hovered,
.field.has-addons .control .input:not([disabled]):hover,
.field.has-addons .control .input:not([disabled]).is-hovered,
.field.has-addons .control .select select:not([disabled]):hover,
.field.has-addons .control .select select:not([disabled]).is-hovered {
  z-index: 2;
}
.field.has-addons .control .button:not([disabled]):focus, .field.has-addons .control .button:not([disabled]).is-focused, .field.has-addons .control .button:not([disabled]):active, .field.has-addons .control .button:not([disabled]).is-active,
.field.has-addons .control .input:not([disabled]):focus,
.field.has-addons .control .input:not([disabled]).is-focused,
.field.has-addons .control .input:not([disabled]):active,
.field.has-addons .control .input:not([disabled]).is-active,
.field.has-addons .control .select select:not([disabled]):focus,
.field.has-addons .control .select select:not([disabled]).is-focused,
.field.has-addons .control .select select:not([disabled]):active,
.field.has-addons .control .select select:not([disabled]).is-active {
  z-index: 3;
}
.field.has-addons .control .button:not([disabled]):focus:hover, .field.has-addons .control .button:not([disabled]).is-focused:hover, .field.has-addons .control .button:not([disabled]):active:hover, .field.has-addons .control .button:not([disabled]).is-active:hover,
.field.has-addons .control .input:not([disabled]):focus:hover,
.field.has-addons .control .input:not([disabled]).is-focused:hover,
.field.has-addons .control .input:not([disabled]):active:hover,
.field.has-addons .control .input:not([disabled]).is-active:hover,
.field.has-addons .control .select select:not([disabled]):focus:hover,
.field.has-addons .control .select select:not([disabled]).is-focused:hover,
.field.has-addons .control .select select:not([disabled]):active:hover,
.field.has-addons .control .select select:not([disabled]).is-active:hover {
  z-index: 4;
}
.field.has-addons .control.is-expanded {
  flex-grow: 1;
  flex-shrink: 1;
}
.field.has-addons.has-addons-centered {
  justify-content: center;
}
.field.has-addons.has-addons-right {
  justify-content: flex-end;
}
.field.has-addons.has-addons-fullwidth .control {
  flex-grow: 1;
  flex-shrink: 0;
}
.field.is-grouped {
  display: flex;
  justify-content: flex-start;
}
.field.is-grouped > .control {
  flex-shrink: 0;
}
.field.is-grouped > .control:not(:last-child) {
  margin-bottom: 0;
  margin-right: 0.75rem;
}
.field.is-grouped > .control.is-expanded {
  flex-grow: 1;
  flex-shrink: 1;
}
.field.is-grouped.is-grouped-centered {
  justify-content: center;
}
.field.is-grouped.is-grouped-right {
  justify-content: flex-end;
}
.field.is-grouped.is-grouped-multiline {
  flex-wrap: wrap;
}
.field.is-grouped.is-grouped-multiline > .control:last-child, .field.is-grouped.is-grouped-multiline > .control:not(:last-child) {
  margin-bottom: 0.75rem;
}
.field.is-grouped.is-grouped-multiline:last-child {
  margin-bottom: -0.75rem;
}
.field.is-grouped.is-grouped-multiline:not(:last-child) {
  margin-bottom: 0;
}
@media screen and (min-width: 769px), print {
  .field.is-horizontal {
    display: flex;
  }
}

.field-label .label {
  font-size: inherit;
}
@media screen and (max-width: 768px) {
  .field-label {
    margin-bottom: 0.5rem;
  }
}
@media screen and (min-width: 769px), print {
  .field-label {
    flex-basis: 0;
    flex-grow: 1;
    flex-shrink: 0;
    margin-right: 1.5rem;
    text-align: right;
  }
  .field-label.is-small {
    font-size: 0.75rem;
    padding-top: 0.375em;
  }
  .field-label.is-normal {
    padding-top: 0.375em;
  }
  .field-label.is-medium {
    font-size: 1.25rem;
    padding-top: 0.375em;
  }
  .field-label.is-large {
    font-size: 1.5rem;
    padding-top: 0.375em;
  }
}

.field-body .field .field {
  margin-bottom: 0;
}
@media screen and (min-width: 769px), print {
  .field-body {
    display: flex;
    flex-basis: 0;
    flex-grow: 5;
    flex-shrink: 1;
  }
  .field-body .field {
    margin-bottom: 0;
  }
  .field-body > .field {
    flex-shrink: 1;
  }
  .field-body > .field:not(.is-narrow) {
    flex-grow: 1;
  }
  .field-body > .field:not(:last-child) {
    margin-right: 0.75rem;
  }
}

.control {
  box-sizing: border-box;
  clear: both;
  font-size: 1rem;
  position: relative;
  text-align: inherit;
}
.control.has-icons-left .input:focus ~ .icon,
.control.has-icons-left .select:focus ~ .icon, .control.has-icons-right .input:focus ~ .icon,
.control.has-icons-right .select:focus ~ .icon {
  color: hsl(0, 0%, 29%);
}
.control.has-icons-left .input.is-small ~ .icon,
.control.has-icons-left .select.is-small ~ .icon, .control.has-icons-right .input.is-small ~ .icon,
.control.has-icons-right .select.is-small ~ .icon {
  font-size: 0.75rem;
}
.control.has-icons-left .input.is-medium ~ .icon,
.control.has-icons-left .select.is-medium ~ .icon, .control.has-icons-right .input.is-medium ~ .icon,
.control.has-icons-right .select.is-medium ~ .icon {
  font-size: 1.25rem;
}
.control.has-icons-left .input.is-large ~ .icon,
.control.has-icons-left .select.is-large ~ .icon, .control.has-icons-right .input.is-large ~ .icon,
.control.has-icons-right .select.is-large ~ .icon {
  font-size: 1.5rem;
}
.control.has-icons-left .icon, .control.has-icons-right .icon {
  color: hsl(0, 0%, 86%);
  height: 2.5em;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 2.5em;
  z-index: 4;
}
.control.has-icons-left .input,
.control.has-icons-left .select select {
  padding-left: 2.5em;
}
.control.has-icons-left .icon.is-left {
  left: 0;
}
.control.has-icons-right .input,
.control.has-icons-right .select select {
  padding-right: 2.5em;
}
.control.has-icons-right .icon.is-right {
  right: 0;
}
.control.is-loading::after {
  position: absolute !important;
  right: 0.625em;
  top: 0.625em;
  z-index: 4;
}
.control.is-loading.is-small:after {
  font-size: 0.75rem;
}
.control.is-loading.is-medium:after {
  font-size: 1.25rem;
}
.control.is-loading.is-large:after {
  font-size: 1.5rem;
}

/* Bulma Form */
.select select, .textarea, .input {
  background-color: hsl(0, 0%, 100%);
  border-color: hsl(0, 0%, 86%);
  border-radius: 4px;
  color: hsl(0, 0%, 21%);
}
.select select::-moz-placeholder, .textarea::-moz-placeholder, .input::-moz-placeholder {
  color: rgba(53.55, 53.55, 53.55, 0.3);
}
.select select::-webkit-input-placeholder, .textarea::-webkit-input-placeholder, .input::-webkit-input-placeholder {
  color: rgba(53.55, 53.55, 53.55, 0.3);
}
.select select:-moz-placeholder, .textarea:-moz-placeholder, .input:-moz-placeholder {
  color: rgba(53.55, 53.55, 53.55, 0.3);
}
.select select:-ms-input-placeholder, .textarea:-ms-input-placeholder, .input:-ms-input-placeholder {
  color: rgba(53.55, 53.55, 53.55, 0.3);
}
.select select:hover, .textarea:hover, .input:hover, .select select.is-hovered, .is-hovered.textarea, .is-hovered.input {
  border-color: hsl(0, 0%, 71%);
}
.select select:focus, .textarea:focus, .input:focus, .select select.is-focused, .is-focused.textarea, .is-focused.input, .select select:active, .textarea:active, .input:active, .select select.is-active, .is-active.textarea, .is-active.input {
  border-color: hsl(229, 53%, 53%);
  box-shadow: 0 0 0 0.125em rgba(71.6295, 94.92035, 198.6705, 0.25);
}
.select select[disabled], [disabled].textarea, [disabled].input, fieldset[disabled] .select select, .select fieldset[disabled] select, fieldset[disabled] .textarea, fieldset[disabled] .input {
  background-color: hsl(0, 0%, 96%);
  border-color: hsl(0, 0%, 96%);
  box-shadow: none;
  color: hsl(0, 0%, 48%);
}
.select select[disabled]::-moz-placeholder, [disabled].textarea::-moz-placeholder, [disabled].input::-moz-placeholder, fieldset[disabled] .select select::-moz-placeholder, .select fieldset[disabled] select::-moz-placeholder, fieldset[disabled] .textarea::-moz-placeholder, fieldset[disabled] .input::-moz-placeholder {
  color: rgba(122.4, 122.4, 122.4, 0.3);
}
.select select[disabled]::-webkit-input-placeholder, [disabled].textarea::-webkit-input-placeholder, [disabled].input::-webkit-input-placeholder, fieldset[disabled] .select select::-webkit-input-placeholder, .select fieldset[disabled] select::-webkit-input-placeholder, fieldset[disabled] .textarea::-webkit-input-placeholder, fieldset[disabled] .input::-webkit-input-placeholder {
  color: rgba(122.4, 122.4, 122.4, 0.3);
}
.select select[disabled]:-moz-placeholder, [disabled].textarea:-moz-placeholder, [disabled].input:-moz-placeholder, fieldset[disabled] .select select:-moz-placeholder, .select fieldset[disabled] select:-moz-placeholder, fieldset[disabled] .textarea:-moz-placeholder, fieldset[disabled] .input:-moz-placeholder {
  color: rgba(122.4, 122.4, 122.4, 0.3);
}
.select select[disabled]:-ms-input-placeholder, [disabled].textarea:-ms-input-placeholder, [disabled].input:-ms-input-placeholder, fieldset[disabled] .select select:-ms-input-placeholder, .select fieldset[disabled] select:-ms-input-placeholder, fieldset[disabled] .textarea:-ms-input-placeholder, fieldset[disabled] .input:-ms-input-placeholder {
  color: rgba(122.4, 122.4, 122.4, 0.3);
}

.textarea, .input {
  box-shadow: inset 0 0.0625em 0.125em rgba(10.2, 10.2, 10.2, 0.05);
  max-width: 100%;
  width: 100%;
}
[readonly].textarea, [readonly].input {
  box-shadow: none;
}
.is-white.textarea, .is-white.input {
  border-color: hsl(0, 0%, 100%);
}
.is-white.textarea:focus, .is-white.input:focus, .is-white.is-focused.textarea, .is-white.is-focused.input, .is-white.textarea:active, .is-white.input:active, .is-white.is-active.textarea, .is-white.is-active.input {
  box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25);
}
.is-black.textarea, .is-black.input {
  border-color: hsl(0, 0%, 4%);
}
.is-black.textarea:focus, .is-black.input:focus, .is-black.is-focused.textarea, .is-black.is-focused.input, .is-black.textarea:active, .is-black.input:active, .is-black.is-active.textarea, .is-black.is-active.input {
  box-shadow: 0 0 0 0.125em rgba(10.2, 10.2, 10.2, 0.25);
}
.is-light.textarea, .is-light.input {
  border-color: hsl(0, 0%, 96%);
}
.is-light.textarea:focus, .is-light.input:focus, .is-light.is-focused.textarea, .is-light.is-focused.input, .is-light.textarea:active, .is-light.input:active, .is-light.is-active.textarea, .is-light.is-active.input {
  box-shadow: 0 0 0 0.125em rgba(244.8, 244.8, 244.8, 0.25);
}
.is-dark.textarea, .is-dark.input {
  border-color: hsl(0, 0%, 21%);
}
.is-dark.textarea:focus, .is-dark.input:focus, .is-dark.is-focused.textarea, .is-dark.is-focused.input, .is-dark.textarea:active, .is-dark.input:active, .is-dark.is-active.textarea, .is-dark.is-active.input {
  box-shadow: 0 0 0 0.125em rgba(53.55, 53.55, 53.55, 0.25);
}
.is-primary.textarea, .is-primary.input {
  border-color: hsl(171, 100%, 41%);
}
.is-primary.textarea:focus, .is-primary.input:focus, .is-primary.is-focused.textarea, .is-primary.is-focused.input, .is-primary.textarea:active, .is-primary.input:active, .is-primary.is-active.textarea, .is-primary.is-active.input {
  box-shadow: 0 0 0 0.125em rgba(0, 209.1, 177.735, 0.25);
}
.is-link.textarea, .is-link.input {
  border-color: hsl(229, 53%, 53%);
}
.is-link.textarea:focus, .is-link.input:focus, .is-link.is-focused.textarea, .is-link.is-focused.input, .is-link.textarea:active, .is-link.input:active, .is-link.is-active.textarea, .is-link.is-active.input {
  box-shadow: 0 0 0 0.125em rgba(71.6295, 94.92035, 198.6705, 0.25);
}
.is-info.textarea, .is-info.input {
  border-color: hsl(207, 61%, 53%);
}
.is-info.textarea:focus, .is-info.input:focus, .is-info.is-focused.textarea, .is-info.is-focused.input, .is-info.textarea:active, .is-info.input:active, .is-info.is-active.textarea, .is-info.is-active.input {
  box-shadow: 0 0 0 0.125em rgba(62.0415, 142.46085, 208.2585, 0.25);
}
.is-success.textarea, .is-success.input {
  border-color: hsl(153, 53%, 53%);
}
.is-success.textarea:focus, .is-success.input:focus, .is-success.is-focused.textarea, .is-success.is-focused.input, .is-success.textarea:active, .is-success.input:active, .is-success.is-active.textarea, .is-success.is-active.input {
  box-shadow: 0 0 0 0.125em rgba(71.6295, 198.6705, 141.50205, 0.25);
}
.is-warning.textarea, .is-warning.input {
  border-color: hsl(44, 100%, 77%);
}
.is-warning.textarea:focus, .is-warning.input:focus, .is-warning.is-focused.textarea, .is-warning.is-focused.input, .is-warning.textarea:active, .is-warning.input:active, .is-warning.is-active.textarea, .is-warning.is-active.input {
  box-shadow: 0 0 0 0.125em rgba(255, 223.72, 137.7, 0.25);
}
.is-danger.textarea, .is-danger.input {
  border-color: hsl(348, 86%, 61%);
}
.is-danger.textarea:focus, .is-danger.input:focus, .is-danger.is-focused.textarea, .is-danger.is-focused.input, .is-danger.textarea:active, .is-danger.input:active, .is-danger.is-active.textarea, .is-danger.is-active.input {
  box-shadow: 0 0 0 0.125em rgba(241.077, 70.023, 104.2338, 0.25);
}
.is-small.textarea, .is-small.input {
  border-radius: 2px;
  font-size: 0.75rem;
}
.is-medium.textarea, .is-medium.input {
  font-size: 1.25rem;
}
.is-large.textarea, .is-large.input {
  font-size: 1.5rem;
}
.is-fullwidth.textarea, .is-fullwidth.input {
  display: block;
  width: 100%;
}
.is-inline.textarea, .is-inline.input {
  display: inline;
  width: auto;
}

.input.is-rounded {
  border-radius: 9999px;
  padding-left: calc(calc(0.75em - 1px) + 0.375em);
  padding-right: calc(calc(0.75em - 1px) + 0.375em);
}
.input.is-static {
  background-color: transparent;
  border-color: transparent;
  box-shadow: none;
  padding-left: 0;
  padding-right: 0;
}

.textarea {
  display: block;
  max-width: 100%;
  min-width: 100%;
  padding: calc(0.75em - 1px);
  resize: vertical;
}
.textarea:not([rows]) {
  max-height: 40em;
  min-height: 8em;
}
.textarea[rows] {
  height: initial;
}
.textarea.has-fixed-size {
  resize: none;
}

.radio, .checkbox {
  cursor: pointer;
  display: inline-block;
  line-height: 1.25;
  position: relative;
}
.radio input, .checkbox input {
  cursor: pointer;
}
.radio:hover, .checkbox:hover {
  color: hsl(0, 0%, 21%);
}
[disabled].radio, [disabled].checkbox, fieldset[disabled] .radio, fieldset[disabled] .checkbox,
.radio input[disabled],
.checkbox input[disabled] {
  color: hsl(0, 0%, 48%);
  cursor: not-allowed;
}

.radio + .radio {
  margin-left: 0.5em;
}

.select {
  display: inline-block;
  max-width: 100%;
  position: relative;
  vertical-align: top;
}
.select:not(.is-multiple) {
  height: 2.5em;
}
.select:not(.is-multiple):not(.is-loading)::after {
  border-color: hsl(229, 53%, 53%);
  right: 1.125em;
  z-index: 4;
}
.select.is-rounded select {
  border-radius: 9999px;
  padding-left: 1em;
}
.select select {
  cursor: pointer;
  display: block;
  font-size: 1em;
  max-width: 100%;
  outline: none;
}
.select select::-ms-expand {
  display: none;
}
.select select[disabled]:hover, fieldset[disabled] .select select:hover {
  border-color: hsl(0, 0%, 96%);
}
.select select:not([multiple]) {
  padding-right: 2.5em;
}
.select select[multiple] {
  height: auto;
  padding: 0;
}
.select select[multiple] option {
  padding: 0.5em 1em;
}
.select:not(.is-multiple):not(.is-loading):hover::after {
  border-color: hsl(0, 0%, 21%);
}
.select.is-white:not(:hover)::after {
  border-color: hsl(0, 0%, 100%);
}
.select.is-white select {
  border-color: hsl(0, 0%, 100%);
}
.select.is-white select:hover, .select.is-white select.is-hovered {
  border-color: hsl(0, 0%, 95%);
}
.select.is-white select:focus, .select.is-white select.is-focused, .select.is-white select:active, .select.is-white select.is-active {
  box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25);
}
.select.is-black:not(:hover)::after {
  border-color: hsl(0, 0%, 4%);
}
.select.is-black select {
  border-color: hsl(0, 0%, 4%);
}
.select.is-black select:hover, .select.is-black select.is-hovered {
  border-color: hsl(0, 0%, 0%);
}
.select.is-black select:focus, .select.is-black select.is-focused, .select.is-black select:active, .select.is-black select.is-active {
  box-shadow: 0 0 0 0.125em rgba(10.2, 10.2, 10.2, 0.25);
}
.select.is-light:not(:hover)::after {
  border-color: hsl(0, 0%, 96%);
}
.select.is-light select {
  border-color: hsl(0, 0%, 96%);
}
.select.is-light select:hover, .select.is-light select.is-hovered {
  border-color: hsl(0, 0%, 91%);
}
.select.is-light select:focus, .select.is-light select.is-focused, .select.is-light select:active, .select.is-light select.is-active {
  box-shadow: 0 0 0 0.125em rgba(244.8, 244.8, 244.8, 0.25);
}
.select.is-dark:not(:hover)::after {
  border-color: hsl(0, 0%, 21%);
}
.select.is-dark select {
  border-color: hsl(0, 0%, 21%);
}
.select.is-dark select:hover, .select.is-dark select.is-hovered {
  border-color: hsl(0, 0%, 16%);
}
.select.is-dark select:focus, .select.is-dark select.is-focused, .select.is-dark select:active, .select.is-dark select.is-active {
  box-shadow: 0 0 0 0.125em rgba(53.55, 53.55, 53.55, 0.25);
}
.select.is-primary:not(:hover)::after {
  border-color: hsl(171, 100%, 41%);
}
.select.is-primary select {
  border-color: hsl(171, 100%, 41%);
}
.select.is-primary select:hover, .select.is-primary select.is-hovered {
  border-color: hsl(171, 100%, 36%);
}
.select.is-primary select:focus, .select.is-primary select.is-focused, .select.is-primary select:active, .select.is-primary select.is-active {
  box-shadow: 0 0 0 0.125em rgba(0, 209.1, 177.735, 0.25);
}
.select.is-link:not(:hover)::after {
  border-color: hsl(229, 53%, 53%);
}
.select.is-link select {
  border-color: hsl(229, 53%, 53%);
}
.select.is-link select:hover, .select.is-link select.is-hovered {
  border-color: hsl(229, 53%, 48%);
}
.select.is-link select:focus, .select.is-link select.is-focused, .select.is-link select:active, .select.is-link select.is-active {
  box-shadow: 0 0 0 0.125em rgba(71.6295, 94.92035, 198.6705, 0.25);
}
.select.is-info:not(:hover)::after {
  border-color: hsl(207, 61%, 53%);
}
.select.is-info select {
  border-color: hsl(207, 61%, 53%);
}
.select.is-info select:hover, .select.is-info select.is-hovered {
  border-color: hsl(207, 61%, 48%);
}
.select.is-info select:focus, .select.is-info select.is-focused, .select.is-info select:active, .select.is-info select.is-active {
  box-shadow: 0 0 0 0.125em rgba(62.0415, 142.46085, 208.2585, 0.25);
}
.select.is-success:not(:hover)::after {
  border-color: hsl(153, 53%, 53%);
}
.select.is-success select {
  border-color: hsl(153, 53%, 53%);
}
.select.is-success select:hover, .select.is-success select.is-hovered {
  border-color: hsl(153, 53%, 48%);
}
.select.is-success select:focus, .select.is-success select.is-focused, .select.is-success select:active, .select.is-success select.is-active {
  box-shadow: 0 0 0 0.125em rgba(71.6295, 198.6705, 141.50205, 0.25);
}
.select.is-warning:not(:hover)::after {
  border-color: hsl(44, 100%, 77%);
}
.select.is-warning select {
  border-color: hsl(44, 100%, 77%);
}
.select.is-warning select:hover, .select.is-warning select.is-hovered {
  border-color: hsl(44, 100%, 72%);
}
.select.is-warning select:focus, .select.is-warning select.is-focused, .select.is-warning select:active, .select.is-warning select.is-active {
  box-shadow: 0 0 0 0.125em rgba(255, 223.72, 137.7, 0.25);
}
.select.is-danger:not(:hover)::after {
  border-color: hsl(348, 86%, 61%);
}
.select.is-danger select {
  border-color: hsl(348, 86%, 61%);
}
.select.is-danger select:hover, .select.is-danger select.is-hovered {
  border-color: hsl(348, 86%, 56%);
}
.select.is-danger select:focus, .select.is-danger select.is-focused, .select.is-danger select:active, .select.is-danger select.is-active {
  box-shadow: 0 0 0 0.125em rgba(241.077, 70.023, 104.2338, 0.25);
}
.select.is-small {
  border-radius: 2px;
  font-size: 0.75rem;
}
.select.is-medium {
  font-size: 1.25rem;
}
.select.is-large {
  font-size: 1.5rem;
}
.select.is-disabled::after {
  border-color: hsl(0, 0%, 48%) !important;
  opacity: 0.5;
}
.select.is-fullwidth {
  width: 100%;
}
.select.is-fullwidth select {
  width: 100%;
}
.select.is-loading::after {
  margin-top: 0;
  position: absolute;
  right: 0.625em;
  top: 0.625em;
  transform: none;
}
.select.is-loading.is-small:after {
  font-size: 0.75rem;
}
.select.is-loading.is-medium:after {
  font-size: 1.25rem;
}
.select.is-loading.is-large:after {
  font-size: 1.5rem;
}

.file {
  align-items: stretch;
  display: flex;
  justify-content: flex-start;
  position: relative;
}
.file.is-white .file-cta {
  background-color: hsl(0, 0%, 100%);
  border-color: transparent;
  color: hsl(0, 0%, 4%);
}
.file.is-white:hover .file-cta, .file.is-white.is-hovered .file-cta {
  background-color: hsl(0, 0%, 97.5%);
  border-color: transparent;
  color: hsl(0, 0%, 4%);
}
.file.is-white:focus .file-cta, .file.is-white.is-focused .file-cta {
  border-color: transparent;
  box-shadow: 0 0 0.5em rgba(255, 255, 255, 0.25);
  color: hsl(0, 0%, 4%);
}
.file.is-white:active .file-cta, .file.is-white.is-active .file-cta {
  background-color: hsl(0, 0%, 95%);
  border-color: transparent;
  color: hsl(0, 0%, 4%);
}
.file.is-black .file-cta {
  background-color: hsl(0, 0%, 4%);
  border-color: transparent;
  color: hsl(0, 0%, 100%);
}
.file.is-black:hover .file-cta, .file.is-black.is-hovered .file-cta {
  background-color: hsl(0, 0%, 1.5%);
  border-color: transparent;
  color: hsl(0, 0%, 100%);
}
.file.is-black:focus .file-cta, .file.is-black.is-focused .file-cta {
  border-color: transparent;
  box-shadow: 0 0 0.5em rgba(10.2, 10.2, 10.2, 0.25);
  color: hsl(0, 0%, 100%);
}
.file.is-black:active .file-cta, .file.is-black.is-active .file-cta {
  background-color: hsl(0, 0%, 0%);
  border-color: transparent;
  color: hsl(0, 0%, 100%);
}
.file.is-light .file-cta {
  background-color: hsl(0, 0%, 96%);
  border-color: transparent;
  color: rgba(0, 0, 0, 0.7);
}
.file.is-light:hover .file-cta, .file.is-light.is-hovered .file-cta {
  background-color: hsl(0, 0%, 93.5%);
  border-color: transparent;
  color: rgba(0, 0, 0, 0.7);
}
.file.is-light:focus .file-cta, .file.is-light.is-focused .file-cta {
  border-color: transparent;
  box-shadow: 0 0 0.5em rgba(244.8, 244.8, 244.8, 0.25);
  color: rgba(0, 0, 0, 0.7);
}
.file.is-light:active .file-cta, .file.is-light.is-active .file-cta {
  background-color: hsl(0, 0%, 91%);
  border-color: transparent;
  color: rgba(0, 0, 0, 0.7);
}
.file.is-dark .file-cta {
  background-color: hsl(0, 0%, 21%);
  border-color: transparent;
  color: #fff;
}
.file.is-dark:hover .file-cta, .file.is-dark.is-hovered .file-cta {
  background-color: hsl(0, 0%, 18.5%);
  border-color: transparent;
  color: #fff;
}
.file.is-dark:focus .file-cta, .file.is-dark.is-focused .file-cta {
  border-color: transparent;
  box-shadow: 0 0 0.5em rgba(53.55, 53.55, 53.55, 0.25);
  color: #fff;
}
.file.is-dark:active .file-cta, .file.is-dark.is-active .file-cta {
  background-color: hsl(0, 0%, 16%);
  border-color: transparent;
  color: #fff;
}
.file.is-primary .file-cta {
  background-color: hsl(171, 100%, 41%);
  border-color: transparent;
  color: #fff;
}
.file.is-primary:hover .file-cta, .file.is-primary.is-hovered .file-cta {
  background-color: hsl(171, 100%, 38.5%);
  border-color: transparent;
  color: #fff;
}
.file.is-primary:focus .file-cta, .file.is-primary.is-focused .file-cta {
  border-color: transparent;
  box-shadow: 0 0 0.5em rgba(0, 209.1, 177.735, 0.25);
  color: #fff;
}
.file.is-primary:active .file-cta, .file.is-primary.is-active .file-cta {
  background-color: hsl(171, 100%, 36%);
  border-color: transparent;
  color: #fff;
}
.file.is-link .file-cta {
  background-color: hsl(229, 53%, 53%);
  border-color: transparent;
  color: #fff;
}
.file.is-link:hover .file-cta, .file.is-link.is-hovered .file-cta {
  background-color: hsl(229, 53%, 50.5%);
  border-color: transparent;
  color: #fff;
}
.file.is-link:focus .file-cta, .file.is-link.is-focused .file-cta {
  border-color: transparent;
  box-shadow: 0 0 0.5em rgba(71.6295, 94.92035, 198.6705, 0.25);
  color: #fff;
}
.file.is-link:active .file-cta, .file.is-link.is-active .file-cta {
  background-color: hsl(229, 53%, 48%);
  border-color: transparent;
  color: #fff;
}
.file.is-info .file-cta {
  background-color: hsl(207, 61%, 53%);
  border-color: transparent;
  color: #fff;
}
.file.is-info:hover .file-cta, .file.is-info.is-hovered .file-cta {
  background-color: hsl(207, 61%, 50.5%);
  border-color: transparent;
  color: #fff;
}
.file.is-info:focus .file-cta, .file.is-info.is-focused .file-cta {
  border-color: transparent;
  box-shadow: 0 0 0.5em rgba(62.0415, 142.46085, 208.2585, 0.25);
  color: #fff;
}
.file.is-info:active .file-cta, .file.is-info.is-active .file-cta {
  background-color: hsl(207, 61%, 48%);
  border-color: transparent;
  color: #fff;
}
.file.is-success .file-cta {
  background-color: hsl(153, 53%, 53%);
  border-color: transparent;
  color: #fff;
}
.file.is-success:hover .file-cta, .file.is-success.is-hovered .file-cta {
  background-color: hsl(153, 53%, 50.5%);
  border-color: transparent;
  color: #fff;
}
.file.is-success:focus .file-cta, .file.is-success.is-focused .file-cta {
  border-color: transparent;
  box-shadow: 0 0 0.5em rgba(71.6295, 198.6705, 141.50205, 0.25);
  color: #fff;
}
.file.is-success:active .file-cta, .file.is-success.is-active .file-cta {
  background-color: hsl(153, 53%, 48%);
  border-color: transparent;
  color: #fff;
}
.file.is-warning .file-cta {
  background-color: hsl(44, 100%, 77%);
  border-color: transparent;
  color: rgba(0, 0, 0, 0.7);
}
.file.is-warning:hover .file-cta, .file.is-warning.is-hovered .file-cta {
  background-color: hsl(44, 100%, 74.5%);
  border-color: transparent;
  color: rgba(0, 0, 0, 0.7);
}
.file.is-warning:focus .file-cta, .file.is-warning.is-focused .file-cta {
  border-color: transparent;
  box-shadow: 0 0 0.5em rgba(255, 223.72, 137.7, 0.25);
  color: rgba(0, 0, 0, 0.7);
}
.file.is-warning:active .file-cta, .file.is-warning.is-active .file-cta {
  background-color: hsl(44, 100%, 72%);
  border-color: transparent;
  color: rgba(0, 0, 0, 0.7);
}
.file.is-danger .file-cta {
  background-color: hsl(348, 86%, 61%);
  border-color: transparent;
  color: #fff;
}
.file.is-danger:hover .file-cta, .file.is-danger.is-hovered .file-cta {
  background-color: hsl(348, 86%, 58.5%);
  border-color: transparent;
  color: #fff;
}
.file.is-danger:focus .file-cta, .file.is-danger.is-focused .file-cta {
  border-color: transparent;
  box-shadow: 0 0 0.5em rgba(241.077, 70.023, 104.2338, 0.25);
  color: #fff;
}
.file.is-danger:active .file-cta, .file.is-danger.is-active .file-cta {
  background-color: hsl(348, 86%, 56%);
  border-color: transparent;
  color: #fff;
}
.file.is-small {
  font-size: 0.75rem;
}
.file.is-normal {
  font-size: 1rem;
}
.file.is-medium {
  font-size: 1.25rem;
}
.file.is-medium .file-icon .fa {
  font-size: 21px;
}
.file.is-large {
  font-size: 1.5rem;
}
.file.is-large .file-icon .fa {
  font-size: 28px;
}
.file.has-name .file-cta {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.file.has-name .file-name {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.file.has-name.is-empty .file-cta {
  border-radius: 4px;
}
.file.has-name.is-empty .file-name {
  display: none;
}
.file.is-boxed .file-label {
  flex-direction: column;
}
.file.is-boxed .file-cta {
  flex-direction: column;
  height: auto;
  padding: 1em 3em;
}
.file.is-boxed .file-name {
  border-width: 0 1px 1px;
}
.file.is-boxed .file-icon {
  height: 1.5em;
  width: 1.5em;
}
.file.is-boxed .file-icon .fa {
  font-size: 21px;
}
.file.is-boxed.is-small .file-icon .fa {
  font-size: 14px;
}
.file.is-boxed.is-medium .file-icon .fa {
  font-size: 28px;
}
.file.is-boxed.is-large .file-icon .fa {
  font-size: 35px;
}
.file.is-boxed.has-name .file-cta {
  border-radius: 4px 4px 0 0;
}
.file.is-boxed.has-name .file-name {
  border-radius: 0 0 4px 4px;
  border-width: 0 1px 1px;
}
.file.is-centered {
  justify-content: center;
}
.file.is-fullwidth .file-label {
  width: 100%;
}
.file.is-fullwidth .file-name {
  flex-grow: 1;
  max-width: none;
}
.file.is-right {
  justify-content: flex-end;
}
.file.is-right .file-cta {
  border-radius: 0 4px 4px 0;
}
.file.is-right .file-name {
  border-radius: 4px 0 0 4px;
  border-width: 1px 0 1px 1px;
  order: -1;
}

.file-label {
  align-items: stretch;
  display: flex;
  cursor: pointer;
  justify-content: flex-start;
  overflow: hidden;
  position: relative;
}
.file-label:hover .file-cta {
  background-color: hsl(0, 0%, 93.5%);
  color: hsl(0, 0%, 21%);
}
.file-label:hover .file-name {
  border-color: hsl(0, 0%, 83.5%);
}
.file-label:active .file-cta {
  background-color: hsl(0, 0%, 91%);
  color: hsl(0, 0%, 21%);
}
.file-label:active .file-name {
  border-color: hsl(0, 0%, 81%);
}

.file-input {
  height: 100%;
  left: 0;
  opacity: 0;
  outline: none;
  position: absolute;
  top: 0;
  width: 100%;
}

.file-cta,
.file-name {
  border-color: hsl(0, 0%, 86%);
  border-radius: 4px;
  font-size: 1em;
  padding-left: 1em;
  padding-right: 1em;
  white-space: nowrap;
}

.file-cta {
  background-color: hsl(0, 0%, 96%);
  color: hsl(0, 0%, 29%);
}

.file-name {
  border-color: hsl(0, 0%, 86%);
  border-style: solid;
  border-width: 1px 1px 1px 0;
  display: block;
  max-width: 16em;
  overflow: hidden;
  text-align: inherit;
  text-overflow: ellipsis;
}

.file-icon {
  align-items: center;
  display: flex;
  height: 1em;
  justify-content: center;
  margin-right: 0.5em;
  width: 1em;
}
.file-icon .fa {
  font-size: 14px;
}

.label {
  color: hsl(0, 0%, 21%);
  display: block;
  font-size: 1rem;
  font-weight: 700;
}
.label:not(:last-child) {
  margin-bottom: 0.5em;
}
.label.is-small {
  font-size: 0.75rem;
}
.label.is-medium {
  font-size: 1.25rem;
}
.label.is-large {
  font-size: 1.5rem;
}

.help {
  display: block;
  font-size: 0.75rem;
  margin-top: 0.25rem;
}
.help.is-white {
  color: hsl(0, 0%, 100%);
}
.help.is-black {
  color: hsl(0, 0%, 4%);
}
.help.is-light {
  color: hsl(0, 0%, 96%);
}
.help.is-dark {
  color: hsl(0, 0%, 21%);
}
.help.is-primary {
  color: hsl(171, 100%, 41%);
}
.help.is-link {
  color: hsl(229, 53%, 53%);
}
.help.is-info {
  color: hsl(207, 61%, 53%);
}
.help.is-success {
  color: hsl(153, 53%, 53%);
}
.help.is-warning {
  color: hsl(44, 100%, 77%);
}
.help.is-danger {
  color: hsl(348, 86%, 61%);
}

.field:not(:last-child) {
  margin-bottom: 0.75rem;
}
.field.has-addons {
  display: flex;
  justify-content: flex-start;
}
.field.has-addons .control:not(:last-child) {
  margin-right: -1px;
}
.field.has-addons .control:not(:first-child):not(:last-child) .button,
.field.has-addons .control:not(:first-child):not(:last-child) .input,
.field.has-addons .control:not(:first-child):not(:last-child) .select select {
  border-radius: 0;
}
.field.has-addons .control:first-child:not(:only-child) .button,
.field.has-addons .control:first-child:not(:only-child) .input,
.field.has-addons .control:first-child:not(:only-child) .select select {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.field.has-addons .control:last-child:not(:only-child) .button,
.field.has-addons .control:last-child:not(:only-child) .input,
.field.has-addons .control:last-child:not(:only-child) .select select {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.field.has-addons .control .button:not([disabled]):hover, .field.has-addons .control .button:not([disabled]).is-hovered,
.field.has-addons .control .input:not([disabled]):hover,
.field.has-addons .control .input:not([disabled]).is-hovered,
.field.has-addons .control .select select:not([disabled]):hover,
.field.has-addons .control .select select:not([disabled]).is-hovered {
  z-index: 2;
}
.field.has-addons .control .button:not([disabled]):focus, .field.has-addons .control .button:not([disabled]).is-focused, .field.has-addons .control .button:not([disabled]):active, .field.has-addons .control .button:not([disabled]).is-active,
.field.has-addons .control .input:not([disabled]):focus,
.field.has-addons .control .input:not([disabled]).is-focused,
.field.has-addons .control .input:not([disabled]):active,
.field.has-addons .control .input:not([disabled]).is-active,
.field.has-addons .control .select select:not([disabled]):focus,
.field.has-addons .control .select select:not([disabled]).is-focused,
.field.has-addons .control .select select:not([disabled]):active,
.field.has-addons .control .select select:not([disabled]).is-active {
  z-index: 3;
}
.field.has-addons .control .button:not([disabled]):focus:hover, .field.has-addons .control .button:not([disabled]).is-focused:hover, .field.has-addons .control .button:not([disabled]):active:hover, .field.has-addons .control .button:not([disabled]).is-active:hover,
.field.has-addons .control .input:not([disabled]):focus:hover,
.field.has-addons .control .input:not([disabled]).is-focused:hover,
.field.has-addons .control .input:not([disabled]):active:hover,
.field.has-addons .control .input:not([disabled]).is-active:hover,
.field.has-addons .control .select select:not([disabled]):focus:hover,
.field.has-addons .control .select select:not([disabled]).is-focused:hover,
.field.has-addons .control .select select:not([disabled]):active:hover,
.field.has-addons .control .select select:not([disabled]).is-active:hover {
  z-index: 4;
}
.field.has-addons .control.is-expanded {
  flex-grow: 1;
  flex-shrink: 1;
}
.field.has-addons.has-addons-centered {
  justify-content: center;
}
.field.has-addons.has-addons-right {
  justify-content: flex-end;
}
.field.has-addons.has-addons-fullwidth .control {
  flex-grow: 1;
  flex-shrink: 0;
}
.field.is-grouped {
  display: flex;
  justify-content: flex-start;
}
.field.is-grouped > .control {
  flex-shrink: 0;
}
.field.is-grouped > .control:not(:last-child) {
  margin-bottom: 0;
  margin-right: 0.75rem;
}
.field.is-grouped > .control.is-expanded {
  flex-grow: 1;
  flex-shrink: 1;
}
.field.is-grouped.is-grouped-centered {
  justify-content: center;
}
.field.is-grouped.is-grouped-right {
  justify-content: flex-end;
}
.field.is-grouped.is-grouped-multiline {
  flex-wrap: wrap;
}
.field.is-grouped.is-grouped-multiline > .control:last-child, .field.is-grouped.is-grouped-multiline > .control:not(:last-child) {
  margin-bottom: 0.75rem;
}
.field.is-grouped.is-grouped-multiline:last-child {
  margin-bottom: -0.75rem;
}
.field.is-grouped.is-grouped-multiline:not(:last-child) {
  margin-bottom: 0;
}
@media screen and (min-width: 769px), print {
  .field.is-horizontal {
    display: flex;
  }
}

.field-label .label {
  font-size: inherit;
}
@media screen and (max-width: 768px) {
  .field-label {
    margin-bottom: 0.5rem;
  }
}
@media screen and (min-width: 769px), print {
  .field-label {
    flex-basis: 0;
    flex-grow: 1;
    flex-shrink: 0;
    margin-right: 1.5rem;
    text-align: right;
  }
  .field-label.is-small {
    font-size: 0.75rem;
    padding-top: 0.375em;
  }
  .field-label.is-normal {
    padding-top: 0.375em;
  }
  .field-label.is-medium {
    font-size: 1.25rem;
    padding-top: 0.375em;
  }
  .field-label.is-large {
    font-size: 1.5rem;
    padding-top: 0.375em;
  }
}

.field-body .field .field {
  margin-bottom: 0;
}
@media screen and (min-width: 769px), print {
  .field-body {
    display: flex;
    flex-basis: 0;
    flex-grow: 5;
    flex-shrink: 1;
  }
  .field-body .field {
    margin-bottom: 0;
  }
  .field-body > .field {
    flex-shrink: 1;
  }
  .field-body > .field:not(.is-narrow) {
    flex-grow: 1;
  }
  .field-body > .field:not(:last-child) {
    margin-right: 0.75rem;
  }
}

.control {
  box-sizing: border-box;
  clear: both;
  font-size: 1rem;
  position: relative;
  text-align: inherit;
}
.control.has-icons-left .input:focus ~ .icon,
.control.has-icons-left .select:focus ~ .icon, .control.has-icons-right .input:focus ~ .icon,
.control.has-icons-right .select:focus ~ .icon {
  color: hsl(0, 0%, 29%);
}
.control.has-icons-left .input.is-small ~ .icon,
.control.has-icons-left .select.is-small ~ .icon, .control.has-icons-right .input.is-small ~ .icon,
.control.has-icons-right .select.is-small ~ .icon {
  font-size: 0.75rem;
}
.control.has-icons-left .input.is-medium ~ .icon,
.control.has-icons-left .select.is-medium ~ .icon, .control.has-icons-right .input.is-medium ~ .icon,
.control.has-icons-right .select.is-medium ~ .icon {
  font-size: 1.25rem;
}
.control.has-icons-left .input.is-large ~ .icon,
.control.has-icons-left .select.is-large ~ .icon, .control.has-icons-right .input.is-large ~ .icon,
.control.has-icons-right .select.is-large ~ .icon {
  font-size: 1.5rem;
}
.control.has-icons-left .icon, .control.has-icons-right .icon {
  color: hsl(0, 0%, 86%);
  height: 2.5em;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 2.5em;
  z-index: 4;
}
.control.has-icons-left .input,
.control.has-icons-left .select select {
  padding-left: 2.5em;
}
.control.has-icons-left .icon.is-left {
  left: 0;
}
.control.has-icons-right .input,
.control.has-icons-right .select select {
  padding-right: 2.5em;
}
.control.has-icons-right .icon.is-right {
  right: 0;
}
.control.is-loading::after {
  position: absolute !important;
  right: 0.625em;
  top: 0.625em;
  z-index: 4;
}
.control.is-loading.is-small:after {
  font-size: 0.75rem;
}
.control.is-loading.is-medium:after {
  font-size: 1.25rem;
}
.control.is-loading.is-large:after {
  font-size: 1.5rem;
}

#mail_order_item_show .product {
  display: flex;
  column-gap: 64px;
  row-gap: 24px;
}
#mail_order_item_show .product .image {
  width: 352px;
}
#mail_order_item_show .product .image .product_image {
  margin-top: 16px;
}
#mail_order_item_show .product .image .product_image img {
  width: 100%;
  object-fit: cover;
  aspect-ratio: 1/1;
}
#mail_order_item_show .product .other {
  padding-top: 45px;
  width: 320px;
}
#mail_order_item_show .product .other .product_price {
  font-size: 24px;
  margin-bottom: 64px;
}
#mail_order_item_show .product .other .note {
  font-size: 14px;
}
#mail_order_item_show .product .other .note p {
  margin-top: 16px;
}
#mail_order_item_show .product .other .description {
  margin-top: 64px;
}
#mail_order_item_show .product .other .description p {
  margin-top: 24px;
}
#mail_order_item_show .product .other .caveat {
  display: grid;
  margin-top: 24px;
  row-gap: 24px;
}
#mail_order_item_show .other_items {
  width: min(64vw, 640px);
  margin: 120px auto 0px auto;
}
#mail_order_item_show .other_items .title_wrapper {
  display: flex;
  margin: 0px auto 40px auto;
  justify-content: center;
  align-items: center;
}
#mail_order_item_show .other_items .title_wrapper .title {
  white-space: nowrap;
  padding: 0 32px;
}
#mail_order_item_show .other_items .title_wrapper img {
  max-width: 25%;
  width: 100%;
}
#mail_order_item_show .other_items .description {
  text-align: center;
  margin-bottom: 64px;
}
#mail_order_item_show .other_items .title_wrapper h3 {
  white-space: nowrap;
  padding: 0 32px;
  font-family: "Yomogi", cursive;
}
#mail_order_item_show .other_items .title_wrapper img {
  max-width: 25%;
  width: 100%;
}
#mail_order_item_show .other_items .product_container {
  display: grid;
  row-gap: 64px;
  column-gap: 8px;
  grid-template-columns: repeat(3, 1fr);
  flex-wrap: wrap;
}
#mail_order_item_show .other_items .product_container .product_item {
  width: clamp(130px, 20vw, 240px);
}
#mail_order_item_show .other_items .product_container .product_tag_list {
  display: flex;
  gap: 16px;
}
#mail_order_item_show .other_items .product_container .tag {
  font-size: clamp(10px, 1.5vw, 12px);
  padding: 4px clamp(8px, 1.5vw, 16px);
}
#mail_order_item_show .other_items .product_container .reservation_tag {
  border-style: solid;
  border-color: #FFE33F;
}
#mail_order_item_show .other_items .product_container .mail_order_item_tag {
  border-style: solid;
  border-color: #FFE33F;
  background-color: #FFE33F;
}
#mail_order_item_show .other_items .product_container .sold_out_tag {
  border-style: solid;
  border-color: #CBCBCB;
  background-color: #CBCBCB;
}
#mail_order_item_show .other_items .product_container .product_image {
  margin-top: 8px;
}
#mail_order_item_show .other_items .product_container .product_image img {
  width: 100%;
  object-fit: cover;
  aspect-ratio: 1/1;
}
#mail_order_item_show .other_items .product_container .product_name {
  font-size: 20px;
  margin-top: 16px;
  margin-bottom: 0px;
}
#mail_order_item_show .other_items .product_container .product_price {
  margin-top: 0px;
  margin-bottom: 0px;
}
#mail_order_item_show .other_items .product_container {
  width: 100%;
}
#mail_order_item_show .other_items .product_container .product_item {
  width: min(30vw, 180px);
}
#mail_order_item_show .product .other .add_to_cart label {
  font-size: 24px;
}
#mail_order_item_show .product .other .add_to_cart select {
  font-size: 24px;
}
#mail_order_item_show .product .other .add_to_cart .field.number {
  column-gap: 32px;
}
#mail_order_item_show .product .other .add_to_cart .field.button input {
  width: 100%;
  height: 64px;
  background-color: #a36639;
  font-size: 20px;
  text-align: center;
  color: #fff;
}
#mail_order_item_show .product .other .add_to_cart .field.button input:disabled {
  background-color: rgba(163, 102, 57, 0.2705882353);
}
#mail_order_item_show .product .other .add_to_cart .field.button input:disabled:hover {
  cursor: not-allowed;
}

@media screen and (min-width: 450px) and (max-width: 900px) {
  #mail_order_item_show .product {
    display: grid;
  }
  #mail_order_item_show .product .image {
    width: 100%;
  }
  #mail_order_item_show .product .other {
    padding-top: 0px;
    width: 100%;
  }
  #mail_order_item_show .other_items .title_wrapper h3 {
    white-space: nowrap;
    padding: 0 16px;
  }
  #mail_order_item_show .other_items .title_wrapper img {
    max-width: 20%;
    width: 100%;
  }
  #mail_order_item_show .other_items .product_container {
    display: grid;
    row-gap: 64px;
    column-gap: 32px;
    grid-template-columns: repeat(2, 1fr);
    justify-items: center;
  }
}
@media screen and (max-width: 450px) {
  #mail_order_item_show .product {
    display: grid;
    justify-items: center;
  }
  #mail_order_item_show .product .image {
    width: 240px;
  }
  #mail_order_item_show .product .other {
    padding-top: 0px;
    width: 300px;
  }
  #mail_order_item_show .product .other h2 {
    font-size: 24px;
    text-align: center;
  }
  #mail_order_item_show .product .other .product_price {
    font-size: 16px;
    margin-bottom: 48px;
    text-align: center;
  }
  #mail_order_item_show .product .other .add_to_cart {
    width: 300px;
  }
  #mail_order_item_show .product .other .add_to_cart .field.number {
    column-gap: 16px;
  }
  #mail_order_item_show .product .other .description {
    margin-top: 24px;
  }
  #mail_order_item_show .other_items {
    width: 335px;
    margin: 64px -17px 0px -17px;
  }
  #mail_order_item_show .other_items .product_container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin: 0px auto;
    width: 337px;
    column-gap: 8px;
    row-gap: 40px;
  }
  #mail_order_item_show .other_items .product_container .product_item {
    width: 156px;
  }
  #mail_order_item_show .other_items .product_container .product_tag_list {
    gap: 8px;
  }
  #mail_order_item_show .other_items .product_container .tag {
    font-size: 10px;
    padding: 4px 8px;
  }
  #mail_order_item_show .other_items .product_container .product_image img {
    height: 156px;
    width: 156px;
  }
  #mail_order_item_show .other_items .product_container .product_name {
    font-size: 14px;
    margin-top: 8px;
    margin-bottom: 0px;
  }
  #mail_order_item_show .other_items .product_container {
    width: 335px;
    column-gap: 23px;
  }
}
#carts_index .title_wrapper {
  margin: 0px auto 0px auto;
  display: flex;
  align-items: center;
  gap: 16px;
  width: fit-content;
  border-bottom: 1px solid #cbcbcb;
}
#carts_index .title_wrapper .icon {
  width: 32px;
  height: 32px;
}
#carts_index .title_wrapper h2 {
  white-space: nowrap;
}
#carts_index .caveat {
  margin: 32px 0px 64px 0px;
  text-align: center;
}
#carts_index .reservations_cart {
  margin-bottom: 120px;
}
#carts_index .reservations_cart h3 {
  text-align: center;
}
#carts_index .reservations_cart .table_header {
  display: flex;
  background-color: #F8F8F8;
  margin: 16px 0px;
  padding: 8px 0px;
}
#carts_index .reservations_cart .table_body .empty {
  text-align: center;
}
#carts_index .reservations_cart .table_body .total_price {
  text-align: right;
  margin-bottom: 32px;
}
#carts_index .reservations_cart .table_body .total_price span {
  vertical-align: middle;
}
#carts_index .reservations_cart .table_body .total_price .total_price_title {
  margin-right: 0.5em;
}
#carts_index .reservations_cart .table_body .total_price .colon {
  margin-right: 1em;
}
#carts_index .reservations_cart .table_body .total_price .price {
  font-size: 32px;
  color: #e24545;
}
#carts_index .reservations_cart .table_body #mail_order_item_cart_total_price {
  text-align: right;
  margin-bottom: 32px;
}
#carts_index .reservations_cart .table_body #mail_order_item_cart_total_price span {
  vertical-align: middle;
}
#carts_index .reservations_cart .table_body #mail_order_item_cart_total_price .total_price_title {
  margin-right: 0.5em;
}
#carts_index .reservations_cart .table_body #mail_order_item_cart_total_price .colon {
  margin-right: 1em;
}
#carts_index .reservations_cart .table_body #mail_order_item_cart_total_price .price {
  font-size: 32px;
  color: #e24545;
}
#carts_index .reservations_cart .table_body .buttons {
  display: flex;
  justify-content: center;
  column-gap: 32px;
  flex-wrap: wrap-reverse;
  row-gap: 16px;
}
#carts_index .reservations_cart .table_body .buttons li {
  display: flex;
  height: 56px;
  width: 200px;
  justify-content: center;
  align-items: center;
}
#carts_index .reservations_cart .table_body .buttons li a {
  color: #fff;
}
#carts_index .reservations_cart .table_body .buttons .back_to_top {
  background-color: #cbcbcb;
}
#carts_index .reservations_cart .table_body .buttons .goto_order_shopping_address {
  background-color: #a36639;
}
#carts_index .reservations_cart .table_header {
  text-align: center;
}
#carts_index .reservations_cart .table_header .image_name {
  width: 44%;
}
#carts_index .reservations_cart .table_header .reserved_on {
  width: 22%;
}
#carts_index .reservations_cart .table_header .number {
  width: 14%;
}
#carts_index .reservations_cart .table_header .sub_total {
  width: 13%;
}
#carts_index .reservations_cart .table_header .delete {
  width: 7%;
}
#carts_index .reservations_cart .table_body .table_row {
  display: grid;
  align-items: center;
  grid-template-columns: 18% 26% 36% 13% 7%;
  margin-bottom: 24px;
  padding-bottom: 24px;
  border-bottom: 1px solid #cbcbcb;
}
#carts_index .reservations_cart .table_body .table_row .image {
  grid-column: 1/2;
  grid-row: 1/3;
  padding-right: 24px;
}
#carts_index .reservations_cart .table_body .table_row .image img {
  width: 100px;
  object-fit: cover;
  aspect-ratio: 1/1;
  margin-left: auto;
}
#carts_index .reservations_cart .table_body .table_row .name {
  grid-column: 2/3;
  grid-row: 1/2;
  margin-top: auto;
}
#carts_index .reservations_cart .table_body .table_row .price {
  grid-column: 2/3;
  grid-row: 2/3;
  margin-bottom: auto;
}
#carts_index .reservations_cart .table_body .table_row .reserved_on_number {
  grid-column: 3/4;
  grid-row: 1/3;
}
#carts_index .reservations_cart .table_body .table_row .reserved_on_number form {
  display: flex;
  justify-content: space-around;
}
#carts_index .reservations_cart .table_body .table_row .reserved_on_number form .sale_on_container .sale_on_title {
  display: none;
}
#carts_index .reservations_cart .table_body .table_row .reserved_on_number form .sale_on_container .sale_on {
  height: 2em;
  width: 128px;
}
#carts_index .reservations_cart .table_body .table_row .reserved_on_number form .number_container .number_title {
  display: none;
}
#carts_index .reservations_cart .table_body .table_row .reserved_on_number form .number_container .number {
  height: 2em;
  width: 52px;
  text-align: center;
}
#carts_index .reservations_cart .table_body .table_row .sub_total {
  grid-column: 4/5;
  grid-row: 1/3;
  text-align: center;
}
#carts_index .reservations_cart .table_body .table_row .sub_total .sub_total_container .sub_total_title {
  display: none;
}
#carts_index .reservations_cart .table_body .table_row .delete {
  grid-column: 5/6;
  grid-row: 1/3;
  text-align: center;
}
#carts_index .mail_order_items_cart {
  margin-bottom: 120px;
}
#carts_index .mail_order_items_cart h3 {
  text-align: center;
}
#carts_index .mail_order_items_cart .table_header {
  display: flex;
  background-color: #F8F8F8;
  margin: 16px 0px;
  padding: 8px 0px;
}
#carts_index .mail_order_items_cart .table_body .empty {
  text-align: center;
}
#carts_index .mail_order_items_cart .table_body .total_price {
  text-align: right;
  margin-bottom: 32px;
}
#carts_index .mail_order_items_cart .table_body .total_price span {
  vertical-align: middle;
}
#carts_index .mail_order_items_cart .table_body .total_price .total_price_title {
  margin-right: 0.5em;
}
#carts_index .mail_order_items_cart .table_body .total_price .colon {
  margin-right: 1em;
}
#carts_index .mail_order_items_cart .table_body .total_price .price {
  font-size: 32px;
  color: #e24545;
}
#carts_index .mail_order_items_cart .table_body #mail_order_item_cart_total_price {
  text-align: right;
  margin-bottom: 32px;
}
#carts_index .mail_order_items_cart .table_body #mail_order_item_cart_total_price span {
  vertical-align: middle;
}
#carts_index .mail_order_items_cart .table_body #mail_order_item_cart_total_price .total_price_title {
  margin-right: 0.5em;
}
#carts_index .mail_order_items_cart .table_body #mail_order_item_cart_total_price .colon {
  margin-right: 1em;
}
#carts_index .mail_order_items_cart .table_body #mail_order_item_cart_total_price .price {
  font-size: 32px;
  color: #e24545;
}
#carts_index .mail_order_items_cart .table_body .buttons {
  display: flex;
  justify-content: center;
  column-gap: 32px;
  flex-wrap: wrap-reverse;
  row-gap: 16px;
}
#carts_index .mail_order_items_cart .table_body .buttons li {
  display: flex;
  height: 56px;
  width: 200px;
  justify-content: center;
  align-items: center;
}
#carts_index .mail_order_items_cart .table_body .buttons li a {
  color: #fff;
}
#carts_index .mail_order_items_cart .table_body .buttons .back_to_top {
  background-color: #cbcbcb;
}
#carts_index .mail_order_items_cart .table_body .buttons .goto_order_shopping_address {
  background-color: #a36639;
}
#carts_index .mail_order_items_cart .table_header .image_name {
  width: 58%;
  text-align: center;
}
#carts_index .mail_order_items_cart .table_header .number {
  width: 18%;
}
#carts_index .mail_order_items_cart .table_header .sub_total {
  width: 19%;
}
#carts_index .mail_order_items_cart .table_header .delete {
  width: 5%;
}
#carts_index .mail_order_items_cart .table_body .table_row {
  display: grid;
  align-items: center;
  grid-template-columns: 19% 39% 18% 19% 5%;
  margin-bottom: 24px;
  padding-bottom: 24px;
  border-bottom: 1px solid #cbcbcb;
}
#carts_index .mail_order_items_cart .table_body .table_row .image {
  grid-column: 1/2;
  grid-row: 1/3;
  padding-right: 24px;
}
#carts_index .mail_order_items_cart .table_body .table_row .image img {
  width: 100px;
  object-fit: cover;
  aspect-ratio: 1/1;
  margin-left: auto;
}
#carts_index .mail_order_items_cart .table_body .table_row .name {
  grid-column: 2/3;
  grid-row: 1/2;
  margin-top: auto;
  padding-right: 8px;
}
#carts_index .mail_order_items_cart .table_body .table_row .price {
  grid-column: 2/3;
  grid-row: 2/3;
  margin-bottom: auto;
}
#carts_index .mail_order_items_cart .table_body .table_row .number {
  grid-column: 3/4;
  grid-row: 1/3;
}
#carts_index .mail_order_items_cart .table_body .table_row .number .number_title {
  display: none;
}
#carts_index .mail_order_items_cart .table_body .table_row .number select {
  height: 2em;
  width: 52px;
  text-align: center;
}
#carts_index .mail_order_items_cart .table_body .table_row .sub_total {
  grid-column: 4/5;
  grid-row: 1/3;
}
#carts_index .mail_order_items_cart .table_body .table_row .sub_total .sub_total_title {
  display: none;
}
#carts_index .mail_order_items_cart .table_body .table_row .delete {
  grid-column: 5/6;
  grid-row: 1/3;
}
#carts_index .mail_order_items_cart .table_body #mail_order_item_cart_total_price .caveat {
  margin-top: 8px;
  text-align: right;
}

@media screen and (min-width: 450px) and (max-width: 900px) {
  #carts_index .reservations_cart .table_header .image_name {
    font-size: 14px;
    width: 100%;
  }
  #carts_index .reservations_cart .table_header .reserved_on {
    display: none;
  }
  #carts_index .reservations_cart .table_header .number {
    display: none;
  }
  #carts_index .reservations_cart .table_header .sub_total {
    display: none;
  }
  #carts_index .reservations_cart .table_header .delete {
    display: none;
  }
  #carts_index .reservations_cart .table_body .table_row {
    grid-template-columns: 100px 1fr;
  }
  #carts_index .reservations_cart .table_body .table_row .image {
    grid-column: 1/2;
    grid-row: 1/3;
    margin-bottom: 24px;
    padding-right: 0px;
  }
  #carts_index .reservations_cart .table_body .table_row .image img {
    margin-left: 0px;
  }
  #carts_index .reservations_cart .table_body .table_row .name {
    grid-column: 2/3;
    grid-row: 1/2;
    font-size: 16px;
    margin-left: 24px;
  }
  #carts_index .reservations_cart .table_body .table_row .price {
    grid-column: 2/3;
    grid-row: 2/3;
    font-size: 16px;
    margin-left: 24px;
  }
  #carts_index .reservations_cart .table_body .table_row .reserved_on_number {
    grid-column: 1/3;
    grid-row: 3/4;
  }
  #carts_index .reservations_cart .table_body .table_row .reserved_on_number form {
    display: grid;
    justify-content: normal;
  }
  #carts_index .reservations_cart .table_body .table_row .reserved_on_number form .sale_on_container {
    display: flex;
    align-items: center;
    margin-bottom: 16px;
  }
  #carts_index .reservations_cart .table_body .table_row .reserved_on_number form .sale_on_container .sale_on_title {
    display: inline;
    width: 25%;
    font-size: 14px;
  }
  #carts_index .reservations_cart .table_body .table_row .reserved_on_number form .sale_on_container .sale_on {
    width: auto;
    font-size: 16px;
  }
  #carts_index .reservations_cart .table_body .table_row .reserved_on_number form .number_container {
    display: flex;
    align-items: center;
    margin-bottom: 16px;
  }
  #carts_index .reservations_cart .table_body .table_row .reserved_on_number form .number_container .number_title {
    display: inline;
    width: 25%;
    font-size: 14px;
  }
  #carts_index .reservations_cart .table_body .table_row .reserved_on_number form .number_container .number {
    height: auto;
    width: auto;
    text-align: center;
    font-size: 16px;
  }
  #carts_index .reservations_cart .table_body .table_row .sub_total {
    grid-column: 1/3;
    grid-row: 4/5;
    font-size: 14px;
  }
  #carts_index .reservations_cart .table_body .table_row .sub_total .sub_total_container {
    display: flex;
    align-items: center;
  }
  #carts_index .reservations_cart .table_body .table_row .sub_total .sub_total_container .sub_total_title {
    display: block;
    width: 25%;
    text-align: left;
    font-size: 14px;
  }
  #carts_index .reservations_cart .table_body .table_row .sub_total .sub_total_container .sub_total_value {
    font-size: 16px;
  }
  #carts_index .reservations_cart .table_body .table_row .delete {
    grid-column: 3/4;
    grid-row: 1/3;
  }
}
@media screen and (max-width: 450px) {
  #carts_index h3 {
    font-size: 20px;
  }
  #carts_index .reservations_cart .table_header .image_name {
    font-size: 14px;
    width: 100%;
  }
  #carts_index .reservations_cart .table_header .reserved_on {
    display: none;
  }
  #carts_index .reservations_cart .table_header .number {
    display: none;
  }
  #carts_index .reservations_cart .table_header .sub_total {
    display: none;
  }
  #carts_index .reservations_cart .table_header .delete {
    display: none;
  }
  #carts_index .reservations_cart .table_body .table_row {
    grid-template-columns: 100px 1fr;
  }
  #carts_index .reservations_cart .table_body .table_row .image {
    grid-column: 1/2;
    grid-row: 1/3;
    margin-bottom: 24px;
    padding-right: 0px;
  }
  #carts_index .reservations_cart .table_body .table_row .image img {
    margin-left: 0px;
  }
  #carts_index .reservations_cart .table_body .table_row .name {
    grid-column: 2/3;
    grid-row: 1/2;
    font-size: 16px;
    margin-left: 24px;
  }
  #carts_index .reservations_cart .table_body .table_row .price {
    grid-column: 2/3;
    grid-row: 2/3;
    font-size: 16px;
    margin-left: 24px;
  }
  #carts_index .reservations_cart .table_body .table_row .reserved_on_number {
    grid-column: 1/3;
    grid-row: 3/4;
  }
  #carts_index .reservations_cart .table_body .table_row .reserved_on_number form {
    display: grid;
    justify-content: normal;
  }
  #carts_index .reservations_cart .table_body .table_row .reserved_on_number form .sale_on_container {
    display: flex;
    align-items: center;
    margin-bottom: 16px;
  }
  #carts_index .reservations_cart .table_body .table_row .reserved_on_number form .sale_on_container .sale_on_title {
    display: inline;
    width: 25%;
    font-size: 14px;
  }
  #carts_index .reservations_cart .table_body .table_row .reserved_on_number form .sale_on_container .sale_on {
    width: auto;
    font-size: 16px;
  }
  #carts_index .reservations_cart .table_body .table_row .reserved_on_number form .number_container {
    display: flex;
    align-items: center;
    margin-bottom: 16px;
  }
  #carts_index .reservations_cart .table_body .table_row .reserved_on_number form .number_container .number_title {
    display: inline;
    width: 25%;
    font-size: 14px;
  }
  #carts_index .reservations_cart .table_body .table_row .reserved_on_number form .number_container .number {
    height: auto;
    width: auto;
    text-align: center;
    font-size: 16px;
  }
  #carts_index .reservations_cart .table_body .table_row .sub_total {
    grid-column: 1/3;
    grid-row: 4/5;
    font-size: 14px;
  }
  #carts_index .reservations_cart .table_body .table_row .sub_total .sub_total_container {
    display: flex;
    align-items: center;
  }
  #carts_index .reservations_cart .table_body .table_row .sub_total .sub_total_container .sub_total_title {
    display: block;
    width: 25%;
    text-align: left;
    font-size: 14px;
  }
  #carts_index .reservations_cart .table_body .table_row .sub_total .sub_total_container .sub_total_value {
    font-size: 16px;
  }
  #carts_index .reservations_cart .table_body .table_row .delete {
    grid-column: 3/4;
    grid-row: 1/3;
  }
  #carts_index .mail_order_items_cart .table_header .image_name {
    font-size: 14px;
    width: 100%;
  }
  #carts_index .mail_order_items_cart .table_header .number {
    display: none;
  }
  #carts_index .mail_order_items_cart .table_header .sub_total {
    display: none;
  }
  #carts_index .mail_order_items_cart .table_header .delete {
    display: none;
  }
  #carts_index .mail_order_items_cart .table_body .table_row {
    display: grid;
    align-items: center;
    grid-template-columns: 100px 1fr;
    margin-bottom: 24px;
  }
  #carts_index .mail_order_items_cart .table_body .table_row .image {
    grid-column: 1/2;
    grid-row: 1/3;
    padding-right: 0px;
    margin-bottom: 24px;
  }
  #carts_index .mail_order_items_cart .table_body .table_row .image img {
    margin-left: 0px;
  }
  #carts_index .mail_order_items_cart .table_body .table_row .name {
    grid-column: 2/3;
    grid-row: 1/2;
    font-size: 16px;
    margin-left: 24px;
  }
  #carts_index .mail_order_items_cart .table_body .table_row .price {
    grid-column: 2/3;
    grid-row: 2/3;
    font-size: 16px;
    margin-left: 24px;
  }
  #carts_index .mail_order_items_cart .table_body .table_row .number {
    grid-column: 1/2;
    grid-row: 3/4;
    margin-bottom: 16px;
  }
  #carts_index .mail_order_items_cart .table_body .table_row .number .number_container {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  #carts_index .mail_order_items_cart .table_body .table_row .number .number_container .number_title {
    display: inline;
    margin-right: 16px;
    font-size: 14px;
  }
  #carts_index .mail_order_items_cart .table_body .table_row .sub_total {
    grid-column: 1/2;
    grid-row: 4/5;
  }
  #carts_index .mail_order_items_cart .table_body .table_row .sub_total .sub_total_container {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  #carts_index .mail_order_items_cart .table_body .table_row .sub_total .sub_total_container .sub_total_title {
    display: inline;
    margin-right: 16px;
    font-size: 14px;
  }
  #carts_index .mail_order_items_cart .table_body .table_row .sub_total .sub_total_container .sub_total_value {
    font-size: 16px;
  }
  #carts_index .mail_order_items_cart .table_body .table_row .delete {
    grid-column: 3/4;
    grid-row: 1/3;
  }
}
.order_shipping_address_form .title_wrapper {
  margin: 0px auto;
  width: fit-content;
  border-bottom: 1px solid #cbcbcb;
  padding: 0px 32px 8px 32px;
}
.order_shipping_address_form .progressbar {
  width: min(66vw, 400px);
  position: relative;
  margin: 32px auto 0 auto;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 32px;
}
.order_shipping_address_form .progressbar li {
  position: relative;
  list-style-type: none;
  text-align: center;
  text-transform: uppercase;
  width: 25%;
  counter-increment: steps;
}
.order_shipping_address_form .progressbar li:before {
  display: block;
  width: 40px;
  height: 40px;
  margin: 7px auto 20px auto;
  content: "";
  line-height: 40px;
  text-align: center;
  border-radius: 50%;
  background-color: white;
  content: counter(steps);
  border: 1px solid #FFE33F;
}
.order_shipping_address_form .progressbar li:after {
  position: absolute;
  z-index: -1;
  top: 25px;
  left: -50%;
  width: 100%;
  height: 2px;
  content: "";
  background-color: #FFE33F;
}
.order_shipping_address_form .progressbar li:first-child:after {
  content: none;
}
.order_shipping_address_form .progressbar li.active, .order_shipping_address_form .progressbar li.complete {
  color: #111;
}
.order_shipping_address_form .progressbar li.active:before,
.order_shipping_address_form .progressbar li.complete:before {
  background-color: #FFE33F;
  color: #111;
}
.order_shipping_address_form .progressbar li.active:after,
.order_shipping_address_form .progressbar li.complete:after {
  background-color: #FFE33F;
}
.order_shipping_address_form .form_field {
  display: flex;
  column-gap: 16px;
  border-top: solid #CBCBCB;
  align-items: center;
}
.order_shipping_address_form .form_field .form_label_wrapper {
  width: 80px;
  background-color: #f8f8f8;
  font-size: 14px;
}
.order_shipping_address_form .form_field .form_label {
  padding: 16px 8px;
  text-align: center;
  white-space: nowrap;
  min-width: 75px;
}
.order_shipping_address_form .form_field .form_label.kana {
  display: grid;
}
.order_shipping_address_form .form_field .form_input {
  display: flex;
  column-gap: 16px;
  padding: 8px 0px;
}
.order_shipping_address_form .form_field .kana_label {
  font-size: 12px;
}
.order_shipping_address_form .form_field .label_address_wrapper {
  height: calc(10em + 48px + 16px + 0.5em - 1px + 0.5em - 1px + 8px);
}
.order_shipping_address_form .form_field .label_address {
  padding: 104px 0px;
}
.order_shipping_address_form .form_field .address {
  display: grid;
  row-gap: 16px;
}
.order_shipping_address_form .form_field .zip_code_wrapper {
  display: flex;
  align-items: center;
  column-gap: 8px;
}
.order_shipping_address_form .last {
  border-bottom: solid #CBCBCB;
}
.order_shipping_address_form .buttons {
  margin-top: 32px;
  display: flex;
  gap: 16px 32px;
  justify-content: center;
  flex-wrap: wrap-reverse;
}
.order_shipping_address_form .buttons .back {
  display: flex;
  background-color: #cbcbcb;
  width: 200px;
  height: 56px;
  justify-content: center;
  align-items: center;
}
.order_shipping_address_form .buttons .back a {
  color: #fff;
}
.order_shipping_address_form .buttons .next {
  background-color: #a36639;
  width: 200px;
  height: 56px;
  color: #fff;
  border: none;
}

@media screen and (max-width: 450px) {
  .order_shipping_address_form .title_wrapper {
    width: 100%;
    text-align: center;
    border-bottom: 1px solid #cbcbcb;
    padding: 0px 0px 8px 0px;
  }
  .order_shipping_address_form .form_field {
    display: grid;
    border-top: none;
    align-items: center;
  }
  .order_shipping_address_form .form_field .form_label_wrapper {
    background-color: transparent;
  }
  .order_shipping_address_form .form_field .form_label {
    text-align: start;
    padding: 0px;
  }
  .order_shipping_address_form .form_field .form_label.kana {
    display: flex;
  }
  .order_shipping_address_form .form_field .kana_label {
    font-size: 12px;
  }
  .order_shipping_address_form .form_field .label_address_wrapper {
    height: 100%;
  }
  .order_shipping_address_form .form_field .form_input input {
    width: 100%;
  }
  .order_shipping_address_form .form_field .form_input input.zip_code {
    width: 140px;
  }
  .order_shipping_address_form .form_field .form_input input.prefectures {
    width: 140px;
  }
  .order_shipping_address_form .last {
    border-bottom: none;
  }
}
.order_shipping_address .title_wrapper {
  margin: 0px auto;
  width: fit-content;
  border-bottom: 1px solid #cbcbcb;
  padding: 0px 32px 8px 32px;
  text-align: center;
}
.order_shipping_address .progressbar {
  width: min(66vw, 400px);
  margin: 32px auto;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.order_shipping_address .progressbar li {
  position: relative;
  list-style-type: none;
  text-align: center;
  text-transform: uppercase;
  width: 25%;
  counter-increment: steps;
}
.order_shipping_address .progressbar li:before {
  display: block;
  width: 40px;
  height: 40px;
  margin: 7px auto 20px auto;
  content: "";
  line-height: 40px;
  text-align: center;
  border-radius: 50%;
  background-color: white;
  content: counter(steps);
  border: 1px solid #FFE33F;
}
.order_shipping_address .progressbar li:after {
  position: absolute;
  z-index: -1;
  top: 25px;
  left: -50%;
  width: 100%;
  height: 2px;
  content: "";
  background-color: #FFE33F;
}
.order_shipping_address .progressbar li:first-child:after {
  content: none;
}
.order_shipping_address .progressbar li.active, .order_shipping_address .progressbar li.complete {
  color: #111;
}
.order_shipping_address .progressbar li.active:before,
.order_shipping_address .progressbar li.complete:before {
  background-color: #FFE33F;
  color: #111;
}
.order_shipping_address .progressbar li.active:after,
.order_shipping_address .progressbar li.complete:after {
  background-color: #FFE33F;
}
.order_shipping_address .contents .row {
  display: flex;
  border-top: solid #CBCBCB;
}
.order_shipping_address .contents .row .field_name_wrapper {
  background-color: #f8f8f8;
  font-size: 14px;
  text-align: center;
  display: flex;
  align-items: center;
}
.order_shipping_address .contents .row .field_name_wrapper .field_name {
  white-space: nowrap;
  width: clamp(56px, 10vw, 80px);
}
.order_shipping_address .contents .row .field_name_wrapper .field_name .kana_label {
  font-size: 12px;
}
.order_shipping_address .contents .row .field_value {
  display: flex;
  padding: 16px 0px 16px 16px;
  justify-content: space-between;
  width: 100%;
  align-items: center;
  flex-wrap: nowrap;
  row-gap: 8px;
}
.order_shipping_address .contents .row .field_value.item {
  flex-wrap: wrap;
  row-gap: 24px;
}
.order_shipping_address .contents .row .field_value.email {
  overflow-wrap: break-word;
}
.order_shipping_address .contents .row .field_value.total_price {
  font-size: 20px;
  color: #E24545;
}
.order_shipping_address .contents .row .field_value .item {
  width: clamp(253px, 45%, 360px);
  display: grid;
  align-items: center;
  row-gap: 8px;
  grid-template-columns: 96px 1fr 40px;
}
.order_shipping_address .contents .row .field_value .item .image {
  grid-column: 1/2;
  grid-row: 1/3;
}
.order_shipping_address .contents .row .field_value .item .image img {
  width: 80px;
  object-fit: cover;
  aspect-ratio: 1/1;
}
.order_shipping_address .contents .row .field_value .item .name {
  grid-column: 2/3;
  grid-row: 1/2;
  margin-top: auto;
}
.order_shipping_address .contents .row .field_value .item .price {
  grid-column: 2/3;
  grid-row: 2/3;
  margin-bottom: auto;
}
.order_shipping_address .contents .row .field_value .item .number {
  grid-column: 3/4;
  grid-row: 1/3;
}
.order_shipping_address .contents .row .field_value .delivery_total {
  width: clamp(310px, 55%, 424px);
  display: flex;
  align-items: center;
  row-gap: 8px;
  column-gap: 32px;
  flex-wrap: wrap;
  justify-content: start;
  padding-left: 16px;
}
.order_shipping_address .contents .row .field_value .delivery_total .sub_total_price {
  display: grid;
  row-gap: 8px;
}
.order_shipping_address .contents .row .field_value .delivery_total .sub_total_price .total {
  margin-top: auto;
}
.order_shipping_address .contents .row .field_value .delivery_total .sub_total_price .total .sub_total_price_title {
  margin-right: 0.5em;
}
.order_shipping_address .contents .row .field_value .delivery_total .sub_total_price .total .colon {
  margin-right: 0.5em;
}
.order_shipping_address .contents .row .field_value .delivery_total .sub_total_price .total .price {
  font-size: 20px;
}
.order_shipping_address .contents .row .field_value .delivery_total .sub_total_price .caveat {
  margin-bottom: auto;
}
.order_shipping_address .contents .row .field_value .delivery_total .sub_total_price .caveat .shipping_period {
  font-weight: bold;
}
.order_shipping_address .contents .row .field_value .link {
  width: 74px;
  height: 28px;
  background-color: #cbcbcb;
  display: flex;
}
.order_shipping_address .contents .row .field_value .link a {
  justify-content: center;
  align-items: center;
  margin: auto;
  font-size: 12px;
  color: #fff;
}
.order_shipping_address .contents .row .field_value .value {
  width: clamp(165px, 33vw, 690px);
}
.order_shipping_address .contents .last {
  border-bottom: solid #CBCBCB;
}
.order_shipping_address .buttons {
  margin-top: 32px;
  display: flex;
  gap: 16px 32px;
  justify-content: center;
  flex-wrap: wrap-reverse;
}
.order_shipping_address .buttons .back {
  display: flex;
  background-color: #cbcbcb;
  width: 200px;
  height: 56px;
  justify-content: center;
  align-items: center;
}
.order_shipping_address .buttons .back a {
  color: #fff;
}
.order_shipping_address .buttons .next {
  display: flex;
  background-color: #a36639;
  width: 200px;
  height: 56px;
  border: none;
  justify-content: center;
  align-items: center;
  column-gap: 16px;
}
.order_shipping_address .buttons .next input {
  background-color: #a36639;
  color: #fff;
  border-style: none;
}
.order_shipping_address .buttons .next i {
  color: #fff;
}

@media screen and (min-width: 450px) and (max-width: 900px) {
  .order_shipping_address .contents .row .field_value .item {
    width: 100%;
  }
  .order_shipping_address .contents .row .field_value .delivery_total {
    width: 100%;
    justify-content: space-between;
    padding-left: 0px;
  }
  .order_shipping_address .contents .row .field_value .delivery_total .shipping_fee {
    display: flex;
    column-gap: 8px;
  }
}
@media screen and (max-width: 450px) {
  .order_shipping_address .progressbar {
    width: 300px;
  }
  .order_shipping_address .contents .row .field_name_wrapper .field_name .kana_label {
    font-size: 10px;
  }
  .order_shipping_address .contents .row .field_value.item {
    display: grid;
  }
  .order_shipping_address .contents .row .field_value .item {
    width: 265px;
    grid-template-columns: 96px 1fr;
  }
  .order_shipping_address .contents .row .field_value .item .image {
    grid-column: 1/2;
    grid-row: 1/4;
  }
  .order_shipping_address .contents .row .field_value .item .name {
    grid-column: 2/3;
    grid-row: 1/2;
  }
  .order_shipping_address .contents .row .field_value .item .price {
    grid-column: 2/3;
    grid-row: 2/3;
  }
  .order_shipping_address .contents .row .field_value .item .number {
    grid-column: 2/3;
    grid-row: 3/4;
  }
  .order_shipping_address .contents .row .field_value .delivery_total {
    display: grid;
    width: 100%;
    padding-left: 0px;
  }
  .order_shipping_address .contents .row .field_value .delivery_total .shipping_fee {
    display: flex;
    column-gap: 16px;
  }
  .order_shipping_address .contents .row .field_value .value {
    max-width: 163px;
  }
  .order_shipping_address .contents .row .field_value .link {
    width: 64px;
  }
}
.histories .title_wrapper {
  margin: 0px auto;
  width: fit-content;
  border-bottom: 1px solid #cbcbcb;
  padding: 0px 32px 8px 32px;
}
.histories .content {
  margin-top: 32px;
}
.histories .content .tag_link_wrapper {
  width: 100%;
  display: flex;
  border-bottom: solid #FFE33F;
}
.histories .content .tag_link_wrapper .tag_link {
  display: flex;
  width: 50%;
  align-items: center;
  justify-content: center;
}
.histories .content .tag_link_wrapper .tag_link a {
  padding: 8px 0px;
  font-size: 20px;
  font-weight: bold;
}
.histories .content .tag_link_wrapper .active {
  background-color: #FFE33F;
}
.histories .content .content_body {
  margin-top: 64px;
}
.histories .content .content_body .purchased_on {
  color: #a36639;
  font-size: 20px;
  font-weight: bold;
}
.histories .content .content_body .content_table {
  margin-top: 16px;
}
.histories .content .content_body .row {
  display: flex;
  border-top: solid #CBCBCB;
}
.histories .content .content_body .row .field_name_wrapper {
  background-color: #f8f8f8;
  font-size: 14px;
  text-align: center;
  display: flex;
  align-items: center;
}
.histories .content .content_body .row .field_name_wrapper .field_name {
  white-space: nowrap;
  width: 80px;
}
.histories .content .content_body .row .field_name_wrapper .field_name .kana_label {
  font-size: 12px;
}
.histories .content .content_body .row .field_value {
  display: flex;
  padding: 16px 0px 16px 16px;
  justify-content: space-between;
  width: 100%;
  align-items: center;
  flex-wrap: wrap;
  row-gap: 8px;
}
.histories .content .content_body .row .field_value.item {
  flex-wrap: wrap;
  row-gap: 24px;
}
.histories .content .content_body .row .field_value.total_price {
  font-size: 20px;
  color: #E24545;
}
.histories .content .content_body .row .field_value .item {
  display: grid;
  align-items: center;
  row-gap: 8px;
  grid-template-columns: 96px 1fr 50px;
  width: clamp(253px, 45%, 360px);
}
.histories .content .content_body .row .field_value .item .image {
  grid-column: 1/2;
  grid-row: 1/3;
}
.histories .content .content_body .row .field_value .item .image img {
  width: 80px;
  object-fit: cover;
  aspect-ratio: 1/1;
}
.histories .content .content_body .row .field_value .item .name {
  grid-column: 2/3;
  grid-row: 1/2;
  margin-top: auto;
}
.histories .content .content_body .row .field_value .item .price {
  grid-column: 2/3;
  grid-row: 2/3;
  margin-bottom: auto;
}
.histories .content .content_body .row .field_value .item .number {
  grid-column: 3/4;
  grid-row: 1/3;
}
.histories .content .content_body .row .field_value .delivery_total {
  width: clamp(310px, 55%, 424px);
  display: flex;
  align-items: center;
  row-gap: 8px;
  column-gap: 32px;
  flex-wrap: wrap;
  justify-content: start;
  padding-left: 16px;
}
.histories .content .content_body .row .field_value .delivery_total .sub_total_price {
  display: grid;
  row-gap: 8px;
}
.histories .content .content_body .row .field_value .delivery_total .sub_total_price .total {
  margin-top: auto;
}
.histories .content .content_body .row .field_value .delivery_total .sub_total_price .total .sub_total_price_title {
  margin-right: 0.5em;
}
.histories .content .content_body .row .field_value .delivery_total .sub_total_price .total .colon {
  margin-right: 0.5em;
}
.histories .content .content_body .row .field_value .delivery_total .sub_total_price .total .price {
  font-size: 20px;
}
.histories .content .content_body .row .field_value .delivery_total .sub_total_price .caveat {
  margin-bottom: auto;
}
.histories .content .content_body .row .field_value .delivery_total .sub_total_price .caveat .shipping_period {
  font-weight: bold;
}
.histories .content .content_body .row .field_value .delivery_total .sub_total_price .deliver_status {
  padding: 8px;
  background-color: #f8f8f8;
}
.histories .content .content_body .row .field_value .delivery_total .sub_total_price .deliver_status .colon {
  margin-left: 0.5em;
  margin-right: 0.5em;
}
.histories .content .content_body .row .field_value .delivery_total .sub_total_price .deliver_status .status_str {
  font-weight: bold;
}
.histories .content .content_body .last {
  border-bottom: solid #CBCBCB;
}

@media screen and (min-width: 450px) and (max-width: 900px) {
  .histories .content .content_body .row .field_value .item {
    width: 100%;
    grid-template-columns: 96px 1fr;
  }
  .histories .content .content_body .row .field_value .delivery_total {
    width: 100%;
    justify-content: space-between;
    padding-left: 0px;
  }
  .histories .content .content_body .row .field_value .delivery_total .shipping_fee {
    display: flex;
    column-gap: 8px;
  }
}
@media screen and (max-width: 450px) {
  .histories .content .content_body {
    margin-top: 40px;
  }
  .histories .content .content_body .purchased_on {
    font-size: 16px;
  }
  .histories .content .content_body .row .field_name_wrapper {
    width: 56px;
  }
  .histories .content .content_body .row .field_name_wrapper .field_name {
    font-size: 14px;
  }
  .histories .content .content_body .row .field_value .item {
    width: 100%;
    grid-template-columns: 96px 1fr;
  }
  .histories .content .content_body .row .field_value .item .image {
    grid-column: 1/2;
    grid-row: 1/4;
  }
  .histories .content .content_body .row .field_value .item .name {
    grid-column: 2/3;
    grid-row: 1/2;
  }
  .histories .content .content_body .row .field_value .item .price {
    grid-column: 2/3;
    grid-row: 2/3;
  }
  .histories .content .content_body .row .field_value .item .number {
    grid-column: 2/3;
    grid-row: 3/4;
  }
  .histories .content .content_body .row .field_value .delivery_total {
    padding-left: 0px;
  }
}
.shoppings_finish {
  text-align: center;
}
.shoppings_finish h2 {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
}
.shoppings_finish h2 .title_first_line {
  font-size: 32px;
}
.shoppings_finish h2 .title_second_line {
  font-size: 32px;
  white-space: nowrap;
}
.shoppings_finish .content {
  margin-top: 40px;
}
.shoppings_finish .content p {
  margin-bottom: 0.5em;
}
.shoppings_finish .content p a {
  color: #a36639;
  border-bottom: 1px solid #a36639;
}
.shoppings_finish .buttons {
  display: flex;
  justify-content: center;
  gap: 16px 32px;
  margin-top: 64px;
  flex-wrap: wrap-reverse;
}
.shoppings_finish .buttons li {
  display: flex;
  height: 56px;
  width: 200px;
  justify-content: center;
  align-items: center;
}
.shoppings_finish .buttons li a {
  width: 100%;
}
.shoppings_finish .buttons .goto {
  background-color: #FFE33F;
}
.shoppings_finish .buttons .goto a {
  display: flex;
  justify-content: center;
  column-gap: 8px;
  align-items: center;
}

@media screen and (min-width: 450px) and (max-width: 680px) {
  .shoppings_finish h2 {
    display: flex;
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 450px) {
  .shoppings_finish {
    padding-top: 64px;
  }
  .shoppings_finish h2 {
    display: grid;
  }
  .shoppings_finish h2 .title_first_line {
    font-size: 20px;
  }
  .shoppings_finish h2 .title_second_line {
    font-size: 20px;
  }
  .shoppings_finish .content {
    text-align: left;
  }
}
.pages h2 {
  margin-bottom: 16px;
}
.pages h3 {
  margin-top: 34px;
  margin-bottom: 16px;
}
.pages ul {
  list-style: inside;
  list-style-position: outside;
}
.pages ol {
  padding-left: 1em;
  list-style-position: outside;
}
.pages .indent {
  padding-left: 2em;
}
.pages table {
  margin-top: 16px;
}
.pages table .value {
  padding-left: 8px;
}
.pages dt {
  font-weight: bold;
  margin-bottom: 0.5em;
}
.pages dd {
  margin-bottom: 16px;
}
.pages ul.law {
  list-style: none;
}
.pages ul.law a {
  text-decoration: underline;
}

img {
  display: block;
}

a {
  text-decoration: none;
  color: black;
}

* {
  font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-size: 16px;
  color: #111;
}
@media screen and (max-width: 450px) {
  * {
    font-size: 12px;
  }
}

*:focus {
  outline: none;
}

h2 {
  font-size: 32px;
}

h3 {
  font-size: 24px;
}

@media screen and (max-width: 450px) {
  h2 {
    font-size: 20px;
  }
  h3 {
    font-size: 16px;
  }
}
.title {
  font-size: 28px;
  font-family: "Yomogi", cursive;
}
@media screen and (max-width: 450px) {
  .title {
    font-size: 20px;
  }
}

.horizontal_botton {
  display: flex;
  min-width: 144px;
  height: 56px;
  cursor: pointer;
  column-gap: 8px;
  justify-content: center;
  align-items: center;
}

.back_to_top_button {
  color: #fff;
  background-color: #CBCBCB;
}
.back_to_top_button i {
  color: #fff;
}

.icon {
  height: 24px;
  width: 24px;
}

a.inline {
  color: #a36639;
  text-decoration: underline;
}

.product_tag_list {
  display: flex;
  gap: 16px;
}

.tag {
  font-size: clamp(10px, 1.5vw, 12px);
  padding: 4px clamp(8px, 1.5vw, 16px);
}

.mail_order_item_tag {
  border-style: solid;
  border-color: #FFE33F;
  background-color: #FFE33F;
}

.reservation_tag {
  border-style: solid;
  border-color: #FFE33F;
}

.sold_out_tag {
  border-style: solid;
  border-color: #CBCBCB;
  background-color: #CBCBCB;
}

.asterisk {
  font-family: "Hiragino Sans";
}

.page_container {
  padding-top: 90px;
  margin: 0px auto 0px auto;
  width: min(66vw, 848px);
}

@media screen and (max-width: 450px) {
  .page_container {
    width: 335px;
    padding: 64px 17px 0px 17px;
  }
}
input.user_name {
  width: 150px;
}

input.phone_number {
  width: min(14vw, 80px);
}

input.zip_code {
  width: 150px;
}

input.prefectures {
  width: 150px;
}

input.city {
  width: min(48vw, 320px);
}

input.other_address {
  width: min(48vw, 320px);
}

input.email {
  width: min(48vw, 320px);
}

.disable_scroll {
  overflow-y: hidden;
}

.order_progressbar {
  width: min(66vw, 400px);
  margin: 32px auto;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.order_progressbar li {
  position: relative;
  list-style-type: none;
  text-align: center;
  text-transform: uppercase;
  width: 25%;
  counter-increment: steps;
}
.order_progressbar li.reservation {
  width: 33%;
}
.order_progressbar li:before {
  display: block;
  width: 40px;
  height: 40px;
  margin: 7px auto 20px auto;
  content: "";
  line-height: 40px;
  text-align: center;
  border-radius: 50%;
  background-color: white;
  content: counter(steps);
  border: 1px solid #FFE33F;
}
.order_progressbar li:after {
  position: absolute;
  z-index: -1;
  top: 25px;
  left: -50%;
  width: 100%;
  height: 2px;
  content: "";
  background-color: #FFE33F;
}
.order_progressbar li:first-child:after {
  content: none;
}
.order_progressbar li.active, .order_progressbar li.complete {
  color: #111;
}
.order_progressbar li.active:before,
.order_progressbar li.complete:before {
  background-color: #FFE33F;
  color: #111;
}
.order_progressbar li.active:after,
.order_progressbar li.complete:after {
  background-color: #FFE33F;
}

_::-webkit-full-page-media, _:future, :root #navbar {
  top: 19px;
}

#navbar {
  position: fixed;
  top: 17px;
  right: 0px;
  width: 120px;
  z-index: 4;
}
#navbar .navbar_container .name {
  margin-bottom: 16px;
  text-align: right;
}
#navbar .navbar_container .family_name {
  font-weight: bold;
}
#navbar .navbar_container ul.navigation {
  width: 60px;
  padding-left: 0px;
  display: grid;
  row-gap: 16px;
  text-align: center;
  margin-left: auto;
  margin-right: 0px;
}
#navbar .navbar_container ul.navigation li.button {
  border: 2px solid;
  padding-top: 16px;
  padding-bottom: 16px;
}
#navbar .navbar_container ul.navigation li.signup_button {
  border-color: #FFE33F;
  background-color: #FFE33F;
}
#navbar .navbar_container ul.navigation li.login_button {
  border-color: #FFE33F;
  background-color: white;
}
#navbar .navbar_container ul.navigation li.cart_button {
  border-style: dotted;
  background-color: white;
}
#navbar .navbar_container ul.navigation li.cart_button a {
  writing-mode: vertical-rl;
  display: inline-block;
}
#navbar .navbar_container ul.navigation .button_text {
  writing-mode: vertical-rl;
  display: inline-block;
}
#navbar .navbar_container ul.navigation .icon_with_str {
  margin: 0px auto 8px auto;
}
#navbar .navbar_container ul.navigation .icon {
  width: 24px;
  height: 24px;
}

@media screen and (max-width: 450px) {
  #navbar {
    width: 90px;
  }
  #navbar .navbar_container ul.navigation {
    width: 48px;
  }
  #navbar .navbar_container ul.navigation li.button {
    padding: 8px 0px;
  }
  #navbar .navbar_container ul.navigation li.button .button_text {
    display: none;
  }
  #navbar .navbar_container ul.navigation li.button .icon_with_str {
    margin-bottom: 0px;
  }
}
#footer {
  margin: 120px auto 24px auto;
}
#footer .footer_line {
  width: 100%;
  height: 100px;
  position: relative;
}
#footer .footer_line .line {
  top: 50px;
  left: 0px;
  width: 100%;
  position: absolute;
}
#footer .footer_line .cat {
  top: 0px;
  width: 196px;
  height: 100px;
  right: min(10%, 120px);
  position: absolute;
}
#footer .footer_title {
  margin-top: 40px;
  margin-bottom: 0px;
  text-align: center;
}
#footer .footer_content {
  margin-top: 32px;
  display: flex;
  width: min(66%, 848px);
  margin-right: auto;
  margin-left: auto;
  column-gap: 24px;
}
#footer .footer_content .button_text {
  margin: auto 0px;
}
#footer .footer_buttons {
  display: flex;
  gap: 32px;
  flex: 1;
  flex-wrap: wrap;
}
#footer .footer_buttons .icon {
  height: 24px;
  width: 24px;
  margin-right: 8px;
}
#footer .button {
  height: 56px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0px 16px;
}
#footer .button a {
  display: flex;
}
#footer .signup_button {
  background-color: #FFE33F;
}
#footer .login_button {
  border-style: solid;
  border-color: #FFE33F;
}
#footer .footer_menu {
  display: flex;
  list-style: none;
  gap: 8px 8px;
  flex-wrap: wrap;
  justify-content: space-between;
  flex: 1;
}
#footer .footer_footer {
  width: min(66%, 848px);
  margin: 64px auto 0px auto;
}
#footer .footer_footer .terms_of_service {
  font-size: 12px;
  display: flex;
  justify-content: center;
  column-gap: 16px;
  flex-wrap: wrap;
}
#footer .footer_footer .copyright {
  font-size: 12px;
  text-align: center;
}

@media screen and (max-width: 450px) {
  #footer {
    margin: 80px auto 24px auto;
  }
  #footer .footer_line {
    height: 48px;
  }
  #footer .footer_line .line {
    top: 50px;
    left: 0px;
  }
  #footer .footer_line .cat {
    top: 24px;
    width: 116px;
    height: 48px;
    right: 24px;
  }
  #footer .footer_title {
    margin-top: 32px;
  }
  #footer .footer_content {
    display: block;
    width: 303px;
  }
  #footer .footer_buttons {
    justify-content: space-around;
    gap: 15px;
  }
  #footer .button {
    height: 48px;
  }
  #footer .footer_menu {
    display: grid;
    margin-top: 24px;
    margin-left: 0px;
    grid-template-columns: repeat(2, 1fr);
    justify-items: center;
  }
  #footer .footer_footer {
    margin-top: 40px;
  }
}
.flash {
  animation: fadeout-falsh 5s linear forwards;
}

@keyframes fadeout-falsh {
  100% {
    opacity: 0;
  }
}
.top_header #header {
  top: 0;
  left: 0;
  z-index: 1;
  position: fixed;
  width: 100%;
  background-color: white;
}
.top_header #header .header_container {
  margin: 0px auto;
  width: min(75%, 1024px);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.top_header #header .header_container .brand {
  display: flex;
  align-items: center;
  gap: 8px;
}
.top_header #header .header_container .brand .brand_title {
  font-size: 20px;
  font-family: "Yomogi", cursive;
}
.top_header #header .header_container .menu {
  display: flex;
  align-items: center;
  column-gap: min(1.83vw, 48px);
}
.top_header #header .header_container .menu a {
  font-size: min(2vw, 16px);
}
.top_header #header .header_hamburger {
  display: none;
}

@media screen and (min-width: 450px) and (max-width: 900px) {
  .top_header #header {
    z-index: 3;
    padding-bottom: 16px;
  }
  .top_header #header .header_container {
    display: none;
  }
  .top_header #header .header_hamburger {
    display: block;
    margin-top: 16px;
    margin-left: 16px;
  }
  .top_header #header .header_hamburger .check_unvisible {
    display: none;
  }
  .top_header #header .header_hamburger .bars {
    z-index: 999;
  }
  .top_header #header .header_hamburger .batsu {
    display: none;
    z-index: 999;
  }
  .top_header #header .header_hamburger .brand_menu {
    top: 0px;
    z-index: -1;
    padding: 32px 0;
    position: absolute;
    width: 300px;
    left: -300px;
    background-color: #F8F8F8;
    transition: all 0.5s;
    height: 100vh;
  }
  .top_header #header .header_hamburger .brand_menu_visible {
    left: 0px;
  }
  .top_header #header .header_hamburger .brand {
    margin-top: 40px;
    margin-left: 32px;
    display: flex;
    align-items: center;
    gap: 16px;
  }
  .top_header #header .header_hamburger .brand .brand_title {
    font-family: "Yomogi", cursive;
    font-size: 20px;
  }
  .top_header #header .header_hamburger .menu {
    margin: 40px 0px;
    display: grid;
    gap: 40px;
    justify-items: center;
  }
}
@media screen and (max-width: 450px) {
  .top_header #header {
    z-index: 3;
    padding-bottom: 16px;
  }
  .top_header #header .header_container {
    display: none;
  }
  .top_header #header .header_hamburger {
    display: block;
    margin-top: 16px;
    margin-left: 16px;
  }
  .top_header #header .header_hamburger .check_unvisible {
    display: none;
  }
  .top_header #header .header_hamburger .bars {
    z-index: 999;
  }
  .top_header #header .header_hamburger .batsu {
    display: none;
    z-index: 999;
  }
  .top_header #header .header_hamburger .brand_menu {
    top: 0px;
    z-index: -1;
    padding: 32px 0;
    position: absolute;
    width: 300px;
    left: -300px;
    background-color: #F8F8F8;
    transition: all 0.5s;
    height: 100vh;
  }
  .top_header #header .header_hamburger .brand_menu_visible {
    left: 0px;
  }
  .top_header #header .header_hamburger .brand {
    margin-top: 40px;
    margin-left: 32px;
    display: flex;
    align-items: center;
    gap: 16px;
  }
  .top_header #header .header_hamburger .brand .brand_title {
    font-family: "Yomogi", cursive;
    font-size: 20px;
  }
  .top_header #header .header_hamburger .menu {
    margin: 40px 0px;
    display: grid;
    gap: 40px;
    justify-items: center;
  }
}
#hero {
  margin: 0px auto;
  padding-top: 90px;
  width: min(90%, 1154px);
  background-color: white;
  z-index: 2;
  position: relative;
}
#hero .hero_container {
  display: flex;
  margin-bottom: 40px;
  justify-content: space-between;
}
#hero .hero_container .top_image {
  width: min(66vw, 848px);
  aspect-ratio: 1.41/1;
}
#hero .hero_container .top_image img {
  width: 100%;
}
#hero .brand {
  margin: auto 0px 0px 0px;
}
#hero .brand .logo figure img {
  width: min(8vw, 105px);
}
#hero .logo_title {
  margin: auto auto 24px auto;
  height: min(27vw, 356px);
}
#hero .menu_wrapper {
  display: flex;
  align-items: flex-end;
}
#hero .menu ul {
  padding-left: 0px;
  margin-bottom: 0px;
  list-style: none;
}
#hero .menu li {
  margin-top: 35px;
}
#hero .menu li a {
  font-size: min(1.45vw, 16px);
}
#hero .scroll p {
  text-align: center;
}
#hero .scroll img {
  margin: 8px auto 0px auto;
}

@media screen and (min-width: 450px) and (max-width: 900px) {
  #hero {
    padding-top: 56px;
    width: 100%;
  }
  #hero .hero_container {
    display: block;
    margin-bottom: 0px;
  }
  #hero .hero_container .brand {
    margin: auto 45px 32px 0px;
  }
  #hero .hero_container .brand .logo {
    display: flex;
    justify-content: center;
    flex-direction: row-reverse;
    column-gap: 32px;
  }
  #hero .hero_container .brand .logo .logo_title {
    margin-bottom: 0px;
    height: 356px;
  }
  #hero .hero_container .brand .logo figure {
    display: flex;
    align-items: flex-end;
  }
  #hero .hero_container .brand .logo figure img {
    width: 70px;
    height: 100px;
    margin-bottom: -8px;
  }
  #hero .hero_container .top_image {
    width: 100%;
  }
  #hero .menu_wrapper {
    display: none;
  }
  #hero .scroll {
    display: none;
  }
}
@media screen and (max-width: 450px) {
  #hero {
    padding-top: 56px;
    width: 100%;
  }
  #hero .hero_container {
    display: block;
    margin-bottom: 0px;
  }
  #hero .hero_container .brand {
    margin: auto 45px 32px 0px;
  }
  #hero .hero_container .brand .logo {
    display: flex;
    justify-content: center;
    flex-direction: row-reverse;
    column-gap: 32px;
  }
  #hero .hero_container .brand .logo .logo_title {
    margin-bottom: 0px;
    height: 356px;
  }
  #hero .hero_container .brand .logo figure {
    display: flex;
    align-items: flex-end;
  }
  #hero .hero_container .brand .logo figure img {
    width: 70px;
    height: 100px;
    margin-bottom: -8px;
  }
  #hero .hero_container .top_image {
    width: 100%;
  }
  #hero .menu_wrapper {
    display: none;
  }
  #hero .scroll {
    display: none;
  }
  #hero .hero_container .brand .logo {
    column-gap: 24px;
  }
  #hero .hero_container .brand .logo h1 {
    padding-right: 36px;
  }
  #hero .hero_container .brand .logo .logo_title {
    width: 22px;
    height: 240px;
  }
}
#top {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
#top .product_container {
  display: grid;
  row-gap: 64px;
  column-gap: 8px;
  grid-template-columns: repeat(3, 1fr);
  flex-wrap: wrap;
}
#top .product_container .product_item {
  width: clamp(130px, 20vw, 240px);
}
#top .product_container .product_tag_list {
  display: flex;
  gap: 16px;
}
#top .product_container .tag {
  font-size: clamp(10px, 1.5vw, 12px);
  padding: 4px clamp(8px, 1.5vw, 16px);
}
#top .product_container .reservation_tag {
  border-style: solid;
  border-color: #FFE33F;
}
#top .product_container .mail_order_item_tag {
  border-style: solid;
  border-color: #FFE33F;
  background-color: #FFE33F;
}
#top .product_container .sold_out_tag {
  border-style: solid;
  border-color: #CBCBCB;
  background-color: #CBCBCB;
}
#top .product_container .product_image {
  margin-top: 8px;
}
#top .product_container .product_image img {
  width: 100%;
  object-fit: cover;
  aspect-ratio: 1/1;
}
#top .product_container .product_name {
  font-size: 20px;
  margin-top: 16px;
  margin-bottom: 0px;
}
#top .product_container .product_price {
  margin-top: 0px;
  margin-bottom: 0px;
}
#top #access {
  width: min(1024px, 80%);
  margin: 120px auto 0px auto;
  padding: 64px 0px;
  background-color: #F8F8F8;
}
#top #access .access_container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
  row-gap: 32px;
}
#top #access .access_title img {
  margin-top: 16px;
  width: 274px;
  height: 10px;
}
#top #access .address {
  margin-top: 24px;
}
#top #access .business_day {
  margin-top: 24px;
}
#top #access .map {
  width: clamp(300px, 34vw, 440px);
}
#top #access .map iframe {
  width: 100%;
  aspect-ratio: 4/3;
}

@media screen and (min-width: 450px) and (max-width: 600px) {
  #top .product_container {
    display: grid;
    row-gap: 64px;
    column-gap: 32px;
    grid-template-columns: repeat(2, 1fr);
    justify-items: center;
  }
}
@media screen and (max-width: 450px) {
  #top .product_container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin: 0px auto;
    width: 337px;
    column-gap: 8px;
    row-gap: 40px;
  }
  #top .product_container .product_item {
    width: 156px;
  }
  #top .product_container .product_tag_list {
    gap: 8px;
  }
  #top .product_container .tag {
    font-size: 10px;
    padding: 4px 8px;
  }
  #top .product_container .product_image img {
    height: 156px;
    width: 156px;
  }
  #top .product_container .product_name {
    font-size: 14px;
    margin-top: 8px;
    margin-bottom: 0px;
  }
  #top #access {
    width: 337px;
    margin: 80px auto 0px auto;
    padding: 40px 0px;
  }
  #top #access .access_container {
    width: 303px;
    margin: 0px auto;
    display: block;
    padding-left: 0px;
    padding-right: 0px;
  }
  #top #access .access_container .access_title img {
    margin-top: 16px;
    width: 200px;
    height: 6px;
  }
  #top #access .access_container .map {
    margin-top: 32px;
    height: 205px;
    width: 303px;
  }
}
.reservation_products_wrapper {
  display: block;
  width: min(66%, 848px);
  padding-top: 60px;
  margin: 60px auto 60px auto;
}
.reservation_products_wrapper .title_wrapper {
  display: flex;
  margin: 0px auto 40px auto;
  justify-content: center;
  align-items: center;
}
.reservation_products_wrapper .title_wrapper .title {
  white-space: nowrap;
  padding: 0 32px;
}
.reservation_products_wrapper .title_wrapper img {
  max-width: 25%;
  width: 100%;
}
.reservation_products_wrapper .description {
  text-align: center;
  margin-bottom: 64px;
}

@media screen and (max-width: 450px) {
  .reservation_products_wrapper {
    display: block;
    width: 337px;
    margin: 80px auto 40px auto;
  }
  .reservation_products_wrapper .title_wrapper img {
    width: 80px;
  }
  .reservation_products_wrapper .title_wrapper .description {
    width: 337px;
    text-align: left;
    margin: 0px auto 40px auto;
  }
}
#reservation_product_show .product {
  display: flex;
  column-gap: 64px;
  row-gap: 24px;
}
#reservation_product_show .product .image {
  width: 352px;
}
#reservation_product_show .product .image .product_image {
  margin-top: 16px;
}
#reservation_product_show .product .image .product_image img {
  width: 100%;
  object-fit: cover;
  aspect-ratio: 1/1;
}
#reservation_product_show .product .other {
  padding-top: 45px;
  width: 320px;
}
#reservation_product_show .product .other .product_price {
  font-size: 24px;
  margin-bottom: 64px;
}
#reservation_product_show .product .other .note {
  font-size: 14px;
}
#reservation_product_show .product .other .note p {
  margin-top: 16px;
}
#reservation_product_show .product .other .description {
  margin-top: 64px;
}
#reservation_product_show .product .other .description p {
  margin-top: 24px;
}
#reservation_product_show .product .other .caveat {
  display: grid;
  margin-top: 24px;
  row-gap: 24px;
}
#reservation_product_show .other_items {
  width: min(64vw, 640px);
  margin: 120px auto 0px auto;
}
#reservation_product_show .other_items .title_wrapper {
  display: flex;
  margin: 0px auto 40px auto;
  justify-content: center;
  align-items: center;
}
#reservation_product_show .other_items .title_wrapper .title {
  white-space: nowrap;
  padding: 0 32px;
}
#reservation_product_show .other_items .title_wrapper img {
  max-width: 25%;
  width: 100%;
}
#reservation_product_show .other_items .description {
  text-align: center;
  margin-bottom: 64px;
}
#reservation_product_show .other_items .title_wrapper h3 {
  white-space: nowrap;
  padding: 0 32px;
  font-family: "Yomogi", cursive;
}
#reservation_product_show .other_items .title_wrapper img {
  max-width: 25%;
  width: 100%;
}
#reservation_product_show .other_items .product_container {
  display: grid;
  row-gap: 64px;
  column-gap: 8px;
  grid-template-columns: repeat(3, 1fr);
  flex-wrap: wrap;
}
#reservation_product_show .other_items .product_container .product_item {
  width: clamp(130px, 20vw, 240px);
}
#reservation_product_show .other_items .product_container .product_tag_list {
  display: flex;
  gap: 16px;
}
#reservation_product_show .other_items .product_container .tag {
  font-size: clamp(10px, 1.5vw, 12px);
  padding: 4px clamp(8px, 1.5vw, 16px);
}
#reservation_product_show .other_items .product_container .reservation_tag {
  border-style: solid;
  border-color: #FFE33F;
}
#reservation_product_show .other_items .product_container .mail_order_item_tag {
  border-style: solid;
  border-color: #FFE33F;
  background-color: #FFE33F;
}
#reservation_product_show .other_items .product_container .sold_out_tag {
  border-style: solid;
  border-color: #CBCBCB;
  background-color: #CBCBCB;
}
#reservation_product_show .other_items .product_container .product_image {
  margin-top: 8px;
}
#reservation_product_show .other_items .product_container .product_image img {
  width: 100%;
  object-fit: cover;
  aspect-ratio: 1/1;
}
#reservation_product_show .other_items .product_container .product_name {
  font-size: 20px;
  margin-top: 16px;
  margin-bottom: 0px;
}
#reservation_product_show .other_items .product_container .product_price {
  margin-top: 0px;
  margin-bottom: 0px;
}
#reservation_product_show .other_items .product_container {
  width: 100%;
}
#reservation_product_show .other_items .product_container .product_item {
  width: min(30vw, 180px);
}
#reservation_product_show .other .add_to_cart {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #a36639;
  width: 100%;
  height: 64px;
}
#reservation_product_show .other .add_to_cart a {
  font-size: 20px;
  color: #fff;
}
#reservation_product_show .other .add_to_cart.disabled {
  background-color: rgba(163, 102, 57, 0.2705882353);
  color: #fff;
}

@media screen and (min-width: 450px) and (max-width: 900px) {
  #reservation_product_show .product {
    display: grid;
  }
  #reservation_product_show .product .image {
    width: 100%;
  }
  #reservation_product_show .product .other {
    padding-top: 0px;
    width: 100%;
  }
  #reservation_product_show .other_items .title_wrapper h3 {
    white-space: nowrap;
    padding: 0 16px;
  }
  #reservation_product_show .other_items .title_wrapper img {
    max-width: 20%;
    width: 100%;
  }
  #reservation_product_show .other_items .product_container {
    display: grid;
    row-gap: 64px;
    column-gap: 32px;
    grid-template-columns: repeat(2, 1fr);
    justify-items: center;
  }
}
@media screen and (max-width: 450px) {
  #reservation_product_show .product {
    display: grid;
    justify-items: center;
  }
  #reservation_product_show .product .image {
    width: 240px;
  }
  #reservation_product_show .product .other {
    padding-top: 0px;
    width: 300px;
  }
  #reservation_product_show .product .other h2 {
    font-size: 24px;
    text-align: center;
  }
  #reservation_product_show .product .other .product_price {
    font-size: 16px;
    margin-bottom: 48px;
    text-align: center;
  }
  #reservation_product_show .product .other .add_to_cart {
    width: 300px;
  }
  #reservation_product_show .product .other .add_to_cart .field.number {
    column-gap: 16px;
  }
  #reservation_product_show .product .other .description {
    margin-top: 24px;
  }
  #reservation_product_show .other_items {
    width: 335px;
    margin: 64px -17px 0px -17px;
  }
  #reservation_product_show .other_items .product_container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin: 0px auto;
    width: 337px;
    column-gap: 8px;
    row-gap: 40px;
  }
  #reservation_product_show .other_items .product_container .product_item {
    width: 156px;
  }
  #reservation_product_show .other_items .product_container .product_tag_list {
    gap: 8px;
  }
  #reservation_product_show .other_items .product_container .tag {
    font-size: 10px;
    padding: 4px 8px;
  }
  #reservation_product_show .other_items .product_container .product_image img {
    height: 156px;
    width: 156px;
  }
  #reservation_product_show .other_items .product_container .product_name {
    font-size: 14px;
    margin-top: 8px;
    margin-bottom: 0px;
  }
  #reservation_product_show .other_items .product_container {
    width: 335px;
    column-gap: 23px;
  }
}
.overlay {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: 5;
  background-color: rgba(0, 0, 0, 0.6);
}

.calendar {
  position: absolute;
  top: 64px;
  left: calc((100vw - min(560px, 90vw)) / 2);
  z-index: 10;
  width: min(560px, 90vw);
  padding-bottom: 64px;
  background-color: #f8f8f8;
}
.calendar .calendar_title {
  display: flex;
  background-color: #FFE33F;
  justify-content: center;
  padding: 8px 0px;
}
.calendar .calendar_title .text {
  font-size: 20px;
}
.calendar .calendar_title a {
  position: absolute;
  right: 0.5rem;
  top: 0.8rem;
}
.calendar .calendar_body {
  display: grid;
  justify-items: center;
  margin-top: 24px;
}
.calendar .calendar_body .simple-calendar {
  display: grid;
  justify-items: center;
  margin-top: 24px;
}
.calendar .calendar_body .simple-calendar .calendar-heading {
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 8px;
}
.calendar .calendar_body .simple-calendar table, .calendar .calendar_body .simple-calendar td, .calendar .calendar_body .simple-calendar th {
  border-color: #8d8d8d;
  border-style: solid;
  border-width: 1px;
  text-align: center;
  vertical-align: top;
}
.calendar .calendar_body .simple-calendar td, .calendar .calendar_body .simple-calendar th {
  padding-top: 8px;
  padding-bottom: 8px;
}
.calendar .calendar_body .simple-calendar th {
  font-size: 11px;
}
.calendar .calendar_body .simple-calendar .day {
  height: 63px;
  width: 53px;
  font-size: 9px;
}
.calendar .calendar_body .simple-calendar .day .mark {
  margin-top: 8px;
}
.calendar .calendar_body .simple-calendar .day .mark input, .calendar .calendar_body .simple-calendar .day .mark button {
  font-size: 16px;
  border: none;
  background: transparent;
}
.calendar .calendar_body .simple-calendar .day .mark input {
  color: #E24545;
  cursor: pointer;
}
.calendar .calendar_body .simple-calendar .day:not(.has-events) {
  background-color: #8d8d8d;
}

@media screen and (max-width: 450px) {
  .calendar .calendar_body .simple-calendar .day {
    height: 56px;
    width: 44px;
  }
}
.mail_order_items_wrapper {
  display: block;
  width: 100%;
  padding-top: 60px;
  padding-bottom: 60px;
  background-color: #F8F8F8;
}
.mail_order_items_wrapper .mail_order_items_content {
  width: min(66%, 848px);
  margin: 0px auto 60px auto;
}
.mail_order_items_wrapper .title_wrapper {
  display: flex;
  margin: 0px auto 40px auto;
  justify-content: center;
  align-items: center;
}
.mail_order_items_wrapper .title_wrapper .title {
  white-space: nowrap;
  padding: 0 32px;
}
.mail_order_items_wrapper .title_wrapper img {
  max-width: 25%;
  width: 100%;
}
.mail_order_items_wrapper .description {
  text-align: center;
  margin-bottom: 64px;
}

@media screen and (max-width: 450px) {
  .mail_order_items_wrapper {
    width: 100%;
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .mail_order_items_wrapper .mail_order_items_content {
    width: 337px;
    margin: 0px auto;
  }
  .mail_order_items_wrapper .mail_order_items_content .title_wrapper img {
    width: 80px;
  }
  .mail_order_items_wrapper .mail_order_items_content .title_wrapper .description {
    width: 337px;
    text-align: left;
    margin: 0px auto 40px auto;
  }
}
#calendar {
  display: block;
  padding-top: 60px;
  margin: 60px auto 0px auto;
  width: min(80%, 1024px);
}
#calendar .calendar_header {
  text-align: right;
}
#calendar .calendar_header img {
  margin: 16px 0 0px auto;
  width: 274px;
  height: 10px;
}
#calendar .calendar_container {
  display: flex;
  justify-content: space-evenly;
  margin-top: 40px;
  flex-wrap: wrap;
  row-gap: 32px;
}
#calendar .calendar_month {
  text-align: center;
}
#calendar .calendar_month_title_wrapper {
  margin-bottom: 16px;
}
#calendar .calendar_month_title_wrapper i {
  display: none;
}
#calendar .calendar_month_title {
  font-size: 12px;
}
#calendar .calendar_body {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
}
#calendar .calendar_week_day_wrap {
  height: 30px;
  min-width: 45px;
  display: table;
  border: 1px solid #cbcbcb;
}
#calendar .calendar_week_day {
  display: table-cell;
  vertical-align: middle;
}
#calendar .calendar_day {
  min-width: 45px;
  min-height: 55px;
  border: 1px solid #cbcbcb;
}
#calendar .calendar_day_item {
  font-size: 10px;
}
#calendar .calendar_event_normal {
  background-color: #FFE33F;
}
#calendar .calendar_event_only_reservation {
  background-color: #A0CCFF;
}
#calendar .calendar_event_extra_holiday {
  background-color: #FA5858;
  color: white;
}
#calendar .calendar_event_gw_vacation {
  background-color: #99cc66;
}
#calendar .calendar_event_summer_vacation {
  background-color: #99cc66;
}
#calendar .calendar_event_winter_vacation {
  background-color: #99cc66;
}
#calendar .text {
  font-size: 10px;
  transform: scale(0.8);
}

@media screen and (max-width: 450px) {
  #calendar {
    display: block;
    margin: 80px auto 0px auto;
    width: 337px;
  }
  #calendar .calendar_header {
    text-align: left;
  }
  #calendar .calendar_header img {
    margin: 16px 0px 0px 0px;
    width: 200px;
    height: 6px;
  }
  #calendar .calendar_container {
    display: block;
  }
  #calendar .calendar_container .disable {
    display: none;
  }
  #calendar .calendar_container .unvisible {
    visibility: hidden;
  }
  #calendar .calendar_month_title_wrapper {
    display: flex;
    justify-content: space-between;
  }
  #calendar .calendar_month_title_wrapper i {
    display: block;
  }
}
#devise {
  padding-top: 90px;
  width: 1024px;
  margin: 0px auto;
}

#header {
  top: 0;
  left: 0;
  z-index: 1;
  position: fixed;
  width: 100%;
  background-color: white;
}
#header .header_container {
  margin: 0px auto;
  width: min(75%, 1024px);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#header .header_container .brand {
  display: flex;
  align-items: center;
  gap: 8px;
}
#header .header_container .brand .brand_title {
  font-size: 20px;
  font-family: "Yomogi", cursive;
}
#header .header_container .menu {
  display: flex;
  align-items: center;
  column-gap: min(1.83vw, 48px);
}
#header .header_container .menu a {
  font-size: min(2vw, 16px);
}
#header .header_hamburger {
  display: none;
}

@media screen and (max-width: 450px) {
  #header {
    z-index: 3;
    padding-bottom: 16px;
  }
  #header .header_container {
    display: none;
  }
  #header .header_hamburger {
    display: block;
    margin-top: 16px;
    margin-left: 16px;
  }
  #header .header_hamburger .check_unvisible {
    display: none;
  }
  #header .header_hamburger .bars {
    z-index: 999;
  }
  #header .header_hamburger .batsu {
    display: none;
    z-index: 999;
  }
  #header .header_hamburger .brand_menu {
    top: 0px;
    z-index: -1;
    padding: 32px 0;
    position: absolute;
    width: 300px;
    left: -300px;
    background-color: #F8F8F8;
    transition: all 0.5s;
    height: 100vh;
  }
  #header .header_hamburger .brand_menu_visible {
    left: 0px;
  }
  #header .header_hamburger .brand {
    margin-top: 40px;
    margin-left: 32px;
    display: flex;
    align-items: center;
    gap: 16px;
  }
  #header .header_hamburger .brand .brand_title {
    font-family: "Yomogi", cursive;
    font-size: 20px;
  }
  #header .header_hamburger .menu {
    margin: 40px 0px;
    display: grid;
    gap: 40px;
    justify-items: center;
  }
}
#user_header {
  margin: 64px auto 64px auto;
  width: min(80%, 1024px);
}
#user_header .header_container {
  display: flex;
  justify-content: center;
}
#user_header .header_container .brand {
  display: flex;
  align-items: center;
  column-gap: 16px;
}
#user_header .header_container .brand img {
  width: 56px;
  height: 80px;
}
#user_header .header_container .brand .brand_title {
  font-size: 28px;
  font-family: "Yomogi", cursive;
  letter-spacing: 0.2em;
}

@media screen and (max-width: 450px) {
  #user_header {
    margin: 40px auto 40px auto;
    width: 337px;
  }
  #user_header .header_container .brand img {
    width: 44px;
    height: 64px;
  }
  #user_header .header_container .brand .brand_title {
    font-size: 28px;
  }
}
.user_content {
  width: 320px;
  margin-left: auto;
  margin-right: auto;
}
.user_content h2 {
  text-align: center;
  font-size: 24px;
}
.user_content hr {
  width: 400px;
  margin: 40px -20px;
  height: 0px;
  border: 1px solid #CBCBCB;
}
.user_content .field {
  display: grid;
  margin-top: 32px;
  row-gap: 8px;
}
.user_content .name {
  display: flex;
  justify-content: space-between;
}
.user_content .name input {
  width: 150px;
}
.user_content .phone_number {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.user_content .phone_number input {
  width: 80px;
}
.user_content input {
  height: 40px;
  width: 100%;
}
.user_content .field.terms_of_service {
  text-align: center;
}
.user_content .field.terms_of_service .terms_of_service_wrapper {
  align-items: center;
  display: flex;
  column-gap: 8px;
  justify-content: center;
}
.user_content .field.terms_of_service .terms_of_service_wrapper input {
  width: inherit;
}
.user_content .password_reset_link {
  margin-top: 8px;
  font-size: 14px;
}
.user_content .password_reset_link a {
  font-size: 14px;
}
.user_content .actions {
  margin-top: 40px;
  text-align: center;
}
.user_content .actions input {
  cursor: pointer;
  width: 144px;
  height: 56px;
  background: #FFE33F;
  border: 2px solid #FFE33F;
}
.user_content .links {
  margin-top: 64px;
}
.user_content .links li {
  text-align: center;
  margin-top: 8px;
}
.user_content .back_to_top {
  margin: 32px auto 0px auto;
  text-align: center;
  width: 160px;
}
.user_content .required {
  font-family: "Hiragino Sans";
  color: #e24545;
}

#user_container {
  margin: 0px auto 80px auto;
  width: min(80%, 1024px);
}

@media screen and (max-width: 450px) {
  .user_content {
    width: 303px;
  }
  .user_content h2 {
    font-size: 20px;
  }
  .user_content hr {
    width: 337px;
    margin: 40px -17px;
  }
  .user_content .name input {
    width: 140px;
  }
  .user_content .links {
    margin-top: 40px;
  }
  .user_content .password_reset_link {
    font-size: 10px;
  }
  .user_content .password_reset_link a {
    font-size: 10px;
  }
  .user_content .actions {
    margin-top: 40px;
    text-align: center;
  }
  .user_content .actions input {
    height: 48px;
  }
  .user_content .back_to_top a {
    height: 48px;
  }
  #user_container {
    width: 337px;
  }
}
#send_mail_request_finish .send_mail_request_finish_container p.send_mail_message {
  margin-left: auto;
  margin-right: auto;
}
#send_mail_request_finish .send_mail_request_finish_container p.reconrirm_message {
  width: min(80vw, 450px);
  margin-top: 24px;
  margin-left: auto;
  margin-right: auto;
}
#send_mail_request_finish .links {
  margin-top: 64px;
  display: flex;
  column-gap: 24px;
  justify-content: center;
}
#send_mail_request_finish .login_button {
  border: 2px solid #FFE33F;
}

@media screen and (max-width: 450px) {
  #send_mail_request_finish {
    width: 100%;
  }
  #send_mail_request_finish .send_mail_request_finish_container p.send_mail_message {
    margin-left: 0px;
    margin-right: 0px;
  }
  #send_mail_request_finish .send_mail_request_finish_container p.reconrirm_message {
    width: 100%;
    margin-left: 0px;
    margin-right: 0px;
  }
}
.edit_user_header {
  margin-bottom: 24px;
}

.edit_user_wrapper #delete_user {
  margin-top: 64px;
}
.edit_user_wrapper #delete_user .delete_user_button {
  width: 240px;
  margin-left: auto;
  margin-right: auto;
  background-color: #FFE33F;
}

.password_reset {
  margin-left: max(-15vw, -115px);
  margin-right: max(-15vw, -115px);
  text-align: center;
}

#send_mail_request_finish .back_to_top {
  margin: 64px auto 0px auto;
  width: 160px;
}

#edit_password .edit_password_botton {
  width: 180px;
}
#edit_password .resend_mail_link {
  margin: 64px -40px 0px -40px;
  text-align: center;
}

@media screen and (max-width: 450px) {
  .password_reset {
    margin-left: 0px;
    margin-right: 0px;
    text-align: left;
  }
}
#send_mail_request_finish {
  width: min(650px, 100%);
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
#send_mail_request_finish h2 {
  text-align: center;
}
#send_mail_request_finish .send_mail_request_finish_container {
  margin-top: 48px;
  line-height: 2rem;
}

@media screen and (max-width: 450px) {
  #send_mail_request_finish {
    width: 100%;
  }
  #send_mail_request_finish .send_mail_request_finish_container {
    text-align: left;
  }
}
.reservation_contact_addresses.show .title_wrapper {
  margin: 0px auto;
  width: fit-content;
  border-bottom: 1px solid #cbcbcb;
  padding: 0px 32px 8px 32px;
  text-align: center;
}
.reservation_contact_addresses.show .contents .row {
  display: flex;
  border-top: solid #CBCBCB;
}
.reservation_contact_addresses.show .contents .row.sale_on {
  margin-top: 48px;
}
.reservation_contact_addresses.show .contents .row.content {
  border-bottom: solid #CBCBCB;
}
.reservation_contact_addresses.show .contents .row.name {
  border-top: none;
}
.reservation_contact_addresses.show .contents .row .field_name_wrapper {
  background-color: #f8f8f8;
  font-size: 14px;
  text-align: center;
  display: flex;
  align-items: center;
}
.reservation_contact_addresses.show .contents .row .field_name_wrapper .field_name {
  white-space: nowrap;
  width: clamp(56px, 10vw, 80px);
}
.reservation_contact_addresses.show .contents .row .field_name_wrapper .field_name .kana_label {
  font-size: 12px;
}
.reservation_contact_addresses.show .contents .row .field_value {
  display: flex;
  padding: 16px 0px 16px 16px;
  justify-content: space-between;
  width: 100%;
  align-items: center;
  flex-wrap: nowrap;
  column-gap: 8px;
}
.reservation_contact_addresses.show .contents .row .field_value .item_list {
  width: clamp(282px, 50%, 354px);
}
.reservation_contact_addresses.show .contents .row .field_value .item_list .item {
  display: grid;
  align-items: center;
  grid-template-columns: 96px 1fr 40px;
}
.reservation_contact_addresses.show .contents .row .field_value .item_list .item .image {
  grid-column: 1/2;
  grid-row: 1/3;
}
.reservation_contact_addresses.show .contents .row .field_value .item_list .item .image img {
  width: 80px;
  object-fit: cover;
  aspect-ratio: 1/1;
}
.reservation_contact_addresses.show .contents .row .field_value .item_list .item .name {
  grid-column: 2/3;
  grid-row: 1/2;
}
.reservation_contact_addresses.show .contents .row .field_value .item_list .item .price {
  grid-column: 2/3;
  grid-row: 2/3;
}
.reservation_contact_addresses.show .contents .row .field_value .item_list .item .number {
  grid-column: 3/4;
  grid-row: 1/3;
}
.reservation_contact_addresses.show .contents .row .field_value .item_list .item:not(:first-of-type) {
  padding-top: 24px;
}
.reservation_contact_addresses.show .contents .row .field_value .total {
  margin: auto 0px;
  width: clamp(282px, 50%, 354px);
}
.reservation_contact_addresses.show .contents .row .field_value .total .sub_total_price_title {
  margin-right: 0.5em;
}
.reservation_contact_addresses.show .contents .row .field_value .total .colon {
  margin-right: 0.5em;
}
.reservation_contact_addresses.show .contents .row .field_value .total .price {
  font-size: 20px;
  color: #E24545;
}
.reservation_contact_addresses.show .contents .row .field_value .link {
  width: 74px;
  height: 28px;
  background-color: #cbcbcb;
  display: flex;
}
.reservation_contact_addresses.show .contents .row .field_value .link a {
  justify-content: center;
  align-items: center;
  margin: auto;
  font-size: 12px;
  color: #fff;
}
.reservation_contact_addresses.show .comment_wrapper {
  margin-top: 24px;
}

@media screen and (min-width: 450px) and (max-width: 900px) {
  .reservation_contact_addresses.show .contents .row .field_value.item {
    display: grid;
    row-gap: 24px;
  }
  .reservation_contact_addresses.show .contents .row .field_value .item_list {
    width: 57vw;
  }
}
@media screen and (max-width: 450px) {
  .reservation_contact_addresses.show .contents .row .field_name_wrapper .field_name .kana_label {
    font-size: 10px;
  }
  .reservation_contact_addresses.show .contents .row .field_value.item {
    display: grid;
    row-gap: 24px;
  }
  .reservation_contact_addresses.show .contents .row .field_value .item_list {
    width: 229px;
  }
  .reservation_contact_addresses.show .contents .row .field_value .item_list .item .image {
    grid-column: 1/2;
    grid-row: 1/4;
  }
  .reservation_contact_addresses.show .contents .row .field_value .item_list .item .name {
    grid-column: 2/3;
    grid-row: 1/2;
  }
  .reservation_contact_addresses.show .contents .row .field_value .item_list .item .price {
    grid-column: 2/3;
    grid-row: 2/3;
  }
  .reservation_contact_addresses.show .contents .row .field_value .item_list .item .number {
    grid-column: 2/3;
    grid-row: 3/4;
  }
  .reservation_contact_addresses.show .contents .row .field_value .total {
    width: 229px;
  }
  .reservation_contact_addresses.show .contents .row .field_value .link {
    width: 64px;
  }
}
.reservation_contact_addresses.form .form_field {
  display: flex;
  column-gap: 16px;
  border-top: solid #CBCBCB;
  align-items: center;
}
.reservation_contact_addresses.form .form_field .form_label_wrapper {
  width: 80px;
  background-color: #f8f8f8;
  font-size: 14px;
}
.reservation_contact_addresses.form .form_field .form_label {
  padding: 16px 8px;
  text-align: center;
  white-space: nowrap;
  min-width: 75px;
}
.reservation_contact_addresses.form .form_field .form_label.kana {
  display: grid;
}
.reservation_contact_addresses.form .form_field .form_input {
  display: flex;
  column-gap: 16px;
  padding: 8px 0px;
}
.reservation_contact_addresses.form .form_field .kana_label {
  font-size: 12px;
}
.reservation_contact_addresses.form .form_field .label_address_wrapper {
  height: calc(10em + 48px + 16px + 0.5em - 1px + 0.5em - 1px + 8px);
}
.reservation_contact_addresses.form .form_field .label_address {
  padding: 104px 0px;
}
.reservation_contact_addresses.form .form_field .address {
  display: grid;
  row-gap: 16px;
}
.reservation_contact_addresses.form .form_field .zip_code_wrapper {
  display: flex;
  align-items: center;
  column-gap: 8px;
}
.reservation_contact_addresses.form .last {
  border-bottom: solid #CBCBCB;
}

@media screen and (max-width: 450px) {
  .reservation_contact_addresses.form .title_wrapper {
    width: 100%;
    text-align: center;
    border-bottom: 1px solid #cbcbcb;
    padding: 0px 0px 8px 0px;
  }
  .reservation_contact_addresses.form .form_field {
    display: grid;
    border-top: none;
    align-items: center;
  }
  .reservation_contact_addresses.form .form_field .form_label_wrapper {
    background-color: transparent;
  }
  .reservation_contact_addresses.form .form_field .form_label {
    text-align: start;
    padding: 0px;
  }
  .reservation_contact_addresses.form .form_field .form_label.kana {
    display: flex;
  }
  .reservation_contact_addresses.form .form_field .kana_label {
    font-size: 12px;
  }
  .reservation_contact_addresses.form .form_field .label_address_wrapper {
    height: 100%;
  }
  .reservation_contact_addresses.form .form_field .form_input input {
    width: 100%;
  }
  .reservation_contact_addresses.form .form_field .form_input input.zip_code {
    width: 140px;
  }
  .reservation_contact_addresses.form .form_field .form_input input.prefectures {
    width: 140px;
  }
  .reservation_contact_addresses.form .last {
    border-bottom: none;
  }
}
.reservation_contact_addresses .title_wrapper {
  margin: 0px auto;
  width: fit-content;
  border-bottom: 1px solid #cbcbcb;
  padding: 0px 32px 8px 32px;
  text-align: center;
}
.reservation_contact_addresses .buttons {
  margin-top: 32px;
  display: flex;
  gap: 16px 32px;
  justify-content: center;
  flex-wrap: wrap-reverse;
}
.reservation_contact_addresses .buttons .back {
  display: flex;
  background-color: #cbcbcb;
  width: 200px;
  height: 56px;
  justify-content: center;
  align-items: center;
}
.reservation_contact_addresses .buttons .back a {
  color: #fff;
}
.reservation_contact_addresses .buttons .next {
  display: flex;
  background-color: #a36639;
  width: 200px;
  height: 56px;
  border: none;
  justify-content: center;
  align-items: center;
  column-gap: 16px;
}
.reservation_contact_addresses .buttons .next input {
  background-color: #a36639;
  color: #fff;
  border-style: none;
}
.reservation_contact_addresses .buttons .next i {
  color: #fff;
}

.histories .content .comment_wrapper {
  margin-top: 64px;
}
.histories .content .comment_wrapper .comment {
  width: 80%;
  margin: 0px auto;
}
.histories .content .content_body .content_table .row .field_name {
  font-size: 14px;
}
.histories .content .content_body .content_table .row .field_value .left {
  display: grid;
  row-gap: 16px;
  width: clamp(253px, 45%, 360px);
}
.histories .content .content_body .content_table .row .field_value .left .item {
  display: grid;
  align-items: center;
  row-gap: 8px;
  grid-template-columns: 96px 1fr 50px;
  width: 100%;
}
.histories .content .content_body .content_table .row .field_value .left .item .number {
  font-size: 14px;
}
.histories .content .content_body .content_table .row .field_value .right {
  width: clamp(310px, 55%, 424px);
}
.histories .content .content_body .content_table .row .field_value .right .total .price {
  font-size: 20px;
  color: #E24545;
}

@media screen and (min-width: 450px) and (max-width: 900px) {
  .histories .content .content_body .content_table .row .field_value .left {
    width: 100%;
  }
  .histories .content .content_body .content_table .row .field_value .left .item {
    grid-template-columns: 96px 1fr;
  }
}
@media screen and (max-width: 450px) {
  .histories .content .comment_wrapper {
    margin-top: 40px;
  }
  .histories .content .comment_wrapper .comment {
    width: 100%;
  }
  .histories .content .content_body .content_table .row .field_value {
    font-size: 14px;
  }
  .histories .content .content_body .content_table .row .field_value .left .item {
    grid-template-columns: 96px 1fr;
  }
}
