.wrap {
  margin-left: auto;
  margin-right: auto;
  max-width: 1280px;
  width: 100%; }
  @media (min-width: 768px), print {
    .wrap {
      padding-left: 50px;
      padding-right: 50px; } }
  @media (max-width: 1023px) {
    .wrap {
      padding-left: 30px;
      padding-right: 30px; } }
  @media (max-width: 767px) {
    .wrap {
      padding-left: 15px;
      padding-right: 15px; } }

@media (max-width: 767px) {
  .sphide {
    display: none !important; } }

@media (min-width: 768px), print {
  .pchide {
    display: none !important; } }

html, body {
  width: 100%;
  min-width: 320px; }

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

#header {
  height: auto;
  max-width: 1032px;
  width: auto;
  position: relative; }
  #header h2 {
    text-align: center; }
  @media (min-width: 768px), print {
    #header h2 {
      margin: -107px auto 30px; } }
  @media (max-width: 767px) {
    #header h2 {
      padding-left: 15px;
      padding-right: 15px;
      margin: -13px auto 20px; } }

.header_inner {
  position: absolute;
  z-index: 100; }
  @media (min-width: 768px), print {
    .header_inner {
      left: 12px;
      top: 12px; } }
  @media (max-width: 767px) {
    .header_inner {
      left: 0;
      padding: 10px 0 10px 10px;
      top: 0; }
      .header_inner .logo, .header_inner .top_tell {
        width: 126px; } }
  .header_inner .logo, .header_inner .top_tell {
    max-width: 233px; }
  .header_inner h1 {
    font-size: 14px;
    font-weight: normal;
    line-height: 1.4;
    margin-bottom: 10px; }
    .header_inner h1 span {
      font-size: 18px;
      letter-spacing: 0; }
    @media (max-width: 767px) {
      .header_inner h1 {
        font-size: 1em;
        margin-bottom: 15px;
        width: 168px; }
        .header_inner h1 span {
          font-size: 1.3em; } }
  .header_inner .hBox {
    margin-bottom: 5px; }

#main {
  padding-left: 15px;
  padding-right: 15px;
  max-width: 960px;
  width: auto; }
  @media (max-width: 767px) {
    #main {
      margin-bottom: 30px !important; } }

@media (min-width: 768px), print {
  .fun_txt {
    margin-bottom: 40px; } }
@media (max-width: 767px) {
  .fun_txt {
    margin-bottom: 20px; } }

.binkan {
  text-align: center; }
  @media (max-width: 767px) {
    .binkan h3 {
      margin: 0 auto 5px;
      max-width: 290px; } }

@media (min-width: 768px), print {
  .binkan2 {
    margin-top: -45px; } }
@media (max-width: 767px) {
  .binkan2 {
    margin-top: -20px;
    margin-bottom: 20px; } }

@media (max-width: 767px) {
  .binkan3 {
    margin: 0 auto;
    max-width: 440px; } }

.binkan4 {
  margin-bottom: 25px; }

.binkan5 {
  margin-bottom: 20px; }

.voice {
  background-color: #f5e7d8;
  margin-bottom: 15px; }
  .voice h3,
  .voice .txtCen,
  .voice .inner {
    text-align: center; }
  @media (min-width: 768px), print {
    .voice h3 {
      margin: -40px auto 30px; }
    .voice .txtCen {
      margin-bottom: 30px; } }
  @media (max-width: 767px) {
    .voice h3,
    .voice .txtCen {
      padding-left: 15px;
      padding-right: 15px;
      margin-bottom: 20px; }
    .voice .inner {
      padding-left: 15px;
      padding-right: 15px; } }

.point {
  text-align: center; }

@media (min-width: 768px), print {
  .point_inner {
    position: relative; } }
@media (max-width: 767px) {
  .point_inner {
    display: flex; } }

@media (min-width: 768px), print {
  .point_product {
    position: absolute;
    left: 50%;
    top: -40px;
    transform: translateX(-35%);
    z-index: 100; } }
@media (min-width: 767px) and (max-width: 1023px) {
  .point_product {
    width: 20%;
    top: -20px; } }
@media (max-width: 767px) {
  .point_product {
    padding: 30px 10px;
    width: 40%; } }

@media (min-width: 768px), print {
  .point_box {
    display: flex;
    justify-content: space-between; } }

@media (min-width: 768px), print {
  .point_cont_wrap {
    width: 50%; } }

.point_cont {
  position: relative; }
  .point_cont a {
    display: block;
    position: absolute; }
    .point_cont a img {
      height: 14px;
      width: 112px; }
    .point_cont a:hover {
      opacity: .7; }
  @media (max-width: 767px) {
    .point_cont {
      margin-bottom: 20px; }
      .point_cont a {
        left: 20px; } }

@media (min-width: 768px), print {
  .point_cont01 a {
    bottom: 10px;
    right: 60px;
    z-index: 10; } }
