@charset "UTF-8";
/* @group reset */
/* @group Reset CSS */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0; }

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

table {
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show; }

fieldset, img {
  border: 0; }

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal; }

ol, ul {
  list-style: none; }

caption, th {
  text-align: left; }

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

q:before, q:after {
  content: ''; }

abbr, acronym {
  border: 0; }

input[type='text'],
input[type='email'],
input[type='submit'],
input[type='button'],
textarea,
select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

/* @end */
/* @group ClearFix */
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

.clearfix {
  display: inline-block; }

/* Hides from IE-mac \*/
* html .clearfix {
  height: 1%; }

.clearfix {
  display: block; }

/* End hide from IE-mac */
/* @end */
/* @group common */
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 400;
  src: url("fonts/NotoSerifCJKjp/NotoSerifCJKjp-Regular.otf") format("opentype"); }
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 700;
  src: url("fonts/NotoSerifCJKjp/NotoSerifCJKjp-Bold.otf") format("opentype"); }
@font-face {
  font-family: 'ArmedLemon';
  src: url("../font/ArmedLemon.TTF") format("truetype"); }
* {
  box-sizing: border-box; }

html {
  overflow-y: scroll;
  -webkit-text-size-adjust: none; }

body {
  text-align: center;
  margin: 0 auto;
  color: #333333; }

img {
  vertical-align: bottom; }

a img {
  border: none;
  text-decoration: none; }

h1, h2, h3, h4, h5, h6, p, dl, ul, ol, table {
  line-height: 1.6; }

legend {
  color: #333333; }

/* @end */
/* @end */
/* @group layout */
a {
  color: #333333;
  text-decoration: none; }

a:hover {
  color: #BAA23C; }

a:hover img {
  opacity: 0.7; }

td a {
  text-decoration: underline; }

section {
  padding: 30px 0; }

.inner {
  max-width: 1280px;
  margin: 0 auto; }

.flex {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column; }

#main_title {
  height: 200px;
  position: relative;
  box-sizing: border-box;
  padding: 0; }

#main_title .inner {
  position: relative; }

#main_title h1 {
  font-family: "Noto Serif JP", "MS PMincho", serif;
  font-weight: bold;
  color: #fff;
  font-size: 30px;
  text-align: center;
  background: rgba(186, 162, 60, 0.6);
  box-sizing: border-box;
  height: 150px;
  max-width: 350px;
  padding: 55px 5px 0;
  position: absolute;
  top: 25px;
  left: 10px;
  right: 10px;
  margin: 0 auto;
  text-shadow: 1px 1px 1px #000;
  line-height: 1.3; }

#main_title h1 span {
  font-size: 20px;
  display: block; }

h2 {
  color: #BAA23C;
  font-family: "Noto Serif JP", "MS PMincho", serif;
  font-size: 36px;
  line-height: 1.2;
  margin-bottom: 30px; }
  h2 span {
    display: block;
    font-size: 28px;
    margin-left: 10px; }

h2 .en {
  display: block;
  font-size: 18px; }

h2.h2-bg {
  background: #BAA23C;
  color: #fff;
  font-family: "メイリオ", sans-serif;
  font-size: 28px;
  margin: 0 auto;
  max-width: 960px;
  font-weight: bold;
  padding: 10px;
  margin-bottom: 20px; }

h3 {
  font-family: #sans;
  font-weight: bold;
  font-size: 20px;
  color: #BAA23C; }

p {
  line-height: 1.6;
  margin-bottom: 15px;
  font-family: "メイリオ", sans-serif; }
  p.textleft {
    text-align: left; }

img {
  max-width: 100%; }

sup {
  vertical-align: super;
  font-size: 60%; }

.bg {
  background: #f5f3f2; }

.w-bg {
  background: #fff;
  max-width: 960px;
  margin: 0 auto 30px;
  padding: 20px;
  text-align: left;
  font-family: "メイリオ", sans-serif; }
  .w-bg h3 {
    font-family: "メイリオ", sans-serif;
    margin-bottom: 15px; }

.cm_cont_flex {
  display: flex;
  margin: 0 auto;
  width: auto;
  justify-content: center;
  flex-direction: column; }

.cm {
  padding: 5px 10px; }

.cm iframe {
  width: 100%;
  aspect-ratio: 16/9; }

table {
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  font-family: "メイリオ", sans-serif;
  width: 100%;
  max-width: 960px;
  margin: 0 auto 40px; }
  table th {
    background: #faf6e6;
    padding: 5px;
    font-weight: bold;
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    text-align: center; }
  table tr:first-child th {
    color: #fff;
    background: #BAA23C; }
  table td {
    padding: 5px;
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    text-align: left;
    background: #fff; }
  table.no-th tr:first-child th {
    background: #faf6e6;
    color: #333; }
  table th.th-color {
    color: #fff;
    background: #BAA23C; }
  table tr:first-child th.th-color {
    color: #fff;
    background: #BAA23C; }

/* @group header */
header {
  position: relative; }

header #header_inner {
  box-sizing: border-box;
  padding: 20px 0;
  position: relative; }

header h1.sitetitle {
  font-weight: bold;
  font-size: 22px;
  font-family: "メイリオ", sans-serif; }

header h1 img {
  display: block;
  margin: 0 auto 5px;
  width: 40px; }

header h1.sitetitle a:hover {
  color: #333; }

header #header_inner div.contact p a i {
  margin-right: 10px;
  display: inline-block; }

header #header_inner div.contact p.contact_tel a {
  color: #BAA23C;
  font-family: "メイリオ", sans-serif;
  font-weight: bold; }

header #header_inner div.contact p.contact_mail a {
  background: #BAA23C;
  display: block;
  color: #fff;
  font-family: "メイリオ", sans-serif;
  font-weight: bold;
  padding: 5px 0;
  line-height: 1;
  margin: 0 auto;
  font-size: 14px;
  width: 160px; }

/* @end */
/* @group global_nav */
.spmenu_btn {
  font-size: 18px;
  background: #BAA23C;
  margin: 0 auto;
  position: absolute;
  top: 0;
  right: 0;
  color: #fff;
  padding: 10px 5px 10px 10px;
  box-sizing: border-box;
  font-family: "メイリオ", sans-serif;
  line-height: 1;
  z-index: 101; }
  .spmenu_btn .icon-menu-2 {
    display: block; }
  .spmenu_btn .icon-cancel-1 {
    display: none; }

.spmenu_btn.active .icon-menu-2 {
  display: none; }
.spmenu_btn.active .icon-cancel-1 {
  display: block; }

.spmenu_btn i {
  display: inline-block;
  margin-right: 5px; }

nav#global_nav {
  background: #F5F3F2;
  padding: 20px 0 20px;
  border-top: 1px solid #BAA23C; }
  nav#global_nav ul {
    display: flex;
    flex-direction: column;
    padding: 10px; }
    nav#global_nav ul li {
      font-size: 18px;
      font-family: "Noto Serif JP", "MS PMincho", serif;
      text-align: left; }
      nav#global_nav ul li a i {
        color: #BAA23C; }
      nav#global_nav ul li ul li {
        font-size: 18px; }

/* @end */
/* @group main */
main {
  padding-bottom: 80px; }

/* @end */
/* @group top */
#top #main_img {
  min-height: 500px;
  padding: 0; }

#top #main_img a {
  display: block;
  min-height: 500px;
  position: relative; }

#top #main_img a .txt {
  width: 280px;
  height: 280px;
  background: rgba(186, 162, 60, 0.6);
  color: #fff;
  box-sizing: border-box;
  padding: 120px 20px 0;
  margin: 0 auto;
  text-align: left;
  position: absolute;
  top: 110px;
  font-family: "メイリオ", sans-serif;
  text-shadow: 1px 1px 1px #000;
  left: 0;
  right: 0; }

#top #main_img a:hover .txt {
  opacity: 0.8; }

#top #main_img a .txt strong {
  font-size: 30px;
  font-family: "Noto Serif JP", "MS PMincho", serif;
  display: block;
  text-align: center;
  font-weight: bold;
  line-height: 1.2; }

#top #main_img a.greeting {
  background: url(../images/greeting.jpg) no-repeat top center;
  background-size: cover; }

#top #main_img a.company_profile {
  background: url(../images/top_company_profile_bg.jpg) no-repeat center center;
  background-size: cover; }

#top #main_img a.kaitai {
  background: url(../images/top_kaitai_bg.jpg) no-repeat center center;
  background-size: cover; }

#top #main_img a.business {
  background: url(../images/top_business_bg.jpg) no-repeat center center;
  background-size: cover; }

#top #main_img a.history {
  background: url(../images/top_history_bg.jpg) no-repeat center center;
  background-size: cover; }

#top #main_img a.welfare {
  background: url(../images/top_welfare_bg.jpg) no-repeat center center;
  background-size: cover; }

#top #main_img a.marineresort {
  background: url(../images/top-marineresort.jpg) no-repeat center left;
  background-size: auto 120%; }
  #top #main_img a.marineresort .txt {
    padding: 70px 20px 0; }

#top #main_img a.kenchiku {
  background: url(../images/top-kenchiku.jpg) no-repeat left -300px center;
  background-size: auto 100%; }

#top main {
  padding-bottom: 0; }

#top main section {
  padding: 30px 0; }

#top main #notice .flex {
  padding: 0 10px;
  max-width: 1028px;
  margin: 0 auto; }
