@charset "utf-8";

/* reset */

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  font-weight: normal;
  font-size: 100%;
  vertical-align: baseline;
}

input,
textarea,
select {
  margin: 0;
  padding: 0;
  font-style: normal;
  font-weight: normal;
  font-size: 100%;
  vertical-align: baseline;
}

* {
  font-family: Arial, Roboto, 'Droid Sans', '游ゴシック', YuGothic,
    'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo,
    sans-serif;
  box-sizing: border-box;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

html {
  overflow-y: scroll;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}

input,
textarea {
  margin: 0;
  padding: 0;
}

textarea {
  min-height: 10rem;
}

ol,
ul {
  list-style: none;
}

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

caption,
th {
  text-align: left;
}

a:focus {
  outline: none;
}

.clearfix:after {
  content: '.';
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*¥*/ /*/
  height: auto;
  overflow: hidden;
  /**/
}

.both {
  clear: both;
}

.inline_block {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

table {
  width: 100%;
}

a {
  border: none;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}
.red2{
	font-size: 0.9em;
	color: #c32724;
}

a,
a img,
input[type='image'] {
  transition: 0.3s;
}

a:hover,
input[type='image']:hover {
  opacity: 0.5;
}

img {
  max-width: 100%;
  vertical-align: bottom;
}

body {
  background: url('https://releasecutter.com/lp01/contact/img/back.png') repeat;
}

header {
  text-align: center;
}

.maintitle {
  border-bottom: 1px solid #dbdbdb;
  text-align: center;
  font-weight: bold;
  font-family: Georgia, '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho ProN',
    'HGS明朝E', 'メイリオ', Meiryo, serif;
  color: #333;
}

.subtitle {
  margin-bottom: 1em;
  text-align: center;
  font-size: 1.125em;
  font-weight: bold;
  font-family: Georgia, '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho ProN',
    'HGS明朝E', 'メイリオ', Meiryo, serif;
  color: #333;
}

#error {
  margin: 0 2em 0.5em;
  padding: 1em;
  background: #eee;
  border-radius: 0.5em;
}

#error p {
  margin-bottom: 0.5em;
  text-align: center;
  font-weight: bold;
  color: red;
}

#error li {
  margin-bottom: 0.75em;
  padding-left: 1em;
  text-indent: -1em;
  font-size: 0.8em;
}

#error li:before {
  content: '\30FB';
}

#error li:last-child {
  margin-bottom: 0;
}

.base > tbody > tr > td p {
  margin-bottom: 0.5em;
  font-size: 0.75em;
}

.base > tbody > tr > td p:last-child {
  margin-bottom: 0;
}

.intable {
  border: 1px solid #ddd;
  margin-bottom: 0.5em;
}

.intable thead tr {
  background: #f6f6f6;
}

.intable th {
  font-size: 0.9em;
}

.intable th span {
  font-weight: bold;
}

.intable th span.sat {
  color: blue;
}

.intable th span.sun {
  color: red;
}

.intable th,
.intable td {
  border: 1px solid #ddd;
  text-align: center;
  vertical-align: middle;
}

.intable th,
.intable td label {
  padding: 0.75em 0.25em;
}

.intable td label {
  width: 100%;
}

.form label {
  /* display: inline-block;
  margin-right: 1em;
  line-height: 1.5em; */
  display: block;
  width: 100%;
  background: #fff;
  border: 1px solid #999;
  border-radius: 0.5em;
  text-align: center;
  padding: 0.5em;
  box-sizing: border-box;
}

.form button[type='submit'] {
  display: block;
  margin: auto;
  padding: 0.75em 3em;
  background: #333;
  /* box-shadow: 0 2px 3px rgba(0, 0, 0, 0.2); */
  /* border-radius: 0.25em; */
  border: none;
  color: #fff;
  font-size: 1em;
  font-family: Arial, Roboto, 'Droid Sans', '游ゴシック', YuGothic,
    'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo,
    sans-serif;

  cursor: pointer;
  transition: 0.3s;
}

.form button[type='submit']:hover {
  /* opacity: 0.8; */
  background: #666666;
}

.item {
  font-weight: 500;
  line-height: 1.5em;
}

.item:before {
  position: relative;
  margin-right: 0.5em;
  padding: 0.175em 0.5em;
  border-radius: 0.25em;
  font-size: 0.65em;
  color: #fff;
  top: -2px;
}

.req .item:before {
  content: '\5FC5\9808';
  background: #a3194c;
}

.opt .item:before {
  content: '\4EFB\610F';
  background: #126378;
}

