@charset "UTF-8";
@font-face {
  font-family: "Arial Black";
  font-style: normal;
  font-weight: 400;
  src: local("Arial Black"), url("ariblk_0.ttf") format("ttf");
}

html {
  min-height: 100%;
  overflow-y: scroll;
  background: #fff;
}

@media (max-width: 896px) {
  html {
    width: 100%;
    height: 100%;
  }
}

@media (max-width: 480px) {
  html {
    width: 100%;
    height: 100%;
  }
}

html body,
html dd,
html div,
html dl,
html dt,
html fieldset,
html form,
html h1,
html h2,
html h3,
html h4,
html h5,
html h6,
html input,
html li,
html ol,
html p,
html td,
html textarea,
html th,
html ul {
  padding: 0;
  margin: 0;
}

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

html address,
html caption,
html em,
html strong,
html th {
  font-style: normal;
}

html caption,
html th {
  text-align: left;
}

html hr,
html legend {
  display: none;
}

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

html ol,
html ul {
  list-style: none;
}

html a img,
html fieldset {
  border: none;
}

html a:visited {
  text-decoration: none;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#contents blockquote,
#contents dl,
#contents ol,
#contents pre,
#contents table,
#contents ul {
  margin-bottom: 0;
}

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

#contents p {
  margin-bottom: 12px;
}

body {
  color: #2d3447;
  font-size: 90%;
  font-family: "Noto Sans JP", sans-serif;
  -webkit-text-size-adjust: none;
  letter-spacing: 1.5px;
  line-height: 1.8;
  height: 100%;
  min-width: 1040px;
  background: #fff;
}

@media (max-width: 896px) {
  body {
    width: 100%;
    min-width: 100%;
  }
}

@media (max-width: 480px) {
  body {
    position: relative;
    width: 100%;
    min-width: 100%;
    font-size: 15px;
    -webkit-overflow-scrolling: touch;
  }
}

/* LAYOUT
---------------------- */
#page {
  margin: 0 auto;
  width: auto;
  background: url(../img/background-ptn02.png) repeat;
}

@media (max-width: 480px) {
  #page {
    position: relative;
    width: 100%;
    margin: 0 auto;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
  }
}

@media (max-width: 480px) {
  #page.open {
    position: fixed;
    -webkit-transform: translate3d(-80%, 0, 0);
    transform: translate3d(-80%, 0, 0);
  }
}

#header {
  min-width: 1020px;
}

@media (max-width: 896px) {
  #header {
    padding: 0 0 0 10px;
    min-width: 100%;
  }
}

#header .header {
  margin: 0 auto;
  height: 93px;
  max-width: 1020px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media (max-width: 480px) {
  #header .header {
    height: auto;
    padding: 15px 2%;
    max-width: 100%;
  }
}

#header .header img {
  display: block;
}

@media (max-width: 480px) {
  #header .header img {
    width: 100%;
  }
}

#header .header .head-logo {
  padding-top: 8px;
  z-index: 11;
}

@media (max-width: 896px) {
  #header .header .head-logo {
    zoom: 0.88;
  }
}

@media (max-width: 480px) {
  #header .header .head-logo {
    padding-top: 0;
    width: 40%;
    z-index: unset;
  }
}

#header .header .head_fixed {
  margin-left: -510px;
  width: 1020px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: fixed;
  top: 0;
  left: 50%;
  z-index: 10;
}

@media (max-width: 896px) {
  #header .header .head_fixed {
    width: 100%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    margin-left: 0;
    zoom: 0.88;
  }
}

@media (max-width: 480px) {
  #header .header .head_fixed {
    display: none;
  }
}

#header .header .head_fixed .head_cart,
#header .header .head_fixed .head_twitter,
#header .header .head_fixed .head_instagram {
  margin-right: 10px;
}

#header .header .head_fixed .head_sdgs {
  margin-right: 10px;
}

#header .header .head_fixed .head_sdgs a {
  padding-top: 13px;
  position: relative;
}

#header .header .head_fixed .head_sdgs a::after {
  content: "";
  left: 50%;
  width: 15px;
  margin-left: -7.5px;
  height: 10px;
  background: #0599d9;
  top: 0;
  position: absolute;
}

#header .header .head_fixed .head_sdgs a img {
  border: 2px solid #0599d9;
  height: 80px;
}

#header .header #sp_navi {
  display: none;
}

@media (max-width: 480px) {
  #header .header #sp_navi {
    width: 28%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media (max-width: 480px) {
  #header .header #sp_navi li {
    width: 45%;
  }
}

#gnavi {
  border-bottom: 1px solid #d1c0a5;
  min-width: 1040px;
}

@media (max-width: 896px) {
  #gnavi {
    min-width: 100%;
  }
}

@media (max-width: 480px) {
  #gnavi {
    font-size: 110%;
    border-top: inherit;
    border-bottom: inherit;
    padding: 18px 5%;
    height: 100%;
    width: 80%;
    min-width: 80%;
    background: url(../img/background-ptn02.png) repeat;
    position: fixed;
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    right: -80%;
    top: 0;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
  }
}

#gnavi ul {
  margin: 0 auto;
  max-width: 1020px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media (max-width: 480px) {
  #gnavi ul {
    padding: 5% 0;
    max-width: 100%;
    display: block;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

@media (max-width: 480px) {
  #gnavi ul li {
    border-bottom: 1px solid #666;
  }
}

#gnavi ul li a {
  color: #2d3446;
  font-size: 0.87rem;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  letter-spacing: 2px;
  line-height: 1.5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 19px 0 17px;
  display: block;
  position: relative;
  z-index: 1;
}

