@charset "UTF-8";
body {
  background-color: #fff;
  color: #000;
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 500;
  overflow: hidden; }

a {
  color: #000;
  text-decoration: none;
  cursor: pointer; }

a:hover img {
  opacity: 0.6; }

dl {
  word-wrap: break-word; }

sup {
  font-size: 0.75rem;
  color: #000; }
  @media screen and (min-width: 768px) {
    sup {
      font-size: 0.8rem; } }

p, li, dt, dd, h1, h2, h3, h4 {
  line-height: 1.7; }

h1, h2, h3, h4 {
  font-weight: bold; }

h2 {
  text-align: center;
  font-size: 1.875rem; }
  h2 span {
    display: block; }
  h2 span.ttl-jp {
    display: block;
    font-size: 0.9rem; }

h1.ttl-border,
h2.ttl-border {
  text-align: center;
  font-size: 1.875rem; }
  h1.ttl-border span,
  h2.ttl-border span {
    display: block; }
  h1.ttl-border span.ttl-jp,
  h2.ttl-border span.ttl-jp {
    display: block;
    font-size: 0.9rem; }
  h1.ttl-border span.ttl-en,
  h2.ttl-border span.ttl-en {
    margin: 0 auto 12px;
    font-family: 'Oswald', sans-serif;
    letter-spacing: -0.01px; }
    @media screen and (min-width: 768px) {
      h1.ttl-border span.ttl-en,
      h2.ttl-border span.ttl-en {
        letter-spacing: 0.1rem; } }
    h1.ttl-border span.ttl-en::after,
    h2.ttl-border span.ttl-en::after {
      content: "";
      display: block;
      width: 24px;
      height: 2px;
      background-color: #000;
      margin: 4px auto; }
    @media screen and (min-width: 768px) {
      h1.ttl-border span.ttl-en,
      h2.ttl-border span.ttl-en {
        margin: 0 auto 16px; } }

.border-dotted {
  font-size: 1.25rem !important;
  display: inline-block;
  border-bottom: 2px dotted #000; }

.ttl-orange {
  font-size: 1rem;
  color: #fff;
  background-color: #F08300;
  height: 40px;
  line-height: 40px;
  margin-bottom: 32px;
  text-align: left;
  display: block;
  padding-left: 16px; }

.page-area-ttl {
  text-align: center;
  padding: 56px 0; }
  .page-area-ttl h1 {
    font-size: 1.25rem; }
    @media screen and (min-width: 768px) {
      .page-area-ttl h1 {
        font-size: 1.5rem; } }

.text-highlight {
  color: #F08300; }

.text-bold {
  font-weight: bold; }

.text-small {
  font-size: 0.75rem; }
  @media screen and (min-width: 768px) {
    .text-small {
      font-size: 0.8rem; } }

.t-l {
  text-align: left; }

.t-r {
  text-align: right; }

.t-c {
  text-align: center; }

@media screen and (min-width: 768px) {
  .t-l-pc {
    text-align: left; }
  .t-r-pc {
    text-align: right; }
  .t-c-pc {
    text-align: center; } }

input.font-awesome {
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit; }

/* button */
.btn-black {
  margin: 0 auto;
  text-align: center; }
  .btn-black a {
    display: block;
    max-width: 350px;
    width: 100%;
    height: 64px;
    line-height: 64px;
    border-radius: 4px;
    margin: 0 auto;
    background-color: #000;
    text-align: center;
    color: #fff;
    font-weight: bold; }
    .btn-black a:hover {
      opacity: 0.6; }

.btn-orange {
  margin: 0 auto;
  text-align: center; }
  .btn-orange a {
    display: block;
    max-width: 350px;
    width: 100%;
    height: 64px;
    line-height: 64px;
    border-radius: 4px;
    margin: 0 auto;
    background-color: #F08300;
    text-align: center;
    color: #fff;
    font-weight: bold; }
    .btn-orange a:hover {
      opacity: 0.6; }

.btn-white {
  margin: 0 auto;
  width: 100%; }
  .btn-white a {
    display: block;
    border: 1px solid #000;
    background-color: #fff;
    height: 48px;
    line-height: 48px;
    font-weight: bold;
    font-size: 0.75rem;
    width: 100%;
    padding: 0 16px;
    position: relative; }
    @media screen and (min-width: 768px) {
      .btn-white a {
        font-size: 0.8rem; } }
    .btn-white a::before {
      content: "";
      display: inline-block;
      width: 8px;
      height: 8px;
      border-top: 1.5px solid #000;
      border-right: 1.5px solid #000;
      -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      transform: rotate(45deg);
      position: absolute;
      top: 18px;
      right: 16px; }
    .btn-white a:hover {
      background-color: #000;
      color: #fff; }
      .btn-white a:hover::before {
        border-top: 1.5px solid #fff;
        border-right: 1.5px solid #fff; }

.btn-white-l a {
  height: 64px;
  line-height: 64px;
  font-size: 1rem; }
  .btn-white-l a::before {
    top: 27px; }

.link-s a {
  font-size: 0.8125rem;
  font-weight: bold;
  position: relative;
  padding-right: 26px;
  display: inline-block; }
  .link-s a::after {
    content: "";
    display: block;
    width: 18px;
    height: 18px;
    border-radius: 9px;
    background-color: black;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1; }
  .link-s a::before {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-top: 1.5px solid #fff;
    border-right: 1.5px solid #fff;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 6px;
    right: 7px;
    z-index: 2; }
  .link-s a:hover {
    color: #000;
    opacity: 0.6; }

.link-pdf::after {
  content: "";
  display: inline-block;
  width: 22px;
  height: 22px;
  background: url(../img/common/ico-pdf.png) no-repeat;
  background-size: contain;
  margin: 0 0 -6px 8px; }

.link-blank::after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 13px;
  background: url(../img/common/ico-blank.svg) no-repeat;
  background-size: contain;
  margin: 0 0 0 6px; }

.link-arrow::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-right: 2px solid #000;
  border-top: 2px solid #000;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  margin: 0 8px 3px 0; }

a.link-text {
  text-decoration: underline; }
  a.link-text:hover {
    color: #F08300; }

/* float */
@media screen and (min-width: 768px) {
  .f-l {
    float: left; }
  .f-r {
    float: right; } }

/* smartphone */
.ssp-only {
  display: none !important; }

.pc-only {
  display: none !important; }

.pc-tb-only {
  display: none !important; }

.sp-only {
  display: block !important; }

.br-pc {
  display: none !important; }

.br-sp {
  display: block !important; }

@media screen and (min-width: 481px) {
  .pc-tb-only {
    display: block !important; } }

@media screen and (min-width: 768px) {
  .pc-only {
    display: block !important; }
  .sp-only {
    display: none !important; }
  .pc-tb-only {
    display: block !important; }
  .br-pc {
    display: block !important; }
  .br-sp {
    display: none !important; } }

@media screen and (max-width: 320px) {
  .ssp-only {
    display: block !important; } }

/* layout */
.content-wrap {
  max-width: 960px;
  width: calc(100% - 40px);
  margin: 0 auto; }
  @media screen and (min-width: 961px) {
    .content-wrap {
      width: 100%; } }

.vw {
  width: 100vw;
  margin-left: -20px; }
  @media screen and (min-width: 768px) {
    .vw {
      width: 100%;
      margin-left: 0; } }

img {
  width: 100%;
  vertical-align: middle; }

.flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.fixed {
  position: fixed;
  width: 100%; }

@media screen and (min-width: 768px) {
  .col-2 .f-l,
  .col-2 .f-r {
    width: 48%; } }

.mb-0 {
  margin-bottom: 0; }

.mb-8 {
  margin-bottom: 8px; }

.mb-16 {
  margin-bottom: 16px; }

.mb-24 {
  margin-bottom: 24px; }

.mb-32 {
  margin-bottom: 32px; }

.mb-40 {
  margin-bottom: 40px; }

.mb-48 {
  margin-bottom: 48px; }

.mb-56 {
  margin-bottom: 56px; }

.mb-64 {
  margin-bottom: 64px; }

.mb-72 {
  margin-bottom: 72px; }

.mb-80 {
  margin-bottom: 80px; }

.base-list li {
  width: calc(50% - 15px);
  margin-bottom: 32px; }

.base-list li:last-of-type,
.base-list li:nth-last-child(2) {
  margin-bottom: 0; }

@media screen and (min-width: 768px) {
  .base-list li {
    width: calc(25% - 30px); }
  .base-list li:nth-last-child(3),
  .base-list li:nth-last-child(4) {
    margin-bottom: 0; }
  .base-list::before {
    content: "";
    display: block;
    width: calc(25% - 30px);
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1; }
  .base-list::after {
    content: "";
    display: block;
    width: calc(25% - 30px); } }

@media screen and (max-width: 320px) {
  .base-list li {
    width: calc(50% - 8px); } }

table.common-table {
  width: 100%;
  border-collapse: collapse; }
  table.common-table th, table.common-table td {
    padding: 3% 2%;
    font-size: 0.875rem;
    border: 1px solid #999; }
    @media screen and (min-width: 768px) {
      table.common-table th, table.common-table td {
        font-size: 1rem;
        padding: 2%; } }
  table.common-table .cell-gray {
    background-color: #ccc; }
  table.common-table th {
    text-align: center;
    background-color: #eee; }
  table.common-table .cell-small {
    font-size: 0.75rem; }
    @media screen and (min-width: 768px) {
      table.common-table .cell-small {
        font-size: 0.8rem; } }

/*breadcrumb*/
.breadcrumb ul {
  margin-bottom: 24px; }
  .breadcrumb ul li {
    display: inline-block;
    font-size: 0.875rem;
    padding-right: 10px; }
    .breadcrumb ul li::after {
      content: ">";
      margin-left: 10px; }
    .breadcrumb ul li a {
      text-decoration: underline; }
      .breadcrumb ul li a:hover {
        color: #F08300; }
  .breadcrumb ul li:last-of-type {
    padding-right: 0; }
    .breadcrumb ul li:last-of-type::after {
      content: none; }

/* Animation */
@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

/* Page-top */
.pagetop-area {
  margin-bottom: 64px; }
  .pagetop-area a {
    display: block;
    width: 54px;
    height: 54px;
    background-color: #F08300;
    border-radius: 27px;
    margin: 0 auto;
    position: relative; }
    .pagetop-area a::before {
      content: "";
      display: block;
      width: 20px;
      height: 20px;
      border-top: 1px solid #fff;
      border-right: 1px solid #fff;
      -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
      transform: rotate(-45deg);
      position: absolute;
      top: 23px;
      right: 17px; }

p.pagetop-area-contents {
  text-align: right;
  font-size: 0.875rem; }
  p.pagetop-area-contents a {
    text-decoration: underline; }
    p.pagetop-area-contents a:hover {
      color: #F08300; }

.new .news-area-listhead::after,
.new h4::before,
h1.new::after {
  padding-left: 8px;
  content: "NEW";
  color: #fff;
  background-color: #F20000;
  font-family: 'Oswald', sans-serif;
  font-weight: bold;
  font-size: 0.6rem;
  padding: 0 4px;
  letter-spacing: -0.01px;
  margin-left: 8px; }
  @media screen and (min-width: 768px) {
    .new .news-area-listhead::after,
    .new h4::before,
    h1.new::after {
      letter-spacing: 0.1rem; } }

span.new {
  color: #fff;
  background-color: #F20000;
  font-family: 'Oswald', sans-serif;
  font-weight: bold;
  font-size: 0.6rem !important;
  letter-spacing: -0.01px;
  margin-left: 8px;
  padding: 0 4px !important;
  display: inline !important;
  vertical-align: text-top; }
  @media screen and (min-width: 768px) {
    span.new {
      letter-spacing: 0.1rem; } }

.detail-content span.new {
  font-size: 0.8rem !important; }

input[name="tab-item"] {
  display: none; }

.tab-content {
  display: none; }

#tab-01:checked ~ #tab-01-content,
#tab-02:checked ~ #tab-02-content {
  display: block; }

.tab-area .tab-item:hover {
  opacity: 0.6; }

.tab-area input:checked + .tab-item {
  color: #F08300; }
  .tab-area input:checked + .tab-item::after {
    background-color: #F08300; }
  .tab-area input:checked + .tab-item:hover {
    opacity: 1; }

.tab-area {
  text-align: center; }

.tab-item {
  display: inline-block;
  width: 100px;
  color: #6c6c6c;
  margin-right: 16px;
  font-weight: normal;
  margin-bottom: 80px;
  cursor: pointer; }
  .tab-item::after {
    content: "";
    display: block;
    width: 40px;
    height: 2px;
    background-color: #6c6c6c;
    margin: 12px auto 0; }

.tab-item:last-of-type {
  margin-right: 0; }

.tab-content {
  text-align: left; }

.operating-list {
  margin-bottom: 32px; }
  .operating-list li {
    width: 46%;
    margin-bottom: 24px; }
    .operating-list li img {
      margin-bottom: 16px; }
  @media screen and (min-width: 768px) {
    .operating-list::after {
      content: "";
      display: block;
      width: 22%;
      height: 0; }
    .operating-list li {
      width: 22%; } }

#faq-item::before,
#faq-store::before,
#faq-story::before,
#faq-outside::before,
#faq-shareholders::before,
#faq-overseas::before,
#faq-web::before,
#faq-coupon::before,
#faq-member::before,
#howtotakeout::before {
  height: 84px;
  margin: -84px 0 0;
  content: "";
  display: block; }
  @media screen and (min-width: 768px) {
    #faq-item::before,
    #faq-store::before,
    #faq-story::before,
    #faq-outside::before,
    #faq-shareholders::before,
    #faq-overseas::before,
    #faq-web::before,
    #faq-coupon::before,
    #faq-member::before,
    #howtotakeout::before {
      height: 116px;
      margin: -116px 0 0; } }

.w-100 {
  width: calc(100% - 16px); }

.w-80 {
  width: calc(80% - 16px); }

.w-70 {
  width: calc(70% - 16px); }

.w-60 {
  width: calc(60% - 16px); }

.w-56 {
  width: calc(56% - 16px); }

.w-52 {
  width: calc(52% - 16px); }

.w-50 {
  width: calc(50% - 16px); }

.w-48 {
  width: calc(48% - 16px); }

.w-44 {
  width: calc(44% - 16px); }

.w-40 {
  width: calc(40% - 16px); }

.w-36 {
  width: calc(36% - 16px); }

.w-30 {
  width: calc(30% - 16px); }

.w-20 {
  width: calc(20% - 16px); }

@media screen and (max-width: 768px) {
  .w-80, .w-70, .w-60, .w-56, .w-52, .w-48, .w-50, .w-48, .w-44, .w-40, .w-36, .w-30, .w-20 {
    width: 100%; } }

.red {
  color: #ff0000; }
