body {
  margin: 0;
  padding: 0;
  font-size: 15px;
  line-height: 1.618;
  color: #333; }

.sp {
  display: none; }

header {
  width: 1400px;
  position: relative;
  margin: 0 auto; }
  header .main_visual {
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    margin: 0 auto; }
  header .header {
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    align-items: center;
    padding: 35px 58px; }
    header .header .n_logo {
      margin-right: 62px; }
    header .header .navigation ul {
      display: flex; }
      header .header .navigation ul li a {
        color: #fff;
        font-size: 17px;
        padding: 0 20px; }

.m_logo {
  padding: 1360px 0 85px 0;
  text-align: center; }

.container {
  width: 1200px;
  margin: 0 auto;
  padding: 0; }

section {
  padding: 85px 0;
  width: 1200px;
  margin: 0 auto;
  text-align: center;
  border-bottom: dotted 1px #333; }
  section h2 {
    font-size: 36px;
    letter-spacing: 0.3em;
    padding-bottom: 30px;
    text-align: center; }
  section .contents .under {
    margin: 0 auto;
    padding: 75px 0 30px 0; }
    section .contents .under h3 {
      text-align: center;
      display: inline-block;
      font-size: 32px;
      border-bottom: solid 1px #333;
      padding-bottom: 4px; }
    section .contents .under p {
      padding-top: 4px;
      font-size: 16px; }
  section .contents .font_normal p, section .contents .font_small p {
    padding: 8px 0; }
  section .contents .font_normal p {
    font-size: 18px; }
  section .contents .font_small p {
    font-size: 16px; }
  section .contents .font_normal, section .contents .font_small {
    padding: 30px 0; }
  section .contents .brandvalues {
    width: 932px;
    text-align: left !important;
    margin-bottom: 100px; 
    margin-right: 100px;}
  section .contents .brandcore {
    width: 600px; }
  section .contents .brandcore_wrp {
    border: solid 1px #333;
    padding: 80px 300px; }
    section .contents .brandcore_wrp dl dt {
      font-size: 30px;
      color: #333;
      padding-top: 30px;
      margin: 50px; }
    section .contents .brandcore_wrp dl dd {
      font-size: 16px;
      color: #333;
      padding: 10px; }
  section .contents .profile {
    width: 680px;
    margin: 0 auto; }
    section .contents .profile table {
      width: 100%; }
      section .contents .profile table th {
        color: #333;
        font-size: 16px;
        text-align: right;
        padding: 10px 35px;
        width: 30%; }
      section .contents .profile table td {
        color: #333;
        font-size: 16px;
        text-align: left;
        padding: 10px 35px;
        width: 70%; }
  section .contents .history {
    width: 300px;
    margin: 0 auto; }
    section .contents .history table {
      width: 100%; }
      section .contents .history table th {
        color: #333;
        font-size: 16px;
        padding-right: 15px; }
      section .contents .history table td {
        color: #333;
        font-size: 16px; }
  section .contents .restaurant_wrp {
    display: flex;
    width: 910px;
    margin: 0 auto;
    padding: 25px 0; }
    section .contents .restaurant_wrp .photo {
      width: 50%;
      padding-right: 15px; }
    section .contents .restaurant_wrp .detail {
      width: 50%;
      text-align: left;
      padding-left: 15px; }
      section .contents .restaurant_wrp .detail dl {
        padding: 15px; }
        section .contents .restaurant_wrp .detail dl dt {
          font-size: 21px;
          color: #333;
          padding-bottom: 10px; }
        section .contents .restaurant_wrp .detail dl dd {
          font-size: 16px;
          color: #333;
          padding: 3px 0; }
      section .contents .restaurant_wrp .detail .map_icon {
        display: inline-block;
        border: 1px solid #333;
        padding: 17px 23px;
        background: #fff;
        color: #333;
        font-size: 18px;
        margin-top: 45px; }
      section .contents .restaurant_wrp .detail .map_icon::after {
        transform: translateY(-50%); }
      section .contents .restaurant_wrp .detail .map_icon:hover {
        background: #333;
        color: #fff; }
  section .contents .president_wrp {
    display: flex;
    width: 920px;
    margin: 0 auto;
    padding: 25px 0; }
    section .contents .president_wrp .detail {
      text-align: left;
      padding-left: 50px; }
      section .contents .president_wrp .detail dl dt {
        font-size: 18px;
        color: #333;
        padding: 0 0 11px 0; }
      section .contents .president_wrp .detail dl dd {
        font-size: 16px;
        color: #333;
        padding: 3px 0; }
      section .contents .president_wrp .detail dl .day {
        margin-top: 22px; }

footer {
  width: 100%; }
  footer .footer {
    width: 284px;
    padding: 75px 0 160px 0;
    margin: 0 auto;
    text-align: center; }
    footer .footer p {
      padding-top: 48px;
      font-size: 12px; }

@media only screen and (max-width: 640px) {
  img {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    height: auto; }

  body {
    width: 100%; }

  .pc {
    display: none; }

  .sp {
    display: block; }

  .sp_header {
    width: 100%; }

  .container {
    width: 90%;
    margin: 0 auto;
    padding: 0 10px; }

  section {
    padding: 0 0 80px 0;
    width: 100%;
    margin: 0 auto;
    text-align: center;
    border-bottom: solid 1px #333; }
    section h2 {
      letter-spacing: 0.2em;
      padding: 55px 0 38px 0;
      text-align: center; }
    section .contents .under {
      margin: 0 auto;
      padding: 55px 0 30px 0; }
      section .contents .under h3 {
        text-align: center;
        display: inline-block;
        border-bottom: solid 1px #333;
        padding-bottom: 0px; }
      section .contents .under p {
        padding-top: 4px; }
    section .contents .font_normal p, section .contents .font_small p {
      padding: 0;
      line-height: 2em; }
    section .contents .font_normal p {
      font-size: 16px; }
    section .contents .font_small p {
      font-size: 15px; }
    section .contents .font_normal, section .contents .font_small {
      padding: 0;
      margin: 0; }
    section .contents .font_normal, section .contents .font_small {
      padding: 30px 0; }
    section .contents .brandcore_wrp {
      border: none;
      padding: 20px 0; }
      section .contents .brandcore_wrp img {
        width: 575px;
        margin: 0 auto; }
      section .contents .brandcore_wrp dl dt {
        padding-top: 50px; }
      section .contents .brandcore_wrp dl dd {
        padding: 10px 0; }
    section .contents .profile {
      width: 100%;
      margin: 0 auto; }
      section .contents .profile table {
        width: 100%; }
        section .contents .profile table th {
          text-align: right;
          padding: 0px 6px;
          width: 30%; }
        section .contents .profile table td {
          text-align: left;
          padding: 10px 22px;
          width: 70%; }
    section .contents .history {
      width: 100%;
      margin: 0 auto; }
      section .contents .history table {
        width: 80%;
        margin: 0 auto; }
    section .contents .restaurant_wrp {
      width: 100%;
      display: block;
      margin: 0 auto;
      padding: 0; }
      section .contents .restaurant_wrp .photo {
        width: 100%;
        padding: 0;
        margin: 0 auto; }
        section .contents .restaurant_wrp .photo img {
          width: 445px;
          margin: 0 auto; }
      section .contents .restaurant_wrp .detail {
        width: 100%;
        text-align: left; }
        section .contents .restaurant_wrp .detail dl {
          margin: 0 auto;
          width: 100%;
          padding: 15px 0 0 0; }
          section .contents .restaurant_wrp .detail dl dt {
            padding-bottom: 10px; }
          section .contents .restaurant_wrp .detail dl dd {
            padding: 0; }
        section .contents .restaurant_wrp .detail .map_icon {
          display: inline-block;
          border: 1px solid #333;
          padding: 4px 12px;
          font-size: 19px;
          margin-top: 17px; }
    section .contents .president_wrp {
      display: block;
      width: 100%;
      margin: 0 auto;
      padding: 0; }
      section .contents .president_wrp .photo {
        width: 220px;
        margin: 0 auto; }
      section .contents .president_wrp .detail {
        padding: 0; }
        section .contents .president_wrp .detail dl dt {
          text-align: center;
          padding: 0;
          line-height: 1.4; }
        section .contents .president_wrp .detail dl dd {
          padding: 0;
          line-height: 1.8; }
        section .contents .president_wrp .detail dl .day {
          margin-top: 22px; }
  
  section .contents .brandvalues {
    margin-bottom:inherit; 
    }
  
  section .contents .profile table td {
    font-size: 15px;
    }

  footer {
    width: 90%;
    margin: 0 auto; }
    footer .footer {
      width: 100%;
      padding: 75px 0 160px 0;
      margin: 0 auto;
      text-align: center; }
      footer .footer img {
        width: 120px; }
      footer .footer p {
        padding-top: 48px;
        font-size: 12px; } }