#top main #notice div.flex-item {
  background: #fff;
  padding: 10px;
  margin-bottom: 10px;
  border: 1px solid #c1272d;
  box-sizing: border-box; }
  #top main #notice div.flex-item h2 {
    font-family: sans-serif;
    margin-bottom: 5px; }
  #top main #notice div.flex-item p {
    margin-bottom: 5px;
    line-height: 1.4; }
    #top main #notice div.flex-item p strong {
      font-weight: bold; }
  #top main #notice div.flex-item p.detail {
    background: #baa23c;
    padding: 5px;
    color: #fff;
    font-family: sans-serif;
    font-weight: bold; }
  #top main #notice div.flex-item a {
    display: block; }
    #top main #notice div.flex-item a:hover {
      opacity: 0.6;
      color: #000; }
  #top main #notice div.flex-item#purchasing_box h2 {
    color: #c1272d;
    font-size: 20px;
    font-weight: bold; }
  #top main #notice div.flex-item#purchasing_box img {
    display: block;
    margin: 10px auto;
    max-width: 100%; }
  #top main #notice div.flex-item#recruitment_box h2 {
    color: #000;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center; }
    #top main #notice div.flex-item#recruitment_box h2 em {
      font-weight: bold;
      background: #c1272d;
      color: #fff;
      padding: 10px 3px;
      display: block;
      line-height: 1;
      font-size: 20px;
      text-align: center; }
    #top main #notice div.flex-item#recruitment_box h2 span {
      font-size: 16px;
      text-align: left;
      display: block; }
  #top main #notice div.flex-item#recruitment_box ul {
    text-align: left;
    font-family: sans-serif;
    font-weight: bold;
    margin: 0 auto 10px;
    max-width: 500px; }
    #top main #notice div.flex-item#recruitment_box ul li span {
      font-weight: normal;
      font-size: 12px;
      display: block;
      line-height: 1.2; }
  #top main #notice div.flex-item#recruitment_box p {
    margin: 0 auto 5px;
    max-width: 500px; }
    #top main #notice div.flex-item#recruitment_box p em {
      display: block;
      text-align: left;
      font-weight: bold;
      color: #ff0000;
      font-size: 12px; }

.slick-dots {
  bottom: 10px; }

.slick-dots li button:before {
  color: #eee;
  font-size: 16px;
  opacity: 0.8; }

.slick-dots li.slick-active button:before {
  color: #BAA23C;
  opacity: 0.9; }

.slick-dotted.slick-slider {
  margin-bottom: 0; }

#top main section#concept {
  background: #F5F3F2;
  padding-bottom: 0; }

#top #concept p {
  font-family: "メイリオ", sans-serif;
  padding: 10px;
  box-sizing: border-box; }

#top #concept strong {
  display: block;
  font-size: 40px;
  font-family: "Noto Serif JP", "MS PMincho", serif; }

#top #concept ul {
  margin-top: 40px; }

#top #concept ul li {
  box-sizing: border-box;
  border-right: 1px solid #fff; }

#top #concept ul li:last-child {
  border-right: none; }

#top #concept ul li a {
  height: 250px;
  display: block;
  box-sizing: border-box;
  padding-top: 200px;
  text-align: right;
  color: #fff;
  background: rgba(0, 0, 0, 0.4);
  font-size: 24px;
  font-family: "Noto Serif JP", "MS PMincho", serif;
  padding-right: 10px;
  text-shadow: 1px 1px 1px #000; }

#top #concept ul li a:hover {
  background: rgba(0, 0, 0, 0.2); }

#top #concept ul li.company_profile {
  background: url(../images/concept_bg_company_profile.jpg) no-repeat center center;
  background-size: cover; }

#top #concept ul li.history {
  background: url(../images/concept_bg_history.jpg) no-repeat center center;
  background-size: cover; }

#top #concept ul li.group {
  background: url(../images/concept_bg_group.jpg) no-repeat center center;
  background-size: cover; }

#top #concept ul li.recruit {
  background: url(../images/concept_bg_recruit.jpg) no-repeat center center;
  background-size: cover; }

#top #concept ul li.welfare {
  background: url(../images/concept_bg_welfare.jpg) no-repeat center center;
  background-size: cover; }

#top #concept .banner a {
  display: block;
  max-width: 350px;
  background: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%);
  color: #fff;
  text-align: center;
  margin: 0 auto;
  padding: 15px 10px 10px;
  font-size: 24px;
  font-weight: bold;
  text-shadow: 1px 1px 1px black; }

#top .sns {
  margin: 0 auto; }
  #top .sns.flex {
    justify-content: center;
    flex-direction: row; }
    #top .sns.flex div {
      width: 50%; }

#top p.snsqr {
  font-weight: bold;
  margin-bottom: 10px;
  padding: 10px;
  border: none !important; }
  #top p.snsqr img {
    display: block;
    margin: 0 auto 10px; }

#top main a.link_banner {
  display: block;
  background: #f5f3f2;
  width: 100%;
  font-size: 18px;
  font-weight: bold;
  font-family: "メイリオ", sans-serif;
  text-align: left;
  line-height: 1.2;
  padding: 40px 5px 40px 55%;
  border: 1px solid #eee; }
  #top main a.link_banner i {
    color: #BAA23C;
    font-size: 1.2em; }
  #top main a.link_banner:hover {
    opacity: 0.7; }

#top #welfare_link .welfare_link_btn a.link_banner {
  background: url("../images/welare_link_btn_bg.png") no-repeat left center #f5f3f2;
  background-size: 65% auto;
  padding: 40px 5px 40px 50%; }
#top #welfare_link .welfare_link_btn .catch {
  display: block;
  font-size: 16px;
  margin-top: 10px;
  line-height: 1.4;
  background: #fef783;
  padding: 5PX; }

#top #facility_link ul.flex {
  margin: 0 auto;
  justify-content: space-between;
  max-width: 2000px;
  flex-direction: row; }
  #top #facility_link ul.flex li {
    margin-bottom: 0;
    width: 50%; }
    #top #facility_link ul.flex li a {
      display: block; }
      #top #facility_link ul.flex li a span {
        display: block;
        background: #ccc;
        color: #fff;
        font-size: 16px;
        font-family: "メイリオ", sans-serif;
        padding: 10px 5px;
        line-height: 1.4;
        min-height: 60px; }
        #top #facility_link ul.flex li a span i {
          font-size: 16px;
          display: block; }
    #top #facility_link ul.flex li.marine-resort a span {
      background: #80bfda; }
    #top #facility_link ul.flex li.boneedz a span {
      background: #e7372f; }
    #top #facility_link ul.flex li.pocket a span {
      background: #1C3090; }
    #top #facility_link ul.flex li.kagaribi a span {
      background: #000; }
    #top #facility_link ul.flex li.bar a span {
      background: #4EE4DD;
      color: #000; }

#top #feature_link ul {
  width: 100%; }
  #top #feature_link ul li {
    width: 100%;
    margin-bottom: 15px; }
#top #feature_link .kaitai_link_btn a.link_banner {
  background: url("../images/kaitai_link_btn_bg.png") no-repeat left 15% center #f5f3f2; }
#top #feature_link .media_link_btn a.link_banner {
  background: url("../images/media_link_btn_bg.png") no-repeat left 5% center #f5f3f2; }

#top #business ul {
  background: #F5F3F2; }

#top #business ul li {
  width: 50%;
  float: left;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  box-sizing: border-box; }

#top #business ul li a {
  height: 250px;
  display: block;
  box-sizing: border-box;
  padding-top: 110px;
  text-align: center;
  color: #fff;
  background: rgba(0, 0, 0, 0.4);
  font-size: 24px;
  font-family: "Noto Serif JP", "MS PMincho", serif;
  line-height: 1.2;
  text-shadow: 1px 1px 1px #000; }

#top #business ul li a:hover {
  background: rgba(0, 0, 0, 0.2); }

#top #business ul li.kaitai {
  background: url(../images/business_bg_kaitai.jpg) no-repeat center center;
  background-size: cover; }

#top #business ul li.doboku {
  background: url(../images/business_bg_doboku.jpg) no-repeat center center;
  background-size: cover; }

#top #business ul li.hosou {
  background: url(../images/business_bg_hosou.jpg) no-repeat center center;
  background-size: cover; }

#top #business ul li.recycl {
  background: url(../images/business_bg_recycl.jpg) no-repeat center center;
  background-size: cover; }

#top #business ul li.lease {
  background: url(../images/business_bg_lease.jpg) no-repeat center center;
  background-size: cover; }

#top #business ul li.kenchiku {
  background: url(../images/business_bg_kenchiku.jpg) no-repeat center center;
  background-size: cover; }

#top #business ul li.farm {
  background: url(../images/business_bg_farm.jpg) no-repeat center center;
  background-size: cover; }

#top #business ul li.boneedz {
  background: url(../images/business_bg_boneedz.jpg) no-repeat center center;
  background-size: cover; }
  #top #business ul li.boneedz a {
    padding-top: 90px;
    font-size: 20px; }

#top #business ul li.kagaribi {
  background: url(../images/business_bg_kagaribi.jpg) no-repeat center center;
  background-size: cover; }

#top #news ul {
  max-width: 960px;
  margin: 0 auto 70px; }

#top #news ul li {
  background: #FAF8F8;
  border: 1px solid #E6E6E6;
  padding: 15px 20px;
  margin: 10px;
  font-family: "メイリオ", sans-serif;
  text-align: left;
  box-sizing: border-box; }

#top #news ul li strong {
  display: block;
  font-weight: bold;
  color: #d25a24;
  font-size: 18px; }

/* @end */
/* @group company_profile */
#company_profile #main_title {
  background: url(../images/h1_company_profile_bg.jpg) no-repeat left center;
  background-size: cover; }

#company_profile .flex {
  display: flex;
  justify-content: space-between; }
  #company_profile .flex div {
    width: 100%;
    border-right: 1px solid #fff; }

#company_profile iframe {
  width: 100%;
  margin-bottom: 40px; }

#company_profile #concept p {
  font-family: "メイリオ", sans-serif;
  padding: 0 15px; }

#company_profile #concept p strong {
  display: block;
  font-size: 40px;
  margin-bottom: 15px;
  font-family: "Noto Serif JP", "MS PMincho", serif;
  text-align: center; }