input[type='text'].ok,
input[type='tel'].ok,
input[type='email'].ok,
select.ok {
  background: #e1feee;
}

input[type='text'].ng,
input[type='tel'].ng,
input[type='email'].ng,
select.ng {
  background: #ffcbcb;
}

.sec {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 1em;
}

td .sec:last-child {
  margin-bottom: 0;
}

.pos {
  position: relative;
}

.pos span {
  position: absolute;
  right: 0;
}

.mailcheck,
.telcheck {
  margin: 0.5em 0;
  text-align: center;
}

.mailcheck span,
.telcheck span {
  min-height: 1.25em;
  display: block;
  word-break: break-all;
  font-weight: bold;
  font-size: 1.875em;
}

.form .btn_radio + label {
  position: relative;
  display: block;
  width: calc(50% - 0.25em);
  margin: 0 0.5em 0.5em 0;
  padding: 0.5em;
  padding-left: 2em;
  background: #eee;
  border: 1px solid #999;
  border-radius: 0.5em;
  text-align: center;
  font-size: 0.875em;
  color: #999;
}

.form .btn_radio + label:nth-child(4n) {
  margin-right: 0;
}

.form .btn_radio + label:before {
  position: absolute;
  top: 50%;
  left: 0.675em;
  display: block;
  margin-top: -0.675em;
  content: '\f00c';
  font-family: FontAwesome;
  color: #bbb;
}

.form .btn_radio.lev1 + label:before,
.form .btn_radio.lev2 + label:before,
.form .btn_radio.lev3 + label:before {
  left: 0.4em;
  margin-top: -0.4em;
  font-weight: bold;
  font-size: 1.5em;
}

.form .btn_radio.lev1 + label:before {
  content: '\25B3';
  color: #ae8139;
}

.form .btn_radio.lev2 + label:before {
  content: '\25CB';
  color: #f28642;
}

.form .btn_radio.lev3 + label:before {
  content: '\25CE';
  color: #2bb167;
}

.form .btn_radio:checked + label {
  background: #e1feee;
  color: #000;
}

.form .btn_radio:checked + label:before {
  content: '\f00c';
  color: #2bb167;
}

.form .btn_radio {
  position: absolute;
  opacity: 0;
  z-index: -1;
  display: block;
}

.ipt100 {
  width: 100%;
}

.ipt50 {
  width: 49%;
}

.ipt30 {
  width: 30%;
}

.sec .ipt50 {
  margin-right: 2%;
}

.sec .ipt50:nth-child(2n) {
  margin-right: 0;
}

#conf_block span {
  position: relative;
  display: inline-block;
  padding: 0.5em 1em;
  padding-left: 3.25em;
  background: #dd2d2d;
  text-align: center;
  font-size: 0.875em;
  color: #fff;
}

#conf_block span:before {
  position: absolute;
  display: block;
  content: '\f06a';
  top: 50%;
  left: 0.25em;
  margin-top: -0.5em;
  line-height: 1;
  font-family: FontAwesome;
  font-size: 2.5em;
  color: #fff;
}

#sug {
  position: absolute;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 0.25em;
}

#sug li {
  padding: 0.5em;
  border-bottom: 1px dotted #eee;
  cursor: pointer;
}

#sug li:last-child {
  border: none;
}

#sug li.sel {
  background: #bfe3f9;
}

#conf_block {
  margin-top: 2em;
  text-align: center;
}

#conf_block span {
  display: inline-block;
  text-align: center;
}

.remain_box {
  position: fixed;
  max-width: 9em;
  padding: 0.5em;
  background: #dd2d2d;
  border-radius: 0.5em;
  font-size: 0.875em;
  z-index: 999;
  color: #fff;
}

.remain_box.ok {
  background: #acfcd0;
  color: #333;
}

.remain_box span {
  font-weight: bold;
}

footer {
  background: #000;
  margin-top: 2em;
  padding: 20px 0 40px;
}

footer p {
  color: #fff;
  line-height: 2em;
  text-align: center;
  font-size: 12px;
}

.privacy {
  padding: 1em;
  border: 4px solid #ccc;
}

.privacy h2 {
  margin-bottom: 1em;
  text-align: center;
  font-weight: bold;
  color: #333;
  /* font-family: Georgia, '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho ProN','HGS明朝E', 'メイリオ', Meiryo, serif; */
}

.privacy p {
  font-size: 0.875em;
  margin-bottom: 1.5em;
}

.privacy p:last-child {
  margin-bottom: 0;
}

.hidbox {
  height: 12em;
  overflow-y: scroll;
  margin-bottom: 1em;
  padding: 1em;
  background: #fff;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2) inset;
  border: 1px solid #ccc;
}