@media (max-width: 896px) {
  #gnavi ul li a {
    padding: 19px 10px 17px;
  }
}

@media (max-width: 480px) {
  #gnavi ul li a {
    color: #2d3447;
    text-align: left;
    padding: 14px 0;
  }
}

#gnavi ul li a:before {
  border-radius: 50px;
  height: 30px;
  width: 30px;
  background: rgba(255, 205, 51, 0);
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transfnnorm: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transition: 0.5s;
  transition: 0.5s;
  z-index: -1;
}

@media (max-width: 896px) {
  #gnavi ul li a:before {
    content: none;
  }
}

#gnavi ul li a:hover {
  color: #8e96a8;
}

@media (max-width: 896px) {
  #gnavi ul li a:hover {
    color: #2d3446;
  }
}

#gnavi ul li a:hover:before {
  background: rgba(255, 205, 51, 0.5);
}

#gnavi ul li a[href*="#sdgs"]::first-letter {
  color: #0599d9;
  font-size: 1.2rem;
  margin-right: 1px;
}

#gnavi ul li.navi_slide {
  cursor: pointer;
  position: relative;
}

@media (max-width: 480px) {
  #gnavi ul li.navi_slide {
    border-bottom: 0;
    cursor: default;
  }
}

#gnavi ul li.navi_slide:hover ul {
  display: block;
}

#gnavi ul li.navi_slide a {
  cursor: default;
}

@media (max-width: 480px) {
  #gnavi ul li.navi_slide a {
    cursor: default;
  }
}

#gnavi ul li.navi_slide ul {
  border-bottom: 3px solid #ff7e02;
  border-radius: 0 0 4px 4px;
  padding: 0 14px;
  height: inherit;
  width: 220%;
  background: rgba(255, 255, 255, 0.95);
  display: none;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  overflow: hidden;
  z-index: 5000;
}

@media (max-width: 896px) {
  #gnavi ul li.navi_slide ul {
    width: 200%;
    left: auto;
    right: 0;
    transform: none;
    -webkit-transform: none;
    -ms-transform: none;
  }
}

@media (max-width: 480px) {
  #gnavi ul li.navi_slide ul {
    font-size: 90%;
    border-bottom: inherit;
    border-radius: 0 0 4px 4px;
    margin-left: 0;
    margin-bottom: 20px;
    padding: 0;
    height: inherit;
    width: 100%;
    background: url(../img/background-ptn01.png) repeat;
    display: block;
    position: inherit;
    zoom: 1;
  }
}

#gnavi ul li.navi_slide ul li {
  text-align: center;
  border-bottom: 1px solid #cccccc;
  margin: 0;
  width: 100%;
  float: none;
}

@media (max-width: 480px) {
  #gnavi ul li.navi_slide ul li {
    border-bottom: 1px dashed #666;
  }
}

#gnavi ul li.navi_slide ul li:last-child {
  border: 0;
}

#gnavi ul li.navi_slide ul li a {
  color: #2d3447;
  font-size: 0.8rem;
  text-decoration: none;
  text-shadow: inherit;
  letter-spacing: 1px;
  -webkit-box-shadow: none;
          box-shadow: none;
  margin: 0 auto;
  padding: 12px 0;
  background: none;
  display: block;
  position: inherit;
}

@media (max-width: 480px) {
  #gnavi ul li.navi_slide ul li a {
    color: #2d3447;
    text-align: left;
    text-decoration: none;
    text-shadow: inherit;
    letter-spacing: 1px;
    -webkit-box-shadow: none;
            box-shadow: none;
    margin: 0 auto;
    padding: 15px 5%;
    background: none;
    display: block;
    position: inherit;
  }
}

#gnavi ul li.navi_slide ul li a:after, #gnavi ul li.navi_slide ul li a:before {
  border: 0;
  content: " ";
}

@media (max-width: 480px) {
  #gnavi ul li.navi_slide ul li a:after, #gnavi ul li.navi_slide ul li a:before {
    content: none;
  }
}

#gnavi ul li.navi_slide ul li a:hover {
  color: #ff7e02;
  -webkit-box-shadow: inherit;
          box-shadow: inherit;
}

@media (max-width: 896px) {
  #gnavi ul li.navi_slide ul li a:hover {
    color: #2d3447;
  }
}

#gnavi ul li.navi_slide ul li a:hover:before {
  -webkit-box-shadow: inherit;
          box-shadow: inherit;
  background: none;
}

#gnavi ul li.sns {
  display: none;
}

@media (max-width: 480px) {
  #gnavi ul li.sns {
    display: block;
  }
  #gnavi ul li.sns ul {
    margin-bottom: 20px;
    padding: 0;
    letter-spacing: -0.5em;
  }
  #gnavi ul li.sns li {
    display: inline-block;
    border: none;
    vertical-align: top;
  }
  #gnavi ul li.sns li:not(:last-child) {
    margin-right: 15px;
  }
  #gnavi ul li.sns a {
    display: block;
    padding: 0;
  }
  #gnavi ul li.sns img {
    display: block;
    width: 45px;
  }
}

@media (max-width: 480px) {
  #gnavi #close {
    color: #fff;
    font-size: 0.85rem;
    text-align: center;
    padding: 5px 0;
    width: 100%;
    background: #2d3446;
  }
  #gnavi #close span {
    font-size: 120%;
    font-family: "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
    padding-left: 3px;
  }
}

@media (max-width: 480px) {
  #drawer_underlay {
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0.5);
    position: absolute;
    top: 0;
    left: 0;
  }
}

@media (max-width: 480px) {
  #gnavi.open {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

#contents .contents_header {
  padding: 90px 0 70px;
  background: url(../img/s-title-pc.png) no-repeat top center, url(../img/title-background-ptn.png) repeat;
}

