/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*, ::before, ::after { box-sizing: border-box; border-style: solid; border-width: 0; }

/* Document */
/* ============================================ */
/** 1. Correct the line height in all browsers. 2. Prevent adjustments of font size after orientation changes in iOS. 3. Remove gray overlay on links for iOS. */
html { line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ -webkit-tap-highlight-color: transparent; /* 3*/ }

/* Sections */
/* ============================================ */
/** Remove the margin in all browsers. */
body { margin: 0; }

/** Render the `main` element consistently in IE. */
main { display: block; }

/* Vertical rhythm */
/* ============================================ */
p, table, blockquote, address, pre, iframe, form, figure, dl { margin: 0; }

/* Headings */
/* ============================================ */
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; margin: 0; }

/* Lists (enumeration) */
/* ============================================ */
ul, ol { margin: 0; padding: 0; list-style: none; }

/* Lists (definition) */
/* ============================================ */
dt { font-weight: bold; }

dd { margin-left: 0; }

/* Grouping content */
/* ============================================ */
/** 1. Add the correct box sizing in Firefox. 2. Show the overflow in Edge and IE. */
hr { box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ border-top-width: 1px; margin: 0; clear: both; color: inherit; }

/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
pre { font-family: monospace, monospace; /* 1 */ font-size: inherit; /* 2 */ }

address { font-style: inherit; }

/* Text-level semantics */
/* ============================================ */
/** Remove the gray background on active links in IE 10. */
a { background-color: transparent; text-decoration: none; color: inherit; }

/** 1. Remove the bottom border in Chrome 57- 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */
abbr[title] { text-decoration: underline dotted; /* 2 */ }

/** Add the correct font weight in Chrome, Edge, and Safari. */
b, strong { font-weight: bolder; }

/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: inherit; /* 2 */ }

/** Add the correct font size in all browsers. */
small { font-size: 80%; }

/** Prevent `sub` and `sup` elements from affecting the line height in all browsers. */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sub { bottom: -0.25em; }

sup { top: -0.5em; }

/* Replaced content */
/* ============================================ */
/** Prevent vertical alignment issues. */
svg, img, embed, object, iframe { vertical-align: bottom; }

/* Forms */
/* ============================================ */
/** Reset form fields to make them styleable. 1. Make form elements stylable across systems iOS especially. 2. Inherit text-transform from parent. */
button, input, optgroup, select, textarea { -webkit-appearance: none; /* 1 */ appearance: none; vertical-align: middle; color: inherit; font: inherit; background: transparent; padding: 0; margin: 0; border-radius: 0; text-align: inherit; text-transform: inherit; /* 2 */ }

/** Correct cursors for clickable elements. */
button, [type="button"], [type="reset"], [type="submit"] { cursor: pointer; }

button:disabled, [type="button"]:disabled, [type="reset"]:disabled, [type="submit"]:disabled { cursor: default; }

/** Improve outlines for Firefox and unify style with input elements & buttons. */
:-moz-focusring { outline: auto; }

select:disabled { opacity: inherit; }

/** Remove padding */
option { padding: 0; }

/** Reset to invisible */
fieldset { margin: 0; padding: 0; min-width: 0; }

legend { padding: 0; }

/** Add the correct vertical alignment in Chrome, Firefox, and Opera. */
progress { vertical-align: baseline; }

/** Remove the default vertical scrollbar in IE 10+. */
textarea { overflow: auto; }

/** Correct the cursor style of increment and decrement buttons in Chrome. */
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }

/** Correct the outline style in Safari. */
[type="search"] { outline-offset: -2px; /* 1 */ }

/** Remove the inner padding in Chrome and Safari on macOS. */
[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

/** 1. Correct the inability to style clickable types in iOS and Safari. 2. Fix font inheritance. */
::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }

/** Fix appearance for Firefox */
[type="number"] { -moz-appearance: textfield; }

/** Clickable labels */
label[for] { cursor: pointer; }

/* Interactive */
/* ============================================ */
/* Add the correct display in Edge, IE 10+, and Firefox. */
details { display: block; }