.hidbox h3 {
  font-weight: bold;
  margin-bottom: 0.5em;
}

.hidbox ul {
  margin-bottom: 1.5em;
}

.hidbox ul li {
  margin-bottom: 0.5em;
  font-size: 0.875em;
  padding-left: 1em;
}

.form .p_privacy .btn_radio + label {
  margin: 0 auto;
  font-size: 1.1em;
}

.thanks {
  margin-top: 2em;
}

.thanks p {
  margin-bottom: 1em;
}

.att {
  text-decoration: underline;
  color: #ae8139;
}

.login {
  margin: 1em 0;
  padding: 1em;
  border: 1px solid #c7c7c7;
}

.login .catch {
  margin: 0.25em 0 0.75em;
  text-align: center;
  font-weight: bold;
  font-size: 1.05em;
  font-family: Georgia, '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho ProN',
    'HGS明朝E', 'メイリオ', Meiryo, serif;
  color: #333;
}

.login p {
  font-size: 0.875em;
  margin-bottom: 0.5em;
}

.login ul li {
  color: #fff;
}

.login ul li a {
  position: relative;
  display: block;
  padding: 0.75em;
  padding-left: 2.5em;
  text-align: center;
}

.login ul li a:before {
  position: absolute;
  top: 50%;
  width: 2em;
  margin-top: -0.5em;
  text-align: center;
  font-family: FontAwesome;
  font-size: 1.5em;
}

.login ul li a.flogin {
  background: #3b5998;
}

.login ul li a.flogin:before {
  content: '\f09a';
}

.login ul li a.glogin {
  background: #dd4b39;
}

.login ul li a.glogin:before {
  content: '\f0d5';
}

.login ul li a.ylogin {
  background: #ff0033;
}

.login ul li a.ylogin:before {
  content: '\f19e';
}

.red {
  font-size: 0.75em;
  color: #ae8139;
}

.meiwaku {
  padding: 1em;
  border: 4px solid #ccc;
}

.meiwaku .catch {
  margin-bottom: 1em;
  text-align: center;
  font-weight: bold;
  font-family: Georgia, '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho ProN',
    'HGS明朝E', 'メイリオ', Meiryo, serif;
  color: #333;
}

.meiwaku p {
  font-size: 0.875em;
}

.pos.sec {
  font-size: 0.75em;
}

.shoplist {
  padding: 0.4em 1.5em;
  background: #ae8139;
  border-radius: 1em;
  color: #fff;
}

.form span.lev1,
.form span.lev2,
.form span.lev3 {
  font-weight: bold;
}

.form span.lev1:before,
.form span.lev2:before,
.form span.lev3:before {
  font-family: FontAwesome;
}

.form span.lev1 {
  color: #ae8139;
}

.form span.lev1:before {
  content: '\25B3';
}

.form span.lev2 {
  color: #f28642;
}

.form span.lev2:before {
  content: '\25CB';
}

.form span.lev3 {
  color: #2bb167;
}

.form span.lev3:before {
  content: '\25CE';
}

/* 20210906追記*/
.privacy {
  padding: 0;
  border: none;
  background: none;
}

.remain_box {
  bottom: inherit !important;
  top: 0;
  right: inherit !important;
  left: 0;
  position: fixed;
  width: 100%;
  display: block;
  padding: 5px;
  background: #ffcbcb;
  border-radius: 0;
  font-size: 0.875em;
  z-index: 999;
  color: #000;
  text-align: center;
  max-width: inherit;
}

.remain_box span {
  color: #dd2d2d;
  font-weight: bold;
  font-size: 1.3em;
}

.privacyModal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
  height: 100vh;
  /* display: flex; */
  justify-content: center;
  align-items: center;
  background: rgba(0, 0, 0, 0.5);
}

.privacyModal .modalInner {
  max-width: 720px;
  width: 70%;
  height: 75vh;
  background: #fff;
  padding: 1.5em;
  overflow-y: scroll;
}

.privacyModal .modalClose {
  position: absolute;
  top: 0.5em;
  right: 1em;
  font-size: 2.5em;
  color: #fff;
}

.privacy a {
  text-decoration: underline;
}
.base > tbody > tr > td .shopTtl {
  font-size: 1em;
}
.shopTtl .req:before {
  position: relative;
  margin-left: 0.5em;
  padding: 0.175em 0.5em;
  border-radius: 0.25em;
  font-size: 0.65em;
  color: #fff;
  top: -2px;
  content: '\5FC5\9808';
  background: #a3194c;
}