@media (max-width: 480px) {
  #contents .contents_header {
    padding: 45px 0 30px;
    background: url(../img/s-title-sp.png) no-repeat top center/cover, url(../img/title-background-ptn.png) repeat;
  }
}

#contents .contents_header .head_inner .title {
  font-size: 1.4rem;
  text-align: center;
}

@media (max-width: 480px) {
  #contents .contents_header .head_inner .title {
    font-size: 1.1rem;
    letter-spacing: 1px;
  }
}

#contents .breadcrumbs {
  padding: 5px 0;
  background: url(../img/background-ptn01.png) repeat;
}

@media (max-width: 480px) {
  #contents .breadcrumbs {
    padding: 5px 7px;
  }
}

#contents .breadcrumbs ul {
  margin: 0 auto;
  max-width: 1020px;
}

@media (max-width: 480px) {
  #contents .breadcrumbs ul {
    max-width: 100%;
  }
}

#contents .breadcrumbs ul::after {
  content: " ";
  display: table;
  clear: both;
}

#contents .breadcrumbs ul li {
  font-size: 0.7rem;
  margin-right: 5px;
  float: left;
}

#contents .breadcrumbs ul li a {
  color: #2d3447;
  margin-right: 4px;
  display: inline-block;
}

#contents .breadcrumbs ul li a:hover {
  text-decoration: none;
}

#contents .section {
  padding: 80px 0 40px;
}

@media (max-width: 896px) {
  #contents .section {
    padding: 80px 10px 40px;
  }
}

@media (max-width: 480px) {
  #contents .section {
    padding: 60px 0 40px;
  }
}

#contents .section:last-child {
  padding-bottom: 100px;
}

#contents .section header {
  text-align: center;
}

#contents .section header .section_title {
  font-size: 1.5rem;
  letter-spacing: 3px;
  margin-bottom: 50px;
  padding: 0 120px;
  background: url(../img/midashi-pc.png) no-repeat center left, url(../img/midashi-pc.png) no-repeat center right;
  display: inline-block;
}

@media (max-width: 480px) {
  #contents .section header .section_title {
    font-size: 1.4rem;
    letter-spacing: 2px;
    margin-bottom: 40px;
    padding: 0 70px;
    background: url(../img/midashi-pc.png) no-repeat center left/55px, url(../img/midashi-pc.png) no-repeat center right/55px;
  }
}

#contents .section .section_inner {
  margin: 0 auto;
  max-width: 1020px;
}

@media (max-width: 480px) {
  #contents .section .section_inner {
    padding: 0 3%;
    max-width: 100%;
  }
}

#contents .section .section_inner .child_content_section {
  margin-bottom: 20px;
}

#contents .section .section_inner .child_content_section .section_title {
  font-size: 1rem;
  border-left: 6px solid #b6c8d3;
  margin-bottom: 30px;
  padding: 10px 15px;
  background: #eef2f4;
}

#contents .section .section_inner .child_content_section .section_inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 10px 15px;
  /* .in_content */
}

#contents .section .section_inner .child_content_section .section_inner .in_content {
  padding: 12px 5px 20px;
}

#contents .section .section_inner .child_content_section .section_inner .in_content .title {
  font-size: 0.9rem;
  margin-bottom: 12px;
  padding: 10px 15px;
  background: #f1f1f1;
}

#contents .section .section_inner .child_content_section .section_inner .in_content .in_content_inner {
  padding: 10px 5px;
}

#contents .section.line {
  border-top: 1px dashed #ccc;
}

#contents .pick_text {
  font-size: 1.3rem;
  font-weight: bold;
  margin-bottom: 16px;
}

@media (max-width: 480px) {
  #contents .pick_text {
    font-size: 1.2rem;
    line-height: 1.5;
  }
}

/* footer */
.footer {
  border-top: 3px solid #feba42;
  min-width: 1020px;
  position: relative;
  /* #pagetop */
  /* 戻る */
}

@media (max-width: 896px) {
  .footer {
    min-width: 100%;
  }
}

.footer #pagetop {
  display: none;
}

@media (max-width: 480px) {
  .footer #pagetop {
    width: 15%;
  }
}

.footer #pagetop:hover {
  opacity: 0.7;
}

@media (max-width: 480px) {
  .footer #pagetop:hover {
    opacity: 1;
  }
}

.footer #pagetop a img {
  display: block;
}

@media (max-width: 480px) {
  .footer #pagetop a img {
    width: 100%;
  }
}

.footer #pagetop.fixed {
  right: 3%;
  bottom: 50px;
  display: block;
  z-index: 10000;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

