@charset "UTF-8";
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-size: 100%;
  vertical-align: baseline;
  outline: none; }

main {
  display: block; }

img {
  background-color: transparent;
  border: 0;
  vertical-align: bottom;
  max-width: 100%; }

ol,
ul {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

input,
button,
textarea,
select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  appearance: none; }

input[type="radio"] {
  display: none; }

input[type="checkbox"] {
  display: none; }

button,
input,
select,
textarea {
  font-family: inherit;
  font-size: 100%; }

select::-ms-expand {
  display: none; }

body {
  font-family: "Noto Serif JP", serif; }

*,
*::before,
*::after {
  box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  scroll-padding-top: 80px; }

body {
  color: #303030;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  position: relative; }

p {
  font-weight: 300; }

.l-header {
  height: 70px;
  width: 100%;
  position: relative;
  top: -24px;/* もともと0やったけど上に空白できたから設定*/
  left: 0;
  background-color: #fff;
  z-index: 10; }

  @media only screen and (max-width: 767px) {
    .l-header {
      height: 50px; } }
  .l-header__inner {
    display: flex;
    justify-content: space-between; }
  .l-header__logo {
    display: flex;
    line-height: 70px;
    padding-top: 10px;}/*もともとなかった*/
    @media only screen and (max-width: 767px) {
      .l-header__logo {
        line-height: 50px; } }
    @media only screen and (max-width: 767px) {
      .l-header__logo__anc {
        width: 72px;
        line-height: 60px;} }
    .l-header__logo__anc__img {
      vertical-align: middle; }
    .l-header__logo__hl {
      margin-left: 20px;
      margin-top: 5px;
      font-size: 16px; /*タイトル文字大きさ*/
      transition: 0.2s;
      line-height: 80px;
      font-weight: 400; }
   /*   .l-header__logo__hl:hover {
        opacity: 0.7; } */
      @media only screen and (max-width: 767px) {
        .l-header__logo__hl {
          font-size: 12px;
          line-height: 60px; } }
 .l-header__contact {
    margin-right: 0;/*margin-right: 60px*/
    width: 208px; /*220*/
    height: 57px;/*70*/
    border-radius: 0px 0px 12px 12px;
    background: #a61a13;
    text-align: center;
    line-height: 67px;
    color: #fff;
    text-decoration: none;
    transition: 0.2s;
    font-size: 18px;
  }
    @media only screen and (max-width: 767px) {
      .l-header__contact {
        margin-right: 0px;
        padding-top: 5px;
        height: 44px;/*50*/
        line-height: 1.2;
        font-size: 12px;
        width: 94px;/*50*/
        display: flex;
        align-items: center;
        justify-content: center; } }
    .l-header__contact:hover {
      opacity: 0.7; }

.l-footer {
  height: 80px;
  background-color: #333;
  color: #fff;
  line-height: 44px; }
  @media only screen and (max-width: 767px) {
    .l-footer {
      height: 100%;
      display: block; } }
  .l-footer__links {
    text-align: center;
    height: 40px;
    width: 100%; }
    @media only screen and (max-width: 767px) {
      .l-footer__links {
        height: 100%;
        display: block; padding: 0 10px 0 10px;} }
    .l-footer__links > .none {
      display: none; }
  .l-footer__link {
    color: white;
    font-size: 12px;
    margin-left: 15px;
    transition: 0.1s; }
    .l-footer__link:hover {
      opacity: 0.8;
      text-decoration: none; }
  .l-footer__copy {
    font-size: 16px;
    height: 44px;
    background-color: #a50000;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .l-footer__copy {
        height: 100%;
        display: block; } }

.l-container {
  /* padding-top: 70px;　
  padding-bottom: 150px;*/
  overflow-x: hidden; }
  @media only screen and (max-width: 767px) {
    .l-container {
      padding-top: 50px; } }

.c-inner {
  margin: 0 auto; }
  .c-inner_contents {
    max-width: 1240px;
    width: calc(100% - 40px); }
    @media only screen and (max-width: 767px) {
      .c-inner_contents {
        min-width: 0;
        max-width: none; } }