.shopTtl .opt:before {
  position: relative;
  margin-left: 0.5em;
  padding: 0.175em 0.5em;
  border-radius: 0.25em;
  font-size: 0.65em;
  color: #fff;
  top: -2px;
  content: '\4EFB\610F';
  background: #126378;
}

span.required {
  position: relative;
}

span.required:before {
  position: absolute;
  top: 50%;
  /* bottom: 0; */
  right: -40px;
  margin: auto 0;
  padding: 0 3px;
  border-radius: 0.25em;
  font-size: 14px;
  color: #fff;
  content: '\5FC5\9808';
  background: #164a94;
  z-index: 10;
  transform: translateY(-50%);
}

.ipt30 {
  width: 31.8%;
}

.form button[type='submit'] {
  box-shadow: none;
  border-radius: 0;
}

.sec {
  margin-bottom: 10px;
}

.form .btn_radio + label {
  border: none;
  border-radius: 0;
}

#conf_block span {
  padding: 0.5em 2em;
  background: #676767;
}

#conf_block span:before {
  display: none;
}

#conf_block {
  margin-top: 0.5em;
}

.formError .formErrorContent {
  width: 100%;
  background: #dd2d2d;
  position: relative;
  color: #fff;
  min-width: 120px;
  font-size: 11px;
  padding: 4px 10px 4px 10px;
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  -o-border-radius: 6px;
  border: 1.5px solid #fff;
  box-shadow: 0 2px 3px rgb(0 0 0 / 20%);
}

.formError .formErrorContent:before {
  content: '';
  position: absolute;
  top: -12px;
  left: 30px;
  margin-left: -15px;
  border: 6px solid transparent;
  border-bottom: 6px solid #de3131;
  z-index: 2;
}

.formError .formErrorContent:after {
  content: '';
  position: absolute;
  top: -16px;
  left: 30px;
  margin-left: -17px;
  border: 8px solid transparent;
  border-bottom: 8px solid #fff;
  z-index: 1;
}

.required.selectBox:before {
  right: 2em;
}

.form .btn_radio + label {
  width: 49%;
  margin-right: 2%;
}

.radioBox .pl {
  position: relative;
  /* left: 12px; */
  transform: translateY(-50%);
  /* color: #aaa; */
  top: -5px;
  /* font-size: 12px; */
  /* background: #fff; */
  transition: top 0.3s ease-in-out, font-size 0.3s ease-in-out,
    color 0.3s ease-in-out;
}

.radioBox ul {
  display: flex;
  justify-content: space-between;
  /* flex-wrap: wrap; */
}

.radioBox ul li {
  flex: 1;
  margin: 0 0.5%;
  /* width: 33%; */
}
.radioBox ul li:first-child {
  margin-left: 0;
}
.radioBox ul li:last-child {
  margin-right: 0;
}

.form .radioBox .btn_check + label {
  width: 100%;
}

.flex {
  display: flex;
  justify-content: space-between;
}

.flex input {
  width: 49%;
}

select {
  height: 2em;
  border-radius: 0;
}

/* .form .btn_check + label {
  position: relative;
  display: block;
  width: calc(50% - 0.25em);
  margin: 0 0.5em 0.5em 0;
  padding: 0.5em;
  padding-left: 2em;
  background: #eee;
  text-align: center;
  font-size: 0.875em;
  color: #999;
  border: none;
  border-radius: 0;
} */

.form .btn_check + label:nth-child(4n) {
  margin-right: 0;
}

/* .form .btn_check + label:before {
  position: absolute;
  top: 50%;
  left: 0.675em;
  display: block;
  margin-top: -0.675em;
  content: '\f00c';
  font-family: FontAwesome;
  color: #bbb;
} */

.form .btn_check:checked + label {
  background: #e1feee;
  color: #000;
}

.form .btn_check:checked + label:before {
  content: '\f00c';
  color: #2bb167;
}

/* .form .btn_check {
  position: absolute;
  opacity: 0;
  z-index: -1;
  display: block;
} */

.intro_box {
  padding: 0 30px 20px;
  background: #ededed;
  margin-bottom: 30px;
}

div.tel {
  display: block;
  margin-top: 20px;
}
div.tel p {
  text-align: center;
  font-weight: bold;
}
div.tel p.number {
  font-size: 34px;
}
div.tel p.number i {
  font-size: 40px;
  margin-right: 10px;
}

@media screen and (max-width: 750px) {
  .radioBox ul {
    flex-wrap: wrap;
  }
  .radioBox ul li {
    flex: none;
    width: 100%;
    margin: 0 0 10px 0;
  }
}