@media (max-width: 767px) {
  .point_cont01 a {
    bottom: 22px; } }

@media (min-width: 768px), print {
  .point_cont02 {
    top: -50px; }
    .point_cont02 a {
      bottom: -5px;
      right: 85px; } }
@media (max-width: 767px) {
  .point_cont02 a {
    bottom: 20px; } }

@media (min-width: 768px), print {
  .point_cont03 {
    top: 20px; }
    .point_cont03 a {
      bottom: 0;
      right: 10px; } }
@media (max-width: 767px) {
  .point_cont03 a {
    bottom: 42px; } }

@media (min-width: 768px), print {
  .point_cont04 {
    top: 40px; }
    .point_cont04 a {
      bottom: 0;
      right: 0; } }
@media (max-width: 767px) {
  .point_cont04 a {
    bottom: 10px; } }

@media (max-width: 767px) {
  .img_flex {
    display: flex;
    flex-wrap: wrap; }
    .img_flex li {
      margin: 0 !important;
      padding: 0 2% 10px !important;
      width: 46% !important; } }

@media (max-width: 767px) {
  .point02 .inner {
    padding-bottom: 50px; }
    .point02 .inner p {
      padding: 40px 30px 0; } }

@media (max-width: 767px) {
  .point02_img,
  .point02 .inner h4,
  .point02 .inner02 h4 {
    padding-left: 30px;
    padding-right: 30px; } }

@media (max-width: 767px) {
  .comment_img a {
    display: block; }
    .comment_img a:first-child {
      margin-bottom: 15px; } }

.shiyo {
  margin: 0 auto;
  padding-bottom: 35px;
  padding-top: 25px; }
  @media (min-width: 768px), print {
    .shiyo {
      display: flex;
      width: 93%; }
      .shiyo .inner {
        padding: 29px 3%;
        width: calc((100% - 3%) / 2 - .1px); }
        .shiyo .inner:first-child {
          margin-right: 14px; } }
  @media (max-width: 767px) {
    .shiyo {
      padding-left: 15px;
      padding-right: 15px; }
      .shiyo .inner {
        padding: 15px;
        margin-bottom: 15px; } }

@media (min-width: 768px), print {
  .item .inner {
    display: flex; } }

@media (min-width: 768px), print {
  .item_img {
    margin-right: 30px;
    width: 216px; } }
@media (max-width: 767px) {
  .item_img {
    text-align: center; } }

@media (min-width: 768px), print {
  .item_txt {
    width: calc(100% - 246px); } }

@media (max-width: 767px) {
  .repeatList {
    padding: 15px; } }

.fun2Box {
  display: flex;
  justify-content: space-between; }
  .fun2Box .photoBox, .fun2Box .textBox {
    float: none !important; }
  .fun2Box .photoBox {
    width: 19.17% !important; }
  .fun2Box .textBox {
    width: 77.5% !important; }
  @media (max-width: 767px) {
    .fun2Box {
      display: block; }
      .fun2Box .photoBox, .fun2Box .textBox {
        width: 100% !important; }
      .fun2Box .photoBox {
        margin-bottom: 10px;
        text-align: center; } }

@media (max-width: 767px) {
  .fun2_tel {
    text-align: center; } }

.fInner {
  margin-left: auto;
  margin-right: auto;
  max-width: 960px;
  padding-left: 15px !important;
  padding-right: 15px !important;
  width: auto !important; }
  .fInner .title {
    border-bottom: 1px solid #eee7dd; }
    .fInner .title span {
      border-bottom: 1px solid #ccc0b4;
      display: block;
      padding-bottom: 20px; }
  .fInner .fBox {
    display: flex;
    justify-content: space-between; }
    .fInner .fBox .lBox, .fInner .fBox .rBox {
      font-size: 12px;
      float: none !important;
      text-align: left;
      width: 49% !important; }
    @media (max-width: 767px) {
      .fInner .fBox {
        display: block; }
        .fInner .fBox .lBox, .fInner .fBox .rBox {
          width: 100% !important; }
        .fInner .fBox .rBox {
          margin-top: 40px; } }

@media (min-width: 768px), print {
  .footernav {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    .footernav dt {
      float: none !important;
      font-weight: bold;
      width: 60px; }
    .footernav dd {
      padding: 5px 0 0 0 !important;
      width: calc(100% - 86px); } }
@media (max-width: 767px) {
  .footernav dt {
    float: none !important;
    margin-top: 10px; }
    .footernav dt:first-child {
      margin-top: 0; }
  .footernav dd {
    line-height: 1.5;
    padding: 5px 0 0 0 !important; }
  .footernav .fast li {
    float: none !important;
    margin-top: 5px; }
    .footernav .fast li:first-child {
      margin-top: 0; } }

.blackBox .dlBox {
  float: none !important; }
.blackBox .fLogo {
  float: none !important;
  text-align: right; }

/*# sourceMappingURL=responsive.css.map */