/* Add the correct display in all browsers. */
summary { display: list-item; }

/* Remove outline for editable content. */
[contenteditable]:focus { outline: auto; }

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table { border-color: inherit; /* 1 */ border-collapse: collapse; }

caption { text-align: left; }

td, th { vertical-align: top; padding: 0; }

th { text-align: left; font-weight: bold; }

@media screen and (max-width: 768px) { .main-master .pc { display: block !important; }
  .main-master .sp { display: none !important; }
  .main-master .main-body { display: block; width: 140%; margin-left: -20%; margin-right: -20%; } }
@media screen and (max-width: 480px) { .main-master .pc { display: none !important; }
  .main-master .sp { display: block !important; }
  .main-master .main-body { width: 105%; margin-left: -2.5%; margin-right: -2.5%; } }

.inner2, .inner { font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; }
.inner2 .komidashi, .inner .komidashi { font-size: 22px; line-height: 1.6; font-feature-settings: "palt"; }
.inner2 .lead, .inner .lead { margin-top: 20px; }
@media screen and (max-width: 480px) { .inner2 .komidashi, .inner .komidashi { font-size: 5vw; } }

@media screen and (max-width: 768px) { .location-head { position: relative; z-index: 1; background: #fff; } }

#location01 { position: relative; z-index: 1; padding-bottom: 15em; }
@media screen and (max-width: 768px) { #location01 { padding-top: 5em; } }
@media screen and (max-width: 480px) { #location01 { padding-bottom: 7em; } }

.subnav-s { max-width: 400px; }
.subnav-s ul li { width: 48%; }

.loc1-layout1 { display: grid; justify-content: space-between; grid-template-columns: 46% 46%; grid-template-rows: auto 1fr; }
.loc1-layout1 li:nth-child(1) { grid-column: 1 / 2; grid-row: 1 / 2; }
.loc1-layout1 li:nth-child(1) .komidashi { margin-top: 8%; }
.loc1-layout1 li:nth-child(2) { grid-column: 2 / 3; grid-row: 1 / 3; }
.loc1-layout1 li:nth-child(3) { grid-column: 1 / 2; grid-row: 2 / 3; }
.loc1-layout1 li:nth-child(3) .loc1-img02 { text-align: right; margin-top: 4%; }
.loc1-layout1 li:nth-child(3) .loc1-img02 img { width: 70%; height: auto; max-width: 300px; }
@media screen and (max-width: 768px) { .loc1-layout1 { display: block; position: relative; }
  .loc1-layout1 li:nth-child(2) { margin-top: 6%; }
  .loc1-layout1 li:nth-child(3) { position: absolute; width: 100%; left: 0; bottom: -3%; }
  .loc1-layout1 li:nth-child(3) .loc1-img02 { text-align: left; }
  .loc1-layout1 li:nth-child(3) .loc1-img02 img { width: 35%; } }

.dete-l { font-size: 10px; }
.dete-l .name { font-size: 2.2em; line-height: 1.4; }
.dete-l .kyori { font-size: 1.1em; margin-top: 0.5em; }
.dete-l .lead { font-size: 1.4em; text-align: left; }
@media screen and (max-width: 480px) { .dete-l { font-size: 9px; text-align: center; } }

.dete-m { font-size: 10px; text-align: center; }
.dete-m .name { font-size: 1.6em; line-height: 1.4; }
.dete-m .kyori { font-size: 1.1em; margin-top: 0.5em; }
.dete-m .kyori-img { text-align: center; }
.dete-m .kyori-img img { width: 90%; height: auto; max-width: 230px; }
@media screen and (max-width: 480px) { .dete-m { font-size: 9px; } }

.loc1-list-l { display: flex; justify-content: space-between; font-size: 10px; flex-wrap: wrap; padding-top: 6rem; }
@media screen and (max-width: 480px) { .loc1-list-l { font-size: 9px; } }
.loc1-list-l li { box-sizing: border-box; }
.loc1-list-l li:nth-child(1) { width: 60%; }
.loc1-list-l li:nth-child(2) { width: 40%; padding-left: 5%; padding-right: 5%; padding-top: 5%; }
@media screen and (max-width: 480px) { .loc1-list-l { font-size: 9px; text-align: center; }
  .loc1-list-l li:nth-child(1) { width: 100%; }
  .loc1-list-l li:nth-child(2) { width: 100%; padding-top: 5%; } }

.loc1-list-m { display: flex; justify-content: space-between; font-size: 10px; flex-wrap: wrap; padding-top: 2rem; }
@media screen and (max-width: 480px) { .loc1-list-m { font-size: 9px; } }
.loc1-list-m li { margin-top: 2rem; }
.loc1-list-m li:nth-of-type(1), .loc1-list-m li:nth-of-type(2) { width: 48%; }
.loc1-list-m li:nth-of-type(3), .loc1-list-m li:nth-of-type(4), .loc1-list-m li:nth-of-type(5) { width: 32%; }
.loc1-list-m li .dete-m { margin-top: 1rem; }
@media screen and (max-width: 768px) { .loc1-list-m li:nth-of-type(3), .loc1-list-m li:nth-of-type(4), .loc1-list-m li:nth-of-type(5) { width: 48%; } }
@media screen and (max-width: 480px) { .loc1-list-m { font-size: 9px; } }

.loc1-list-s { display: flex; justify-content: flex-start; font-size: 10px; flex-wrap: wrap; padding-top: 2rem; }
@media screen and (max-width: 480px) { .loc1-list-s { font-size: 9px; } }
.loc1-list-s li { width: 23%; margin-right: 2.6%; margin-top: 2rem; }
.loc1-list-s li:nth-child(4n) { margin-right: 0; }
.loc1-list-s li .dete-m { margin-top: 1rem; }
@media screen and (max-width: 768px) { .loc1-list-s li { width: 48%; margin-right: 4%; }
  .loc1-list-s li:nth-child(2n) { margin-right: 0; } }
@media screen and (max-width: 480px) { .loc1-list-s { font-size: 9px; } }

.green-layout { background: #4b9a92; font-size: 10px; margin-top: 6em; position: relative; }
.green-layout .loc1-list-l { color: #fff; }
.green-layout .dete-l .name { display: inline-block; margin-right: 5px; }
.green-layout .dete-l .kyori { display: inline-block; text-align: left; }
.green-layout .green-inner { padding: 5em 5em 0; color: #fff; }
.green-layout .green-inner .note { margin-top: 1rem; }
.green-layout .green_photo_collage1 { display: flex; justify-content: space-between; flex-wrap: wrap; margin-top: 4em; }
.green-layout .green_photo_collage1 li { width: 33.3333%; }
.green-layout .green_photo_collage1 li:nth-of-type(1) { width: 100%; }
.green-layout .green_photo_collage1 + .loc1-list-l { padding: 2em 5em 0; }
.green-layout .green_photo_collage1 + .loc1-list-l li:nth-child(1) { width: 100%; }
.green-layout .green_photo_collage2 { display: flex; justify-content: space-between; flex-wrap: wrap; margin-top: 4em; }
.green-layout .green_photo_collage2 li:nth-of-type(1) { width: 69.95%; }
.green-layout .green_photo_collage2 li:nth-of-type(2) { width: 30.05%; }
.green-layout .green_photo_collage2 + .loc1-list-l { padding: 2em 5em 5em; position: relative; }
.green-layout .green_photo_collage2 + .loc1-list-l li:nth-child(1) { width: 80%; }
.green-layout .img_family { position: absolute; bottom: -3em; right: -3em; width: 23%; }
@media screen and (max-width: 480px) { .green-layout { font-size: 8px; }
  .green-layout .green-inner { padding: 3em 3em 0; }
  .green-layout .green_photo_collage1 + .loc1-list-l { padding: 2em 3em 5em; }
  .green-layout .green_photo_collage1 + .loc1-list-l .dete-l { text-align: left; }
  .green-layout .green_photo_collage2 + .loc1-list-l { padding: 2em 3em 5em; }
  .green-layout .green_photo_collage2 + .loc1-list-l li:nth-child(1) { width: 100%; }
  .green-layout .green_photo_collage2 + .loc1-list-l .dete-l { text-align: left; } }

.leisure { background: #fff; padding: 3em 0; margin: 6em auto 0; }
.leisure h5 { font-size: 1.5rem; }
.leisure .lead { font-size: 1.2rem; }
.leisure ul { display: flex; justify-content: space-between; flex-wrap: wrap; margin-top: 2rem; }
.leisure ul li { width: 32%; }
.leisure ul .name { font-size: 1.4rem; margin-top: 0.8rem; }
.leisure ul .kyori { font-size: 1.1rem; text-align: left; margin-top: 0.3rem; }
@media screen and (max-width: 480px) { .leisure ul li { width: 48%; margin-bottom: 2rem; }
  .leisure ul .name { font-size: 1.3rem; } }

.loc1-list-l { padding-top: 5em; }
.loc1-list-l.dete01-left li:nth-child(1), .loc1-list-l.dete01-right li:nth-child(1) { width: 54%; }
.loc1-list-l.dete01-left li:nth-child(2), .loc1-list-l.dete01-right li:nth-child(2) { width: 46%; }
.loc1-list-l.dete01-right li:nth-child(1) { order: 2; }
.loc1-list-l.dete01-right li:nth-child(2) { order: 1; }
@media screen and (max-width: 768px) { .loc1-list-l { padding-top: 4em; }
  .loc1-list-l.dete01-left, .loc1-list-l.dete01-right { display: block; }
  .loc1-list-l.dete01-left li, .loc1-list-l.dete01-right li { text-align: left; }
  .loc1-list-l.dete01-left li:nth-child(1), .loc1-list-l.dete01-right li:nth-child(1) { width: 100%; }
  .loc1-list-l.dete01-left li:nth-child(2), .loc1-list-l.dete01-right li:nth-child(2) { width: 100%; }
  .loc1-list-l.dete01-left { padding-left: 10%; }
  .loc1-list-l.dete01-right { padding-right: 10%; } }

.loc1-photo05 { width: 40%; margin-top: 3.5em; margin-left: 10%; margin-right: 50%; }
.loc1-photo05 img { margin-bottom: -30%; }
@media screen and (max-width: 480px) { .loc1-photo05 { width: 50%; margin-right: 40%; } }

#location02 { position: relative; z-index: 1; padding-top: 8em; padding-bottom: 5em; background: #fff; }
@media screen and (max-width: 768px) { #location02 { padding-top: 5em; } }

.loc2-layout1 { display: grid; justify-content: space-between; grid-template-columns: 52% 40%; grid-template-rows: auto 1fr; }
.loc2-layout1 li:nth-child(1) { grid-column: 2 / 3; grid-row: 1 / 2; }
.loc2-layout1 li:nth-child(1) .lead { margin-top: 10%; }
.loc2-layout1 li:nth-child(2) { grid-column: 1 / 2; grid-row: 1 / 3; }
.loc2-layout1 li:nth-child(3) { grid-column: 2 / 3; grid-row: 2 / 3; }
.loc2-layout1 li:nth-child(3) .loc2-img02 { text-align: right; margin-top: 4%; }
.loc2-layout1 li:nth-child(3) .loc2-img02 img { width: 80%; height: auto; margin-left: 10%; margin-right: 10%; }
@media screen and (max-width: 768px) { .loc2-layout1 { display: block; position: relative; }
  .loc2-layout1 li:nth-child(1) { text-align: center; }
  .loc2-layout1 li:nth-child(1) .img img { width: 70%; }
  .loc2-layout1 li:nth-child(1) .lead { text-align: left; margin-top: 7%; }
  .loc2-layout1 li:nth-child(2) { margin-top: 6%; }
  .loc2-layout1 li:nth-child(3) { position: absolute; width: 100%; left: 0; bottom: -3%; }
  .loc2-layout1 li:nth-child(3) .loc2-img02 { text-align: right; }
  .loc2-layout1 li:nth-child(3) .loc2-img02 img { width: 30%; margin-left: 0%; margin-right: 5%; } }

.loc1-list-l.loc2-layout2 li:nth-child(1) { order: 2; }
.loc1-list-l.loc2-layout2 li:nth-child(2) { order: 1; }
.loc1-list-l.loc2-layout2 li:nth-child(2) .kyori-img { text-align: left; margin-top: 1rem; }
.loc1-list-l.loc2-layout2 li:nth-child(2) .kyori-img img { width: 90%; height: auto; max-width: 230px; }
@media screen and (max-width: 480px) { .loc1-list-l.loc2-layout2 { display: block; }
  .loc1-list-l.loc2-layout2 li:nth-child(1) { order: 2; }
  .loc1-list-l.loc2-layout2 li:nth-child(2) { order: 1; }
  .loc1-list-l.loc2-layout2 li:nth-child(2) .kyori-img { text-align: center; }
  .loc1-list-l.loc2-layout2 li:nth-child(2) .kyori-img img { max-width: 180px; } }

#location02 .loc1-list-s { position: relative; padding-bottom: 8em; margin-bottom: 4em; }
#location02 .loc1-list-s:after { position: absolute; content: ""; height: 2px; width: 50%; background: #619e91; left: 50%; bottom: 0; transform: translateX(-50%); max-width: 180px; }

.loc2-layout3 .loc2-img04 { text-align: center; }
.loc2-layout3 .loc2-img04 img { max-width: 585px; }
.loc2-layout3 .komidashi { margin-top: 5%; }

.loc1-list-l.dete02-left, .loc1-list-l.dete02-right { justify-content: space-between; width: 90%; margin: auto; padding-top: 6em; width: 90%; max-width: 900px; margin-left: auto; margin-right: auto; font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; }
.loc1-list-l.dete02-left li:nth-child(1), .loc1-list-l.dete02-right li:nth-child(1) { width: 60%; }
.loc1-list-l.dete02-left li:nth-child(2), .loc1-list-l.dete02-right li:nth-child(2) { padding: 0; width: 35%; }
.loc1-list-l.dete02-left li:nth-child(2) .name, .loc1-list-l.dete02-right li:nth-child(2) .name { font-size: 2.7em; font-weight: 500; }
.loc1-list-l.dete02-left li:nth-child(2) .lead, .loc1-list-l.dete02-right li:nth-child(2) .lead { line-height: 2.2; margin-top: 2em; }
.loc1-list-l.dete02-right li:nth-child(1) { order: 2; }
.loc1-list-l.dete02-right li:nth-child(2) { order: 1; }
@media screen and (max-width: 768px) { .loc1-list-l { padding-top: 5em; }
  .loc1-list-l.dete02-left, .loc1-list-l.dete02-right { display: block; width: 100%; }
  .loc1-list-l.dete02-left li, .loc1-list-l.dete02-right li { text-align: left; }
  .loc1-list-l.dete02-left li:nth-child(1), .loc1-list-l.dete02-right li:nth-child(1) { width: 100%; }
  .loc1-list-l.dete02-left li:nth-child(2), .loc1-list-l.dete02-right li:nth-child(2) { width: 100%; margin-top: 3em; }
  .loc1-list-l.dete02-left { padding-left: 10%; }
  .loc1-list-l.dete02-left li:nth-child(2) { padding-right: 10%; }
  .loc1-list-l.dete02-right { padding-right: 10%; }
  .loc1-list-l.dete02-right li:nth-child(2) { padding-left: 10%; } }

.loc2-photo-map { margin: auto; max-width: 1100px; margin-top: 6em; }
@media screen and (max-width: 768px) { .loc2-photo-map .cap { bottom: 0; transform: translateY(50%); } }

.dete-l.abspphoto1, .dete-l.abspphoto2 { position: relative; }
.dete-l.abspphoto1 .img img, .dete-l.abspphoto2 .img img { width: auto; height: 4.6em; }
.dete-l.abspphoto1 .komidashi, .dete-l.abspphoto2 .komidashi { font-size: 20px; line-height: 1.8; font-feature-settings: "palt"; margin-top: 1.5em; }
.dete-l.abspphoto1 .abs-img, .dete-l.abspphoto2 .abs-img { position: absolute; z-index: 2; }
.dete-l.abspphoto1 { padding-right: 30%; }
.dete-l.abspphoto1 .abs-img { width: 32%; top: 13%; right: -18%; }
.dete-l.abspphoto1 .abs-img img { width: 100% !important; height: auto !important; }
.dete-l.abspphoto2 { padding-left: 8% !important; }
.dete-l.abspphoto2 .abs-img { width: 55%; top: 20%; left: -43%; }
.dete-l.abspphoto2 .abs-img img { width: 100% !important; height: auto !important; }
@media screen and (max-width: 1000px) { .dete-l.abspphoto1 .img img, .dete-l.abspphoto2 .img img { height: 4.7vw; }
  .dete-l.abspphoto1 .komidashi, .dete-l.abspphoto2 .komidashi { font-size: 2vw; margin-top: 1.8vw; } }
@media screen and (max-width: 768px) { .dete-l.abspphoto1 .img img, .dete-l.abspphoto2 .img img { height: 8vw; }
  .dete-l.abspphoto1 .komidashi, .dete-l.abspphoto2 .komidashi { font-size: 4vw; margin-top: 1.8vw; }
  .dete-l.abspphoto1 { padding-right: 30%; }
  .dete-l.abspphoto1 .abs-img { width: 22%; top: -90%; right: 5%; }
  .dete-l.abspphoto2 { padding-left: 38% !important; }
  .dete-l.abspphoto2 .abs-img { width: 35%; top: -20%; left: -5%; } }

#location03 { background: #eae7e1; font-size: 10px; position: relative; z-index: 1; }
#location03 .inner { padding: 7em 0; display: grid; justify-content: space-between; grid-template-columns: 46% 46%; grid-template-rows: auto auto 1fr; }
#location03 .inner .komidashi { grid-column: 1 / 2; grid-row: 1 / 2; }
#location03 .inner .img { grid-column: 2 / 3; grid-row: 1 / 4; }
#location03 .inner .lead { grid-column: 1 / 2; grid-row: 2 / 3; }
#location03 .inner .note { grid-column: 1 / 2; grid-row: 3 / 4; margin-top: 1rem; }
@media screen and (max-width: 768px) { #location03 .inner { display: block; padding: 4em 0; }
  #location03 .inner .komidashi { text-align: center; margin-bottom: 1em; } }

.life-title { text-align: center; font-family: "Oswald", sans-serif; font-optical-sizing: auto; font-weight: 500; font-style: normal; letter-spacing: 0.05em; font-size: 34px; position: relative; z-index: 1; padding: 20px 0 10px; }
@media screen and (max-width: 768px) { .life-title { font-size: 24px; padding: 20px 0 0px; } }

#pickup .pickup_ttl { max-width: 258px; margin: 0 auto; }
#pickup .inner { padding: 4rem; background: #fff; }
#pickup .komidashi { text-align: center; font-size: 2.4rem; font-weight: 500; }
#pickup .ranking { display: grid; grid-template-columns: repeat(2, 1fr); gap: 3rem 4%; margin: 2rem auto 0; }
#pickup .ranking_inner { width: 100%; padding: 0; border: 1px solid #a99f59; background: #f6f7e4; }
#pickup .ranking_ttl { background: #a99f59; }
#pickup .box { /*width: 48%;*/ padding: 1rem 3.323%; }
#pickup .note { margin-top: 5px; line-height: 1.4; }
@media screen and (max-width: 480px) { #pickup .inner { padding: 2rem; }
  #pickup .komidashi { font-size: 2rem; }
  #pickup .ranking { grid-template-columns: 1fr; } }