@media (max-width: 480px) {
  .footer #pagetop.fixed {
    right: 9px;
    bottom: 50px;
    display: block;
    z-index: 10000;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.footer .return {
  text-align: center;
}

.footer .return a {
  color: #2d3447;
  text-decoration: none;
}

.footer .footer_inner {
  margin: 0 auto;
  padding: 0 0 20px;
  max-width: 1020px;
}

@media (max-width: 480px) {
  .footer .footer_inner {
    max-width: 100%;
  }
}

.footer .footer_inner .footer_info {
  border-bottom: 1px solid #d1c0a5;
  margin-bottom: 20px;
  padding: 40px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media (max-width: 480px) {
  .footer .footer_inner .footer_info {
    margin-bottom: 0;
    padding: 60px 0 40px;
    display: block;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.footer .footer_inner .footer_info .footerlogo {
  margin-right: 60px;
}

@media (max-width: 480px) {
  .footer .footer_inner .footer_info .footerlogo {
    margin: 0 auto 10px;
    width: 50%;
  }
}

.footer .footer_inner .footer_info .footerlogo img {
  display: block;
}

@media (max-width: 480px) {
  .footer .footer_inner .footer_info .footerlogo img {
    width: 100%;
  }
}

.footer .footer_inner .footer_info .footer_detail {
  font-size: 0.85rem;
  letter-spacing: 1px;
}

@media (max-width: 480px) {
  .footer .footer_inner .footer_info .footer_detail {
    font-size: 0.8rem;
    text-align: center;
  }
}

.footer .footer_inner .footernavi ul,
.footer .footer_inner .footer_company_navi ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media (max-width: 480px) {
  .footer .footer_inner .footernavi ul,
  .footer .footer_inner .footer_company_navi ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.footer .footer_inner .footernavi ul li a,
.footer .footer_inner .footer_company_navi ul li a {
  color: #2d3446;
  font-size: 0.85rem;
  text-decoration: none;
}

.footer .footer_inner .footernavi ul li a:hover,
.footer .footer_inner .footer_company_navi ul li a:hover {
  text-decoration: underline;
}

@media (max-width: 896px) {
  .footer .footer_inner .footernavi ul li a:hover,
  .footer .footer_inner .footer_company_navi ul li a:hover {
    text-decoration: none;
  }
}

@media (max-width: 480px) {
  .footer .footer_inner .footernavi {
    margin-bottom: 15px;
  }
}

@media (max-width: 480px) {
  .footer .footer_inner .footernavi ul {
    border-bottom: 1px solid #d1c0a5;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.footer .footer_inner .footernavi ul li {
  margin-right: 25px;
}

@media (max-width: 480px) {
  .footer .footer_inner .footernavi ul li {
    margin-right: 0;
    width: 50%;
  }
}

@media (max-width: 480px) {
  .footer .footer_inner .footernavi ul li:nth-child(odd) {
    border-right: 1px solid #d1c0a5;
  }
}

@media (max-width: 480px) {
  .footer .footer_inner .footernavi ul li:not(:last-child) {
    border-bottom: 1px solid #d1c0a5;
  }
}

.footer .footer_inner .footernavi ul li:nth-child(1):before {
  margin-right: 25px;
  content: "|";
}

@media (max-width: 480px) {
  .footer .footer_inner .footernavi ul li:nth-child(1):before {
    content: none;
  }
}

.footer .footer_inner .footernavi ul li:after {
  margin-left: 25px;
  content: "|";
}

@media (max-width: 480px) {
  .footer .footer_inner .footernavi ul li:after {
    content: none;
  }
}

@media (max-width: 480px) {
  .footer .footer_inner .footernavi ul li a {
    font-size: 0.8rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 10px 13px;
    display: block;
  }
}

@media (max-width: 480px) {
  .footer .footer_inner .footer_company_navi ul {
    margin: 0 auto;
    width: 90%;
  }
}

.footer .footer_inner .footer_company_navi ul li {
  margin-right: 30px;
}

@media (max-width: 480px) {
  .footer .footer_inner .footer_company_navi ul li {
    margin-right: 20px;
  }
}

@media (max-width: 480px) {
  .footer .footer_inner .footer_company_navi ul li:nth-child(3n) {
    margin-right: 0;
  }
}

.footer .footer_inner .footer_company_navi ul li:before {
  font-size: 1.5rem;
  margin-right: 3px;
  content: "\0bb";
  position: relative;
  top: 3px;
}

@media (max-width: 480px) {
  .footer .footer_inner .footer_company_navi ul li:before {
    font-size: 1.3rem;
    line-height: 0;
    margin-right: 1px;
    top: 2px;
  }
}

@media (max-width: 480px) {
  .footer .footer_inner .footer_company_navi ul li a {
    font-size: 0.75rem;
  }
}

.footer .copy {
  text-align: center;
  border-top: 1px solid #d1c0a5;
  padding: 15px 0;
}

@media (max-width: 480px) {
  .footer .copy {
    padding: 2px 0 13px;
  }
}

.footer .copy img {
  vertical-align: bottom;
  position: relative;
  top: -4px;
  left: 14px;
}

@media (max-width: 480px) {
  .footer .copy img {
    margin: 0 auto;
    display: block;
    top: 2px;
    left: auto;
  }
}

.footer .copy a {
  color: #2d3446;
  font-size: 0.75rem;
  text-decoration: none;
}

@media (max-width: 480px) {
  .footer .copy a {
    font-size: 2vw;
  }
}

/* 汎用スタイル */
.clear {
  clear: both;
}

.txt_c {
  text-align: center;
}

.txt_r {
  text-align: right;
}

/* 各固定ページ用
---------------------- */
/* access.html */
.access_map {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 10px;
  width: 100%;
}

@media (max-width: 480px) {
  .access_map {
    padding: 0 10px;
    width: 100%;
  }
}

.access_map .map_set {
  border: 1px dotted #fff;
  -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.25);
          box-shadow: 0 3px 3px rgba(0, 0, 0, 0.25);
  margin-bottom: 23px;
  height: 450px;
  width: 100%;
}

@media (max-width: 480px) {
  .access_map .map_set {
    -webkit-box-shadow: inherit;
            box-shadow: inherit;
    height: 200px;
    width: 100%;
  }
}

@media (max-width: 480px) {
  .access_map .map_set .guide {
    font-size: 85%;
    padding: 13px 10px;
  }
}

.access_map .access_data {
  padding: 15px 0 0;
}

.access_map .access_data dl {
  padding: 0 5px;
  overflow: hidden;
}

.access_map .access_data dl:after {
  content: " ";
  display: table;
  clear: both;
}

.access_map .access_data dl dt {
  color: #3366cc;
  font-weight: bold;
  float: left;
}

.access_map .access_data dl dd {
  padding-left: 80px;
}

.access_map .access_data dl dd a {
  color: #111;
}

/* privacy.html */
.privacy_section {
  padding: 50px 0 70px;
}

@media (max-width: 480px) {
  .privacy_section {
    padding: 30px 0 40px;
  }
}

.privacy_section .privacy_section_inner {
  margin: 0 auto;
  max-width: 1020px;
}

@media (max-width: 480px) {
  .privacy_section .privacy_section_inner {
    padding: 0 10px;
    max-width: 100%;
  }
}

.privacy_section .privacy_section_inner .privacy_set {
  margin-bottom: 20px;
}

.privacy_section .privacy_section_inner .privacy_set .privacy_set_title {
  font-size: 1rem;
  border-left: 6px solid #ffcd33;
  margin-bottom: 30px;
  padding: 10px 15px;
  background: rgba(255, 255, 255, 0.8);
}

@media (max-width: 480px) {
  .privacy_section .privacy_section_inner .privacy_set .privacy_set_title {
    font-size: 0.9rem;
    border-left: 3px solid #ffcd33;
    margin-bottom: 20px;
  }
}

.privacy_section .privacy_section_inner .privacy_set .privacy_set_inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 10px 15px;
}

@media (max-width: 480px) {
  .privacy_section .privacy_section_inner .privacy_set .privacy_set_inner {
    padding: 0 5px 15px;
  }
}

.privacy_section .privacy_section_inner .privacy_set .privacy_set_inner ul.privacy_list li {
  margin-bottom: 10px;
}

@media (max-width: 480px) {
  .privacy_section .privacy_section_inner .privacy_set .privacy_set_inner ul.privacy_list li {
    text-indent: -45px;
    margin-bottom: 10px;
    padding-left: 35px;
  }
}

.privacy_section .privacy_section_inner .privacy_set .privacy_set_inner dl.privacy_item dt {
  margin-bottom: 4px;
}

@media (max-width: 480px) {
  .privacy_section .privacy_section_inner .privacy_set .privacy_set_inner dl.privacy_item dt {
    margin-bottom: 10px;
  }
}

.privacy_section .privacy_section_inner .privacy_set .privacy_set_inner dl.privacy_item dd {
  margin-bottom: 15px;
  padding-left: 40px;
}

@media (max-width: 480px) {
  .privacy_section .privacy_section_inner .privacy_set .privacy_set_inner dl.privacy_item dd {
    margin-bottom: 30px;
    padding-left: 0;
  }
}

/* inquiry.html */
#inquiry .section:nth-of-type(1) {
  background: url(../img/background-ptn03.png) repeat;
}

.inquiry_everywhere_block {
  line-height: 2.2;
  text-align: center;
  padding: 80px 0 60px;
  background: #fff;
}

@media (max-width: 480px) {
  .inquiry_everywhere_block {
    line-height: 1.8;
    text-align: left;
    padding: 60px 3% 40px;
  }
}

.inquiry_info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media (max-width: 480px) {
  .inquiry_info {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.inquiry_info .no {
  font-size: 2.4rem;
  letter-spacing: 0;
  line-height: 1;
  margin-bottom: 10px;
}

@media (max-width: 480px) {
  .inquiry_info .no {
    font-size: 1.8rem;
  }
}

.inquiry_info .no a {
  color: #2d3447;
  text-decoration: none;
}

.inquiry_info .no span {
  font-size: 65%;
}

.inquiry_info .no.tel {
  margin-right: 70px;
}

@media (max-width: 480px) {
  .inquiry_info .no.tel {
    margin-right: 0;
  }
}

@media (max-width: 480px) {
  .inquiry_info .no.fax a {
    pointer-events: none;
  }
}

.attent_block {
  margin-bottom: 20px;
}

.attent_block .title {
  font-size: 1rem;
  text-shadow: 0.3px 0 0 #000;
  border-bottom: 1px solid #333;
  margin: 0 0 10px;
  padding: 5px 0;
}

.attent_block .title:before {
  content: "■";
  font: normal normal normal 18px/1 FontAwesome;
  margin-right: 6px;
}

.thanks_title {
  font-size: 1.9rem;
  text-align: center;
  margin-bottom: 30px;
}

.thanks_msg {
  font-size: 105%;
  text-align: center;
  line-height: 2;
}

.thanks_msg p {
  margin-bottom: 20px;
}

#MailForm span.any,
#MailForm span.required {
  color: #fff;
  font-size: 85%;
  border-radius: 3px;
  margin-right: 5px;
  padding: 2px 4px;
}

#MailForm span.required {
  background: #9b0000;
}

#MailForm span.any {
  background: #999;
}

#MailForm table {
  border: 2px solid #999;
  margin: 0 0 25px;
  width: 100%;
  background: #fff;
}

@media (max-width: 480px) {
  #MailForm table {
    border: 0;
    background: none;
  }
}