#company_profile #concept .banner a {
  display: block;
  max-width: 350px;
  background: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%);
  color: #fff;
  text-align: center;
  margin: 0 auto;
  padding: 15px 10px 10px;
  font-size: 24px;
  font-weight: bold;
  text-shadow: 1px 1px 1px black; }

#company_profile #sdgs .inner {
  padding: 15px; }
#company_profile #sdgs dl.flex {
  flex-direction: column;
  border-bottom: 1px solid #ccc; }
  #company_profile #sdgs dl.flex dt {
    font-weight: bold;
    font-size: 18px;
    text-align: left;
    margin-bottom: 10px;
    border-top: 1px solid #ccc;
    padding-top: 10px; }
  #company_profile #sdgs dl.flex dd {
    text-align: left;
    margin-bottom: 15px; }
    #company_profile #sdgs dl.flex dd img {
      display: block;
      margin-bottom: 10px; }
#company_profile #sdgs ul.flex li {
  padding: 5px; }

#company_profile #outline dl {
  font-family: "メイリオ", sans-serif;
  padding: 0 15px; }

#company_profile #outline dl dt {
  padding: 10px 0 8PX;
  background: #BAA23C;
  color: #FFF;
  font-weight: bold;
  line-height: 1; }

#company_profile #outline dl dd {
  padding: 5px 0 15PX;
  font-size: 14px;
  text-align: left; }

#company_profile #machine_list .inner {
  padding: 10px; }

#company_profile #machine_list ul {
  margin-bottom: 30px; }

#company_profile #machine_list ul li {
  float: left;
  width: 50%; }

#company_profile #machine_list ul li img {
  display: block;
  max-width: 100%;
  margin: 0 auto; }

#company_profile #machine_list ul li span {
  display: block;
  font-size: 12px;
  font-family: "メイリオ", sans-serif;
  padding: 5px 0; }

/* @end */
/* @group message */
#message #main_title {
  background: url(../images/h1_message_bg.jpg) no-repeat center center;
  background-size: cover; }

#message section .flex div {
  width: 100%; }
#message section .flex .text_cont {
  padding: 0 15px; }
  #message section .flex .text_cont p {
    text-align: left;
    line-height: 2;
    font-size: 16px; }
    #message section .flex .text_cont p.sign {
      text-align: right;
      font-size: 1.3em;
      font-family: "Noto Serif JP", "MS PMincho", serif; }
#message section .flex .img_cont {
  text-align: center; }
  #message section .flex .img_cont img {
    display: inline; }

/* @end */
/* @group history */
#history #main_title {
  background: url(../images/h1_history_bg.jpg) no-repeat center center;
  background-size: cover; }

#history #history_cont .inner {
  padding: 0 10px 40px; }

#history #main_title h1 {
  padding: 40px 0 0 0; }

/* @end */
/* @group group */
#group #main_title {
  background: url(../images/h1_group_bg.jpg) no-repeat center center;
  background-size: cover; }

#group main section#group_cont {
  padding-top: 0; }

#group main ul {
  margin-bottom: 40px; }

#group main ul li {
  text-align: left;
  box-sizing: border-box;
  padding: 30px 0; }

#group main ul li img {
  display: block;
  margin: 0 auto 15px; }

#group main span {
  text-align: left;
  font-family: "メイリオ", sans-serif;
  display: block;
  padding: 10px; }

#group main span strong {
  display: block;
  font-family: "Noto Serif JP", "MS PMincho", serif;
  font-size: 24px;
  color: #BAA23C;
  font-weight: bold;
  margin-bottom: 10px;
  line-height: 1.4; }

/* @end */
/* @group recruit */
#recruit #main_title {
  background: url(../images/h1_recruit_bg.jpg) no-repeat center center;
  background-size: cover; }

#recruit main {
  font-family: "メイリオ", sans-serif; }

#recruit main .inner {
  padding: 0 15px; }

#recruit main ul {
  text-align: left;
  max-width: 550px;
  font-size: 14px;
  margin: 0 auto; }

#recruit main dl {
  text-align: left;
  max-width: 700px;
  margin: 0 auto 40px;
  border-bottom: dotted 1px #ccc; }
  #recruit main dl dt {
    color: #BAA23C;
    font-weight: bold;
    font-size: 18px;
    border-top: dotted 1px #ccc;
    padding-top: 10px; }
  #recruit main dl dd {
    margin-bottom: 10px;
    padding-bottom: 5px; }

#recruit main #recruitment {
  background: #fff;
  padding: 15px 10px;
  max-width: 800px;
  margin: 0 auto;
  box-sizing: border-box;
  border: 1px solid #c1272d; }
  #recruit main #recruitment ul {
    max-width: 800px;
    box-sizing: border-box;
    margin: 10px auto;
    font-size: 16px; }
    #recruit main #recruitment ul li {
      font-weight: bold; }
      #recruit main #recruitment ul li span {
        font-size: 14px;
        display: block;
        padding-left: 1em;
        color: #666;
        font-weight: normal; }
  #recruit main #recruitment p {
    margin: 10px auto; }
    #recruit main #recruitment p strong {
      font-weight: bold;
      font-size: 18px;
      display: block;
      line-height: 1.4; }
    #recruit main #recruitment p em {
      font-weight: bold;
      color: #c1272d;
      display: block;
      border: 1px solid #c1272d;
      padding: 5px; }
  #recruit main #recruitment h2 {
    font-family: sans-serif;
    color: #c1272d;
    margin-bottom: 10px;
    font-weight: bold; }

#recruit main .support {
  max-width: 800px;
  margin: 0 auto;
  background: #fff;
  padding: 20px;
  border: 1px solid #c1272d; }
  #recruit main .support p {
    text-align: left; }
  #recruit main .support ul {
    max-width: 800px;
    box-sizing: border-box;
    margin: 15px auto;
    font-size: 16px; }
    #recruit main .support ul li {
      margin-left: 1.5em;
      text-indent: -1.5em; }
      #recruit main .support ul li em {
        color: #c1272d;
        font-weight: bold;
        display: block; }
  #recruit main .support h2 {
    font-family: sans-serif;
    color: #c1272d;
    margin-bottom: 10px;
    font-weight: bold; }
  #recruit main .support h3 {
    margin-top: 20px;
    line-height: 1.4;
    text-align: left; }
  #recruit main .support h4 {
    text-align: left;
    font-weight: bold; }

/* @end */
/* @group welfare */
#welfare #main_title {
  background: url(../images/h1_welfare_bg.jpg) no-repeat center center;
  background-size: cover; }

#welfare main .inner {
  max-width: 960px;
  padding: 10px;
  font-family: "メイリオ", sans-serif; }
  #welfare main .inner ul.a-link {
    display: flex;
    justify-content: space-between; }
    #welfare main .inner ul.a-link li {
      width: 49%; }
      #welfare main .inner ul.a-link li a {
        display: block;
        border: 1px solid #BAA23C;
        padding: 15px 5px;
        text-align: center;
        font-weight: bold;
        font-size: 18px;
        color: #BAA23C;
        background: #fff;
        line-height: 1; }
        #welfare main .inner ul.a-link li a:hover {
          opacity: 0.7; }
  #welfare main .inner p {
    text-align: left; }
  #welfare main .inner h3 {
    margin-bottom: 10px;
    text-align: left; }
  #welfare main .inner h4 {
    font-weight: bold;
    margin-bottom: 5px;
    text-align: left; }
  #welfare main .inner ul {
    margin-bottom: 15px;
    text-align: left; }
    #welfare main .inner ul li {
      margin-bottom: 5px; }
      #welfare main .inner ul li em {
        font-weight: bold;
        display: block; }
  #welfare main .inner ul[class^="gallery"] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start; }
    #welfare main .inner ul[class^="gallery"] li {
      width: 50%;
      padding-right: 5px; }
  #welfare main .inner dl {
    text-align: left; }
    #welfare main .inner dl dt {
      font-weight: bold; }
    #welfare main .inner dl dd {
      margin-bottom: 5px; }
  #welfare main .inner strong {
    font-weight: bold; }
  #welfare main .inner .img_cont {
    text-align: center; }
    #welfare main .inner .img_cont img {
      margin-bottom: 15px; }
  #welfare main .inner .support ul li {
    margin-left: 1.2em;
    text-indent: -1.2em; }
  #welfare main .inner .attention {
    text-decoration: underline; }
    #welfare main .inner .attention strong {
      display: inline-block;
      color: #ff0000;
      text-decoration: none; }
  #welfare main .inner h3.black_border {
    border: 1px solid #000;
    font-size: 20px;
    text-align: center;
    font-weight: bold;
    color: #000;
    padding: 15px 0 10px;
    line-height: 1.2;
    margin-bottom: 15px; }
  #welfare main .inner ul.apart li {
    text-align: center;
    padding: 10px; }
    #welfare main .inner ul.apart li img {
      display: block;
      margin: 0 auto 5px; }
  #welfare main .inner ul.gym li {
    text-align: center;
    padding: 10px; }
  #welfare main .inner ul.bold li {
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 0; }

/* @end */
/* @group kaitai */
#kaitai #main_title {
  background: url(../images/h1_kaitai_bg.jpg) no-repeat center center;
  background-size: cover; }

#kaitai main .inner {
  padding: 15px; }

#kaitai main p {
  text-align: left;
  margin: 0 auto 15px;
  line-height: 2;
  max-width: 960px; }

#kaitai main ul {
  max-width: 960px;
  margin: 0 auto; }
  #kaitai main ul li {
    margin-bottom: 15px; }
    #kaitai main ul li img {
      display: block;
      margin: 0 auto 5px;
      max-width: 100%; }
    #kaitai main ul li span {
      display: block;
      font-family: "メイリオ", sans-serif;
      font-size: 14px; }