.scroll {
  position: fixed;
  bottom: 30px;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid #a50000;
  display: block;
  text-align: center;
  text-decoration: none;
  transition: 0.2s;
  right: 0; }
  @media only screen and (max-width: 767px) {
    .scroll {
      margin-left: 0;
      left: auto;
      width: 50px;
      height: 50px;
      bottom: 20px;
      right: 20px; } }
  .scroll::before {
    /* くの字の表示設定 */
    content: "";
    margin: auto;
    position: absolute;
    left: 38%;
    bottom: 18px;
    height: 35px;
    width: 3px;
    background-color: #a50000;
    border-radius: 5px;
    transform: translate(-50%) rotate(30deg); }
    @media only screen and (max-width: 767px) {
      .scroll::before {
        height: 25px;
        bottom: 12px; } }
  .scroll::after {
    content: "";
    margin: auto;
    position: absolute;
    left: 64%;
    bottom: 18px;
    height: 35px;
    width: 3px;
    background-color: #a50000;
    border-radius: 5px;
    transform: translate(-50%) rotate(-30deg); }
    @media only screen and (max-width: 767px) {
      .scroll::after {
        height: 25px;
        bottom: 12px; } }
  .scroll:hover {
    background: #ffc7c4; }
    @media only screen and (max-width: 767px) {
      .scroll:hover {
        background: #fff; } }

.modal {
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 10; }
  .modal__bg {
    background: rgba(0, 0, 0, 0.8);
    height: 100vh;
    position: absolute;
    width: 100%; }
  .modal__content {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%); }
    @media only screen and (max-width: 767px) {
      .modal__content > img {
        min-width: 100vw; } }
    .modal__content > table {
      min-width: 60vw; }
      @media only screen and (max-width: 767px) {
        .modal__content > table {
          min-width: 100vw; } }
  .modal__closeBtn {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: #fff;
    border: 2px solid #a50000;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: 0.2s;
    position: absolute;
    right: 20px;
    top: 20px; }
    @media only screen and (max-width: 767px) {
      .modal__closeBtn {
        width: 50px;
        height: 50px; } }
    .modal__closeBtn:hover {
      cursor: pointer;
      background: #ffc7c4; }
    .modal__closeBtn::before {
      /* くの字の表示設定 */
      content: "";
      margin: auto;
      position: absolute;
      left: 50%;
      top: 50%;
      height: 35px;
      width: 3px;
      background-color: #a50000;
      border-radius: 5px;
      transform: translate(-50%, -50%) rotate(45deg); }
      @media only screen and (max-width: 767px) {
        .modal__closeBtn::before {
          height: 25px; } }
    .modal__closeBtn::after {
      content: "";
      margin: auto;
      position: absolute;
      left: 50%;
      top: 50%;
      height: 35px;
      width: 3px;
      background-color: #a50000;
      border-radius: 5px;
      transform: translate(-50%, -50%) rotate(-45deg); }
      @media only screen and (max-width: 767px) {
        .modal__closeBtn::after {
          height: 25px; } }

.c-btn[data-type="product"] {
  display: inline-block;
  padding: 20px 80px 20px 180px;
  transition: 0.2s;
  position: relative;
  border-radius: 20px;
  background: #a50000;
  font-size: 24px;
  line-height: 1.25;
  color: #fff;
  text-decoration: none;
  text-align: left; }
  @media only screen and (max-width: 767px) {
    .c-btn[data-type="product"] {
      width: 100% !important;
      font-size: 16px;
      padding: 10px 10px 10px 90px;
      max-width: 450px; } }
  .c-btn[data-type="product"]:hover {
    opacity: 0.7; }
  .c-btn[data-type="product"] > i {
    width: 126px;
    position: absolute;
    top: 40%;
    transform: translateY(-50%);
    left: 35px; }
    @media only screen and (max-width: 767px) {
      .c-btn[data-type="product"] > i {
        width: 63px;
        left: 17px;
        top: 45%; } }
    .c-btn[data-type="product"] > i > img {
      width: 100%; }

@media only screen and (max-width: 480px) {
  .c-btn[data-type="product"] {
    font-size: 13px; } }
.c-bread {
  padding: 15px 0; }
  .c-bread__list {
    display: flex;
    flex-wrap: wrap; }
    .c-bread__list__item {
      margin-right: 18px;
      position: relative;
      font-size: 12px; }
      .c-bread__list__item::after {
        content: ">";
        position: absolute;
        top: 0;
        right: -13px; }
      .c-bread__list__item:last-child {
       /* color: #a50000; */
        margin-right: 0; }
        .c-bread__list__item:last-child::after {
          content: ""; }
      .c-bread__list__item > a {
        text-decoration: none;
        color: black;
        transition: 0.1s;
        position: relative;
        display: inline-block;
        text-decoration: none; }
        .c-bread__list__item > a::after {
          position: absolute;
          bottom: 2px;
          left: 0;
          content: "";
          width: 100%;
          height: 1px;
          background: #333;
          transform: scale(0, 1);
          transform-origin: left top;
          transition: transform 0.1s; }
        .c-bread__list__item > a:hover::after {
          transform: scale(1, 1); }

.c-sec {
  padding-bottom: 60px; }
  @media only screen and (max-width: 767px) {
    .c-sec {
      padding-bottom: 30px; } }
  .c-sec:last-of-type {
    padding-bottom: 0; }

.c-hl_type01 {
  padding: 0 0 20px;
  font-weight: normal;
  font-size: 24px;
  color: #a50000;
  border-bottom: 1px solid #a50000;
  font-weight: 600;
  box-shadow: 0px 5px 4px -4px rgba(0, 0, 0, 0.5); }
  @media only screen and (max-width: 767px) {
    .c-hl_type01 {
      font-size: 18px;
      padding: 0 0 10px; } }

.c-column {
  display: flex;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    .c-column {
      display: block; } }
  .c-column[data-col="2"] > div {
    width: 48%; }
    @media only screen and (max-width: 767px) {
      .c-column[data-col="2"] > div {
        width: 100%;
        margin-bottom: 20px; } }
    .c-column[data-col="2"] > div:last-child {
      margin-bottom: 0; }

.c-column2 { /*表のWidthが変なので、.c-columnを複製し、display: flexをコメントアウトした*/
 /* display: flex;*/
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    .c-column2 {
      display: block; } }
  .c-column2[data-col="2"] > div {
    width: 48%; }
    @media only screen and (max-width: 767px) {
      .c-column2[data-col="2"] > div {
        width: 100%;
        margin-bottom: 20px; } }
    .c-column2[data-col="2"] > div:last-child {
      margin-bottom: 0; }

/*.js-zoom:hover {
  cursor: pointer; } */

.table_overflow {
  overflow-x: auto } 

.c-rt_type01 {
  line-height: 2;
  font-size: 16px; }

.c-rt_type01_ul {
    padding: 0;
    margin-left: 20px;
}

.mediaTable {
  width: 100%;
  height: 100%;
  background-color: #edf0f3;
  max-height: 380px; }
  .mediaTable .mediaTr {
    height: 25%;
    border: 1px solid #333;
    height: 90px; }
    @media only screen and (max-width: 767px) {
      .mediaTable .mediaTr {
        height: 50px; } }
  .mediaTable .mediaTh {
    background-color: #a50000;
    color: #fff;
    width: 150px;
    vertical-align: middle;
    border: 1px solid #333;
    padding: 10px; }
  .mediaTable .mediaTd {
    vertical-align: middle;
    text-align: center;
    border: 1px solid #333;
    padding: 10px; }

.c-table_type01 {
  width: 100%;
  }

  .c-table_type01 > tbody > tr > th,

  .c-table_type01 > tbody > tr > td {
    vertical-align: middle;
    border: 1px solid #A6A6A6;
    padding: 15px 15px;
    text-align: center; }
  .c-table_type01 > tbody > tr > th {
    background-color: #00729A;
    color: #fff; }
  .c-table_type01 > tbody > tr > td {
    background-color: #edf0f3; }

.p-pageTitle {
  display: flex;
  margin: 0 calc(50% - 50vw);
  padding: 20px 0 160px 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  width: 100vw; }
  @media only screen and (max-width: 767px) {
    .p-pageTitle {
      padding: 20px 0 70px 0; } }
  .p-pageTitle__text {
    font-size: 38px;
    letter-spacing: 0.05em; 
    font-weight: 600;
    display: block;
    color: #fff; }
    @media only screen and (max-width: 767px) {
      .p-pageTitle__text {
        margin-left: 0;
        font-size: 20px; } }

.p-productBtnArea {
  padding: 100px 0;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .p-productBtnArea {
      padding: 40px 0; } }

.p-textLinkMenu__list {
  padding: 30px 80px;  /*padding: 65px 80px;*/
  background: #edf0f3; 
  box-shadow :0px 0px 10px silver;/*5px=影の広がり具合*/
}
  @media only screen and (max-width: 767px) {
    .p-textLinkMenu__list {
      padding: 20px; } }
  .p-textLinkMenu__list__item {
    position: relative;
    margin-bottom: 20px;
    margin-left: 30px; }
    .p-textLinkMenu__list__item:last-child {
      margin-bottom: 0; }
    .p-textLinkMenu__list__item__anc {
      color: #a50000;
      text-decoration: none;
      transition: 0.2s;
      font-size: 16px;  /*font-size: 24px;*/
      font-weight: 400; 
}  /*font-weight: 600;*/
      @media only screen and (max-width: 767px) {
        .p-textLinkMenu__list__item__anc {
          font-size: 18px; } }
      .p-textLinkMenu__list__item__anc:hover {
        opacity: 0.7; }
    .p-textLinkMenu__list__item::before {
      /*content: ""; */
      content: url("../images/arrow.svg");
      position: absolute;
      width: 16px;
      height: 25px;
      /*background-color: #a50000;*/
      top: 2px; /*top: 5px;*/
      left: -40px; } /*left: -30px;*/
      @media only screen and (max-width: 767px) {
        .p-textLinkMenu__list__item::before {
          left: -30px;
          width: 10px;
          height: 18px;
          top: 4px; } }
.p-textLinkMenu__list {
  margin-bottom: 40px;
  position: relative; }
  @media only screen and (max-width: 767px) {
    .p-textLinkMenu__list {
      margin-bottom: 20px; } }
  .p-textLinkMenu__list:last-of-type {
    margin-bottom: 0; }

.u-visible_xs,
.u-visible_lg {
  display: none !important; }

.u-visible_xs_block,
.u-visible_xs_inline,
.u-visible_xs_inline-block,
.u-visible_lg_block,
.u-visible_lg_inline,
.u-visible_lg_inline-block {
  display: none !important; }

@media only screen and (max-width: 767px) {
  .u-visible_xs {
    display: block !important; }

  table.u-visible_xs {
    display: table !important; }

  tr.u-visible_xs {
    display: table-row !important; }

  th.u-visible_xs,
  td.u-visible_xs {
    display: table-cell !important; } }
@media only screen and (max-width: 767px) {
  .u-visible_xs_block {
    display: block !important; } }
@media only screen and (max-width: 767px) {
  .u-visible_xs_inline {
    display: inline !important; } }
@media only screen and (max-width: 767px) {
  .u-visible_xs_inline-block {
    display: inline-block !important; } }
@media only screen and (min-width: 768px) {
  .u-visible_lg {
    display: block !important; }

  table.u-visible_lg {
    display: table !important; }

  tr.u-visible_lg {
    display: table-row !important; }

  th.u-visible_lg,
  td.u-visible_lg {
    display: table-cell !important; } }
@media only screen and (min-width: 768px) {
  .u-visible_lg_block {
    display: block !important; } }
@media only screen and (min-width: 768px) {
  .u-visible_lg_inline {
    display: inline !important; } }
@media only screen and (min-width: 768px) {
  .u-visible_lg_inline-block {
    display: inline-block !important; } }
@media only screen and (max-width: 767px) {
  .u-hidden_xs {
    display: none !important; } }
@media only screen and (min-width: 768px) {
  .u-hidden_lg {
    display: none !important; } }
.u-ta_c {
  text-align: center !important; }

.u-ta_l {
  text-align: left !important; }

.u-ta_r {
  text-align: right !important; }

.u-m_auto {
  margin-left: auto !important;
  margin-right: auto !important; }

.u-m_00 {
  margin: 0 !important; }

.u-m_05 {
  margin: 5px !important; }

.u-m_10 {
  margin: 10px !important; }

.u-m_15 {
  margin: 15px !important; }

.u-m_20 {
  margin: 20px !important; }

.u-m_25 {
  margin: 25px !important; }

.u-m_30 {
  margin: 30px !important; }

.u-m_35 {
  margin: 35px !important; }

.u-m_40 {
  margin: 40px !important; }

.u-m_45 {
  margin: 45px !important; }

.u-m_50 {
  margin: 50px !important; }

.u-mt_00 {
  margin-top: 0 !important; }

.u-mt_05 {
  margin-top: 5px !important; }

.u-mt_10 {
  margin-top: 10px !important; }

.u-mt_15 {
  margin-top: 15px !important; }

.u-mt_20 {
  margin-top: 20px !important; }

.u-mt_25 {
  margin-top: 25px !important; }

.u-mt_30 {
  margin-top: 30px !important; }

.u-mt_35 {
  margin-top: 35px !important; }

.u-mt_40 {
  margin-top: 40px !important; }

.u-mt_45 {
  margin-top: 45px !important; }

.u-mt_50 {
  margin-top: 50px !important; }

.u-mb_00 {
  margin-bottom: 0 !important; }

.u-mb_05 {
  margin-bottom: 5px !important; }

.u-mb_10 {
  margin-bottom: 10px !important; }

.u-mb_15 {
  margin-bottom: 15px !important; }

.u-mb_20 {
  margin-bottom: 20px !important; }

.u-mb_25 {
  margin-bottom: 25px !important; }

.u-mb_30 {
  margin-bottom: 30px !important; }

.u-mb_35 {
  margin-bottom: 35px !important; }

.u-mb_40 {
  margin-bottom: 40px !important; }

.u-mb_45 {
  margin-bottom: 45px !important; }

.u-mb_50 {
  margin-bottom: 50px !important; }

.u-ml_00 {
  margin-left: 0 !important; }

.u-ml_05 {
  margin-left: 5px !important; }

.u-ml_10 {
  margin-left: 10px !important; }

.u-ml_15 {
  margin-left: 15px !important; }

.u-ml_20 {
  margin-left: 20px !important; }

.u-ml_25 {
  margin-left: 25px !important; }

.u-ml_30 {
  margin-left: 30px !important; }

.u-ml_35 {
  margin-left: 35px !important; }

.u-ml_40 {
  margin-left: 40px !important; }

.u-ml_45 {
  margin-left: 45px !important; }

.u-ml_50 {
  margin-left: 50px !important; }

.u-mr_00 {
  margin-right: 0 !important; }

.u-mr_05 {
  margin-right: 5px !important; }

.u-mr_10 {
  margin-right: 10px !important; }

.u-mr_15 {
  margin-right: 15px !important; }

.u-mr_20 {
  margin-right: 20px !important; }

.u-mr_25 {
  margin-right: 25px !important; }

.u-mr_30 {
  margin-right: 30px !important; }

.u-mr_35 {
  margin-right: 35px !important; }

.u-mr_40 {
  margin-right: 40px !important; }

.u-mr_45 {
  margin-right: 45px !important; }

.u-mr_50 {
  margin-right: 50px !important; }

.u-mb_lv01 {
  margin-bottom: 10px; }
  @media only screen and (max-width: 767px) {
    .u-mb_lv01 {
      margin-bottom: 5px; } }

.u-mb_lv02 {
  margin-bottom: 20px; }
  @media only screen and (max-width: 767px) {
    .u-mb_lv02 {
      margin-bottom: 10px; } }

.u-mb_lv03 {
  margin-bottom: 30px; }
  @media only screen and (max-width: 767px) {
    .u-mb_lv03 {
      margin-bottom: 15px; } }

.u-mb_lv04 {
  margin-bottom: 40px; }
  @media only screen and (max-width: 767px) {
    .u-mb_lv04 {
      margin-bottom: 20px; } }

.u-mb_lv05 {
  margin-bottom: 50px; }
  @media only screen and (max-width: 767px) {
    .u-mb_lv05 {
      margin-bottom: 25px; } }

.u-mb_lv06 {
  margin-bottom: 60px; }
  @media only screen and (max-width: 767px) {
    .u-mb_lv06 {
      margin-bottom: 30px; } }

.u-mb_lv07 {
  margin-bottom: 70px; }
  @media only screen and (max-width: 767px) {
    .u-mb_lv07 {
      margin-bottom: 35px; } }

.u-mb_lv08 {
  margin: 40px 0 40px 0 ; } /*margin-bottom: 80px*/
  @media only screen and (max-width: 767px) {
    .u-mb_lv08 {
      margin-bottom: 40px; } }

.u-mb_lv09 {
  margin-bottom: 90px; }
  @media only screen and (max-width: 767px) {
    .u-mb_lv09 {
      margin-bottom: 45px; } }

.u-mb_lv10 {
  margin-bottom: 100px; }
  @media only screen and (max-width: 767px) {
    .u-mb_lv10 {
      margin-bottom: 50px; } }


/*# sourceMappingURL=common.css.map */