#MailForm table td,
#MailForm table th {
  font-weight: normal;
  border: 1px solid #999;
  padding: 25px;
}

@media (max-width: 480px) {
  #MailForm table td,
  #MailForm table th {
    border: none;
    width: 100%;
    display: block;
  }
}

#MailForm table th {
  padding-left: 75px;
  width: 25%;
  background: #f2f2f2;
  position: relative;
}

@media (max-width: 480px) {
  #MailForm table th {
    padding: 0 0 3px;
    width: 100%;
    background: none;
  }
}

@media (max-width: 480px) {
  #MailForm table th:before {
    color: #666666;
    font: normal normal normal 14px/1 FontAwesome;
    line-height: 1;
    margin-right: 5px;
    content: "\025a0";
  }
}

#MailForm table th span {
  position: absolute;
  left: 25px;
}

@media (max-width: 480px) {
  #MailForm table th span {
    left: auto;
    right: 5px;
  }
}

@media (max-width: 480px) {
  #MailForm table td {
    margin-bottom: 35px;
    padding: 0;
  }
}

#MailForm table td.cp_ipradio05 {
  width: 90%;
  margin: 2em auto;
  text-align: left;
}

@media (max-width: 480px) {
  #MailForm table td.cp_ipradio05 {
    margin: 5px auto 35px;
    width: 100%;
  }
}