#kaitai main #purchasing {
  background: #fff;
  padding: 15px;
  max-width: 960px;
  margin: 0 auto 30px;
  box-sizing: border-box;
  border: 1px solid #c1272d; }
  #kaitai main #purchasing h2 {
    font-family: sans-serif;
    color: #c1272d;
    margin-bottom: 20px;
    font-weight: bold; }
  #kaitai main #purchasing p {
    line-height: 1.6; }
    #kaitai main #purchasing p strong {
      display: block;
      text-align: center;
      font-weight: bold;
      font-size: 18px; }
    #kaitai main #purchasing p.note {
      font-size: 14px;
      line-height: 1.4;
      text-align: center; }
    #kaitai main #purchasing p.text {
      padding: 10px;
      background: #fef783;
      font-weight: bold; }

/* @end */
/* @group doboku */
#doboku #main_title {
  background: url(../images/h1_doboku_bg.jpg) no-repeat center center;
  background-size: cover; }

#doboku main .inner {
  padding: 15px; }

#doboku main p {
  text-align: left;
  margin: 0 auto 15px;
  line-height: 2;
  max-width: 960px; }
  #doboku main p i {
    font-style: normal;
    color: #ff0000; }

#doboku main ul {
  max-width: 960px;
  margin: 40px auto 0; }
  #doboku main ul li {
    margin-bottom: 15px; }
    #doboku main ul li img {
      display: block;
      margin: 0 auto 5px;
      max-width: 100%; }
    #doboku main ul li span {
      display: block;
      font-family: "メイリオ", sans-serif;
      font-size: 14px; }
      #doboku main ul li span i {
        font-style: normal;
        display: block;
        color: #666; }

/* @end */
/* @group hosou */
#hosou #main_title {
  background: url(../images/h1_hosou_bg.jpg) no-repeat center center;
  background-size: cover; }

#hosou main .right {
  padding: 10px; }

#hosou main p {
  text-align: left;
  margin: 0 auto 20px;
  line-height: 2;
  max-width: 960px; }
  #hosou main p span {
    display: block;
    text-align: center;
    font-size: 14px;
    line-height: 1.4; }

#hosou main img {
  display: block;
  margin: 0 auto 10px;
  max-width: 100%; }

#hosou main ul {
  max-width: 800px;
  margin: 0 auto 50px; }
  #hosou main ul li {
    padding: 10px;
    font-family: "メイリオ", sans-serif; }

/* @end */
/* @group lease */
#lease #main_title {
  background: url(../images/h1_lease_bg.jpg) no-repeat center center;
  background-size: cover; }
  #lease #main_title h1 {
    font-size: 28px; }

#lease main .inner {
  padding: 15px; }

#lease main .inner table {
  margin-bottom: 15px; }
  #lease main .inner table th span {
    display: block;
    font-weight: normal;
    font-size: 14px; }
  #lease main .inner table td {
    text-align: center;
    word-break: break-all; }
    #lease main .inner table td span {
      display: block;
      font-weight: normal;
      font-size: 14px; }

/* @end */
/* @group recycl */
#recycl #main_title {
  height: auto;
  min-height: 400px;
  background: url(../images/recycl_head.jpg) no-repeat center center;
  background-size: cover; }
#recycl #main_title h1 {
  font-weight: normal;
  color: #fff;
  text-align: center;
  box-sizing: border-box;
  position: absolute;
  top: 30px;
  left: 50px;
  right: auto;
  margin: 0 auto; }

#recycl main .inner {
  padding: 15px; }

#recycl main p {
  text-align: left;
  margin: 0 auto 15px;
  line-height: 2;
  max-width: 960px; }
  #recycl main p i {
    font-style: normal;
    color: #ff0000; }

#recycl main ul.flow {
  max-width: 960px;
  margin: 0 auto; }
  #recycl main ul.flow li {
    padding: 20px 10px;
    box-sizing: border-box;
    font-family: "メイリオ", sans-serif;
    position: relative; }
    #recycl main ul.flow li span {
      display: block;
      font-weight: bold;
      font-size: 18px;
      margin-bottom: 15px;
      text-align: left; }
      #recycl main ul.flow li span strong {
        display: block;
        text-align: center;
        background: #BAA23C;
        font-weight: bold;
        padding: 5px 8px;
        font-size: 20px;
        line-height: 1;
        color: #fff;
        margin: 0 0 5px;
        width: 30px; }
      #recycl main ul.flow li span i {
        font-style: normal;
        font-weight: normal;
        font-size: 16px;
        display: block; }
    #recycl main ul.flow li img {
      display: block;
      margin: 0 auto 10px; }
    #recycl main ul.flow li div.illegal {
      border: solid 5px #BAA23C;
      margin-bottom: 15px;
      margin-top: 30px;
      padding: 10px;
      box-sizing: border-box;
      position: relative; }
    #recycl main ul.flow li div.illegal :before {
      content: "▼";
      display: block;
      font-size: 30px;
      font-weight: bold;
      color: #BAA23C;
      position: absolute;
      z-index: 100;
      top: -35px;
      margin: 0 auto;
      right: 0;
      left: 0; }
    #recycl main ul.flow li div.tips {
      background: #BAA23C;
      padding: 10px;
      box-sizing: border-box; }
      #recycl main ul.flow li div.tips span i {
        font-weight: bold;
        color: #fff; }
    #recycl main ul.flow li em {
      font-size: 42px;
      color: #ff0000;
      font-weight: bold;
      display: block;
      line-height: 1.2; }
  #recycl main ul.flow li:before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    position: absolute;
    z-index: 100;
    top: -15px;
    transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    margin: 0 auto;
    right: 0;
    left: 0; }
  #recycl main ul.flow li:first-child:before {
    content: none; }
  #recycl main ul.flow li:nth-child(odd) {
    background: #f0e4b4; }
  #recycl main ul.flow li:nth-child(odd):before {
    background: #fff; }
  #recycl main ul.flow li:nth-child(even) {
    background: #fff; }
  #recycl main ul.flow li:nth-child(even):before {
    background: #f0e4b4; }

#recycl main ul.wood_flow li {
  position: relative; }
#recycl main ul.wood_flow li:nth-child(3) {
  padding-bottom: 0; }
#recycl main ul.wood_flow li:last-child div.left {
  width: 49%;
  border: solid 5px #BAA23C;
  box-sizing: border-box;
  padding: 10px;
  float: left; }
#recycl main ul.wood_flow li:last-child div.right {
  width: 49%;
  border: solid 5px #BAA23C;
  box-sizing: border-box;
  padding: 10px;
  float: right; }
#recycl main ul.wood_flow li:last-child div.left:before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  position: absolute;
  z-index: 150;
  top: -15px;
  transform: rotate(45deg);
  margin: 0 auto;
  right: 22.5%;
  background: #BAA23C; }
#recycl main ul.wood_flow li:last-child:before {
  background: #BAA23C;
  left: 22.5%;
  right: auto; }

#recycl main #recycl_sketch ul {
  max-width: 960px;
  margin-top: 30px; }
  #recycl main #recycl_sketch ul li {
    box-sizing: border-box;
    padding: 10px 5px;
    font-family: "メイリオ", sans-serif; }
    #recycl main #recycl_sketch ul li img {
      display: block;
      margin: 0 auto;
      margin-bottom: 10px; }
    #recycl main #recycl_sketch ul li span {
      display: block;
      margin: 0 auto;
      line-height: 1;
      font-weight: bold;
      text-align: left;
      font-family: "メイリオ", sans-serif; }
    #recycl main #recycl_sketch ul li strong {
      display: inline-block;
      background: #ff0000;
      font-size: 18px;
      color: #fff;
      font-weight: bold;
      padding: 5px 8px;
      border-radius: 3px;
      margin-right: 10px;
      font-family: "メイリオ", sans-serif; }

/* @end */
/* @group media */
#media #main_title {
  background: url(../images/h1_media_bg.jpg) no-repeat center center;
  background-size: cover; }

#media #main_title h1 {
  padding: 35px 0 0 0; }

#media main .inner {
  max-width: 1024px; }
  #media main .inner .flex {
    justify-content: center; }
  #media main .inner dl {
    display: flex;
    flex-wrap: wrap;
    max-width: 960px;
    margin: 0 auto;
    font-family: "メイリオ", sans-serif;
    padding: 10px; }
    #media main .inner dl dt {
      font-weight: bold;
      text-align: left;
      width: 15%;
      margin-bottom: 5px; }
    #media main .inner dl dd {
      text-align: left;
      width: 85%;
      margin-bottom: 5px; }
  #media main .inner ul.poster_img {
    align-items: center; }
    #media main .inner ul.poster_img li {
      padding: 10px; }
#media main #tourism ul.flex li {
  padding: 10px; }

/* @end */
/* @group kenchiku */
#kenchiku #main_title {
  background: url(../images/h1_kenchiku_bg.jpg) no-repeat center center;
  background-size: cover; }

#kenchiku main .inner {
  padding: 15px; }

#kenchiku main p {
  text-align: center;
  margin: 0 auto 15px;
  line-height: 2;
  max-width: 960px; }
  #kenchiku main p i {
    font-style: normal;
    color: #ff0000; }
  #kenchiku main p b {
    font-size: 140%;
    display: block;
    line-height: 1.2; }
    #kenchiku main p b a {
      text-decoration: underline; }

#kenchiku main ul {
  max-width: 960px;
  margin: 40px auto 0; }
  #kenchiku main ul li {
    margin-bottom: 15px; }
    #kenchiku main ul li img {
      display: block;
      margin: 0 auto 5px;
      max-width: 100%; }
    #kenchiku main ul li span {
      display: block;
      font-family: "メイリオ", sans-serif;
      font-size: 14px; }
      #kenchiku main ul li span i {
        font-style: normal;
        display: block;
        color: #666; }