#MailForm table td.cp_ipradio05 li {
  margin: 0 0 0.5rem 0;
  padding: 0;
}

#MailForm table td.cp_ipradio05 label {
  line-height: 135%;
  position: relative;
  margin: 0.5rem;
  cursor: pointer;
}

#MailForm table td.cp_ipradio05 .option-input {
  position: relative;
  margin: 0 1rem 0 0;
  cursor: pointer;
}

#MailForm table td.cp_ipradio05 .option-input:before {
  position: absolute;
  z-index: 1;
  top: -1px;
  left: 0.1rem;
  width: 0.75rem;
  height: 0.75rem;
  content: "";
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
  transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
  transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
  transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75), -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
  -webkit-transform: scale(0, 0);
  transform: scale(0, 0);
  border-radius: 50%;
  background: #000;
}

@media (max-width: 896px) {
  #MailForm table td.cp_ipradio05 .option-input:before {
    top: 1px;
  }
}

@media (max-width: 480px) {
  #MailForm table td.cp_ipradio05 .option-input:before {
    top: 1px;
    left: 0.09rem;
  }
}

#MailForm table td.cp_ipradio05 .option-input:checked:before {
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
}

#MailForm table td.cp_ipradio05 .option-input:after {
  position: absolute;
  top: -0.25rem;
  left: -0.125rem;
  width: 1rem;
  height: 1rem;
  content: "";
  border: 1px solid #ccc;
  border-radius: 50%;
  background: #ffffff;
}

@media (max-width: 896px) {
  #MailForm table td.cp_ipradio05 .option-input:after {
    top: -0.1rem;
  }
}

@media (max-width: 480px) {
  #MailForm table td.cp_ipradio05 .option-input:after {
    top: -0.1rem;
    left: -0.1rem;
  }
}

#MailForm table td .radio_list li input[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
  width: auto;
  display: inline;
  position: relative;
  top: 4px;
}

@media (max-width: 480px) {
  #MailForm table td .radio_list li input[type="radio"] {
    top: 1px;
  }
}

#MailForm input,
#MailForm textarea {
  color: #444;
  font-size: 0.9rem;
  font-family: "メイリオ";
  letter-spacing: 1px;
  line-height: 1.4;
  border: 1px solid #e1e1e1;
  padding: 10px;
}

@media (max-width: 480px) {
  #MailForm input,
  #MailForm textarea {
    width: 100%;
  }
}

#MailForm select {
  font-size: 0.9rem;
  border: 1px solid #e1e1e1;
  padding: 3px 27px 3px 13px;
  background: url(../img/select-arrow.png) no-repeat center right 7px/9% #fff;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

#MailForm label {
  padding: 2px 0;
  cursor: pointer;
}

@media (max-width: 480px) {
  #MailForm input[type="submit"],
  #MailForm input[type="button"] {
    border-radius: 0;
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    -moz-appearance: button;
         appearance: button;
    border: none;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    cursor: pointer;
  }
}

@media (max-width: 480px) {
  #MailForm input[type="submit"]::-webkit-search-decoration,
  #MailForm input[type="button"]::-webkit-search-decoration {
    display: none;
  }
}

@media (max-width: 480px) {
  #MailForm input[type="submit"]::focus,
  #MailForm input[type="button"]::focus {
    outline-offset: -2px;
  }
}

#MailForm .form3 {
  vertical-align: middle;
  width: 3%;
}

#MailForm .form25 {
  width: 25%;
}

@media (max-width: 480px) {
  #MailForm .form25 {
    width: 100%;
  }
}

#MailForm .form45 {
  width: 45%;
}

@media (max-width: 480px) {
  #MailForm .form45 {
    width: 100%;
  }
}

#MailForm .form60 {
  width: 60%;
}

@media (max-width: 480px) {
  #MailForm .form60 {
    width: 100%;
  }
}

#MailForm .form90 {
  width: 93%;
}

@media (max-width: 480px) {
  #MailForm .form90 {
    width: 100%;
  }
}

#MailForm .focus {
  background: #ffe7e0;
}

#MailForm .important_list {
  margin-bottom: 27px;
}

#MailForm .important_list li {
  color: #5a4727;
  line-height: 1.5;
  text-indent: -1.1em;
  padding-left: 1.1em;
}

#MailForm .inquiry_inset {
  margin-bottom: 25px;
}

#MailForm .confirm_txt {
  text-align: center;
}

@media (max-width: 480px) {
  #MailForm .confirm_txt {
    text-align: left;
  }
}

.send_btn_inner {
  text-align: center;
  padding: 15px 0 20px;
}

.send_btn_inner .send_btn {
  color: #fff;
  font-size: 130%;
  letter-spacing: 1px;
  cursor: pointer;
  border: 0;
  padding: 15px 0;
  background: #ff9900;
}

@media (max-width: 480px) {
  .send_btn_inner .send_btn {
    font-size: 100%;
    padding: 15px 10px;
  }
}