/* @end */
/* @group farm */
#farm {
  color: #80853f;
  font-family: "Noto Serif JP", "MS PMincho", serif; }
  #farm #main_title {
    height: auto;
    min-height: 400px;
    padding: 0;
    margin: 0;
    position: relative; }
  #farm #main_title div {
    min-height: 400px; }
    #farm #main_title div.main_title01 {
      background: url("../images/farm_head.jpg") no-repeat center center;
      background-size: cover; }
    #farm #main_title div.main_title02 {
      background: url("../images/farm_head2.jpg") no-repeat top center;
      background-size: cover; }
    #farm #main_title div.main_title03 {
      background: url("../images/farm_head3.jpg") no-repeat top center;
      background-size: cover; }
  #farm #main_title h1 {
    font-family: "ArmedLemon", serif;
    font-weight: normal;
    color: #fff;
    font-size: 40px;
    text-align: center;
    background: rgba(128, 133, 63, 0.6);
    box-sizing: border-box;
    height: 100px;
    max-width: 450px;
    padding: 5px 20px 0;
    position: absolute;
    top: 70px;
    left: 50px;
    right: auto;
    margin: 0 auto;
    text-shadow: none; }
  #farm #main_title h1 span {
    font-family: "Noto Serif JP", "MS PMincho", serif;
    font-size: 20px;
    display: block;
    font-weight: normal; }
  #farm main {
    position: relative; }
    #farm main h2 {
      color: #80853f;
      font-family: "Noto Serif JP", "MS PMincho", serif;
      font-size: 24px;
      line-height: 1.3;
      margin-bottom: 30px; }
      #farm main h2 span {
        display: block;
        font-size: 28px;
        margin-left: 10px; }
    #farm main h2 .en {
      font-family: "ArmedLemon", serif;
      font-size: 50px;
      display: block; }
    #farm main p {
      font-family: "Noto Serif JP", "MS PMincho", serif;
      font-size: 18px;
      text-align: left;
      padding: 10px;
      line-height: 1.6; }
      #farm main p.textrignt {
        text-align: right; }
    #farm main ul li {
      margin-bottom: 15px; }
      #farm main ul li img {
        margin-bottom: 5px; }
    #farm main ul.flex {
      display: flex;
      flex-direction: row; }
      #farm main ul.flex li {
        width: 50%; }
    #farm main .bg._olive {
      background: #80853f;
      color: #fff; }
  #farm section {
    padding: 40px 0; }
  #farm #farm_nav {
    background: rgba(128, 133, 63, 0.8);
    padding: 20px; }
    #farm #farm_nav nav ul li {
      padding: 5px 5px;
      margin-bottom: 0; }
      #farm #farm_nav nav ul li a {
        background: #fff;
        color: #80853f;
        display: block;
        border-radius: 5px;
        padding: 5px; }
  #farm #farm_aspara {
    padding: 0;
    margin: 0; }
    #farm #farm_aspara .flex {
      flex-direction: column; }
    #farm #farm_aspara .aspara_cont {
      padding: 30px 10px 0; }
      #farm #farm_aspara .aspara_cont .note {
        text-align: center;
        font-size: 90%; }
  #farm #farm_outline {
    padding: 40px 20px; }
    #farm #farm_outline p {
      line-height: 2;
      font-family: "ArmedLemon", serif;
      font-size: 20px;
      font-weight: bold; }
  #farm #farm_greetings {
    background: url(../images/farm_greetings_bg.svg) no-repeat right top #f5f3f2;
    background-size: 70%; }
    #farm #farm_greetings img {
      margin-bottom: 20px; }
  #farm #farm_contents {
    background: url(../images/farm_contents_bg1.svg) no-repeat left top, url(../images/farm_contents_bg2.svg) no-repeat left 10px bottom 30px;
    background-size: 40%,60%;
    padding-bottom: 100px; }
  #farm #farm_farms {
    background: url(../images/farm_farms_bg1.svg) no-repeat left top 50px, url(../images/farm_farms_bg2.svg) no-repeat right top 10px #f5f3f2;
    background-size: 50%,40%; }
    #farm #farm_farms ul {
      justify-content: center; }
      #farm #farm_farms ul li {
        padding: 5px; }
  #farm #farm_lineup {
    background: url(../images/farm_lineup_bg.svg) no-repeat right top;
    background-size: 50%; }
    #farm #farm_lineup .num {
      display: inline-block;
      font-style: normal;
      font-size: 14px;
      padding: 3px 5px;
      border: 1px solid #80853f;
      border-radius: 5px; }
    #farm #farm_lineup .name {
      display: block;
      line-height: 1.3;
      margin-bottom: 5px;
      margin-top: 5px; }
      #farm #farm_lineup .name i {
        font-style: normal;
        display: block;
        font-size: 14px;
        margin-top: 5px; }
    #farm #farm_lineup .price span {
      font-size: 14px;
      display: block; }
  #farm #farm_order .inner {
    padding: 10px; }
  #farm #farm_order h2 {
    color: #fff; }
  #farm #farm_order dl.flex {
    flex-direction: row;
    max-width: 350px;
    flex-wrap: wrap;
    margin-bottom: 15px; }
    #farm #farm_order dl.flex dt {
      border: 1px solid #fff;
      padding: 5px 10px;
      border-radius: 10px;
      width: auto;
      margin-bottom: 10px;
      margin-right: 10px; }
    #farm #farm_order dl.flex dd {
      text-align: left;
      padding-top: 7px; }
  #farm #farm_order p {
    font-size: 20px;
    text-align: center; }
    #farm #farm_order p strong {
      font-size: 40px;
      display: block;
      margin-bottom: 10px;
      letter-spacing: 5px; }
    #farm #farm_order p span {
      display: block;
      font-size: 80%;
      line-height: 1.4; }
    #farm #farm_order p img {
      margin-bottom: 10px; }
  #farm #farm_order .images {
    padding: 10px; }
  #farm .pagetop {
    display: none;
    position: fixed;
    bottom: 10px;
    right: 10px; }
    #farm .pagetop a {
      position: relative;
      display: block;
      width: 60px;
      height: 60px;
      border: 1px solid #80853f;
      background: rgba(255, 255, 255, 0.8);
      text-align: center;
      margin: 0 auto;
      border-radius: 50%; }
      #farm .pagetop a:hover {
        opacity: 0.7; }
      #farm .pagetop a::after {
        content: "";
        display: block;
        border-left: 1px solid #80853f;
        border-top: 1px solid #80853f;
        height: 20px;
        width: 20px;
        transform: rotate(45deg);
        position: absolute;
        top: 23px;
        left: 0;
        right: 0;
        margin: 0 auto; }

/* @end */
/* @group boneedz */
#boneedz #main_title {
  height: auto;
  min-height: 300px;
  background: url(../images/boneedz_head.jpg) no-repeat center center;
  background-size: cover; }
#boneedz #boneedz_lead {
  background: #e7372f; }
  #boneedz #boneedz_lead h1 {
    color: #BAA23C;
    font-family: "メイリオ", sans-serif;
    font-size: 34px;
    line-height: 1.2;
    color: #fff;
    font-weight: bold; }
  #boneedz #boneedz_lead ul {
    text-align: center; }
    #boneedz #boneedz_lead ul li {
      color: #fff;
      font-size: 24px;
      line-height: 1.4;
      margin-bottom: 10px; }
#boneedz main section {
  padding-right: 10px;
  padding-left: 10px; }
#boneedz main h3 {
  margin-bottom: 10px;
  text-align: left; }
#boneedz main p {
  text-align: left; }
#boneedz main ul {
  margin-bottom: 15px;
  text-align: left; }
#boneedz main .flex img {
  margin-bottom: 10px; }
#boneedz main table {
  margin-bottom: 25px; }
#boneedz main video {
  width: 100%;
  max-width: 600px; }
#boneedz #boneedz_machine ul {
  align-items: start; }
  #boneedz #boneedz_machine ul li {
    margin-bottom: 15px; }
    #boneedz #boneedz_machine ul li img {
      display: block; }
    #boneedz #boneedz_machine ul li span {
      display: block;
      font-size: 80%;
      line-height: 1.4; }

/* @end */
/* @group kitchencar */
#kitchencar main section {
  padding-right: 10px;
  padding-left: 10px; }
#kitchencar #main_title {
  height: auto;
  min-height: 400px;
  background: url(../images/kitchencar_head.jpg) no-repeat center center;
  background-size: cover; }
#kitchencar #kitchencar_lead h1 {
  color: #BAA23C;
  font-family: "Noto Serif JP", "MS PMincho", serif;
  font-size: 32px;
  line-height: 1.2;
  margin-bottom: 30px; }
  #kitchencar #kitchencar_lead h1 span {
    display: block;
    font-size: 28px;
    margin-left: 10px; }
#kitchencar #kitchencar_menu ul {
  border-bottom: 1px solid #ccc;
  max-width: 900px;
  margin: 0 auto 15px; }
  #kitchencar #kitchencar_menu ul li {
    text-align: left;
    font-size: 18px;
    margin-bottom: 10px;
    border-top: 1px solid #ccc;
    padding: 3px 0; }
    #kitchencar #kitchencar_menu ul li span {
      display: block;
      font-size: 14px; }
    #kitchencar #kitchencar_menu ul li em.price {
      display: block;
      text-align: right;
      font-weight: bold; }
#kitchencar #kitchencar_outline dl.flex {
  flex-direction: row;
  max-width: 900px;
  margin: 0 auto 20px;
  border-bottom: 1px solid #ccc; }
  #kitchencar #kitchencar_outline dl.flex dt {
    width: 40%;
    border-top: 1px solid #ccc;
    padding: 3px;
    text-align: left; }
  #kitchencar #kitchencar_outline dl.flex dd {
    width: 60%;
    border-top: 1px solid #ccc;
    padding: 5px;
    text-align: left; }
#kitchencar #kitchencar_outline ul.flex {
  justify-content: center;
  max-width: 900px;
  margin: 0 auto; }

/* @end */
/* @group kagaribi */
#kagaribi #main_title {
  background: #000;
  height: auto; }
  #kagaribi #main_title h1 {
    background: no-repeat;
    width: auto;
    max-width: 100%;
    position: static;
    display: block;
    margin: 0;
    padding: 0;
    height: auto; }
    #kagaribi #main_title h1 img {
      width: 100%;
      max-width: 1280px; }
#kagaribi main {
  font-family: "Noto Serif JP", "MS PMincho", serif;
  background: #000;
  color: #fff; }
  #kagaribi main section {
    padding: 20px 20px; }
  #kagaribi main h2 {
    color: #fff;
    font-size: 36px;
    padding: 20px 0; }
  #kagaribi main h3 {
    color: #fff;
    font-size: 28px;
    font-weight: normal;
    line-height: 1.4;
    text-align: left;
    margin-bottom: 15px; }
  #kagaribi main p {
    font-family: "Noto Serif JP", "MS PMincho", serif;
    text-align: left; }
  #kagaribi main a {
    color: #fff; }
    #kagaribi main a:hover {
      opacity: 0.7; }
  #kagaribi main #kagaribi_nav nav ul {
    justify-content: center; }
  #kagaribi main #kagaribi_features {
    padding: 0;
    margin: 0 auto; }
    #kagaribi main #kagaribi_features .text {
      padding: 50px 10px 10px 100px;
      position: relative; }
      #kagaribi main #kagaribi_features .text img {
        position: absolute;
        display: block;
        top: -10px;
        left: -10px; }
  #kagaribi main .kagaribi_menus {
    padding-bottom: 700px;
    background: url("../images/kagaribi_bg.webp") no-repeat center bottom;
    background-size: 200%; }
    #kagaribi main .kagaribi_menus .flex {
      margin: 0 auto;
      justify-content: center; }
    #kagaribi main .kagaribi_menus ul.note {
      text-align: left;
      font-size: 12px; }
    #kagaribi main .kagaribi_menus #kagaribi_menu {
      margin-bottom: 50px; }
      #kagaribi main .kagaribi_menus #kagaribi_menu .pdflink a {
        display: block;
        font-size: 28px;
        background: rgba(255, 255, 255, 0.7);
        color: #000;
        padding: 20px;
        position: relative; }
        #kagaribi main .kagaribi_menus #kagaribi_menu .pdflink a::after {
          width: 30px;
          height: 37px;
          display: block;
          content: "";
          background: url("../images/pdficon.svg") no-repeat center center;
          position: absolute;
          right: 20px;
          top: 25px; }
    #kagaribi main .kagaribi_menus #kagaribi_course .pdflink a {
      display: block;
      border: 1px solid #fff;
      padding: 20px;
      position: relative; }
      #kagaribi main .kagaribi_menus #kagaribi_course .pdflink a strong {
        font-size: 28px;
        display: block;
        margin-bottom: 10px; }
      #kagaribi main .kagaribi_menus #kagaribi_course .pdflink a span {
        font-size: 16px; }
      #kagaribi main .kagaribi_menus #kagaribi_course .pdflink a::after {
        width: 30px;
        height: 37px;
        display: block;
        content: "";
        background: url("../images/pdficon_w.svg") no-repeat center center;
        position: absolute;
        right: 20px;
        top: 25px; }
  #kagaribi main #kagaribi_photo .flex li {
    padding: 10px; }
  #kagaribi main #kagaribi_info .text {
    border: 1px solid #000; }
    #kagaribi main #kagaribi_info .text img {
      display: block;
      margin: 0 auto;
      margin-top: 40px; }
  #kagaribi main #kagaribi_reservation dl.flex {
    text-align: center;
    justify-content: center;
    max-width: 900px;
    margin: 0 auto 50px;
    align-items: center; }
    #kagaribi main #kagaribi_reservation dl.flex dt {
      padding: 10px;
      font-size: 22px; }
      #kagaribi main #kagaribi_reservation dl.flex dt img {
        display: inline-block;
        margin-right: 15px;
        vertical-align: -5px; }
    #kagaribi main #kagaribi_reservation dl.flex dd {
      padding: 10px;
      font-size: 36px;
      margin-bottom: 30px; }
  #kagaribi main #kagaribi_reservation .operation {
    font-size: 18px;
    text-align: center; }
    #kagaribi main #kagaribi_reservation .operation strong {
      display: block;
      border: 1px solid #ccc;
      padding: 10px 20px;
      border-radius: 10px;
      width: 100px;
      text-align: center;
      font-size: 20px;
      margin: 0 auto 15px; }
#kagaribi .pagetop {
  display: none;
  position: fixed;
  bottom: 10px;
  right: 10px; }
  #kagaribi .pagetop a {
    position: relative;
    display: block;
    width: 60px;
    height: 60px;
    border: 1px solid #80853f;
    background: rgba(255, 255, 255, 0.8);
    text-align: center;
    margin: 0 auto;
    border-radius: 50%; }
    #kagaribi .pagetop a:hover {
      opacity: 0.7; }
    #kagaribi .pagetop a::after {
      content: "";
      display: block;
      border-left: 1px solid #80853f;
      border-top: 1px solid #80853f;
      height: 20px;
      width: 20px;
      transform: rotate(45deg);
      position: absolute;
      top: 23px;
      left: 0;
      right: 0;
      margin: 0 auto; }

/* @end */
/* @group footer */
footer {
  background: #F5F3F2;
  border-top: 1px solid #BAA23C;
  font-family: "メイリオ", sans-serif;
  position: relative; }

footer #gototop a {
  position: absolute;
  display: block;
  margin: 0 auto;
  color: #fff;
  font-family: "メイリオ", sans-serif;
  font-weight: bold;
  font-size: 14px;
  line-height: 1;
  width: 100px;
  right: 20px;
  top: -50px;
  box-sizing: border-box;
  transition: all 0.3s ease-out; }
  footer #gototop a:hover {
    transform: rotate(10deg) translate(0, -5px) scale(1.05); }
    footer #gototop a:hover img {
      opacity: 1; }

footer #profile_cont {
  padding: 20px 15px; }

footer #profile_cont h2 {
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 20px; }

footer #profile_cont h2 img {
  width: 40px;
  display: block;
  margin: 0 auto; }

footer #profile_cont h2 span {
  font-family: "メイリオ", sans-serif;
  color: #333; }

footer #profile_cont p,
footer #profile_cont ul {
  text-align: left; }

footer #profile_cont p {
  font-size: 14px;
  margin-bottom: 20px;
  line-height: 1.8; }

footer #profile_cont p strong {
  display: block;
  border: 1px solid #333;
  text-align: center;
  line-height: 1;
  padding: 3px 0 1px;
  margin-bottom: 3px;
  box-sizing: border-box;
  width: 70px;
  font-size: 12px; }

footer #profile_cont p em.tel {
  color: #BAA23C;
  font-size: 18px;
  font-weight: bold;
  display: inline-block;
  margin-right: 10px; }

footer #profile_cont a i {
  color: #BAA23C; }

footer #profile_cont a.insta {
  display: block;
  margin-top: 10px;
  font-weight: bold; }
  footer #profile_cont a.insta img {
    vertical-align: middle; }

footer #profile_cont h3 {
  color: #BAA23C;
  font-size: 15px;
  text-align: left;
  font-weight: normal; }
  footer #profile_cont h3 a {
    color: #BAA23C; }

footer #profile_cont ul {
  padding-left: 1em;
  margin-bottom: 10px; }

footer #profile_cont ul li {
  padding: 3px;
  font-size: 14px; }

footer #profile_cont .right .left {
  float: left;
  width: 40%; }

footer #profile_cont .right .right {
  float: right;
  width: 60%; }

footer #lisence {
  padding: 20px;
  border-top: 1px solid #ccc; }

footer #lisence p {
  font-size: 10px;
  color: #999; }

footer .address {
  background: #BAA23C; }

footer .address p {
  padding: 20px 0;
  margin-bottom: 0; }

footer .address p small {
  color: #fff; }

/* @end */
.pcnone {
  display: block; }

.spnone {
  display: none; }

/* スマホ（調整用） */
/* @end */
@media only screen and (max-width: 768px) {
  nav#global_nav {
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 100;
    display: none; }
    nav#global_nav li ul {
      padding-left: 30px; } }