.send_btn_inner .send_btn:hover {
  background: #ffaf38;
}

.send_btn_inner .submit_btn {
  width: 50%;
}

@media (max-width: 480px) {
  .send_btn_inner .submit_btn {
    margin-bottom: 15px;
    width: 80%;
  }
}

.inputarea li {
  margin: 0 15px 0 0;
  float: left;
}

@media (max-width: 480px) {
  .inputarea li {
    margin: 0 15px 0 0;
    float: left;
  }
}

#thanks p {
  line-height: 300px;
  text-align: center;
}

#contents .inquiry-info {
  margin: 0;
  overflow: hidden;
}

#contents .inquiry-info li {
  margin-right: 15px;
  float: left;
}

/* formmail.cgi */
.send_inner {
  padding: 12px 0 20px;
}

.send_inner .send_step_msg {
  font-size: 140%;
  text-align: center;
  margin-bottom: 15px;
}

/* formmail.cgi:send base */
.send_guide_msg {
  color: #444;
  text-align: center;
  padding: 0 0 15px;
}

.send_inner .send_btn_inner {
  text-align: center;
}

.send_inner .send_btn_inner .send_btn {
  color: #fff;
  font-size: 130%;
  letter-spacing: 1px;
  cursor: pointer;
  border: 0;
  margin: 0 10px;
  padding: 15px 30px;
  background: #ff9900;
  display: inline-block;
}

.send_inner .send_btn_inner .btn_return {
  background: #797979;
}

/* formmail.cgi:send confirm */
.send_confirm_table {
  padding: 17px 0 30px;
}

.send_confirm_table table {
  border-collapse: collapse;
  margin: 0 auto;
  width: 90%;
}

@media (max-width: 480px) {
  .send_confirm_table table {
    width: 100%;
  }
}

.send_confirm_table table td,
.send_confirm_table table th {
  font-size: 110%;
  font-weight: normal;
  line-height: 1.5;
  border: 1px solid #ccc;
  padding: 17px 20px;
  background: #fff;
}

@media (max-width: 480px) {
  .send_confirm_table table td,
  .send_confirm_table table th {
    border: 0 solid #ccc;
    padding: 17px 20px;
    background: #fff;
    display: block;
  }
}

.send_confirm_table table th {
  width: 40%;
  background: #f5f5f5;
}

@media (max-width: 480px) {
  .send_confirm_table table th {
    text-align: left;
    margin-bottom: 5px;
    padding: 10px 15px;
    width: 100%;
    background: #f5f5f5;
  }
}

@media (max-width: 480px) {
  .send_confirm_table table td {
    margin-bottom: 30px;
  }
}

/* formmail.cgi:send error */
.send_inner .send_error {
  padding: 15px 0 30px;
}

.send_inner .send_error li {
  font-size: 110%;
  padding: 5px 0;
}

.send_inner .send_error li:before {
  color: #c2c2c2;
  font-size: 85%;
  font-family: "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
  margin-right: 8px;
  content: "\0025cf";
}

.send_inner .send_error li span {
  color: #ff3333;
  margin-right: 5px;
  display: inline-block;
}

/* base styles
---------------------- */
.table_base {
  padding: 0 0 25px;
}

.table_base table {
  width: 100%;
}

@media (max-width: 480px) {
  .table_base table {
    border: 0;
  }
}

.table_base table td,
.table_base table th {
  padding: 25px 16px;
}

@media (max-width: 480px) {
  .table_base table td,
  .table_base table th {
    display: block;
  }
}

.table_base table th {
  border-bottom: 2px solid #2d3447;
}

@media (max-width: 480px) {
  .table_base table th {
    border-bottom: 1px solid #2d3447;
    padding: 12px 12px 5px;
  }
}

.table_base table td {
  font-weight: normal;
  border-bottom: 1px solid #2d3447;
}

@media (max-width: 480px) {
  .table_base table td {
    line-height: 1.5;
    border-bottom: 0px;
    padding: 10px 12px 12px;
  }
}

@media (max-width: 480px) {
  .table_base table td.fax a {
    color: #2d3447;
    text-decoration: none;
    pointer-events: none;
  }
}

.table_base table td span.map_jump {
  margin-left: 10px;
  position: relative;
  top: -2px;
}

.table_base table td span.map_jump a {
  color: #fff;
  font-size: 85%;
  text-decoration: none;
  border-radius: 3px;
  padding: 2px 6px;
  background: #ff7e02;
  display: inline-block;
}

.table_base table td span.map_jump a:hover {
  opacity: 0.7;
}

@media (max-width: 480px) {
  .table_base table td span.map_jump a:hover {
    opacity: 1;
  }
}

.table_base table tbody th {
  text-align: center;
  width: 28%;
}

@media (max-width: 480px) {
  .table_base table tbody th {
    text-align: left;
    width: 100%;
  }
}

.table_base table tbody td {
  padding-left: 40px;
}

@media (max-width: 480px) {
  .table_base table tbody td {
    margin-bottom: 30px;
    padding-left: 12px;
  }
}

.table_base table tbody td .returns_exchange li {
  text-indent: -1.1em;
  padding-left: 1.1em;
}

.table_base table tbody td .returns_exchange li:not(:last-child) {
  margin-bottom: 10px;
}

.table_base table dd {
  border-bottom: 1px dotted #ccc;
  margin-bottom: 10px;
  padding-bottom: 10px;
}

.table_base table dd:last-child {
  margin-bottom: 0;
  padding: 0;
  border: 0;
}

.content_inner {
  padding: 10px 0 25px;
}