/* タブレット以上 */
@media print, screen and (min-width: 768px) {
  .left {
    float: left; }

  .right {
    float: right; }

  .flex {
    flex-wrap: wrap;
    flex-direction: row; }

  #main_title h1 {
    left: auto;
    right: 25px;
    min-width: 300px; }

  .cm_cont_flex {
    margin: 0 auto 40px;
    max-width: 1028px;
    justify-content: center;
    flex-direction: row; }

  .cm {
    padding: 15px; }

  .cm iframe {
    width: 560px;
    aspect-ratio: 16/9; }

  /* @group header */
  header #header_inner div.contact {
    position: absolute;
    right: 0;
    top: 30px; }

  header #header_inner div.contact p.contact_mail a {
    padding: 10px 20px;
    box-sizing: border-box; }

  /* @end */
  /* @group global_nav */
  nav#global_nav {
    padding: 0; }
    nav#global_nav > ul {
      flex-direction: row;
      padding: 0; }
      nav#global_nav > ul > li {
        width: 25%;
        position: relative;
        text-align: center;
        border-bottom: 10px solid rgba(0, 0, 0, 0);
        padding: 25px 5px 15px; }
        nav#global_nav > ul > li.current {
          border-bottom: 10px solid #BAA23C; }
        nav#global_nav > ul > li a {
          display: block; }
        nav#global_nav > ul > li ul {
          display: none;
          padding: 10px 0;
          background: rgba(0, 0, 0, 0.7);
          position: absolute;
          z-index: 1000;
          width: 100%;
          left: 0;
          top: 78px; }
          nav#global_nav > ul > li ul li {
            padding: 5px; }
            nav#global_nav > ul > li ul li a {
              color: #fff; }
              nav#global_nav > ul > li ul li a:hover {
                opacity: 0.7; }
            nav#global_nav > ul > li ul li.current a {
              color: #BAA23C; }
        nav#global_nav > ul > li:hover {
          background: rgba(255, 255, 255, 0.3);
          border-bottom: 10px solid #BAA23C; }
          nav#global_nav > ul > li:hover ul {
            display: block; }

  /* @end */
  /* @group top */
  #top #main_img a .txt {
    left: auto;
    right: auto; }

  #top main #notice .flex {
    display: flex;
    justify-content: space-between;
    padding: 0; }
    #top main #notice .flex div#purchasing_box {
      width: 49%; }
      #top main #notice .flex div#purchasing_box h2 {
        font-size: 26px; }
      #top main #notice .flex div#purchasing_box p strong {
        font-size: 15px; }
    #top main #notice .flex div#recruitment_box {
      width: 49%; }
      #top main #notice .flex div#recruitment_box h2 em {
        font-size: 28px;
        padding: 10px; }
      #top main #notice .flex div#recruitment_box h2 span {
        font-size: 22px; }
      #top main #notice .flex div#recruitment_box ul li {
        font-size: 15px; }
        #top main #notice .flex div#recruitment_box ul li span {
          display: inline;
          font-size: 11px; }

  #top #main_img a.company_profile .txt {
    left: 100px; }

  #top #main_img a.kaitai .txt {
    right: 100px; }

  #top #main_img a.business .txt {
    left: 100px; }

  #top #main_img a.history .txt {
    left: 100px; }

  #top #main_img a.welfare .txt {
    left: 100px; }

  #top #main_img a.marineresort {
    background: url(../images/top-marineresort.jpg) no-repeat center center;
    background-size: cover; }
    #top #main_img a.marineresort .txt {
      left: 100px; }

  #top #main_img a.kenchiku {
    background: url(../images/top-kenchiku.jpg) no-repeat center center;
    background-size: cover; }

  #top .sns.flex div {
    width: auto; }

  #top #business ul li a {
    font-size: 30px;
    top: 100px; }

  #top #business ul li.boneedz a {
    padding-top: 90px;
    font-size: 30px; }

  #top #welfare_link .welfare_link_btn {
    max-width: 960px;
    margin: 0 auto 30px; }
    #top #welfare_link .welfare_link_btn a.link_banner {
      padding: 80px 20px 80px 60%;
      font-size: 28px; }

  #top #facility_link ul.flex li {
    width: 20%; }
    #top #facility_link ul.flex li a span {
      min-height: 82px;
      font-size: 20px; }
      #top #facility_link ul.flex li a span i {
        font-size: 18px; }

  #top #feature_link {
    padding: 30px 10px; }
    #top #feature_link ul {
      max-width: 960px;
      margin: 0 auto;
      justify-content: space-between; }
      #top #feature_link ul li {
        width: 49%;
        margin-bottom: 0; }
    #top #feature_link .kaitai_link_btn a.link_banner {
      background: url("../images/kaitai_link_btn_bg.png") no-repeat left 10% center #f5f3f2;
      padding: 50px 10px 50px 50%; }
    #top #feature_link .media_link_btn a.link_banner {
      background: url("../images/media_link_btn_bg.png") no-repeat left 5% center #f5f3f2;
      padding: 50px 10px 50px 55%; }

  #top #news ul li strong {
    float: left; }

  #top #news ul li span {
    display: block;
    margin-left: 130px; }

  /* @end */
  /* @group company_profile */
  #company_profile #sdgs p {
    max-width: 1000px;
    margin: 0 auto 15px; }
  #company_profile #sdgs dl.flex {
    flex-direction: row;
    max-width: 1000px;
    margin: 0 auto; }
    #company_profile #sdgs dl.flex dt {
      width: 15%; }
    #company_profile #sdgs dl.flex dd {
      width: 85%;
      border-top: 1px solid #ccc;
      padding-top: 10px;
      margin-bottom: 5px; }
      #company_profile #sdgs dl.flex dd img {
        display: inline;
        max-width: 50%;
        float: right;
        margin-right: 15px; }
  #company_profile #sdgs ul.flex {
    flex-wrap: nowrap; }

  #company_profile #outline dl {
    max-width: 700px;
    margin: 0 auto; }

  #company_profile #outline dl dt {
    float: left;
    width: 200px; }

  #company_profile #outline dl dd {
    margin-left: 220px;
    border-top: 1px solid #ccc;
    padding-top: 15px; }

  #company_profile .flex div {
    width: 50%; }

  #company_profile #machine_list .inner {
    max-width: 960px; }

  #company_profile main #machine_list .inner div {
    box-sizing: border-box; }

  #company_profile main #machine_list .inner .left {
    width: 70%; }

  #company_profile main #machine_list .inner .right {
    padding-left: 30px;
    width: 30%; }

  #company_profile main #machine_list .inner .right ul {
    max-width: 440px; }

  #company_profile #machine_list ul li {
    float: none;
    width: auto; }

  /* @end */
  /* @group message */
  #message section .flex div {
    width: 50%; }

  /* @end */
  /* @group history */
  /* @end */
  /* @group group */
  #group main ul li img {
    float: left;
    margin: 0 30px 20px; }

  #group main span {
    margin-left: 380px; }

  /* @end */
  /* @group recruit */
  #recruit #main_title h1 {
    left: 25px;
    right: auto; }

  #recruit main dl {
    border-bottom: dotted 1px #ccc; }
    #recruit main dl dt {
      float: left;
      width: 180px; }
    #recruit main dl dd {
      margin-left: 180px;
      border-top: dotted 1px #ccc;
      padding-top: 10px; }

  #recruit main #recruitment {
    padding: 15px 20px;
    box-sizing: border-box; }
    #recruit main #recruitment ul li span {
      display: inline; }

  /* @end */
  /* @group welfare */
  #welfare main .inner ul[class^="gallery"] li {
    width: auto;
    padding-right: 5px; }
  #welfare main .inner .text_cont, #welfare main .inner .img_cont {
    width: 50%; }
  #welfare main .inner h3.black_border {
    font-size: 36px; }
  #welfare main .inner ul.apart {
    justify-content: space-between;
    flex-wrap: nowrap;
    margin-bottom: 0; }
    #welfare main .inner ul.apart li {
      margin-bottom: 0; }
  #welfare main .inner ul.gym {
    justify-content: space-between;
    flex-wrap: nowrap; }
  #welfare main .inner ul.bold li {
    font-size: 24px; }

  /* @end */
  /* @group kaitai */
  #kaitai main ul li {
    width: 25%;
    float: left;
    box-sizing: border-box;
    padding: 5px; }

  /* @end */
  /* @group doboku */
  #doboku #main_title h1 {
    left: 25px;
    right: auto; }

  #doboku main ul li {
    width: 33%;
    float: left;
    box-sizing: border-box;
    padding: 5px; }

  /* @end */
  /* @group hosou */
  #hosou main ul li {
    width: 50%;
    float: left;
    box-sizing: border-box;
    padding: 5px; }

  #hosou main .left {
    width: 35%;
    box-sizing: border-box; }

  #hosou main .right {
    width: 65%;
    box-sizing: border-box; }
    #hosou main .right p {
      padding: 20px; }

  /* @end */
  /* @group recycl */
  #recycl #main_title {
    min-height: 800px; }
  #recycl #main_title h1 {
    text-align: center;
    position: absolute;
    top: 150px; }

  #recycl main h3 {
    text-align: left;
    max-width: 960px;
    margin: 0 auto; }

  #recycl main ul.flow {
    max-width: 960px;
    margin: 0 auto; }
    #recycl main ul.flow li {
      padding: 30px; }
      #recycl main ul.flow li span strong {
        display: inline-block;
        margin-right: 10px; }
      #recycl main ul.flow li span i {
        padding-left: 55px; }
      #recycl main ul.flow li div span i {
        padding-left: 0; }
    #recycl main ul.flow li.imgright img {
      float: right;
      max-width: 50%; }
    #recycl main ul.flow li.imgright span {
      width: 50%;
      float: left;
      padding-right: 10px;
      box-sizing: border-box; }

  #recycl main ul.wood_flow li:first-child div.left {
    width: 50%;
    padding-right: 10px;
    box-sizing: border-box; }
  #recycl main ul.wood_flow li:first-child img {
    float: right;
    max-width: 50%; }

  #recycl main #recycl_sketch .sketch_img {
    max-width: 1024px;
    margin: 40px auto; }
  #recycl main #recycl_sketch ul {
    margin: 0 auto; }
    #recycl main #recycl_sketch ul li {
      width: 33%;
      float: left; }

  /* @end */
  /* @group media */
  #media #main_title h1 {
    left: 25px;
    right: auto; }

  /* @end */
  /* @group kenchiku */
  #kenchiku #main_title h1 {
    left: 25px;
    right: auto; }

  #kenchiku main ul li {
    width: 33%;
    float: left;
    box-sizing: border-box;
    padding: 5px; }

  /* @end */
  /* @group farm */
  #farm #main_title {
    min-height: 800px; }
  #farm #main_title div {
    min-height: 800px; }
  #farm #main_title h1 {
    font-size: 72px;
    text-align: center;
    height: 150px;
    max-width: 450px;
    padding: 5px 20px 0;
    position: absolute;
    top: 100px; }
  #farm main h2 {
    margin-bottom: 100px; }
  #farm main h2 .en {
    font-size: 100px; }
  #farm main p {
    font-size: 20px;
    line-height: 1.8; }
  #farm section {
    padding: 100px 0; }
  #farm #farm_nav {
    padding: 30px; }
    #farm #farm_nav nav ul {
      margin: 0 auto;
      max-width: 1280px;
      justify-content: center; }
      #farm #farm_nav nav ul li {
        width: auto; }
        #farm #farm_nav nav ul li a {
          line-height: 1.2;
          padding: 10px 10px; }
  #farm #farm_aspara .flex {
    flex-direction: row; }
  #farm #farm_aspara .aspara_catch {
    width: 50%; }
  #farm #farm_aspara .aspara_cont {
    width: 50%;
    padding: 20px 30px 0; }
    #farm #farm_aspara .aspara_cont h2 {
      width: 80%;
      margin: 0 auto 10px; }
    #farm #farm_aspara .aspara_cont p {
      padding: 0;
      font-size: 18ox;
      line-height: 1.5; }
  #farm #farm_outline {
    padding: 100px 0; }
    #farm #farm_outline p {
      text-align: center;
      font-size: 25px; }
    #farm #farm_outline img {
      margin-bottom: 20px; }
  #farm #farm_greetings {
    background: url(../images/farm_greetings_bg.svg) no-repeat right top #f5f3f2;
    background-size: 50%; }
    #farm #farm_greetings img {
      margin-bottom: 20px; }
  #farm #farm_contents {
    background: url(../images/farm_contents_bg1.svg) no-repeat left top, url(../images/farm_contents_bg2.svg) no-repeat right 10px bottom 30px;
    padding-bottom: 300px;
    background-size: 30%, 40%; }
    #farm #farm_contents img {
      margin-bottom: 10px; }
    #farm #farm_contents ul.flex li {
      width: 50%;
      text-align: left;
      font-size: 18px;
      margin-bottom: 20px; }
  #farm #farm_farms {
    background: url(../images/farm_farms_bg1.svg) no-repeat left top 100px, url(../images/farm_farms_bg2.svg) no-repeat right 30px top 30px #f5f3f2;
    background-size: 40%, 35%; }
    #farm #farm_farms ul.flex li {
      width: 33.3%;
      padding: 10px;
      font-size: 18px; }
      #farm #farm_farms ul.flex li img {
        margin-bottom: 20px; }
  #farm #farm_lineup {
    background: url(../images/farm_lineup_bg.svg) no-repeat right 50px top 50px;
    background-size: 30%; }
    #farm #farm_lineup ul.flex {
      padding-top: 100px; }
      #farm #farm_lineup ul.flex li {
        width: 33.3%; }
  #farm #farm_order .flex div {
    width: 50%;
    padding: 30px; }
    #farm #farm_order .flex div dl {
      font-size: 20px; }
    #farm #farm_order .flex div p {
      text-align: left;
      font-size: 20px; }
      #farm #farm_order .flex div p strong {
        font-size: 40px; }
      #farm #farm_order .flex div p span {
        font-size: 18px;
        line-height: 1.5; }

  /* @end */
  /* @group boneedz */
  #boneedz #main_title {
    min-height: 800px; }
  #boneedz #main_title h1 {
    text-align: center;
    position: absolute;
    top: 100px; }
  #boneedz main h3 {
    text-align: center; }
  #boneedz main p {
    text-align: center; }
  #boneedz main .flex {
    padding: 10px; }
  #boneedz #boneedz_guidance ul {
    text-align: center; }
  #boneedz #boneedz_info ul.map {
    justify-content: center;
    max-width: 1100px;
    margin: 0 auto; }
    #boneedz #boneedz_info ul.map li {
      width: 50%;
      padding: 10px; }
  #boneedz #boneedz_machine ul {
    justify-content: space-between; }
    #boneedz #boneedz_machine ul li {
      width: 33.3%;
      padding: 10px; }
  #boneedz #boneedz_other .flex {
    justify-content: center; }
    #boneedz #boneedz_other .flex ul {
      padding: 10px; }

  /* @end */
  /* @group kitchencar */
  #kitchencar #main_title {
    min-height: 800px; }
  #kitchencar #kitchencar_lead h1 {
    font-size: 40px; }
    #kitchencar #kitchencar_lead h1 span {
      font-size: 28px; }
  #kitchencar #kitchencar_outline ul.flex li {
    width: 33%; }

  /* @end */
  /* @group kagaribi */
  #kagaribi main h2 {
    padding: 20px 0 60px; }
  #kagaribi main #kagaribi_nav {
    padding: 50px 0; }
    #kagaribi main #kagaribi_nav nav ul {
      justify-content: center; }
      #kagaribi main #kagaribi_nav nav ul li {
        border-right: 1px solid #fff; }
        #kagaribi main #kagaribi_nav nav ul li a {
          display: block;
          font-size: 24px;
          padding: 0 20px;
          line-height: 1.2; }
        #kagaribi main #kagaribi_nav nav ul li:first-child {
          border-left: 1px solid #fff; }
  #kagaribi main #kagaribi_features {
    padding: 80px 0; }
    #kagaribi main #kagaribi_features .flex div {
      width: 50%; }
    #kagaribi main #kagaribi_features .flex .img img {
      width: 100%; }
    #kagaribi main #kagaribi_features .flex .text {
      padding: 60px 40px 10px 150px;
      position: relative; }
      #kagaribi main #kagaribi_features .flex .text img {
        position: absolute;
        display: block;
        top: 0;
        left: 10px; }
    #kagaribi main #kagaribi_features .features02 {
      flex-direction: row-reverse; }
  #kagaribi main .kagaribi_menus {
    padding-bottom: 130vh;
    background: url("../images/kagaribi_bg.webp") no-repeat center bottom;
    background-size: contain; }
    #kagaribi main .kagaribi_menus .flex div {
      width: 50%;
      padding: 20px; }
      #kagaribi main .kagaribi_menus .flex div h2 {
        margin: 0;
        text-align: left;
        padding: 30px 0 20px; }
      #kagaribi main .kagaribi_menus .flex div p {
        margin-bottom: 25px; }
  #kagaribi main #kagaribi_photo ul.flex li {
    width: 50%;
    padding: 10px; }
  #kagaribi main #kagaribi_info .flex div {
    width: 50%; }
    #kagaribi main #kagaribi_info .flex div.img img {
      width: 100%; }
    #kagaribi main #kagaribi_info .flex div.text {
      padding: 15px 80px; }
      #kagaribi main #kagaribi_info .flex div.text img {
        margin: 50px 0; }
  #kagaribi main #kagaribi_reservation dl.flex {
    text-align: center;
    justify-content: center;
    max-width: 900px;
    margin: 0 auto;
    align-items: center; }
    #kagaribi main #kagaribi_reservation dl.flex dt {
      padding: 0 20px 30px;
      width: 50%;
      font-size: 22px; }
    #kagaribi main #kagaribi_reservation dl.flex dd {
      padding: 0 20px 30px;
      width: 50%;
      font-size: 48px; }
  #kagaribi main #kagaribi_reservation .operation {
    font-size: 20px;
    text-align: left;
    width: 500px;
    margin: 0 auto;
    position: relative;
    padding-left: 130px; }
    #kagaribi main #kagaribi_reservation .operation strong {
      font-size: 24px;
      margin-left: 0;
      position: absolute;
      left: 0; }

  /* @end */
  /* @group footer */
  footer .inner {
    max-width: 960px; }

  footer .inner > .left {
    width: 50%; }

  footer .inner > .right {
    width: 50%;
    box-sizing: border-box;
    padding: 10px; }

  footer #profile_cont h2 {
    text-align: left; }

  footer #profile_cont h2 img {
    display: inline-block;
    margin-right: 20px;
    vertical-align: middle;
    padding-bottom: 5px; }

  footer #profile_cont h2 span {
    line-height: 1;
    display: inline-block; }

  footer #profile_cont p {
    margin-left: 60px; }

  footer #profile_cont p strong {
    display: block;
    float: left;
    margin-right: 15px; }

  footer #profile_cont p span {
    float: left; }

  footer #lisence div.inner {
    max-width: 450px;
    width: 450px; }

  /* @end */
  .pcnone {
    display: none; }

  .spnone {
    display: block; } }
/* PC 1280over */
@media only screen and (min-width: 1280px) {
  .inner {
    max-width: 1280px;
    min-width: 1280px; }

  #top #main_img a.kenchiku {
    background: url(../images/top-kenchiku.jpg) no-repeat center center #aae9f0;
    background-size: contain; }

  #company_profile #machine_list .inner {
    max-width: 1024px; }

  #company_profile #machine_list ul li {
    float: left;
    width: 50%; }

  #company_profile main #machine_list .inner .left {
    width: 55%; }

  #company_profile main #machine_list .inner .right {
    padding-left: 30px;
    width: 45%; }

  #welfare main .inner {
    max-width: 960px;
    min-width: 960px; }

  #farm #main_title h1 {
    top: 200px; }
  #farm #farm_nav nav ul li a {
    padding: 10px 30px; }
  #farm #farm_aspara .aspara_cont {
    padding: 70px 50px 0; }
    #farm #farm_aspara .aspara_cont h2 {
      width: 100%;
      margin: 0 auto 20px; }
    #farm #farm_aspara .aspara_cont p {
      padding: 20px;
      margin-bottom: 30px;
      font-size: 24px;
      line-height: 2.2; }
  #farm #farm_outline p {
    font-size: 30px; }
  #farm #farm_order p strong {
    font-size: 50px; }
  #farm #farm_order p.line img {
    margin-bottom: 10px;
    float: left;
    margin-right: 15px;
    vertical-align: middle; }
  #farm #farm_order p.line span {
    display: inline-block;
    padding-top: 35px; }

  /* @group kagaribi */
  #kagaribi main #kagaribi_features .flex .text {
    padding: 100px 40px 10px 150px;
    width: 500px; }
  #kagaribi main .kagaribi_menus {
    padding-bottom: 180vh; }

  /* @end */
  footer #lisence .inner {
    max-width: 450px;
    width: 450px;
    min-width: 450px; } }
@media print {
  body {
    width: 1280px; }

  /* 印刷時に画面と変更するスタイルを定義 */ }