@media (max-width: 480px) {
  .content_inner {
    padding: 0 0 25px;
  }
}

.content_inner:after {
  content: "";
  display: table;
  clear: both;
}

.content_inner .images_r,
.content_inner .msg_r {
  float: right;
}

@media (max-width: 480px) {
  .content_inner .images_r,
  .content_inner .msg_r {
    padding: 0 0 10px;
    float: none;
  }
}

.content_inner .images_l,
.content_inner .msg_l {
  float: left;
}

@media (max-width: 480px) {
  .content_inner .images_l,
  .content_inner .msg_l {
    float: none;
  }
}

.content_inner .msg_r,
.content_inner .msg_l {
  line-height: 2.2;
}

@media (max-width: 480px) {
  .content_inner .msg_r,
  .content_inner .msg_l {
    line-height: 1.8;
  }
}

.content_inner img {
  width: 100%;
}

.content_inner span {
  font-size: 0.85rem;
  display: block;
}

.w_margin270 .images_l,
.w_margin270 .images_r {
  width: 270px;
}

@media (max-width: 480px) {
  .w_margin270 .images_l,
  .w_margin270 .images_r {
    width: 100%;
  }
}

.w_margin270 .msg_l,
.w_margin270 .msg_r {
  width: 680px;
}

@media (max-width: 480px) {
  .w_margin270 .msg_l,
  .w_margin270 .msg_r {
    width: 100%;
  }
}

.w_margin320 .images_l,
.w_margin320 .images_r {
  width: 320px;
}

@media (max-width: 480px) {
  .w_margin320 .images_l,
  .w_margin320 .images_r {
    width: 100%;
  }
}

.w_margin320 .msg_l,
.w_margin320 .msg_r {
  width: 630px;
}

@media (max-width: 480px) {
  .w_margin320 .msg_l,
  .w_margin320 .msg_r {
    width: 100%;
  }
}

.w_margin450 .images_l,
.w_margin450 .images_r {
  width: 450px;
}

@media (max-width: 896px) {
  .w_margin450 .images_l,
  .w_margin450 .images_r {
    width: 42%;
  }
}

@media (max-width: 480px) {
  .w_margin450 .images_l,
  .w_margin450 .images_r {
    width: 100%;
  }
}

.w_margin450 .msg_l,
.w_margin450 .msg_r {
  width: 530px;
}

@media (max-width: 896px) {
  .w_margin450 .msg_l,
  .w_margin450 .msg_r {
    width: 55%;
  }
}

@media (max-width: 480px) {
  .w_margin450 .msg_l,
  .w_margin450 .msg_r {
    width: 100%;
  }
}

/* .image_list */
.image_list:after, .image_list.two_image:after, .image_list.three_image:after {
  content: "";
  display: table;
  clear: both;
}

.image_list li, .image_list.two_image li, .image_list.three_image li {
  float: left;
}

.two_image.image_list li {
  width: 48%;
}

.two_image.image_list li:nth-child(odd) {
  margin-right: 4%;
}

.three_image.image_list li {
  width: 31.33%;
}

.three_image.image_list li:not(:nth-child(3n)) {
  margin-right: 3%;
}

.three_image.image_list li img {
  width: 100%;
  display: block;
}

.three_image.image_list li span {
  padding: 15px 0 0;
  display: block;
}

/* 各ページ用スタイル
---------------------- */
/* -------------------
汎用指定 */
.only_pc {
  display: block;
}

@media (max-width: 480px) {
  .only_pc {
    display: none;
  }
}

.only_sp {
  display: none;
}

@media (max-width: 480px) {
  .only_sp {
    display: block;
  }
}

.tel a {
  color: #000;
  text-decoration: none;
  cursor: inherit;
  pointer-events: none;
}

@media (max-width: 480px) {
  .tel a {
    pointer-events: inherit;
  }
}

.fade_hover a {
  display: block;
  -webkit-transition: 0.8s;
  transition: 0.8s;
}

@media (max-width: 896px) {
  .fade_hover a {
    -webkit-transition: none;
    transition: none;
  }
}

.fade_hover a:hover {
  opacity: 0.7;
}

@media (max-width: 896px) {
  .fade_hover a:hover {
    opacity: 1;
  }
}

.btn_base {
  margin: 0 auto;
  width: 350px;
}

@media (max-width: 480px) {
  .btn_base {
    width: 90%;
  }
}

.btn_base a {
  color: #fff;
  font-size: 0.95rem;
  text-align: center;
  text-decoration: none;
  border-radius: 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #2d3446;
  padding: 15px 0;
  background: url(../img/arrow02.png) no-repeat center right 40px/7px #2d3446;
  display: block;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

@media (max-width: 896px) {
  .btn_base a {
    color: #ff7e02;
    border: 1px solid #ff7e02;
    background: url(../img/arrow03.png) no-repeat center right 40px/7px;
    -webkit-transition: none;
    transition: none;
  }
}

@media (max-width: 480px) {
  .btn_base a {
    font-size: 0.9rem;
    padding: 11px 0;
  }
}

.btn_base a:hover {
  color: #ff7e02;
  border: 1px solid #ff7e02;
  background: url(../img/arrow03.png) no-repeat center right 40px/7px;
}

.everywhere_block {
  text-align: center;
  line-height: 2.2;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 auto 50px;
  max-width: 1020px;
}

@media (max-width: 480px) {
  .everywhere_block {
    text-align: left;
    line-height: 1.8;
    margin: 0 auto 30px;
    padding: 0 20px;
    max-width: 100%;
  }
}

.fs80 {
  font-size: 80%;
}

.fc_red {
  color: #ff0000;
}
/*# sourceMappingURL=common.css.map */