/* ============================================================================
 * Base
 * ========================================================================= */
/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

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

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 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: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

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

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * 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: 1em;
  /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

/**
 * 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;
}

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

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

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * 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;
}

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

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

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

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block;
}

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

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */
template {
  display: none;
}

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none;
}

/* ----------------------------------------------------------------------------
 * Base
 * ------------------------------------------------------------------------- */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, input, button, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, main, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  font-size: 100%;
  font-style: normal;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  min-width: 320px;
  font-family: \0030d2\0030e9\0030ae\0030ce\00660e\00671d\0020\0050\0072\006f\004e\0020\0057\0036, "HiraMinProN-W3", \0048\0047\00660e\00671d\0045, \00ff2d\00ff33\0020\00ff30\00660e\00671d, "MS PMincho", \004d\0053\0020\00660e\00671d, serif;
  font-size: 1.5rem;
  color: #282828;
  text-align: left;
  line-height: 1.8;
  overflow-x: hidden;
  background: #edf0f0;
  -webkit-text-size-adjust: 100%;
}

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

li {
  list-style: none;
}

p {
  margin-top: 30px;
}

b, em, strong {
  font-weight: bold;
}

a,
button {
  color: #282828;
  /* text-decoration: none; */
  -webkit-transition: 0.3s all ease;
  transition: 0.3s all ease;
  cursor: pointer;
}

a:hover, a:focus, a:active,
button:hover,
button:focus,
button:active {
  text-decoration: none !important;
  opacity: .7;
}

a[href*="tel:"] {
  cursor: default;
  text-decoration: none;
}

a[href*="tel:"]:hover, a[href*="tel:"]:focus, a[href*="tel:"]:active {
  opacity: 1;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
  -webkit-transition: 0.3s all ease;
  transition: 0.3s all ease;
}

input,
select,
button {
  font-family: \0030d2\0030e9\0030ae\0030ce\00660e\00671d\0020\0050\0072\006f\004e\0020\0057\0036, "HiraMinProN-W3", \0048\0047\00660e\00671d\0045, \00ff2d\00ff33\0020\00ff30\00660e\00671d, "MS PMincho", \004d\0053\0020\00660e\00671d, serif;
}

input::-ms-clear, input::-ms-reveal {
  visibility: hidden;
}

.g-clearfix::after, .m-header-gnav > ul::after, .m-list-ctg::after {
  display: block;
  clear: both;
  content: '';
}

.g-hover:hover, .g-hover:focus, .g-hover:active {
  opacity: 1;
}

.g-hover:hover img, .g-hover:focus img, .g-hover:active img {
  opacity: .5;
}

/* ============================================================================
 * Layout
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * Container
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * Structure
 * --------------------------------- */
.l-container {
  overflow-x: hidden;
}

/* ----------------------------------------------------------------------------
 * Header
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * Structure
 * --------------------------------- */
.l-header-inner {
  margin: 0 auto;
  padding: 0 15px;
}

.l-header-title {
  background: #33a1db;
}

.l-header-title .l-header-inner {
  padding-top: 6px;
  padding-bottom: 6px;
}

.l-header-content {
  background: #edf0f0;
}

.l-header-content .l-header-inner {
  padding-top: 18px;
  padding-bottom: 32px;
  position: relative;
}

.l-header-hmenu {
  position: fixed;
  top: 0;
  left: -100%;
  z-index: 1001;
}

@media screen and (min-width: 768px) {
  .l-header-hmenu {
    left: 0 !important;
    position: static !important;
  }
}

@media screen and (max-width: 767px) {
	.l-header{
		width: 100%;
		    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    align-items: center;
		position: fixed;
		top: 0;
		z-index: 998;
		background: #edf0f0;
	}
  .l-header-title .l-header-inner {
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .l-header-content .l-header-inner {
    padding-top: 20px;
    padding-bottom: 25px;
  }
  .l-header-hmenu.is-active {
    width: 100%;
    height: 100%;
    margin: 0 0 0 -50px;
    padding: 0 0 0 50px;
    display: block;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
  }
  .l-header-hmenu.is-active .l-header-hmenu__bg {
    display: block;
  }
  .l-header-hmenu__content {
    position: relative;
    z-index: 1000;
    background: #fff;
  }
  .l-header-hmenu__bg {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    display: none;
    z-index: 999;
  }
	.l-header-title{
		background: #edf0f0;
	}
	.m-header-hdg{
		color: #585858;
	}
	.l-header-content{
		width: 40%;
	}
	
}

/* ------------------------------------
 * Module
 * --------------------------------- */
.m-header-hdg {
  font-family: \30D2\30E9\30AE\30CE\89D2\30B4\20\50\72\6F\20\57\33, "Hiragino Kaku Gothic Pro", \30e1\30a4\30ea\30aa, Meiryo, \FF2D\FF33\20\FF30\30B4\30B7\30C3\30AF, "MS PGothic", sans-serif;
  font-size: 1.2rem;
  color: #fff;
}

.m-header-logo {
  margin-top: 0;
}

.m-header-logo a {
  opacity: 1;
}

.m-header-hmenu {
  display: none;
}

.m-header-hmenu__close {
  display: none;
}

.m-header-gnav {
  margin: -.5em 0 0;
  font-size: 1.4rem;
  line-height: 1;
  position: absolute;
  top: 50%;
  right: 15px;
}

.m-header-gnav > ul > li {
  margin: 0 15px 0 0;
  padding: 0 15px 0 0;
  float: left;
  position: relative;
  border-right: 1px solid #a0a0a0;
}

.m-header-gnav > ul > li:last-child {
  margin-right: 0;
  padding-right: 0;
}

.m-header-gnav > ul > li.js-megadrop, .m-header-gnav > ul > li.is-current {
  cursor: pointer;
}

.m-header-gnav > ul > li.js-megadrop::after, .m-header-gnav > ul > li.is-current::after {
  width: 200px;
  height: 100%;
  padding: 20px 0;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  content: '';
}

.m-header-gnav > ul > li.js-megadrop:hover, .m-header-gnav > ul > li.js-megadrop:focus, .m-header-gnav > ul > li.js-megadrop:active, .m-header-gnav > ul > li.is-current:hover, .m-header-gnav > ul > li.is-current:focus, .m-header-gnav > ul > li.is-current:active {
  text-decoration: none;
  opacity: 1;
}

.m-header-gnav > ul > li.js-megadrop:hover > a > span::after, .m-header-gnav > ul > li.js-megadrop:focus > a > span::after, .m-header-gnav > ul > li.js-megadrop:active > a > span::after, .m-header-gnav > ul > li.is-current:hover > a > span::after, .m-header-gnav > ul > li.is-current:focus > a > span::after, .m-header-gnav > ul > li.is-current:active > a > span::after {
  width: 100%;
  left: 0;
  right: 0;
}

.m-header-gnav > ul > li.js-megadrop > a > span, .m-header-gnav > ul > li.is-current > a > span {
  position: relative;
  display: block;
}

.m-header-gnav > ul > li.js-megadrop > a > span::after, .m-header-gnav > ul > li.is-current > a > span::after {
  width: 0;
  height: 2px;
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: -8px;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-left: 0 solid #33a1db;
  border-right: 0 solid #33a1db;
  background: #33a1db;
  -webkit-transition-property: width, left, right;
  transition-property: width, left, right;
  -webkit-transition-duration: 0.20s;
  transition-duration: 0.20s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  content: '';
}

.m-header-gnav > ul > li.is-current > a > span::after {
  width: 100%;
  left: 0;
  right: 0;
}

.m-header-gnav > ul > li > a {
  text-decoration: none;
}

.m-header-gnav > ul > li > ul {
  width: 200px;
  padding: 0 20px;
  position: absolute;
  top: 40px;
  left: -70px;
  z-index: 1000;
  display: none;
  -webkit-box-shadow: 0 0 2px #ccc;
  box-shadow: 0 0 2px #ccc;
  background: #fff;
}

.m-header-gnav > ul > li > ul::before, .m-header-gnav > ul > li > ul::after {
  width: 0;
  height: 0;
  margin: 0 0 0 -5px;
  position: absolute;
  top: -7px;
  left: 50%;
  z-index: 1;
  border-style: solid;
  border-width: 0 5px 8px 5px;
  border-color: transparent transparent #fff transparent;
  content: '';
}

.m-header-gnav > ul > li > ul::after {
  top: -9px;
  z-index: 0;
  border-color: transparent transparent #eee transparent;
}

.m-header-gnav > ul > li > ul li {
  line-height: 1;
  border-bottom: 1px solid #bfbfbf;
}

.m-header-gnav > ul > li > ul li:last-child {
  border-bottom: none;
}

.m-header-gnav > ul > li > ul a {
  padding: 20px 0;
  display: block;
  text-decoration: none;
}

.m-header-gnav > ul > li > ul span {
  display: block;
  position: relative;
}

.m-header-gnav > ul > li > ul span::before {
  width: 5px;
  height: 9px;
  margin-top: -5px;
  position: absolute;
  top: 50%;
  right: 0;
  background-image: url(../img/icn_sprite.png);
  content: '';
  background-position: -123px -10px;
}

.m-header-contact {
  width: 265px;
  color: #fff;
  position: fixed;
  bottom: 20px;
  right: 0;
  z-index: 1000;
}

.m-header-contact a {
  color: #fff;
}

.m-header-contact__address, .m-header-contact__reserve {
  padding: 30px;
}

.m-header-contact__address__hdg, .m-header-contact__reserve__hdg {
  font-size: 1.4rem;
  letter-spacing: -1px;
}

.m-header-contact__address {
  background: #33a1db;
}

.m-header-contact__address__hdg {
  margin: 0 0 9px;
  text-align: center;
}

.m-header-contact__address__info {
  margin: 0 auto;
  display: table;
}

.m-header-contact__address__info__main, .m-header-contact__address__info__sub {
  line-height: 1;
  text-align: center;
}

.m-header-contact__address__info__main {
  margin: 0 0 8px;
  font-size: 2.8rem;
}

.m-header-contact__address__info__main a {
  white-space: nowrap;
  position: relative;
}

.m-header-contact__address__info__main a::before {
  width: 18px;
  height: 25px;
  padding: 0 4px 0 0;
  vertical-align: middle;
  background-image: url(../img/icn_sprite.png);
  content: '';
  position: relative;
  top: -4px;
  display: inline-block;
  background-position: -63px -10px;
}

.m-header-contact__address__info__sub > a {
  font-size: 1.2rem;
  position: relative;
  display: block;
}

.m-header-contact__address__info__sub > a::after {
  width: 100%;
  height: 1px;
  margin-top: -1px;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 0;
  border-top: 1px solid #fff;
  content: '';
}

.m-header-contact__address__info__sub > a span {
  padding: 0 10px;
  position: relative;
  z-index: 1;
  background: #33a1db;
}

.m-header-contact__address__info__sub > span {
  margin: 9px 0 0;
  font-size: 1.2rem;
  display: block;
}

.m-header-contact__reserve {
  background: #85c7e9;
}

.m-header-contact__reserve__hdg {
  font-size: 1.4rem;
}

.m-header-contact__reserve__btn {
  width: 100%;
  margin: 9px 0 0;
  display: table;
}

.m-header-contact__reserve__btn a {
  padding: 17px;
  font-size: 1.8rem;
  color: #fff;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  display: block;
  position: relative;
  background: #3772ea;
}

.m-header-contact__reserve__btn a span::after {
  width: 9px;
  height: 13px;
  margin: -7px 0 0;
  position: absolute;
  top: 50%;
  right: 10px;
  background-size: 500px 500px;
  background-position: -5px -5px;
  background-image: url(../img/icn_sprite.png);
  content: '';
}

@media screen and (max-width: 1200px) {
  .m-header-logo {
    width: 300px;
  }
  .m-header-gnav > ul > li {
    margin-right: 10px;
    padding-right: 10px;
  }
}

@media screen and (max-width: 960px) {
  .m-header-logo {
    width: 250px;
  }
  .m-header-gnav {
    font-size: 1.3rem;
  }
  .m-header-contact {
    width: 200px;
  }
  .m-header-contact__address, .m-header-contact__reserve {
    padding: 20px;
  }
  .m-header-contact__address__hdg, .m-header-contact__reserve__hdg {
    font-size: 1.2rem;
  }
  .m-header-contact__address__info__main {
    font-size: 2rem;
  }
  .m-header-contact__address__info__main a::before {
    top: -2px;
  }
  .m-header-contact__address__info__sub > a {
    font-size: 1.1rem;
  }
  .m-header-contact__address__info__sub > span {
    font-size: 1.1rem;
  }
  .m-header-contact__reserve__hdg {
    font-size: 1.2rem;
  }
  .m-header-contact__reserve__hdg br {
    display: none;
  }
  .m-header-contact__reserve__btn a {
    padding: 17px;
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 900px) {
  .m-header-logo {
    width: 200px;
  }
  .m-header-gnav {
    font-size: 1.2rem;
    right: 15px;
  }
  .m-header-gnav > ul > li {
    margin-right: 6px;
    padding-right: 6px;
  }
}

@media screen and (max-width: 767px) {
	.m-header-hdg {
		color: #585858;
	}
  .m-header-logo {
    width: inherit;
    margin: 0 auto;
    display: table;
  }
  .m-header-hmenu {
    width: 65px;
    height: 65px;
    position: fixed;
right: 15px;
    top: 5px;
    z-index: 1000;
    cursor: pointer;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
    -webkit-tap-highlight-color: transparent;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    -webkit-box-shadow: 0 0 5px #999;
    box-shadow: 0 0 5px #999;
    border: 1px solid #fff;
    border-left: none;
    border-radius: 0 3px 3px 0;
    background: #2a83b3;
    background: -webkit-gradient(linear, left top, left bottom, from(#33a1db), to(#2a83b3));
    background: linear-gradient(to bottom, #33a1db 0%, #2a83b3 100%);
  }
  .m-header-hmenu button {
    width: 63px;
    height: 63px;
    display: block;
    outline: 0;
    cursor: pointer;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
    -webkit-tap-highlight-color: transparent;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    border-radius: 0 3px 3px 0;
    border: none;
    background: #2a83b3;
    background: -webkit-gradient(linear, left top, left bottom, from(#33a1db), to(#2a83b3));
    background: linear-gradient(to bottom, #33a1db 0%, #2a83b3 100%);
  }
  .m-header-hmenu button::after {
    width: 100%;
    font-family: Arial;
    font-size: 1.1rem;
    color: #fff;
    line-height: 1;
    text-align: center;
    position: absolute;
    bottom: 8px;
    left: 0;
    content: 'MENU';
  }
  .m-header-hmenu__line {
    margin: 7px 0 7px 0;
    position: absolute;
    top: 15px;
    left: 16px;
  }
  .m-header-hmenu__line span {
    position: absolute;
    z-index: -1;
    text-indent: -999em;
  }
  .m-header-hmenu__line, .m-header-hmenu__line::before, .m-header-hmenu__line::after {
    display: block;
    width: 32px;
    height: 3px;
    background-color: #fff;
    -webkit-transition-property: background-color, -webkit-transform;
    transition-property: background-color, -webkit-transform;
    transition-property: background-color, transform;
    transition-property: background-color, transform, -webkit-transform;
    -webkit-transition-duration: 0.4s;
    transition-duration: 0.4s;
  }
  .m-header-hmenu__line::before, .m-header-hmenu__line::after {
    position: absolute;
    content: '';
  }
  .m-header-hmenu__line::before {
    top: -10px;
  }
  .m-header-hmenu__line::after {
    top: 10px;
  }
  .m-header-hmenu__close {
    width: 100%;
    padding: 30px 0;
    font-size: 1.4rem;
    color: #fff;
    line-height: 1;
    text-decoration: none !important;
    display: block;
    border: none;
    background: #33a1db;
  }
  .m-header-gnav {
    margin: 0;
    font-size: 1.9rem;
    position: static;
    background: #5cb4e2;
  }
  .m-header-gnav > ul > li {
    padding: 0 !important;
    float: none;
    border-bottom: 1px solid #33a1db;
    border-right: none;
  }
  .m-header-gnav > ul > li:last-child {
    border-bottom: none;
  }
  .m-header-gnav > ul > li.is-current:hover > a > span::after, .m-header-gnav > ul > li.is-current:focus > a > span::after, .m-header-gnav > ul > li.is-current:active > a > span::after, .m-header-gnav > ul > li.js-megadrop:hover > a > span::after, .m-header-gnav > ul > li.js-megadrop:focus > a > span::after, .m-header-gnav > ul > li.js-megadrop:active > a > span::after {
    display: none !important;
  }
  .m-header-gnav > ul > li.is-current > a > span::after {
    display: none !important;
  }
  .m-header-gnav > ul > li > a {
    padding: 25px 35px 25px 15px;
    color: #fff;
    display: block;
    position: relative;
  }






  .m-header-gnav > ul > li > a::after {
    width: 9px;
    height: 13px;
    margin: -7px 0 0;
    position: absolute;
    top: 50%;
    right: 19px;
    background-size: 500px 500px;
    background-position: -5px -5px;
    background-image: url(../img/icn_sprite.png);
    content: '';
  }
  .m-header-gnav > ul > li > ul {
    display: none !important;
  }
  .m-header-contact {
    width: 100%;
    position: static;
  }
  .m-header-contact__address, .m-header-contact__reserve {
    padding: 30px 15px;
  }
  .m-header-contact__address__hdg, .m-header-contact__reserve__hdg {
    font-size: 1.3rem;
  }
  .m-header-contact__address__hdg br {
    display: none;
  }
  .m-header-contact__reserve__hdg {
    font-size: 1.3rem;
    text-align: center;
  }
  .m-header-contact__reserve__hdg br {
    display: block;
  }
}

/* ----------------------------------------------------------------------------
 * Footer
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * Structure
 * --------------------------------- */
.l-footer-inner {
  max-width: 1170px;
  margin: 0 auto;
  padding: 0 15px;
}

.l-footer-contact {
  padding: 80px 0;
  background: #fff;
}

.l-footer-aside {
  background: #edf0f0;
}

.l-footer-nav {
  background: #33a1db;
}

.l-footer-nav a {
  text-decoration: none;
}

.l-footer-info {
  padding: 33px 0 49px;
  background: #fff;
}

.l-footer-credit {
  background: #fff;
}

@media screen and (max-width: 767px) {
  .l-footer-info {
    padding: 20px 0 35px;
  }
}

/* ------------------------------------
 * Module
 * --------------------------------- */
.m-footer-contact__hdg {
  font-size: 1.8rem;
  line-height: 1.2;
  text-align: center;
}

.m-footer-contact__list {
  width: 100%;
  margin: 42px 0 0;
  display: table;
  table-layout: fixed;
}

.m-footer-contact__list li {
  width: 50%;
  padding: 0 20px;
  text-align: center;
  vertical-align: middle;
  display: table-cell;
  border-right: 1px solid #282828;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.m-footer-contact__list li:last-child {
  border-right: none;
}

.m-footer-contact__address {
  margin: 0 auto;
  display: table;
}

.m-footer-contact__address__main, .m-footer-contact__address__sub {
  line-height: 1;
}

.m-footer-contact__address__main {
  margin: 0 0 13px;
  font-size: 4.8rem;
}

.m-footer-contact__address__main a {
  position: relative;
}

.m-footer-contact__address__main a::before {
  width: 29px;
  height: 40px;
  padding: 0 7px 0 0;
  background-image: url(../img/icn_sprite.png);
  content: '';
  display: inline-block;
  background-position: -10px -82px;
}

.m-footer-contact__address__sub > a {
  font-size: 2rem;
  position: relative;
  display: block;
}

.m-footer-contact__address__sub > a::after {
  width: 100%;
  height: 1px;
  margin-top: -1px;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 0;
  border-top: 1px solid #282828;
  content: '';
}

.m-footer-contact__address__sub > a span {
  padding: 0 20px;
  position: relative;
  z-index: 1;
  background: #fff;
}

.m-footer-contact__address__sub > span {
  margin: 14px 0 0;
  font-size: 1.4rem;
  display: block;
}

.m-footer-contact__reserve {
  font-size: 1.4rem;
}

.m-footer-contact__reserve__btn {
  width: 205px;
  margin: 18px auto 0;
  display: table;
}

.m-footer-contact__reserve__btn[data-type="wide"] {
  max-width: 370px;
  width: 100%;
  text-align: center;
}

.m-footer-contact__reserve__btn a {
  padding: 17px 10px;
  font-size: 1.8rem;
  color: #fff;
  line-height: 1;
  text-decoration: none;
  display: block;
  position: relative;
  background: #3772ea;
}

.m-footer-contact__reserve__btn a span::after {
  width: 9px;
  height: 13px;
  margin: -7px 0 0;
  position: absolute;
  top: 50%;
  right: 10px;
  background-size: 500px 500px;
  background-position: -5px -5px;
  background-image: url(../img/icn_sprite.png);
  content: '';
}

.m-footer-bnr {
  margin: 0 0 0 -16px;
  padding: 80px 0;
  overflow: hidden;
}

.m-footer-bnr li {
  width: 25%;
  padding: 16px 0 0 16px;
  float: left;
}

.m-footer-bnr li:nth-child(-n+4) {
  padding-top: 0;
}

.m-footer-nav {
  margin: 0 auto;
  padding: 23px 0;
  text-align: center;
  display: table;
}

.m-footer-nav li {
  padding: 0 30px 0 0;
  font-size: 1.4rem;
  color: #fff;
  display: inline-block;
  position: relative;
}

.m-footer-nav li::after {
  position: absolute;
  top: 0;
  right: 7px;
  content: '\00ff0f';
}

.m-footer-nav li:last-child {
  padding-right: 0;
}

.m-footer-nav li:last-child::after {
  display: none;
}

.m-footer-nav a {
  color: #fff;
}

.m-footer-logo {
  max-width: 440px;
  margin: 0 auto;
}

.m-footer-address {
  margin: 38px auto 0;
  display: table;
  table-layout: fixed;
}

.m-footer-address__main, .m-footer-address__sub {
  display: table-cell;
  vertical-align: middle;
}

.m-footer-address__main {
  font-size: 3.2rem;
}

.m-footer-address__main a {
  padding: 0 0 0 24px;
  position: relative;
}

.m-footer-address__main a::before {
  width: 17px;
  height: 23px;
  margin: -11px 0 0;
  position: absolute;
  top: 50%;
  left: 0;
  background-image: url(../img/icn_sprite.png);
  content: '';
  background-position: -36px -10px;
}

.m-footer-address__sub {
  padding: 0 0 0 15px;
  font-size: 1.3rem;
  line-height: 1.3;
}

.m-footer-address__txt {
  margin-top: 0;
  font-size: 1.4rem;
  text-align: center;
}

.m-footer-social {
  margin: 46px auto 41px;
  display: table;
}

.m-footer-social li {
  padding: 0 13px 0 0;
  display: table-cell;
}

.m-footer-social li:last-child {
  padding-right: 0;
}

.m-footer-social span {
  text-indent: -999em;
  position: absolute;
  z-index: -1;
}

.m-footer-social__fb a, .m-footer-social__tw a, .m-footer-social__line a {
  width: 48px;
  height: 48px;
  position: relative;
  display: block;
}

.m-footer-social__fb a::after, .m-footer-social__tw a::after, .m-footer-social__line a::after {
  width: 48px;
  height: 48px;
  background-image: url(../img/icn_sprite.png);
  content: '';
  position: absolute;
  top: 0;
  left: 0;
}

.m-footer-social__fb a::after {
  background-position: -138px -10px;
}

.m-footer-social__tw a::after {
  background-position: -196px -10px;
}

.m-footer-social__line a::after {
  background-position: -254px -10px;
}

.m-footer-txt-access {
  margin: 12px 0 0;
  font-size: 1.4rem;
  text-align: center;
}

.m-footer-txt-access a {
  text-decoration: underline;
}

.m-footer-txt-access em {
  font-weight: normal;
  display: block;
}

.m-footer-gmap {
  width: 100%;
  min-height: 460px;
}

.m-footer-copy {
  padding: 20px 0;
  font-size: 1.2rem;
  line-height: 1;
  text-align: center;
  display: block;
}

@media screen and (max-width: 960px) {
  .m-footer-contact__address__main {
    font-size: 4rem;
  }
}

@media screen and (max-width: 767px) {
  .m-footer-contact__hdg {
    font-size: 1.6rem;
  }
  .m-footer-contact__list {
    width: 100%;
    margin: 42px 0 0;
    display: block;
  }
  .m-footer-contact__list li {
    width: 100%;
    margin: 35px 0 0;
    padding: 0;
    display: block;
    border-right: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .m-footer-contact__list li:first-child {
    margin-top: 0;
  }
  .m-footer-contact__reserve {
    font-size: 1.4rem;
  }
  .m-footer-contact__reserve__btn {
    width: 100%;
    margin: 18px auto 0;
    display: table;
  }
  .m-footer-contact__reserve__btn a span {
    position: relative;
  }
  .m-footer-contact__reserve__btn a span::after {
    right: -25px;
  }
  .m-footer-bnr {
    margin: 0 auto;
    display: table;
  }
  .m-footer-bnr li {
    width: 100%;
    max-width: 274px;
    padding: 10px 0 0;
    float: none;
  }
  .m-footer-bnr li:nth-child(-n+4) {
    padding-top: 10px;
  }
  .m-footer-bnr li:first-child {
    padding-top: 0;
  }
  .m-footer-nav {
    margin: 0 -15px;
    padding: 0;
    text-align: left;
    display: block;
  }
  .m-footer-nav li {
    padding: 0;
    line-height: 1;
    display: block;
    border-bottom: 1px solid #99d0ed;
  }
  .m-footer-nav li::after {
    width: 9px;
    height: 13px;
    margin: -7px 0 0;
    position: absolute;
    top: 50%;
    right: 15px;
    background-size: 500px 500px;
    background-position: -5px -5px;
    background-image: url(../img/icn_sprite.png);
    content: '';
  }
  .m-footer-nav li:last-child {
    border-bottom: none;
  }
  .m-footer-nav li:last-child::after {
    display: block;
  }
  .m-footer-nav a {
    padding: 14px 30px 14px 15px;
    display: block;
    text-decoration: none;
  }
  .m-footer-address {
    margin-top: 8px;
  }
  .m-footer-address__main, .m-footer-address__sub {
    text-align: center;
    display: block;
  }
  .m-footer-address__main {
    font-size: 2.8rem;
  }
  .m-footer-address__sub {
    padding: 0;
    font-size: 1.2rem;
  }
  .m-footer-address__txt {
    margin-top: 25px;
    font-size: 1.4rem;
  }
  .m-footer-social {
    margin-top: 26px;
    margin-bottom: 26px;
  }
  .m-footer-txt-access {
    font-size: 1.4rem;
    text-align: center;
  }
  .m-footer-txt-access em {
    font-weight: normal;
    display: block;
  }
  .m-footer-copy {
    padding: 15px 0;
  }
}

/* ----------------------------------------------------------------------------
 * MainContents
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * Content
 * --------------------------------- */
.l-content-inner {
  max-width: 1170px;
  margin: 120px auto 0;
  padding: 0 15px;
}

.l-content-inner > *:first-child {
  margin-top: 0 !important;
}

.l-content-head--sp {
  display: none;
}

.l-content-body[data-type="other"] {
  padding: 20px 0;
  margin-bottom: 100px;
  position: relative;
}

.l-content-body[data-type="other"]::before {
  width: 534px;
  height: 421px;
  position: absolute;
  top: 150px;
  right: 15px;
  z-index: -1;
  background: url(../img/bg_grid_01.png) 0 0 no-repeat;
  background-size: contain;
  content: '';
}

/* footer
----------------------------------------------------*/
.footer-cta {
  position: fixed;
  bottom: 0px;
  padding: 0;
  width: 100%;
  background: #33a1db;
  z-index: 100;
}

.contact-menu {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 auto;
  width: 95%;
  max-width: 1200px;
  background: #fff;
}
.contact-menu div {
  height: 60px;
  line-height: 60px;
  text-align: center;
  font-size: 18px;
  font-weight: 400;
  color: #fff;
  border-left: solid 2px #fff;
  box-sizing: border-box;
  transition: opacity 0.3s ease;
  background: #33a1db;
}
.contact-menu div:hover {
  opacity: 0.6;
}
.contact-menu div a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  color: #fff;
  text-decoration: none;
	font-weight: 600;
}
.contact-menu .line {
  width: 20%;
  background: #06c755 url(../img/common/arrow_right.png) no-repeat 96% center;
  background-size: 30px;
}
.contact-menu .line a:before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  margin-right: 5px;
  background: url(../img/common/fixed_line_icon.png) no-repeat;
  -webkit-background-size: 20px;
  background-size: 20px;
}
.contact-menu .reserve {
  width: 20%;
  background: #3772ea url(../img/common/arrow_right.png) no-repeat 96% center;
  background-size: 30px;
}
.contact-menu .reserve a:before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  margin-right: 5px;
  background: url(../img/common/fixed_reserve_icon.png) no-repeat;
  -webkit-background-size: 20px;
  background-size: 20px;
}
.reserve__label {
  font-size: 15px;
  height: 24px;
  position: absolute;
  top: -15px;
  background: #fff;
  color: #3772ea;;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2px 9px;
  border: 1px solid #3772ea;
  border-radius: 3px;
  font-weight: bold;
}
.contact-menu .contact {
width: 20%;
  background: #33a1db url(../img/common/arrow_right.png) no-repeat 96% center;
  background-size: 30px;
}
.contact-menu .contact a:before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  margin-right: 5px;
  background: url(../img/common/fixed_contact_icon.png) no-repeat;
  -webkit-background-size: 20px;
  background-size: 20px;
}
.contact-menu .tel {
  border-right: solid 2px #fff;
  font-size: 22px;
  position: relative;
  width: 40%;
}
.contact-menu .tel a:before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  margin-right: 5px;
  background: url(../img/common/fixed_tel_icon.png) no-repeat;
  -webkit-background-size: 20px;
  background-size: 20px;
}
.contact-menu .tel img {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.tel__caption {
  align-items: center;
  display: flex;
  justify-content: center;
  margin-left: 10px;
  /*   position: absolute;
  bottom: -18px; */
  font-size: 12px;
}

.tel__label {
  font-size: 15px;
  height: 24px;
  position: absolute;
  top: -15px;
  background: #fff;
  color: #33a1db;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2px 9px;
  border: 1px solid #33a1db;
  border-radius: 3px;
  font-weight: bold;
}

.pc {
    display: block;
}

.sp {
    display: none;
}

@media only screen and (max-width: 767px) {
	    .pc {
        display: none;
    }
	
	    .sp {
        display: block;
    }
  .footer-cta {
    padding: 0px 0 5px;
    background: #fff;
  }

  .contact-menu {
    width: 100%;
  }
  .contact-menu div {
    height: 60px;
    font-size: 13px;
  }
  .contact-menu .line {
    width: 25%;
    background-size: 20px;
    border-left: none;
  }
  .contact-menu .reserve {
    width: 25%;
    background-size: 20px;
    border-left: none;
  }
  .contact-menu .contact {
    width: 25%;
    background-size: 20px;
  }
  .contact-menu .tel {
    width: 25%;
    font-size: 13px;
    background: #fff;
    border: solid 2px #33a1db;
    box-sizing: border-box;
  }
  .contact-menu .tel img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
  }
  .tel__label {
    line-height: 1;
    padding: 5px;
    font-size: 13px;
    top: -20px;
    background-color: #33a1db;
    color: #fff;
	  height: 30px;
  }

  .reserve__label {
    line-height: 1;
    padding: 1px 1px;
    font-size: 13px;
  }

  .contact-menu .contact,
  .contact-menu .reserve,
  .contact-menu .line {
    background-image: none;
  }
  .contact-menu div a {
    flex-direction: column;
    line-height: 1.2;
  }
  .contact-menu div.tel a {
    color: #33a1db;
  }
  .contact-menu .tel a:before {
    background: url(../img/common/fixed_tel_icon_blue.png) no-repeat;
  }
  .tel__caption {
    position: relative;
    bottom: 0;color: #3772ea;
    width: 100%;
    font-size: 13px;
  }
}

@media screen and (max-width: 767px) {
	.l-content{
		margin-top: 80px;
	}
  .l-content-inner {
    margin-top:30px;
  }
  .l-content-head--sp {
    display: block;
  }
  .l-content-head--sp p {
    margin: 20px 0 30px;
    padding: 0 15px;
    font-size: 1.3rem;
  }
  .l-content-head--sp .m-content-head-info {
    width: 100%;
    margin: 0;
    display: table;
    table-layout: fixed;
	background: #fff;
  }
  .l-content-head--sp .m-content-head-info.is-fixed {
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 10000;
  }
	
	.l-content-head--sp .m-content-head-info.is-flex {
		display: flex;
		align-items: center;
		justify-content: center;
  }
  .l-content-head--sp .m-content-head-info__content {
    width: 50%;
    padding: 10px 0 10px;
    font-size: 1rem;
    color: #fff;
    letter-spacing: -1px;
    text-align: center;
    position: relative;
    display: table-cell;
  }
	.l-content-head--sp .m-content-head-info__content img{
		max-width: 80%;
	}
  .l-content-head--sp .m-content-head-info__content span::before {
    margin: 0 auto;
    background-image: url(../img/icn_sprite.png);
    content: '';
    position: relative;
    display: block;
  }
  .l-content-head--sp .m-content-head-info__content[data-type="tel"] {
/*     background: #33a1db; */
  }
  .l-content-head--sp .m-content-head-info__content[data-type="tel"] span::before {
    width: 28px;
    height: 40px;
    top: -5px;
    background-position: -10px -162px;
  }
  .l-content-head--sp .m-content-head-info__content[data-type="mail"] {
/*     background: #85c7e9; */
    text-decoration: none;
  }
  .l-content-head--sp .m-content-head-info__content[data-type="mail"] span::before {
    width: 32px;
    height: 21px;
    top: -10px;
    background-position: -10px -132px;
  }
  .l-content-body[data-type="other"] {
    padding: 20px 0;
  }
  .l-content-body[data-type="other"]::before {
    right: -140px;
  }
}

/* ============================================================================
 * Module
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * Section
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * ModuleTitle
 * --------------------------------- */
/* ----------------------------------------------------------------------------
 * Box
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * Form
 * --------------------------------- */
.m-box-form {
  margin: 60px 0 0;
  padding: 60px 80px;
  background: #f6f8f8;
}

.m-box-form > *:first-child {
  margin-top: 0 !important;
}

.m-box-form input[type="text"] {
  width: 100%;
  height: 40px;
  padding: 0 10px;
  line-height: 40px;
  border: none;
  background: #fff;
}

.m-box-form textarea {
  width: 100%;
  height: 80px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  resize: vertical;
  border: none;
  background: #fff;
}

@media screen and (max-width: 767px) {
  .m-box-form {
    padding: 10px;
  }
}

/* ------------------------------------
 * CheckBox
 * --------------------------------- */
.m-box-check {
  margin: 40px 0;
  padding: 24px;
  text-align: center;
  background: #e2eef4;
}

.m-box-check > *:first-child {
  margin-top: 0 !important;
}

.m-box-check label {
  font-size: 1.4rem;
}

.m-box-check input {
  margin: 0 10px 0 0;
  top: -1px;
  position: relative;
}

.m-box-check a{
  text-decoration: underline;
}

@media screen and (max-width: 767px) {
  .m-box-check {
    margin-bottom: 20px;
    font-size: 1.3rem;
  }
  .m-box-check label {
    font-size: 1.3rem;
  }
}

/* ------------------------------------
 * ContactBox
 * --------------------------------- */
.m-box-contact {
  margin: 0 0 60px;
  border-top: 1px solid #b3c0ce;
  border-bottom: 1px solid #b3c0ce;
}

.m-box-contact__content {
  padding: 40px 0 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.m-box-contact__item {
  width: 50%;
  padding-right: 60px;
  border-right: 1px solid #282828;
}

.m-box-contact__item:last-child {
  padding-right: 0;
  padding-left: 60px;
  border-right: none;
}

.m-box-contact__item__ttl, .m-box-contact__item__txt {
  margin-top: 0;
  font-size: 1.8rem;
  text-align: center;
}

.m-box-contact__item__ttl {
  margin: 0 auto 10px;
  padding: 3px 60px;
  border: 1px solid #b3c0ce;
  display: table;
}

.m-box-contact__item__address {
  font-size: 5.2rem;
  text-align: center;
  line-height: 1;
}

.m-box-contact__item__address a {
  position: relative;
}

.m-box-contact__item__address a::before {
  width: 29px;
  height: 40px;
  padding: 0 7px 0 0;
  background-image: url(../img/icn_sprite.png);
  content: '';
  display: inline-block;
  background-position: -10px -82px;
}

.m-box-contact__ttl {
  margin-top: -1em;
  font-size: 1.8rem;
  text-align: center;
}

.m-box-contact__ttl em {
  padding: 0 15px;
  background: #edf0f0;
}

@media screen and (max-width: 767px) {
  .m-box-contact__content {
    padding: 40px 0 40px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .m-box-contact__item {
    width: 100%;
    padding-right: 0;
    border-right: none;
  }
  .m-box-contact__item:last-child {
    margin: 10px 0 0;
    padding-left: 0;
  }
  .m-box-contact__item__ttl, .m-box-contact__item__txt {
    font-size: 1.6rem;
  }
  .m-box-contact__item__address {
    font-size: 3.2rem;
  }
  .m-box-contact__ttl {
    font-size: 1.6rem;
  }
}

/* ----------------------------------------------------------------------------
 * Grid
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * Grid
 * --------------------------------- */
.m-grid__content > *:first-child {
  margin-top: 0 !important;
}

.m-grid__inner {
  padding: 0 30px 30px;
  /*height: 100%;*/
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #fff;
}

.m-grid__inner > *:first-child {
  margin-top: 0 !important;
}

.m-grid__inner > a {
  width: 100%;
  text-decoration: none;
  display: block;
}

.m-grid__inner > a > * {
  margin-top: 0;
}

.m-grid__inner > a > *:first-child {
  margin-top: 0 !important;
}

.m-grid__figure {
  margin: 30px 0 0;
}

.m-grid__figure[data-type="main"] {
  margin: 0 -30px 30px;
  position: relative;
}

.m-grid__figure[data-type="main"]::after {
  width: 0;
  height: 0;
  margin: 0 0 0 -12px;
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  border-width: 0 12px 16px 12px;
  border-color: transparent transparent #fff transparent;
  content: '';
}

.m-grid__ttl {
  margin: 0 0 15px;
  font-size: 1.6rem;
  line-height: 1.4;
}

.m-grid__txt {
  margin: 0 0 15px;
  padding: 0 0 15px;
  line-height: 1.4;
  border-bottom: 1px solid #b3c0ce;
}

.m-grid__bnr + * {
  margin-top: 20px;
  font-size: 1.4rem;
}

.m-grid__date {
  font-size: 1.2rem;
}

.m-grid__date time {
  font-style: italic;
}

.m-grid__label {
  margin: 0 0 0 10px;
  padding: 3px 10px;
  font-weight: normal;
  background: #b3c0ce;
}

.m-grid[data-col="2"] {
  margin: 0 0 0 -60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.m-grid[data-col="2"] .m-grid__content {
  width: 50%;
  margin: 60px 0 0;
  padding: 0 0 0 60px;
}

.m-grid[data-col="2"] .m-grid__content:nth-child(-n+2) {
  margin-top: 0;
}

.m-grid[data-col="3"] {
  margin: 0 0 0 -60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.m-grid[data-col="3"] .m-grid__content {
  width: 33.33333%;
  padding: 0 0 0 60px;
}

@media screen and (max-width: 960px) {
  .m-grid__figure {
    margin: 15px auto 0;
    display: table;
  }
  .m-grid__figure[data-type="main"] {
    display: block;
  }
  .m-grid__figure[data-type="main"] img {
    width: 100%;
  }
  .m-grid__bnr {
    margin: 0 auto;
    display: table;
  }
  .m-grid[data-col="2"], .m-grid[data-col="3"] {
    margin: 0;
  }
  .m-grid[data-col="2"] .m-grid__content, .m-grid[data-col="3"] .m-grid__content {
    width: 100%;
    margin: 50px 0 0;
    padding: 0;
  }
  .m-grid[data-col="2"] .m-grid__content:first-child, .m-grid[data-col="3"] .m-grid__content:first-child {
    margin-top: 0;
  }
  .m-grid[data-col="2"] .m-grid__content:nth-child(-n+2) {
    margin-top: 50px;
  }
  .m-grid[data-col="2"] .m-grid__content:first-child {
    margin-top: 0;
  }
}

/* ------------------------------------
 * SkinGrid
 * --------------------------------- */
.m-grid-skin {
  margin: 0 0 0 -60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.m-grid-skin__content {
  width: 33.33333%;
  margin: 80px 0 0;
  padding: 0 0 0 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.m-grid-skin__content:nth-child(-n+3) {
  margin-top: 0;
}

.m-grid-skin__content > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.m-grid-skin__body {
  margin: 30px 0 0;
  order: 2;
  width: 100%;
}

.m-grid-skin__body > * {
  margin: 20px 0 0;
}

.m-grid-skin__body > *:first-child {
  margin-top: 0;
}

.m-grid-skin__figure {
  order: 1;
}

@media screen and (max-width: 767px) {
  .m-grid-skin {
    margin: 0;
  }
  .m-grid-skin__content {
    width: 100%;
    margin: 50px 0 0;
    padding-left: 0;
  }
  .m-grid-skin__content:nth-child(-n+3) {
    margin-top: 50px;
  }
  .m-grid-skin__content:first-child {
    margin-top: 0;
  }
  .m-grid-skin__body, .m-grid-skin__figure {
    width: 100%;
  }
  .m-grid-skin__figure {
    text-align: center;
  }
}
/* ----------------------------------------------------------------------------
 * Card
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * Card
 * --------------------------------- */
.m-card {
  margin: 0 0 0 -20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.m-card__wrapper {
  padding-bottom: 120px;
  border-bottom: 1px dotted #999;
}

.m-card[data-type="main"] .m-card__inner, .m-card[data-type="lead"] .m-card__inner {
  position: relative;
}

.m-card[data-type="main"] .m-card__inner::after, .m-card[data-type="lead"] .m-card__inner::after {
  width: 100%;
  height: 100%;
  padding: 0 0 0 1000%;
  margin: 0 0 0 -1000%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background: #fff;
  content: '';
}

.m-card[data-type="main"] {
  margin-bottom: 115px;
  padding-bottom: 80px;
  padding-top: 80px;
}

.m-card[data-type="main"] .m-card__inner {
  height: 100%;
  padding: 0 40px 0 0;
}

.m-card[data-type="main"] .m-card__inner::after {
  left: 235px;
  margin-top: -80px;
  padding-bottom: 160px;
}

.m-card[data-type="comment"] {
  margin: 120px 0 120px -60px;
  padding: 140px 0 0;
  position: relative;
}

.m-card[data-type="comment"]::after {
  width: 100%;
  height: 80%;
  margin: 0 -1000% 0;
  padding: 0 1000% 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background: #f6f8f8;
  content: '';
}

.m-card[data-type="comment"] .m-card__body, .m-card[data-type="comment"] .m-card__figure {
  width: 50%;
  padding: 0 0 0 60px;
}

.m-card[data-type="comment"] .m-card__body > *:first-child, .m-card[data-type="comment"] .m-card__figure > *:first-child {
  margin-top: 0 !important;
}

.m-card[data-type="comment"] .m-card__body {
  margin-top: -65px;
}

.m-card[data-type="comment"] .m-card__body .m-media-figure {
  margin-top: 40px;
}

.m-card__body, .m-card__figure {
  width: 50%;
  padding: 0 0 0 20px;
}

.m-card__body > *:first-child, .m-card__figure > *:first-child {
  margin-top: 0 !important;
}

.m-card__inner {
  padding: 60px;
  background: #fff;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  jusity-content: center;
}

.m-card__inner > *:first-child {
  margin-top: 0 !important;
}

.m-card[data-type="flex"] {
  margin-bottom:30px;
  margin-left: 0;
  display: block;
  overflow: hidden;
}

.m-card[data-type="flex"] .m-card__body, .m-card[data-type="flex"] .m-card__figure {
  width: inherit;
  padding: 0;
}

.m-card[data-type="flex"] .m-card__body {
  padding: 0 20px 0 0;
  overflow: hidden;
}

.m-card[data-type="flex"] .m-card__figure {
  float: right;
}

.m-card[data-type="flex-dir"] {
  margin-left: 0;
  display: block;
  overflow: hidden;
}

.m-card[data-type="flex-dir"] .m-card__body, .m-card[data-type="flex-dir"] .m-card__figure {
  width: inherit;
  padding: 0;
}

.m-card[data-type="flex-dir"] .m-card__body {
  padding: 0 0 0 20px;
  overflow: hidden;
}

.m-card[data-type="flex-dir"] .m-card__figure {
  max-width: 60%;
  float: left;
}

@media screen and (max-width: 767px) {
  .m-card {
    margin: 0;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .m-card__body, .m-card__figure {
    width: 100%;
    padding: 0;
  }
  .m-card__body {
    margin: 15px 0 0;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
  .m-card__figure {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    text-align: center;
  }
  .m-card__inner {
    padding: 30px;
  }
  .m-card[data-type="main"] .m-card__inner, .m-card[data-type="lead"] .m-card__inner {
    position: relative;
  }
  .m-card[data-type="main"] .m-card__inner::after, .m-card[data-type="lead"] .m-card__inner::after {
    display: none;
  }
  .m-card[data-type="main"] {
    padding: 0;
  }
  .m-card[data-type="main"] .m-card__inner {
    margin: 0 -15px;
    padding: 80px 15px 0;
    background: #ffffff;
    background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#edf0f0));
    background: linear-gradient(to bottom, #ffffff 0%, #edf0f0 100%);
  }
  .m-card[data-type="main"] .m-card__inner::after {
    display: none;
  }
  .m-card[data-type="main"] .m-card__figure {
    margin: 60px 0 0;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
  .m-card[data-type="main"] .m-card__body {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
  .m-card[data-type="comment"] {
    margin: 120px 0 120px -60px;
    padding: 60px 0 0;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .m-card[data-type="comment"]::after {
    background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#edf0f0));
    background: linear-gradient(to bottom, #ffffff 0%, #edf0f0 100%);
  }
  .m-card[data-type="comment"] .m-card__body, .m-card[data-type="comment"] .m-card__figure {
    width: 100%;
  }
  .m-card[data-type="comment"] .m-card__body {
    margin-top: 0;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
  .m-card[data-type="comment"] .m-card__figure {
    margin: 45px 0 0;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
  .m-card[data-type="flex"], .m-card[data-type="flex-dir"] {
    margin-left: 0;
    display: block;
  }
  .m-card[data-type="flex"] .m-card__body, .m-card[data-type="flex"] .m-card__figure, .m-card[data-type="flex-dir"] .m-card__body, .m-card[data-type="flex-dir"] .m-card__figure {
    width: 100%;
  }
  .m-card[data-type="flex"] .m-card__body, .m-card[data-type="flex-dir"] .m-card__body {
    padding: 0;
  }
  .m-card[data-type="flex"] .m-card__figure, .m-card[data-type="flex-dir"] .m-card__figure {
    max-width: 100%;
    margin: 0 auto;
    float: none;
  }
}

/* ------------------------------------
* Card
* --------------------------------- */
.m-card-profile {
  margin: 120px 0 0;
  position: relative;
}

.m-card-profile.is-active {
  height: auto !important;
}

.m-card-profile[data-type="ar"] {
  text-align: right;
}

.m-card-profile[data-type="ar"] .m-card-profile__body {
  text-align: left;
  right: initial;
  left: 0;
}

.m-card-profile[data-type="ar"] .m-card-profile__body::after {
  margin: 0 0 0 -100%;
}

.m-card-profile[data-type="ar"] .m-card-profile__figure {
  padding-bottom: 0;
}

.m-card-profile__hdg--lv2 {
  margin: 0 0 30px;
  font-size: 2.2rem;
  line-height: 1.6;
}

.m-card-profile__hdg--lv2 span {
  font-size: 1.6rem;
  display: block;
}

.m-card-profile__hdg--lv2 span strong{
  font-size: 140%;
  font-weight: normal;
}

.m-card-profile__hdg--lv3 {
  font-size: 2rem;
}

.m-card-profile__tbl th, .m-card-profile__tbl td {
  font-weight: normal;
  vertical-align: top;
}

.m-card-profile__tbl th{
  min-width: 60px;
  text-align: left;
}

.m-card-profile__tbl td {
  padding-left: 10px;
}

.m-card-profile__def {
  padding: 0 0 0 140px;
  position: relative;
}

.m-card-profile__def dt {
  padding: 16px 30px;
  font-size: 1.4rem;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
  border: 1px solid #b3c0ce;
}

.m-card-profile__def dd {
  padding: 0 2px 0 0;
  font-size: 1.5rem;
  display: inline;
}

.m-card-profile__def dd::after {
  padding: 0 0 0 5px;
  content: '\00ff0f';
}

.m-card-profile__def dd:last-child {
  padding-right: 0;
}

.m-card-profile__def dd:last-child::after {
  display: none;
}

.m-card-profile__body {
  width: 50%;
  padding: 55px 50px;
  position: absolute;
  top: -60px;
  right: 0;
}

.m-card-profile__figure {
  padding-bottom: 65px;
}

.m-card-profile__body__inner {
  position: relative;
  z-index: 1;
}

.m-card-profile__body::after {
  width: 200%;
  height: 100%;
  margin: 0 -100% 0 0%;
  padding: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  opacity: .7;
  background: #fff;
  content: '';
}

@media screen and (max-width: 767px) {
  .m-card-profile {
    margin-top: 60px;
    height: auto !important;
  }
  .m-card-profile__body {
    width: 100%;
    padding: 25px 20px;
    top: 0;
    position: relative;
    background: #fff;
  }
  .m-card-profile__body::after {
    display: none;
  }
  .m-card-profile__figure {
    padding-bottom: 0;
  }
  .m-card-profile__figure img {
    width: 100%;
  }
  .m-card-profile__hdg--lv2 {
    margin-bottom: 10px;
  }
  .m-card-profile__def {
    margin: 0 0 20px;
    padding-left: 0;
  }
  .m-card-profile__def dt {
    margin: 0 0 10px;
    padding: 8px 15px;
    position: static;
    display: table;
  }
  .m-card-profile__tbl tbody {
    width: 100%;
    overflow: hidden;
  }
  .m-card-profile__tbl tr, .m-card-profile__tbl th, .m-card-profile__tbl td {
    width: 100%;
    float: left;
    display: block;
  }
  .m-card-profile__tbl td {
    padding-left: 0;
    margin-bottom: 15px;
  }
  .m-card-profile__tbl tr:last-child td {
    margin-bottom: 0;
  }
}
/* ------------------------------------
 * AccessCard
 * --------------------------------- */
.m-card-access {
  margin: 0 0 0 -40px;
  overflow: hidden;
}

.m-card-access__figure, .m-card-access__body {
  width: 50%;
  padding: 0 0 0 40px;
  float: left;
}

.m-card-access__figure img {
  width: 100%;
}

.m-card-access__figure .m-link {
  margin: 10px 0 0 auto;
  display: table;
}

.m-card-access__body > * {
  margin-top: 30px;
}

.m-card-access__body > *:first-child {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .m-card-access {
    margin: 0;
  }
  .m-card-access__figure, .m-card-access__body {
    width: 100%;
    padding-left: 0;
    float: none;
  }
  .m-card-access__body {
    margin: 20px 0 0;
  }
  .m-card-access__body > * {
    margin-top: 15px;
  }
}

/* ------------------------------------
 * MessageCard
 * --------------------------------- */
.m-card-message__content {
  margin: 0 0 150px -60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.m-card-message__content:nth-child(even) .m-card-message__figure {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.m-card-message__content:nth-child(even) .m-card-message__body {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.m-card-message__content:last-child {
  margin-bottom: 70px;
}

.m-card-message__figure, .m-card-message__body {
  width: 50%;
  padding: 0 0 0 60px;
}

.m-card-message__figure {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.m-card-message__figure__inner {
  position: relative;
}

.m-card-message__body {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.m-card-message__body > * {
  margin-top: 30px;
}

.m-card-message__body > *:first-child {
  margin-top: 0;
}

.m-card-message__body .m-hdg-lv4 {
  margin: 0 0 20px;
}

.m-card-message__body .m-hdg-lv4 + * {
  margin-top: 20px !important;
}

.m-card-message__name {
  min-width: 230px;
  margin: 0;
  padding: 35px;
  display: table;
  position: absolute;
  bottom: -70px;
  right: -40px;
  z-index: 1;
}

.m-card-message__name::after {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  opacity: .7;
  background: #fff;
  content: '';
}

.m-card-message__name > * {
  margin-top: 0 !important;
}

.m-card-message__name p {
  margin: 0 auto;
  display: table;
}

.m-card-message__name em {
  font-size: 1.8rem;
  font-weight: normal;
}

@media screen and (max-width: 767px) {
  .m-card-message__content {
    margin: 0 0 80px 0;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .m-card-message__content:nth-child(even) .m-card-message__figure {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
  .m-card-message__content:nth-child(even) .m-card-message__body {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
  .m-card-message__content:last-child {
    margin-bottom: 20px;
  }
  .m-card-message__figure, .m-card-message__body {
    width: 100%;
    padding-left: 0;
  }
  .m-card-message__figure {
    margin: 20px 0 0;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
  .m-card-message__figure img {
    width: 100%;
  }
  .m-card-message__body {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
  .m-card-message__body > * {
    margin-top: 20px;
  }
  .m-card-message__name {
    padding: 15px;
    bottom: -40px;
  }
}

/* ------------------------------------
 * ImgCard
 * --------------------------------- */
.m-card-img {
  margin: 50px 0 0 -60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.m-card-img__figure, .m-card-img__body {
  width: 50%;
  padding: 0 0 0 60px;
}

.m-card-img__body > *:first-child {
  margin-top: 0;
}

.m-card-img__figure__list {
  margin: 0 0 0 -20px;
  overflow: hidden;
}

.m-card-img__figure__list li {
  width: 50%;
  padding: 20px 0 0 20px;
  float: left;
}

.m-card-img__figure__list li:nth-child(-n+2) {
  padding-top: 0;
}

@media screen and (max-width: 767px) {
  .m-card-img {
    margin: 30px 0 0 0;
    display: block;
  }
  .m-card-img__figure, .m-card-img__body {
    width: auto;
    padding: 0;
  }
  .m-card-img__figure {
    margin: 30px auto 0;
    display: table;
  }
  .m-card-img__figure__list {
    padding: 0;
    display: table;
    text-align: center;
  }
  .m-card-img__figure__list img {
    width: 100%;
  }
}

/* ------------------------------------
 * ModuleTitle
 * --------------------------------- */
/* ----------------------------------------------------------------------------
 * Table
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * Table
 * --------------------------------- */
.m-tbl[data-type="form"] {
  margin-top: 40px;
}

.m-tbl[data-type="form"] table {
  border: none;
}

.m-tbl[data-type="form"] table th, .m-tbl[data-type="form"] table td {
  padding: 30px 0;
  font-size: 1.4rem;
  text-align: left;
  vertical-align: top;
  border: none;
  border-top: 1px solid #cdcdcd;
}

.m-tbl[data-type="form"] table th {
  background: transparent;
}

.m-tbl[data-type="form"] table th span {
  margin: 0 0 0 13px;
  padding: 4px 10px;
  font-size: 1.3rem;
  color: #a40000;
  line-height: 1;
  display: inline-block;
  border: 1px solid #a40000;
}

.m-tbl[data-type="form"] table td {
  padding-left: 20px;
}

.m-tbl[data-type="form"] table tr:first-child th, .m-tbl[data-type="form"] table tr:first-child td {
  padding-top: 0;
  border-top: none;
}

.m-tbl[data-type="form"] table tr:last-child th, .m-tbl[data-type="form"] table tr:last-child td {
  padding-bottom: 0;
}

.m-tbl[data-type="bdn"] {
  margin-top: 40px;
}

.m-tbl[data-type="bdn"] table {
  border: none;
}

.m-tbl[data-type="bdn"] table th, .m-tbl[data-type="bdn"] table td {
  padding: 10px 20px;
  font-size: 1.4rem;
  text-align: left;
  border-right: none;
}

.m-tbl[data-type="bdn"] table th:first-child, .m-tbl[data-type="bdn"] table td:first-child {
  border-left: none;
}

.m-tbl[data-type="bdn"] table .m-list-bullet li,
.m-tbl[data-type="bdn"] table .m-list-notes li {
  margin-top: 0;
  font-size: 1.4rem;
}

.m-tbl[data-type="nth"] table thead th:nth-child(even) {
  background: #d2dfed;
}

.m-tbl[data-type="nth"] table tbody th {
  background: #c4ced8;
}

.m-tbl table {
	display: block;
  width: 100%;
  border: 1px solid #a0a0a0;
  border-collapse: collapse;
}

.m-tbl table th, .m-tbl table td {
  padding: 10px;
  font-weight: normal;
  text-align: center;
  border: 1px solid #a0a0a0;
  border-collapse: collapse;
}

.m-tbl table thead th {
  background: #b3c0ce;
}

.m-tbl table tbody th {
  background: #dae4ee;
}

.m-tbl ul.form-name {
  width: 100%;
  overflow: hidden;
}
.m-tbl ul.form-name li {
    width: calc(50% - 20px);
    margin-left: 10px;
    float: left;
}
.m-tbl ul.form-name li:first-child {
    margin-left: 0;
}

@media screen and (max-width: 767px) {
  .m-tbl[data-type="form"] table tbody {
    overflow: hidden;
	  display: block;
	  width: 100%;
  }
  .m-tbl[data-type="form"] table tr, .m-tbl[data-type="form"] table th, .m-tbl[data-type="form"] table td {
    width: 100%;
    font-size: 1.2rem !important;
    float: left;
    display: block;
    border: none;
  }
  .m-tbl[data-type="form"] table th {
    border: none;
    padding-top: 0;
    padding-bottom: 10px;
  }
  .m-tbl[data-type="form"] table td {
    padding-top: 0;
    padding-left: 0;
  }
  .m-tbl[data-type="form"] table tr:last-child th {
    padding-bottom: 10px;
  }
  .m-tbl[data-type="bdn"] table {
    border-bottom: 1px solid #a0a0a0;
  }
  .m-tbl[data-type="bdn"] table tbody {
    overflow: hidden;
  }
  .m-tbl[data-type="bdn"] table tr, .m-tbl[data-type="bdn"] table th, .m-tbl[data-type="bdn"] table td {
    width: 100%;
    float: left;
    display: block;
    border: none;
  }
  .m-tbl[data-type="bdn"] table th {
    border-top: 1px solid #a0a0a0;
    border-bottom: 1px solid #a0a0a0;
  }
}

/* ------------------------------------
 * ModuleTitle
 * --------------------------------- */
/* ----------------------------------------------------------------------------
 * Heading
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * HeadingLevel1
 * --------------------------------- */
.m-hdg-lv1 {
  padding: 20px 0;
  font-size: 2.4rem;
  line-height: 1;
  color: #fff;
  text-align: left;
  background: url(../img/bg_hdg_lv1.png) left center;
  background-size: cover;
}

.m-hdg-lv1 .m-hdg {
  max-width: 1170px;
  margin: 0 auto;
  padding: 0 15px;
}

@media screen and (max-width: 767px) {
  .m-hdg-lv1 {
    padding: 10px 0;
  }
}

/* ------------------------------------
 * HeadingLevel2
 * --------------------------------- */
.m-hdg-lv2 {
  margin: 100px 0 80px;
  font-size: 3.6rem;
  line-height: 1.2;
  text-align: center;
}

.m-hdg-lv2[data-type="menu"] {
  margin-bottom: 65px;
}

.m-hdg-lv2[data-type="article"] {
  margin: 0 0 80px;
  font-size: 1.5rem;
  text-align: left;
}

.m-hdg-lv2[data-type="article"] .m-hdg {
  margin: 0 0 26px;
  font-size: 2.8rem;
}

.m-hdg-lv2[data-type="article"] .m-hdg__date {
  margin-top: 0;
  font-size: 1.4rem;
}

.m-hdg-lv2[data-type="article"] .m-hdg__date time {
  font-style: italic;
}

.m-hdg-lv2[data-type="article"] .m-hdg__label {
  margin: 0 0 0 18px;
  padding: 3px 10px;
  font-size: 1.2rem;
  vertical-align: top;
  /*background: #b3c0ce;*/
}

.m-hdg-lv2[data-type="sym"] {
  margin: 0 0 40px;
  padding: 0 0 0 27px;
  font-size: 2.2rem;
  line-height: 1.2;
  text-align: left;
  position: relative;
}

.m-hdg-lv2[data-type="sym"] + * {
  margin-top: 40px !important;
}

.m-hdg-lv2[data-type="sym"]::before {
  width: 9px;
  height: 20px;
  margin-top: -10px;
  position: absolute;
  top: 50%;
  left: 0;
  background-image: url(../img/icn_sprite.png);
  content: '';
  background-position: -109px -10px;
}

@media screen and (max-width: 767px) {
  .m-hdg-lv2 {
    font-size: 2.4rem;
    margin: 80px 0 60px;
  }
  .m-hdg-lv2[data-type="menu"] {
    margin-bottom: 60px;
  }
  .m-hdg-lv2[data-type="article"] {
    margin-bottom: 60px;
    font-size: 1.5rem;
  }
  .m-hdg-lv2[data-type="article"] .m-hdg {
    font-size: 2.4rem;
    line-height: 1.3;
  }
}

/* ------------------------------------
 * HeadingLevel3
 * --------------------------------- */
.m-hdg-lv3 {
  margin: 80px 0 40px;
  padding: 16px 0;
  font-size: 1.8rem;
  line-height: 1.2;
  background: #fff;
}

.m-hdg-lv3 span {
  padding: 6px 16px 5px;
  display: block;
  border-left: 4px solid #33a1db;
}

.m-hdg-lv3 + * {
  margin-top: 40px !important;
}

@media screen and (max-width: 767px) {
  .m-hdg-lv3 {
    margin: 60px 0 30px;
  }
  .m-hdg-lv3 + * {
    margin-top: 30px !important;
  }
}

/* ------------------------------------
 * HeadingLevel4
 * --------------------------------- */
.m-hdg-lv4 {
  margin: 60px 0 25px;
  padding: 0 0 9px;
  font-size: 1.6rem;
  line-height: 1.2;
  border-bottom: 1px solid #b3c0ce;
}

.m-hdg-lv4 a{
  text-decoration:none;
}

.m-hdg-lv4 + * {
  margin-top: 25px !important;
}

.m-hdg-lv4[data-size="l"] {
  font-size: 2rem;
}

.m-hdg-lv4[data-type="bdn"] {
  margin: 70px 0 30px;
  padding: 0;
  font-size: 2.2rem;
  border: none;
}

/* ------------------------------------
* HeadingLeve_4_2
* --------------------------------- */
.m-hdg-lv4_2 {
  margin: 25px 0 25px;
  padding: 0 0 9px;
  font-size: 1.6rem;
  line-height: 1.2;
  border-bottom: 1px solid #b3c0ce;
}

.m-hdg-lv4_2 a{
  text-decoration:none;
}

.m-hdg-lv4_2 + * {
  margin-top: 25px !important;
}

.m-hdg-lv4_2[data-size="l"] {
  font-size: 2rem;
}

.m-hdg-lv4_2[data-type="bdn"] {
  margin: 70px 0 30px;
  padding: 0;
  font-size: 2.2rem;
  border: none;
}



@media screen and (max-width: 767px) {
  .m-hdg-lv4 {
    margin-top: 40px;
  }
  .m-hdg-lv4[data-type="bdn"] {
    margin-top: 60px;
  }
}

/* ----------------------------------------------------------------------------
 * Text
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * Date
 * --------------------------------- */
.m-txt-date {
  margin: 80px 0 0;
  text-align: right;
}

@media screen and (max-width: 767px) {
  .m-txt-date {
    margin: 60px 0 0;
    text-align: right;
  }
}

/* ------------------------------------
 * Em
 * --------------------------------- */
.m-txt-em {
  margin: 80px 0 0;
  padding: 0 0 0 1em;
  font-weight: bold;
  position: relative;
}

.m-txt-em::before {
  position: absolute;
  top: 0;
  left: 0;
  content: '\0025a0';
}

.m-txt-em + * {
  margin-top: 40px !important;
}

@media screen and (max-width: 767px) {
  .m-txt-em {
    margin-top: 60px;
  }
}

/* ------------------------------------
 * LeadText
 * --------------------------------- */
.m-txt-lead {
  font-size: 2.2rem;
  line-height: 1.6;
}

.m-txt-lead em {
  font-weight: normal;
}

.m-txt-lead + * {
  margin-top: 20px !important;
}

.m-txt-lead[data-type="ac"] {
  text-align: center;
}

.m-txt-lead[data-type="ac"] + * {
  margin-top: 70px !important;
}

@media screen and (max-width: 767px) {
  .m-txt-lead[data-type="ac"] br {
    display: none;
  }
  .m-txt-lead[data-type="ac"] + * {
    margin-top: 50px !important;
  }
}

/* ------------------------------------
 * LeadTextTop
 * --------------------------------- */
.m-txt-lead-main {
  padding: 70px 0;
  font-size: 2.2rem;
  text-align: center;
  background: #edf0f0;
}

.m-txt-lead-main__inner {
  max-width: 1170px;
  margin: 0 auto;
  padding: 0 15px;
}

.m-txt-lead-main__inner > *:first-child {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .m-txt-lead-main {
    font-size: 1.9rem;
  }
}

/* ------------------------------------
 * CompleteText
 * --------------------------------- */
.m-txt-complete {
  margin: 0 0 20px;
  font-size: 2rem;
}

.m-txt-complete + * {
  margin-top: 20px;
}

/* ------------------------------------
 * ModuleTitle
 * --------------------------------- */
/* ----------------------------------------------------------------------------
 * Link
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * Link
 * --------------------------------- */
.m-link {
  text-decoration: underline;
}

.m-link span {
  position: relative;
}

.m-link span::before {
  width: 5px;
  height: 9px;
  margin-top: -5px;
  position: absolute;
  top: 50%;
  left: -12px;
  background-image: url(../img/icn_sprite.png);
  content: '';
  background-position: -123px -10px;
}

/* ------------------------------------
 * NextLink
 * --------------------------------- */
.m-link-next {
  margin: 100px 0 0;
  text-align: center;
  display: block;
}

.m-link-next[data-type="blk"] a {
  color: #282828;
}

.m-link-next[data-type="blk"] a::before, .m-link-next[data-type="blk"] a::after {
  color: #282828;
}

.m-link-next a {
  color: #33a1db;
  text-decoration: none;
}

.m-link-next a::before {
  color: #33a1db;
  content: '\00ff0d';
}

.m-link-next a::after {
  position: relative;
  left: 0;
  -webkit-transition: .3s all ease;
  transition: .3s all ease;
  color: #33a1db;
  content: '\002192';
}

.m-link-next a:hover::after, .m-link-next a:focus::after, .m-link-next a:active::after {
  left: 5px;
}

.m-link-next span {
  padding: 0 10px;
}

.m-link-next[data-size="l"], .m-link-next[data-size="lac"] {
  margin: 50px 0 0;
  font-size: 1.8rem;
  text-align: left;
}

.m-link-next[data-size="l"] a::before, .m-link-next[data-size="l"] a::after, .m-link-next[data-size="lac"] a::before, .m-link-next[data-size="lac"] a::after {
  font-weight: bold;
}

.m-link-next[data-size="lac"] {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .m-link-next {
    margin-top: 80px;
  }
}

/* ------------------------------------
 * ReturnLink
 * --------------------------------- */
.m-link-return {
  margin-top: 0;
}

.m-link-return a {
  padding: 33px 0;
  line-height: 1;
  text-decoration: none;
  text-align: center;
  display: block;
  background: #b3c0ce;
}

/* ------------------------------------
 * Tab
 * --------------------------------- */
.m-tab {
  margin: 0 0 -20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.m-tab li {
  margin: 0 30px 20px 0;
  font-size: 1.6rem;
  line-height: 1;
  text-align: center;
}

.m-tab li:last-child {
  margin-right: 0;
}

.m-tab a {
  padding: 0 13px 14px;
  text-decoration: none;
  display: block;
  border-bottom: 2px solid #282828;
}

.m-tab a.is-current {
  border-bottom-color: #33a1db;
}

@media screen and (max-width: 767px) {
  .m-tab {
    margin-left: -20px;
  }
  .m-tab li {
    width: 50%;
    padding: 0 0 0 20px;
    margin-right: 0;
  }
}

/* ------------------------------------
 * ModuleTitle
 * --------------------------------- */
/* ----------------------------------------------------------------------------
 * Button
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * ModuleTitle
 * --------------------------------- */
.m-btn,
.m-btn-back{
  width: 205px;
  height: 50px;
  color: #fff;
  line-height: 50px;
  border: none;
  text-align: center;
  display: block;
  text-decoration: none;
  background: #3772ea;
  position: relative;
	cursor: pointer;
}

.m-btn:hover{
	opacity: 0.8
}

a.m-btn {
  color: #3772ea;
  border: 1px solid #3772ea;
  background: #fff;
}

.m-btn-back {
  color: #3772ea;
  border: 1px solid #3772ea;
  background: #fff;
}

a.m-btn::before,
.m-btn-back::before{
  width: 8px;
  height: 13px;
  margin: -7px 0 0;
  background-image: url(../img/icn_sprite.png);
  content: '';
  position: absolute;
  top: 50%;
  left: 10px;
  background-position: -110px -36px;
}

button.m-btn::after,
input[type="submit"].m-btn::after{
  width: 8px;
  height: 13px;
  margin: -7px 0 0;
  background-image: url(../img/icn_sprite.png);
  content: '';
  position: absolute;
  top: 50%;
  right: 10px;
  background-position: -90px -28px;
}

button.m-btn[disabled] {
  cursor: default;
  opacity: 1;
  background: #ccc;
}

@media screen and (max-width: 767px) {
  .m-btn {
    width: 100%;
    text-align: center;
  }
  .mw_wp_form_input ul.m-list-btn li:first-child{
    display:none;
  }

  .mw_wp_form_confirm .m-btn,
  .mw_wp_form_confirm .m-btn-back{
    width: 100%;
    height: 50px;
    margin-right:2%;

  }
}

/* ------------------------------------
 * ModuleTitle
 * --------------------------------- */
.m-btn-link {
  width: 100%;
  max-width: 250px;
  margin: 25px auto 0;
  display: table;
}

.m-btn-link a {
  width: 100%;
  padding: 2px;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 2px solid #90c8e5;
  text-decoration: none;
}

.m-btn-link a > span {
  width: 100%;
  padding: 8px 30px 8px 15px;
  position: relative;
  display: block;
  text-align: center;
  border: 1px solid #90c8e5;
}

.m-btn-link a > span::after {
  width: 5px;
  height: 9px;
  position: relative;
  right: -14px;
  top: -1px;
  background-image: url(../img/icn_sprite.png);
  content: '';
  display: inline-block;
  background-position: -123px -10px;
}

.m-btn-link a > span span {
  margin: 0 10px 0 0;
  padding: 3px 5px;
  font-size: 1rem;
  color: #fff;
  line-height: 1;
  position: relative;
  top: -1px;
  background: #282828;
}

@media screen and (max-width: 767px) {
  .m-btn-link {
    width: 100%;
    max-width: 100%;
  }
}

/* ----------------------------------------------------------------------------
 * Icon
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * Blank
 * --------------------------------- */
.m-icn-blank {
  margin: -4px 0 0 5px;
  display: inline-block;
  vertical-align: middle;
}

/* ------------------------------------
 * ModuleTitle
 * --------------------------------- */
/* ----------------------------------------------------------------------------
 * Image
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * ModuleTitle
 * --------------------------------- */
/* ----------------------------------------------------------------------------
 * Media
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * Figure
 * --------------------------------- */
.m-media-intro {
  margin: 0 -15px;
}

.m-media-intro__figure--pc {
  display: block;
}

.m-media-intro__figure--sp {
  display: none;
}

.m-media-intro .m-link-next {
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .m-media-intro__figure--pc {
    display: none;
  }
  .m-media-intro__figure--sp {
    display: block;
  }
  .m-media-intro .m-link-next {
    margin-top: 50px;
  }
}

/* ------------------------------------
 * Figure
 * --------------------------------- */
.m-media-figure {
  margin: 30px auto 0;
  display: table;
}

/* ------------------------------------
 * Movie
 * --------------------------------- */
.m-media-movie {
  max-width: 690px;
  margin: 60px auto 0;
  display: block;
}

.m-media-movie__inner {
  width: 100%;
  padding-top: 56.25%;
  position: relative;
}

.m-media-movie img, .m-media-movie iframe, .m-media-movie object, .m-media-movie embed {
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  top: 0;
  right: 0;
  border: none;
}

@media screen and (max-width: 767px) {
  .m-media-movie {
    margin-top: 40px;
  }
}

/* ------------------------------------
 * Este
 * --------------------------------- */
.m-media-este {
  width: 100%;
  /*min-height: 320px;*/
  margin: 120px 0 0;
  /*background: url(../img/bg_top_foot.jpg) center center no-repeat;
  background-size: cover;*/
}

.m-media-este__inner {
  width: 100%;
 /* height: 320px;*/
  /*max-width: 1170px;*/
  margin: 0 auto;
  /*padding: 0 15px 0;*/
  padding:0;
  display: table;
}

.m-media-este__content {
  display: table-cell;
  vertical-align: middle;
}

/*add 20171016 */
.m-media-este__content--sp{
  display:none;
}


.m-media-este__hdg {
  margin: 0 0 28px;
  font-size: 2.8rem;
  line-height: 1;
  color: #33a1db;
}

.m-media-este__hdg__sub {
  margin: 0 0 28px;
  padding: 3px;
  font-size: 1.4rem;
  color: #282828;
  display: table;
  border: 2px solid #8fc7e5;
}

.m-media-este__hdg__sub span {
  padding: 8px 12px;
  display: block;
  border: 1px solid #8fc7e5;
}

.m-media-este__txt {
  margin-top: 0;
}

.m-media-este__txt a {
  position: relative;
  text-decoration: none;
}

.m-media-este__txt a::after {
  position: absolute;
  right: -40px;
  color: #33a1db;
  content: '\002192';
}

@media screen and (max-width: 767px) {
  .m-media-este {
    width:100%;
    margin-top: 60px;
    /*
    background: url(../img/bg_top_foot_sp.jpg) center left no-repeat;
    background-size: cover;
    */
  }

  .m-media-este__content{
    display:none;
  }

  .m-media-este__content--sp{
    display:block;
    width:100%;
  }

  .m-media-este__content--sp img{
    width:100%;
  }

}

/* ------------------------------------
 * ModuleTitle
 * --------------------------------- */
/* ----------------------------------------------------------------------------
 * List
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * OrderList
 * --------------------------------- */
.m-list-order {
  margin: 80px 0 0;
}

.m-list-order li {
  margin: 5px 0 0;
  padding: 0 0 0 1.5em;
  position: relative;
}

.m-list-order li:first-child {
  margin-top: 0;
}

.m-list-order__sym {
  position: absolute;
  top: 0;
  left: 0;
}

@media screen and (max-width: 767px) {
  .m-list-order {
    margin-top: 60px;
  }
}

/* ------------------------------------
 * CircleList
 * --------------------------------- */
.m-list-circle {
  margin: 80px 0 0;
}

.m-list-circle[data-type="bd"] {
  padding: 16px 0;
  border-top: 1px solid #b3c0ce;
  border-bottom: 1px solid #b3c0ce;
}

.m-list-circle li {
  margin: 5px 0 0;
  padding: 0 0 0 1em;
  position: relative;
}

.m-list-circle li::before {
  position: absolute;
  top: 0;
  left: 0;
  content: '\0025cf';
}

.m-list-circle li:first-child {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .m-list-circle {
    margin-top: 60px;
  }
}

/* ------------------------------------
 * NotesList
 * --------------------------------- */
.m-list-notes li {
  margin-top: 3px;
  padding: 0 0 0 1em;
  font-size: 1.2rem;
  position: relative;
}

.m-list-notes li:first-child {
  margin-top: 0;
}

.m-list-notes__sym {
  position: absolute;
  top: 0;
  left: 0;
}

.m-list-notes[data-size="m"] {
  margin: 10px 0 0;
}

.m-list-notes[data-size="m"] li {
  font-size: 1.4rem;
}

.m-list-notes[data-type="line"] {
  margin: 40px 0 0;
  padding: 20px 0;
  border-top: 1px solid #b3c0ce;
  border-bottom: 1px solid #b3c0ce;
}

.m-list-notes[data-type="line"] li {
  font-size: 1.5rem;
}

/* ------------------------------------
 * BulletList
 * --------------------------------- */
.m-list-bullet li {
  margin-top: 5px;
  padding: 0 0 0 1em;
  font-size: 1.4rem;
  position: relative;
}

.m-list-bullet li::before {
  position: absolute;
  top: 0;
  left: 0;
  content: '\0030fb';
}

.m-list-bullet li:first-child {
  margin-top: 0;
}

.m-list-bullet a {
  text-decoration: underline;
}

.m-list-bullet[data-col="2"] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.m-list-bullet[data-col="2"] li {
  width: 50%;
}

.m-list-bullet[data-col="flex"] {
  margin: 80px 0 0;
  overflow: hidden;
}

.m-list-bullet[data-col="flex"] li {
  margin: 0 30px 0 0;
  float: left;
}

.m-list-bullet[data-col="flex"] li:last-child {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .m-list-bullet[data-col="flex"] {
    margin-top: 60px;
  }
}

/* ------------------------------------
* Sitemap
* --------------------------------- */
.m-list-sitemap__content {
  margin: 70px 0 0 0;
}

.m-list-sitemap__content:first-child {
  margin-top: 0;
}

.m-list-sitemap__content:last-of-type{
  margin-top: 35px;
}

.m-list-sitemap__hdg--lv2 a {
  margin: 0 0 21px;
  padding: 0 0 9px;
  font-size: 2rem;
  line-height: 1.2;
  text-decoration: none;
  display: block;
  border-bottom: 1px solid #b3c0ce;
}

.m-list-sitemap__hdg--lv2 a span {
  position: relative;
}

.m-list-sitemap__hdg--lv2 a span::after {
  width: 9px;
  height: 13px;
  margin: -7px 0 0;
  position: absolute;
  top: 50%;
  right: -23px;
  background-position: -90px -10px;
  background-image: url(../img/icn_sprite.png);
  content: '';
}

.m-list-sitemap__hdg--lv3 {
  margin: 0 0 17px;
}

.m-list-sitemap__hdg--lv3 + .m-list-bullet {
  margin-bottom: 35px;
}

.m-list-sitemap__hdg--lv3 a {
  border-bottom: 1px solid #b3c0ce;
  font-size: 1.4rem;
  display: block;
  padding-bottom: 14px;
  line-height: 1.2;
}

.m-list-sitemap__grid {
  margin: 0 0 0 -60px;
  display: flex;
  flex-wrap: wrap;
}

.m-list-sitemap__grid__content {
  width: 50%;
  padding: 0 0 0 60px;
}

.m-list-sitemap__inner {
  margin: 0 0 0 -60px;
  display: flex;
  flex-wrap: wrap;
}

.m-list-sitemap__inner__content {
  width: 50%;
  padding: 0 0 0 60px;
}

.m-list-sitemap__inner .m-list-bullet li{
  padding-left: 1.2em;
}

.m-list-sitemap__inner .m-list-bullet li a{
  text-decoration: none;
}

.m-list-sitemap__inner .m-list-bullet li:before{
  background-color: #b3c0ce;
  content: "";
  height: 4px;
  display: block;
  top: 10px;
  width: 8px;
}

.m-list-sitemap__grid__title {
  background-color: #dce2e8;
  margin: 0 0 17px;
}

.m-list-sitemap__grid__title:first-of-type{
  margin-top: 30px;
}

.m-list-sitemap__grid__title a {
  font-size: 1.6rem;
  display: block;
  line-height: 1.2;
  padding: 7px 10px;
}

.m-list-sitemap__grid__title a span::after {
  width: 9px;
  height: 13px;
  position: relative;
  right: -13px;
  display: inline-block;
  background-position: -90px -10px;
  background-image: url(../img/icn_sprite.png);
  content: '';
}

@media screen and (max-width: 767px) {
  .m-list-sitemap__content {
    margin: 50px 0 0 0;
  }
  .m-list-sitemap__grid {
    margin: 0;
    display: block;
  }
  .m-list-sitemap__grid__content {
    width: 100%;
    padding: 0;
  }
  .m-list-sitemap__inner {
    margin: 0 0 0 -30px;
  }
  .m-list-sitemap__inner__content {
    width: 50%;
    padding: 0 0 0 30px;
  }
  .m-list-sitemap__hdg--lv2 + .m-list-bullet{
    margin-bottom: 25px;
  }
}

/* ------------------------------------
* TopicsList
* --------------------------------- */
.m-list-topics {
  margin: 80px 0 0;
}

.m-list-topics li {
  border-bottom: 1px solid #b3c0ce;
}

.m-list-topics a {
  padding: 17px 0;
  text-decoration: none;
  display: table;
}

.m-list-topics a .m-list-topics__txt,
.m-list-topics a .m-list-topics__date {
  text-decoration: underline;
}

.m-list-topics a:hover .m-list-topics__txt,
.m-list-topics a:hover .m-list-topics__date, .m-list-topics a:focus .m-list-topics__txt,
.m-list-topics a:focus .m-list-topics__date, .m-list-topics a:active .m-list-topics__txt,
.m-list-topics a:active .m-list-topics__date {
  text-decoration: none;
}

.m-list-topics a > * {
  display: table-cell;
  vertical-align: top;
}

.m-list-topics__date {
  width: 10%;
  padding: 0 20px 0 0;
  white-space: nowrap;
}

.m-list-topics__label {
  width: 10%;
  padding: 0 20px 0 0;
  font-size: 1.2rem;
  text-align: center;
  white-space: nowrap;
  position: relative;
  top: 2px;
}

.m-list-topics__label span {
  width: 120px;
  padding: 0 10px;
  display: block;
  /*border: 1px solid #282828;*/
}

.m-list-topics[data-type="thumb"] {
  margin: 25px 0 40px;
}

.m-list-topics[data-type="thumb"] .m-list-topics__date {
  margin-top: 10px;
  display: block !important;
}

.m-list-topics[data-type="thumb"] a {
  min-height: 90px;
  padding-left: 110px;
  position: relative;
  text-decoration: none;
}

.m-list-topics[data-type="thumb"] a .m-list-topics__txt {
  text-decoration: underline;
}

.m-list-topics[data-type="thumb"] a:hover .m-list-topics__txt, .m-list-topics[data-type="thumb"] a:focus .m-list-topics__txt, .m-list-topics[data-type="thumb"] a:active .m-list-topics__txt {
  text-decoration: none;
}

.m-list-topics[data-type="thumb"] a > * {
  width: 100%;
  display: block !important;
}

.m-list-topics[data-type="thumb"] a > img {
  width: 90px;
  height: 90px;
  position: absolute;
  top: 15px;
  left: 0;
}

@media screen and (max-width: 767px) {
  .m-list-topics {
    margin-top: 60px;
  }
  .m-list-topics a {
    padding: 14px 0;
    text-decoration: none;
    display: flex;
    flex-wrap: wrap;
  }
  .m-list-topics a > * {
    display: block;
  }
  .m-list-topics__date {
    width: inherit;
  }
  .m-list-topics__label {
    width: inherit;
    padding: 0;
  }
  .m-list-topics__txt {
    width: 100%;
    margin: 10px 0 0;
  }
  [data-type="thumb"] .m-list-topics__txt {
    margin-top: 0;
  }
}

/* ------------------------------------
 * TopicsList
 * --------------------------------- */
.m-list-topics {
  margin: 80px 0 0;
}

.m-list-topics li {
  border-bottom: 1px solid #b3c0ce;
}

.m-list-topics a {
  padding: 17px 0;
  text-decoration: none;
  display: table;
}

.m-list-topics a .m-list-topics__txt,
.m-list-topics a .m-list-topics__date {
  text-decoration: underline;
}

.m-list-topics a:hover .m-list-topics__txt,
.m-list-topics a:hover .m-list-topics__date, .m-list-topics a:focus .m-list-topics__txt,
.m-list-topics a:focus .m-list-topics__date, .m-list-topics a:active .m-list-topics__txt,
.m-list-topics a:active .m-list-topics__date {
  text-decoration: none;
}

.m-list-topics a > * {
  display: table-cell;
  vertical-align: top;
}

.m-list-topics__date {
  width: 10%;
  padding: 0 20px 0 0;
  white-space: nowrap;
}

.m-list-topics__label {
  /*width: 10%;*/
  width:125px !important;
  padding: 0 20px 0 0;
  font-size: 1.2rem;
  text-align: center;
  white-space: nowrap;
  position: relative;
  top: 2px;
}

.m-list-topics__label span {
  width: 120px;
  padding: 0 10px;
  display: block;
}

.m-list-topics[data-type="thumb"] {
  margin: 25px 0 40px;
}

.m-list-topics[data-type="thumb"] .m-list-topics__date {
  margin-top: 10px;
  display: block !important;
}

.m-list-topics[data-type="thumb"] a {
  min-height: 90px;
  padding-left: 110px;
  position: relative;
  text-decoration: none;
}

.m-list-topics[data-type="thumb"] a .m-list-topics__txt {
  text-decoration: underline;
}

.m-list-topics[data-type="thumb"] a:hover .m-list-topics__txt, .m-list-topics[data-type="thumb"] a:focus .m-list-topics__txt, .m-list-topics[data-type="thumb"] a:active .m-list-topics__txt {
  text-decoration: none;
}

.m-list-topics[data-type="thumb"] a > * {
  width: 100%;
  display: block !important;
}

.m-list-topics[data-type="thumb"] a > img {
  width: 90px;
  height: 90px;
  position: absolute;
  top: 15px;
  left: 0;
}

@media screen and (max-width: 767px) {
  .m-list-topics {
    margin-top: 60px;
  }
  .m-list-topics a {
    padding: 14px 0;
    text-decoration: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .m-list-topics a > * {
    display: block;
  }
  .m-list-topics__date {
    width: inherit;
  }
  .m-list-topics__label {
    width: inherit;
    padding: 0;
  }
  .m-list-topics__txt {
    width: 100%;
    margin: 10px 0 0;
  }
  [data-type="thumb"] .m-list-topics__txt {
    margin-top: 0;
  }
}

/* ------------------------------------
* FaqList
* --------------------------------- */
.m-list-faq__q, .m-list-faq__a {
  min-height: 40px;
  padding: 7px 0 0 60px;
  position: relative;
}

.m-list-faq__q::before, .m-list-faq__a::before {
  width: 40px;
  height: 40px;
  font-size: 1.8rem;
  line-height: 40px;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
}

.m-list-faq__q {
  margin: 30px 0 0;
}

.m-list-faq__q:first-child {
  margin-top: 0;
}

.m-list-faq__q::before {
  background: #d2dfed;
  content: '\0051';
}


.m-list-faq__a {
  margin: 10px 0 0;
}

.m-list-faq__a::before {
  background: #ebd2ed;
  content: '\0041';
}

@media screen and (min-width: 768px) {
  .m-list-faq__a {
    display: block !important;
  }
}

@media screen and (max-width: 767px) {
  .m-list-faq__a {
    display: none;
  }
  .m-list-faq__q {
    padding-right: 45px;
  }
  .m-list-faq__q::after {
    width: 12px;
    height: 12px;
    transition: .3s all ease;
    position: absolute;
    top: 8px;
    right: 15px;
    border-top: 2px solid #a0a0a0;
    border-right: 2px solid #a0a0a0;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    content: '';
  }
  .m-list-faq__q.is-active::after {
    top: 14px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
}

/* ------------------------------------
 * FeatureList
 * --------------------------------- */
.m-list-feature {
  margin: 0 0 60px -20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.m-list-feature__inner {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
  background: #fff;
}

.m-list-feature__ttl {
  width: 60px;
  height: 60px;
  font-size: 1.3rem;
  line-height: 40px;
  font-weight: normal;
  text-align: center;
  color: #fff;
  position: absolute;
  top: -20px;
  left: -20px;
  border: 2px solid #fff;
  background: #33a1db;
}

.m-list-feature__ttl span {
  width: 100%;
  font-size: 1.8rem;
  display: block;
  line-height: 1;
  position: absolute;
  bottom: 10px;
  text-align: center;
  left: 0;
  text-align: center;
}

.m-list-feature__txt {
    width: 100%;
    text-align: center;
    margin-top: 0;
    color: #33a1db;
    font-size: 20px;
}

.m-list-feature li {
  width: 20%;
  height: auto;
  position: relative;
  padding: 0 0 0 40px;
}

.m-list-feature li:after {
    content: '';
    display: block;
    padding-top: 100%;
}

.m-list-feature__inner {
    position: absolute;
    top: 0;
    left: 40px;
    width: calc(100% - 40px);
    height: 100%;
    border-radius: 50%;
}

@media screen and (max-width: 767px) {
  .m-list-feature {
    margin: 0 0 40px -30px;
    flex-wrap: wrap;
  }
  .m-list-feature__inner {
    font-size: 15px;
    left: 40px;
    height: 100%;
  }
  .m-list-feature__ttl {
    left: 0;
  }
  .m-list-feature li {
    width: 50%;
    height: auto;
    margin: 0 0 30px;
  }

  .m-list-feature__txt {
    width: 100%;
    text-align: center;
    margin-top: 0;
    color: #33a1db;
    font-size: 17px;
  }


}

/* ------------------------------------
 * PriceList
 * --------------------------------- */

/* add20170924 */

.m-list-price{
  margin-bottom:20px;
}

.m-list-price li {
  display: table;
}

.m-list-price li > * {
  display: table-cell;
  vertical-align: middle;
}

.m-list-price__ttl {
  font-size: 1.4rem;
}

.m-list-price__ttl span {
  padding: 14px 30px 12px;
  display: block;
  border: 1px solid #b3c0ce;
}

.m-list-price__detail {
  padding: 0 0 0 20px;
  font-size: 2.4rem;
  font-style: italic;
}

.m-list-price__detail span {
  font-size: 1.4rem;
}

/* ------------------------------------
 * ImageList
 * --------------------------------- */
.m-list-img__link {
  margin: 4px 0 0;
  padding: 0 0 0 20px;
  font-size: 1.6rem;
  display: block;
  position: relative;
}

.m-list-img__link::before {
  width: 5px;
  height: 9px;
  margin-top: -5px;
  position: absolute;
  top: 50%;
  left: 6px;
  background-image: url(../img/icn_sprite.png);
  content: '';
  background-position: -123px -10px;
}

.m-list-img img {
  width: 100%;
}


.m-list-img a{
  text-decoration: none;
}

.m-list-img[data-col="3"], .m-list-img[data-col="4"], .m-list-img[data-col="5"] {
  margin: 0 0 0 -16px;
  overflow: hidden;
  letter-spacing: -.4em;
}

.m-list-img[data-col="3"] li, .m-list-img[data-col="4"] li, .m-list-img[data-col="5"] li {
  display: inline-block;
  margin: 16px 0 0;
  padding: 0 0 0 16px;
  letter-spacing: normal;
  vertical-align: top;
}

.m-list-img[data-col="2"] {
  margin: 0 0 0 -40px;
  overflow: hidden;
}

.m-list-img[data-col="2"] li {
  width: 50%;
  margin: 40px 0 0;
  padding: 0 0 0 40px;
  float: left;
}

.m-list-img[data-col="2"] li:nth-child(-n+2) {
  margin-top: 0;
}

.m-list-img[data-col="3"] li {
  width: 33.2%;
}

.m-list-img[data-col="3"] li:nth-child(-n+3) {
  margin-top: 0;
}

.m-list-img[data-col="4"] li {
  width: 24.5%;
}

.m-list-img[data-col="4"] li:nth-child(-n+4) {
  margin-top: 0;
}

.m-list-img[data-col="5"] li {
  width: 19.5%;
}

.m-list-img[data-col="5"] li:nth-child(-n+5) {
  margin-top: 0;
}

@media screen and (max-width: 960px) {
  .m-list-img[data-col="2"] li {
    width: 100%;
  }
  .m-list-img[data-col="3"] li, .m-list-img[data-col="4"] li, .m-list-img[data-col="5"] li {
    width: 49.5%;
  }
  .m-list-img[data-col="3"] li:nth-child(-n+2), .m-list-img[data-col="4"] li:nth-child(-n+2), .m-list-img[data-col="5"] li:nth-child(-n+2) {
    margin-top: 0;
  }
  .m-list-img[data-col="2"] li:nth-child(n+2) {
    margin-top: 40px;
  }
  .m-list-img[data-col="3"] li:nth-child(-n+3) {
    margin-top: 16px;
  }
  .m-list-img[data-col="4"] li:nth-child(-n+4) {
    margin-top: 16px;
  }
  .m-list-img[data-col="5"] li:nth-child(-n+5) {
    margin-top: 16px;
  }
}
/*
@media screen and (max-width: 767px) {
  .m-list-img[data-col="2"] {
    margin-left: 0;
  }
  .m-list-img[data-col="2"] li {
    width: 100%;
    margin-top: 30px;
    padding-left: 0;
    float: none;
  }
  .m-list-img[data-col="2"] li:nth-child(-n+2) {
    margin-top: 30px;
  }
  .m-list-img[data-col="2"] li:first-child {
    margin-top: 0;
  }
  .m-list-img[data-col="3"] li, .m-list-img[data-col="4"] li, .m-list-img[data-col="5"] li {
    width: 100%;
    margin: 30px 0 0;
  }
  .m-list-img[data-col="3"] li:nth-child(-n+2), .m-list-img[data-col="4"] li:nth-child(-n+2), .m-list-img[data-col="5"] li:nth-child(-n+2) {
    margin-top: 30px;
  }
  .m-list-img[data-col="3"] li:first-child, .m-list-img[data-col="4"] li:first-child, .m-list-img[data-col="5"] li:first-child {
    margin-top: 0;
  }
  .m-list-img[data-col="3"] li:nth-child(-n+3) {
    margin-top: 30px;
  }
  .m-list-img[data-col="4"] li:nth-child(-n+4) {
    margin-top: 30px;
  }
  .m-list-img[data-col="5"] li:nth-child(-n+5) {
    margin-top: 30px;
  }
}

@media screen and (max-width: 767px) {
  .m-list-img[data-col="2"] {
    margin-left: 0;
  }
  .m-list-img[data-col="2"] li {
    width: 100%;
    margin-top: 30px;
    padding-left: 0;
    float: none;
  }
  .m-list-img[data-col="2"] li:nth-child(-n+2) {
    margin-top: 30px;
  }
  .m-list-img[data-col="2"] li:first-child {
    margin-top: 0;
  }
  .m-list-img[data-col="4"] li, .m-list-img[data-col="5"] li {
    width: 100%;
    margin: 30px 0 0;
  }
  .m-list-img[data-col="4"] li:nth-child(-n+2), .m-list-img[data-col="5"] li:nth-child(-n+2) {
    margin-top: 30px;
  }
  .m-list-img[data-col="4"] li:first-child, .m-list-img[data-col="5"] li:first-child {
    margin-top: 0;
  }
  .m-list-img[data-col="4"] li:nth-child(-n+4) {
    margin-top: 30px;
  }
  .m-list-img[data-col="5"] li:nth-child(-n+5) {
    margin-top: 30px;
  }
}
*/
/* ------------------------------------
 * CategoryList
 * --------------------------------- */
.m-list-ctg {
  margin: 0 0 -15px;
}

.m-list-ctg li {
  margin: 0 22px 15px 0;
  line-height: 1;
  float: left;
}

.m-list-ctg li:last-child {
  margin-right: 0;
}

.m-list-ctg a {
  padding: 2px;
  display: block;
  border: 2px solid #90c8e5;
  text-decoration: none;

}

.m-list-ctg span {
  padding: 13px 40px 13px 25px;
  position: relative;
  display: block;
  border: 1px solid #90c8e5;
}

.m-list-ctg span::after {
  width: 5px;
  height: 9px;
  margin: -5px 0 0;
  background-image: url(../img/icn_sprite.png);
  content: '';
  position: absolute;
  top: 50%;
  right: 10px;
  background-position: -123px -10px;
}

@media screen and (max-width: 767px) {
  .m-list-ctg li {
    margin-right: 10px;
  }
}

/* ------------------------------------
 * ProfileList
 * --------------------------------- */
.m-list-profile {
  margin: 40px 0 0;
}

.m-list-profile li {
  width: 100%;
  margin: 10px 0 0;
  display: table;
}

.m-list-profile li em {
  font-weight: normal;
}

.m-list-profile li > * {
  display: table-cell;
}

.m-list-profile li:first-child {
  margin-top: 0;
}

.m-list-profile__ttl {
  width: 260px;
  padding-right: 20px;
  white-space: nowrap;
}

@media screen and (max-width: 767px) {
  .m-list-profile li {
    display: block;
  }
  .m-list-profile li > * {
    display: block;
  }
  .m-list-profile__ttl {
    width: 100%;
  }
}

/* ------------------------------------
 * formList
 * --------------------------------- */
.m-list-radio {
  margin: -10px 0 0;
}

.m-list-radio li {
  margin: 10px 40px 0 0;
  display: inline-block;
}

.m-list-radio li:last-child {
  margin-right: 0;
}

.m-list-radio li label {
  word-break: break-word;
}

.m-list-radio li input {
  margin: 0 10px 0 0;
  top: -2px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .m-list-radio li {
    display: block;
  }
}

/* ------------------------------------
 * selectList
 * --------------------------------- */
.m-list-select[data-type="time"] li > * {
  padding-right: 15px;
}

.m-list-select li {
  margin: 15px 0 0;
  display: table;
}

.m-list-select li:first-child {
  margin-top: 0;
}

.m-list-select li > * {
  padding: 0 30px 0 0;
  display: table-cell;
  vertical-align: middle;
}

.m-list-select li > *:last-child {
  padding-right: 0;
}

.m-list-select li > span + span {
  padding-right: 10px;
  padding-left: 30px;
  border-left: 1px solid #cdcdcd;
}

.m-list-select li select {
  width: 100%;
  height: 40px;
  color: #282828;
  display: block;
  position: relative;
  padding: 0 30px 0 15px;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
  background: #fff;
}

.m-list-select li select::-ms-expand {
  display: none;
}

.m-list-select__elem {
  padding-right: 10px !important;
}

.m-list-select__elem div {
  position: relative;
}

.m-list-select__elem div::after {
  width: 5px;
  height: 9px;
  margin: -5px 0 0;
  background-image: url(../img/icn_sprite.png);
  content: '';
  position: absolute;
  top: 50%;
  right: 13px;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  background-position: -123px -10px;
}

.mw_wp_form.mw_wp_form_confirm .m-list-select__elem div::after{
  background-image:none;
}


@media screen and (max-width: 767px) {
  .m-list-select[data-type="age"] li > * {
/*     display: inline-block; */
  }
  .m-list-select[data-type="reserve"] li > * {
/*     display: inline-block; */
  }
  .m-list-select[data-type="reserve"] li > *:first-child {
/*     width: 100%;
    display: table-row; */
  }
}

/* ------------------------------------
 * selectList
 * --------------------------------- */
.m-list-btn {
  margin: 40px auto 0;
  display: table;
}

.m-list-btn li {
  position: relative;
  display: table-cell;
  vertical-align: top;
}

.m-list-btn li + li {
  padding-left: 20px;
}

@media screen and (max-width: 767px) {
  .m-list-btn {
    width: 100%;
    table-layout: fixed;
  }
  .m-list-btn li {
    font-size: 1.3rem;
  }
  .m-list-btn li:first-child {
    padding-right: 10px;
  }
  .m-list-btn li:last-child {
    padding-left: 10px;
  }
}

/* ------------------------------------
 * exampleList
 * --------------------------------- */
.m-list-example {
  width: 100%;
  display: table;
}

.m-list-example__figure {
  width: 740px;
  display: table-cell;
}

.m-list-example__figure span {
  padding: 8px 0;
  font-style: italic;
  font-size: 1.4rem;
  text-align: center;
  color: #fff;
  line-height: 1;
  display: block;
  background: #33a1db;
}

.m-list-example__item {
  display: table-cell;
  /* add 20171008 */
  padding-bottom:30px;

}

.m-list-example__item:first-child {
  padding-right: 30px;
}

.m-list-example__item:first-child > div {
  position: relative;
}

.m-list-example__item:first-child > div::after {
  width: 20px;
  height: 24px;
  margin: -12px 0 0;
  position: absolute;
  top: 50%;
  right: -40px;
  background-position: -49px -78px;
  background-image: url(../img/icn_sprite.png);
  content: '';
}

.m-list-example__item:last-child {
  padding-left: 30px;
}

.m-list-example__body {
  width: 300px;
  padding: 0 0 0 60px;
  display: inline-block;
  vertical-align: top;
}

.m-list-example__body p {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .m-list-example__figure {
    width: 100%;
    display: block;
  }
  .m-list-example__body {
    width: 100%;
    padding-left: 0;
  }
  .m-list-example__body p {
    margin-top: 20px;
  }
}

/* ------------------------------------
 * exampleList
 * --------------------------------- */
.m-list-anc {
  margin: -15px 0 0;
  overflow: hidden;
}

.m-list-anc li {
  margin: 15px 20px 0 0;
  float: left;
}

.m-list-anc li:last-child {
  margin-right: 0;
}

.m-list-anc a {
  padding: 0 45px 9px 20px;
  display: block;
  position: relative;
  border-bottom: 2px solid #90c8e5;
}

.m-list-anc a::before {
  width: 5px;
  height: 9px;
  margin-top: -7px;
  position: absolute;
  top: 50%;
  right: 10px;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  background-image: url(../img/icn_sprite.png);
  content: '';
  background-position: -123px -10px;
}

.m-list-anc a::after {
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 2px;
  border-bottom: 1px solid #90c8e5;
  content: '';
}

@media screen and (max-width: 767px) {
  .m-list-anc {
    margin: 0 0 0 -15px;
    padding: 0 0 30px;
    display: flex;
    flex-wrap: wrap;
    overflow: inherit;
  }
  .m-list-anc li {
    width: 50%;
    margin: 20px 0 0;
    padding: 0 0 0 15px;
    font-size: 1.2rem;
    line-height: 1.4;
    float: none;
  }
  .m-list-anc li:nth-child(-n+2) {
    margin-top: 0;
  }
  .m-list-anc a {
    padding: 0 25px 9px 20px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
  }
}

/* ------------------------------------
 * MedicalFlowList
 * --------------------------------- */
.m-list-flow-medical__content {
  margin: 60px 0 0;
}

.m-list-flow-medical__content:first-child {
  margin-top: 0;
}

.m-list-flow-medical__inner {
  margin: 30px 0 0 -60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.m-list-flow-medical__body, .m-list-flow-medical__figure {
  width: 50%;
  padding: 0 0 0 60px;
}

.m-list-flow-medical__body > * {
  margin: 20px 0 0;
}

.m-list-flow-medical__body > *:first-child {
  margin-top: 0;
}

.m-list-flow-medical__hdg {
  font-size: 2rem;
  color: #0066ad;
  position: relative;
  border-bottom: 1px solid #b3c0ce;
}

.m-list-flow-medical__hdg span {
  font-family: 'Pinyon Script';
  font-size: 7rem;
  font-weight: normal;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .m-list-flow-medical__inner {
    margin: 20px 0 0;
  }
  .m-list-flow-medical__body, .m-list-flow-medical__figure {
    width: 100%;
    padding-left: 0;
  }
  .m-list-flow-medical__body > * {
    margin: 20px 0 0;
  }
  .m-list-flow-medical__body > *:first-child {
    margin-top: 0;
  }
  .m-list-flow-medical__figure {
    margin: 30px 0 0;
    text-align: center;
  }
  .m-list-flow-medical__hdg {
    font-size: 2rem;
    color: #0066ad;
    border-bottom: 1px solid #b3c0ce;
  }
}

/* ------------------------------------
 * ReserveFlowList
 * --------------------------------- */
.m-list-flow-reserve__main {
  margin: 0 0 50px;
  padding: 0 0 70px;
  border-bottom: 1px solid #b3c0ce;
}

.m-list-flow-reserve__main__inner {
  margin: 0 0 0 -80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.m-list-flow-reserve__main__item {
  width: 33.33333%;
  padding: 0 0 0 80px;
  position: relative;
}

.m-list-flow-reserve__main__item::after {
  width: 20px;
  height: 24px;
  margin: -12px 0 0;
  position: absolute;
  top: 50%;
  right: -45px;
  background-image: url(../img/icn_sprite.png);
  content: '';
  background-position: -49px -78px;
}

.m-list-flow-reserve__main__item:last-child::after {
  display: none;
}

.m-list-flow-reserve__main__ttl {
  width: 60px;
  height: 60px;
  margin: 0;
  padding: 4px 0 0;
  color: #fff;
  text-align: center;
  line-height: 1.4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  top: -15px;
  left: 65px;
  border: 2px solid #fff;
  background: #33a1db;
}

.m-list-flow-reserve__sub {
  margin: 0 0 0 -60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.m-list-flow-reserve__sub__item {
  width: 33.33333%;
  padding: 0 0 0 60px;
}

.m-list-flow-reserve__sub__item > * {
  margin: 25px 0 0;
}

.m-list-flow-reserve__sub__item > *:first-child {
  margin-top: 0;
}

.m-list-flow-reserve__sub__txt {
  text-align: center;
}

.m-list-flow-reserve__sub__txt em {
  font-weight: normal;
  display: block;
}

.m-list-flow-reserve__sub .m-btn-link,
.m-list-flow-reserve__sub .m-btn,
.m-list-flow-reserve__sub .m-footer-contact__reserve__btn {
  width: 100%;
  max-width: 250px;
  margin: 20px auto 0;
  display: table;
  text-align: center;
}

.m-list-flow-reserve__sub .m-footer-contact__reserve__btn a {
  font-size: 1.5rem;
}

.m-list-flow-reserve__sub .m-footer-contact__reserve__btn a span::after {
  display: inline-block;
  position: relative;
  right: -14px;
  top: 0;
}

@media screen and (max-width: 767px) {
  .m-list-flow-reserve__main {
    margin: 0 0 35px;
    padding: 0 0 35px;
    border-bottom: 1px solid #b3c0ce;
  }
  .m-list-flow-reserve__main__inner {
    margin: 0;
    display: block;
  }
  .m-list-flow-reserve__main__item {
    width: auto;
    margin: 0 auto;
    padding: 0 0 80px 0;
    display: table;
  }
  .m-list-flow-reserve__main__item::after {
    margin: 0 0 0 -10px;
    top: inherit;
    bottom: 30px;
    right: inherit;
    left: 50%;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .m-list-flow-reserve__main__item:last-child {
    padding-bottom: 0;
  }
  .m-list-flow-reserve__main__ttl {
    width: 60px;
    height: 60px;
    margin: 0;
    padding: 4px 0 0;
    color: #fff;
    text-align: center;
    line-height: 1.4;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    top: -15px;
    left: -15px;
    border: 2px solid #fff;
    background: #33a1db;
  }
  .m-list-flow-reserve__sub {
    margin: 0;
  }
  .m-list-flow-reserve__sub__item {
    width: 100%;
    margin: 40px 0 0;
    padding: 0;
  }
  .m-list-flow-reserve__sub__item:first-child {
    margin-top: 0;
  }
  .m-list-flow-reserve__sub .m-btn-link,
  .m-list-flow-reserve__sub .m-btn,
  .m-list-flow-reserve__sub .m-footer-contact__reserve__btn {
    max-width: 100%;
  }
}

/* ------------------------------------
 * MeritList
 * --------------------------------- */
.m-list-merit {
  margin: 60px 0 60px -60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.m-list-merit li {
  width: 25%;
  padding: 0 0 0 60px;
}

.m-list-merit__ttl {
  width: 144px;
  height: 144px;
  margin: 0 auto 30px;
  font-size: 2rem;
  font-weight: normal;
  color: #33a1db;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-radius: 50%;
  background: #fff;
}

@media screen and (max-width: 767px) {
  .m-list-merit {
    margin: 30px 0 30px -20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .m-list-merit li {
    width: 50%;
    margin: 20px 0 0;
    padding: 0 0 0 20px;
  }
  .m-list-merit li:nth-child(-n+2) {
    margin-top: 0;
  }
  .m-list-merit__ttl {
    width: 144px;
    height: 144px;
    margin: 0 auto 30px;
    font-size: 2rem;
    font-weight: normal;
    color: #33a1db;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 50%;
    background: #fff;
  }
}

/* ------------------------------------
 * TypeList
 * --------------------------------- */
.m-list-type__content {
  margin: 60px 0 0;
  padding-bottom:40px; /* add20171019 */
}

.m-list-type__content:first-child {
  margin-top: 0;
}

.m-list-type__content > *:first-child {
  margin-top: 0 !important;
}

.m-list-type__body {
  width: 100%;
  display: table;

}

.m-list-type__body > * {
  padding: 0 0 0 20px;
  display: table-cell;
}

.m-list-type__body > *:first-child {
  padding-left: 0;
}

.m-list-type__item:first-child {
  width: 50%;
}

.m-list-type__item > * {
  margin-top: 0;
}

.m-list-type__item > *:first-child {
  margin-top: 0;
}

.m-list-type__figure {
  width: 240px;
}

.m-list-type__foot .m-list-ctg {
  margin: 10px 0 0;
  overflow: hidden;
}

.m-list-type__foot .m-list-notes {
  text-align: left;
}

@media screen and (max-width: 767px) {
  .m-list-type__content {
    margin-top: 40px;
  }
  .m-list-type__body {
    width: 100%;
    display: block;
  }
  .m-list-type__body > * {
    padding:0;
    display: block;
  }
  .m-list-type__item {
    width: 50%;
    float: left;
  }
  .m-list-type__item:first-child {
   /* width: 50%;*/
    width:100%;
  }
  .m-list-type__figure {
    width: auto;
    margin: 0 auto;
    padding: 30px 0 0;
    clear: both;
    display: table;
  }
}

/* ------------------------------------
 * FeatureFlowList
 * --------------------------------- */
.m-list-flow-feature {
  margin: 0 -15px;
  padding: 0 15px;
  position: relative;
}

/*.m-list-flow-feature::after {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: -15%;
  z-index: -1;
  background: url(../img//about/about_sophia/bg_feature.jpg) right top no-repeat;
  background-size: contain;
  content: '';
}*/

.m-list-flow-feature__content {
  margin: 20px 0 0;
}

.m-list-flow-feature__content:first-child {
  margin-top: 0;
}

.m-list-flow-feature__hdg {
  padding: 18px 0 0 55px;
  font-size: 2rem;
  color: #0065ac;
  position: relative;
}

.m-list-flow-feature__hdg span {
  font-family: 'Pinyon Script';
  font-size: 6rem;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
}

.m-list-flow-feature__txt {
  margin: 20px 0 0;
  padding: 0 0 0 55px;
}

/* ------------------------------------
 * HistoryList
 * --------------------------------- */
.m-list-history {
  margin: 40px 0 0;
  padding: 0 0 0 105px;
  overflow: hidden;
}

.m-list-history__content {
  position: relative;
  border-bottom: 1px dotted #999;
}

.m-list-history__content:last-child .m-list-history__body::after {
  background: #edf0f0;
}

.m-list-history__body {
  min-height: 90px;
  display: table;
}

.m-list-history__body::after {
  width: 6px;
  height: 100%;
  margin: 0 0 -100%;
  padding: 0 0 100%;
  position: absolute;
  top: 100px;
  left: -60px;
  z-index: -1;
  background: #d9e1ea;
  content: '';
}

.m-list-history__body__txt {
  padding: 45px 0;
  margin-top: 0;
  display: table-cell;
  vertical-align: middle;
}

.m-list-history__body__txt em {
  width: 90px;
  height: 90px;
  margin: -45px 0 0;
  font-family: 'Pinyon Script';
  font-size: 2rem;
  font-weight: normal;
  font-style: italic;
  color: #fff;
  line-height: 95px;
  text-align: center;
  display: block;
  position: absolute;
  top: 50%;
  left: -105px;
  border-radius: 50%;
  background: #7eacd9;
}

.m-list-history__body__txt span {
  padding: 0 30px;
  display: block;
}

/* ------------------------------------
 * HistoryList
 * --------------------------------- */
.m-list-medical {
  margin: 120px 0 0;
  padding: 0 0 40px;
  border-bottom: 1px solid #181818;
}

.m-list-medical .m-hdg-lv2 {
  margin-bottom: 0;
}

.m-list-medical .m-hdg-lv2 + * {
  margin-top: 30px !important;
}

.m-list-medical__item[data-type="main"] {
  width: 100%;
  margin: 0 0 40px;
  padding: 40px 0 40px;
  display: table;
  border-top: 1px solid #181818;
  border-bottom: 1px solid #181818;
}

.m-list-medical__item[data-type="main"] .m-list-medical__ttl {
  width: 285px;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  border-left: 1px solid #a0a0a0;
}

.m-list-medical__item[data-type="main"] .m-list-medical__body__segment {
  margin: 0 0 40px;
  padding: 0 0 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-bottom: 1px solid #181818;
}

.m-list-medical__item[data-type="main"] .m-list-medical__body__segment:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.m-list-medical__item[data-type="main"] .m-list-medical__body__item {
  width: 33.33333%;
  padding: 0 3%;
  border-left: 1px solid #a0a0a0;
}

.m-list-medical__item[data-type="main"] .m-list-medical__body__item:last-child {
  border-right: 1px solid #a0a0a0;
}

.m-list-medical__item__wrap {
  width: 100%;
  display: table;
  table-layout: fixed;
}

.m-list-medical__item__wrap .m-list-medical__item[data-type="sub"] {
  width: 33.33333%;
  padding: 0 40px;
  display: table-cell;
  border-left: 1px solid #a0a0a0;
}

.m-list-medical__item__wrap .m-list-medical__item[data-type="sub"]:last-child {
  border-right: 1px solid #a0a0a0;
}

.m-list-medical__item__wrap .m-list-medical__item[data-type="sub"] .m-list-medical__ttl {
  margin-bottom: 30px;
}

.m-list-medical__ttl {
  margin-top: 0;
  text-align: center;
}

.m-list-medical__ttl a {
  font-size: 2rem;
  font-style: italic;
  font-weight: normal;
  display: block;
  text-decoration: none;
}
.m-list-medical__ttl a:hover {
  opacity: 1;
}
.m-list-medical__ttl a span {
  transition: .3s;
}
.m-list-medical__ttl a:hover span {
  background: linear-gradient(transparent 40%, rgba(254,196,241,1) 40%);
}

.m-list-medical__ttl[data-type="ctg1"] a::before, .m-list-medical__ttl[data-type="ctg2"] a::before, .m-list-medical__ttl[data-type="ctg3"] a::before, .m-list-medical__ttl[data-type="ctg4"] a::before {
  margin: 0 auto 20px;
  display: block;
  background-image: url(../img/icn_sprite.png);
  content: '';
}

.m-list-medical__ttl[data-type="ctg1"] a::before {
  width: 74px;
  height: 84px;
  background-position: -111px -64px;
}

.m-list-medical__ttl[data-type="ctg2"] a::before {
  width: 66px;
  height: 90px;
  background-position: -191px -61px;
}

.m-list-medical__ttl[data-type="ctg3"] a::before {
  width: 65px;
  height: 93px;
  background-position: -279px -67px;
}

.m-list-medical__ttl[data-type="ctg4"] a::before {
  width: 62px;
  height: 95px;
  background-position: -359px -54px;
}

.m-list-medical__body__ttl {
  margin: 15px 0 5px;
}

.m-list-medical__body__ttl:first-child {
  margin-top: 0;
}

.m-list-medical__body__ttl a {
  padding: 0 0 0 20px;
  font-style: italic;
  font-weight: normal;
  color: #33a1db;
  position: relative;
  display: block;
  text-decoration: none;
}

.m-list-medical__body__ttl a::before {
  width: 8px;
  height: 13px;
  background-image: url(../img/icn_sprite.png);
  content: '';
  position: absolute;
  top: 9px;
  left: 0;
  background-position: -79px -80px;
}

.m-list-medical__body__ttl.ttl_flex{
  display: flex;
}

.m-list-medical__body__ttl.ttl_flex em{
  width: 40%;
}

.m-list-medical__body__list {
  padding: 0 0 0 20px;
}

.m-list-medical__body__list li a {
  text-decoration: underline;
}

@media screen and (min-width: 768px) {
  .m-list-medical__body {
    display: block !important;
  }
  .m-list-medical__body__item {
    display: block !important;
  }
}

@media screen and (max-width: 767px) {
  .m-list-medical {
    margin-top: 100px;
    padding: 0;
    border-bottom: 1px solid #181818;
  }
  .m-list-medical__item[data-type="main"] {
    width: 100%;
    margin: 0;
    padding: 0;
    display: block;
    border-bottom: none;
    border-top: none;
  }
  .m-list-medical__item[data-type="main"] .m-list-medical__ttl {
    width: 100%;
    display: block;
    border-left: none;
  }
  .m-list-medical__item[data-type="main"] .m-list-medical__body {
    display: none;
  }
  .m-list-medical__item[data-type="main"] .m-list-medical__body__segment {
    margin: 0;
    padding: 0;
    display: block;
    border-bottom: none;
  }
  .m-list-medical__item[data-type="main"] .m-list-medical__body__segment:last-child {
    margin-bottom: 0;
    padding-bottom: 30px;
    border-bottom: none;
  }
  .m-list-medical__item[data-type="main"] .m-list-medical__body__item {
    width: auto;
    padding: 0 20px;
    border-left: none;
    display: block;
  }
  .m-list-medical__item[data-type="main"] .m-list-medical__body__item:last-child {
    border-right: none;
  }
  .m-list-medical__item__wrap {
    width: 100%;
    display: table;
    table-layout: fixed;
  }
  .m-list-medical__item__wrap .m-list-medical__item[data-type="sub"] {
    width: 100%;
    padding: 0;
    display: block;
    border-left: none;
  }
  .m-list-medical__item__wrap .m-list-medical__item[data-type="sub"]:last-child {
    border-right: none;
  }
  .m-list-medical__item__wrap .m-list-medical__item[data-type="sub"] .m-list-medical__body__item {
    padding: 0 0 20px;
  }
  .m-list-medical__ttl {
    margin: 0 !important;
    text-align: center;
  }
  .m-list-medical__ttl[data-type="ctg1"], .m-list-medical__ttl[data-type="ctg2"], .m-list-medical__ttl[data-type="ctg3"], .m-list-medical__ttl[data-type="ctg4"] {
    position: relative;
    border-top: 1px solid #000000;
  }
  .m-list-medical__ttl[data-type="ctg1"] a, .m-list-medical__ttl[data-type="ctg2"] a, .m-list-medical__ttl[data-type="ctg3"] a, .m-list-medical__ttl[data-type="ctg4"] a {
    padding: 30px 0;
  }
  .m-list-medical__ttl[data-type="ctg1"] a::before, .m-list-medical__ttl[data-type="ctg2"] a::before, .m-list-medical__ttl[data-type="ctg3"] a::before, .m-list-medical__ttl[data-type="ctg4"] a::before {
    margin-bottom: 10px;
  }
  .m-list-medical__ttl[data-type="ctg1"] a::after, .m-list-medical__ttl[data-type="ctg2"] a::after, .m-list-medical__ttl[data-type="ctg3"] a::after, .m-list-medical__ttl[data-type="ctg4"] a::after {
    width: 12px;
    height: 12px;
    transition: .3s all ease;
    position: absolute;
    top: 50%;
    right: 15px;
    border-top: 2px solid #a0a0a0;
    border-right: 2px solid #a0a0a0;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    content: '';
  }
  .m-list-medical__ttl[data-type="ctg1"] a.is-active::after, .m-list-medical__ttl[data-type="ctg2"] a.is-active::after, .m-list-medical__ttl[data-type="ctg3"] a.is-active::after, .m-list-medical__ttl[data-type="ctg4"] a.is-active::after {
    width: 12px;
    height: 12px;
    position: absolute;
    top: 50%;
    right: 15px;
    border-top: 2px solid #a0a0a0;
    border-right: 2px solid #a0a0a0;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    content: '';
  }
  .m-list-medical__body__item {
    display: none;
  }
  .m-list-medical__body__ttl {
    margin: 20px 0 10px !important;
    padding: 20px 0 0;
    border-top: 1px solid #a0a0a0;
  }
  .m-list-medical__body__ttl:first-child {
    margin-top: 0;
  }
}

/* ----------------------------------------------------------------------------
 * Navigation
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * BreadCrumb
 * --------------------------------- */
.m-nav-breadcrumb {
  max-width: 1170px;
  margin: 0 auto;
  padding: 0 15px;
  position: relative;
}

.m-nav-breadcrumb__inner {
  font-size: 1.2rem;
  overflow: hidden;
  position: absolute;
  top: 15px;
  right: 15px;
}

.m-nav-breadcrumb__inner > * {
  padding: 0 10px 0 0;
  float: left;
}

.m-nav-breadcrumb__inner > *:last-child {
  padding-right: 0;
}

.m-nav-breadcrumb__inner a {
  text-decoration: underline;
  display: block;
}

@media screen and (max-width: 767px) {
  .m-nav-breadcrumb {
    display: none;
  }
}

/* ------------------------------------
 * Pager
 * --------------------------------- */
.m-nav-pager {
  margin: 100px auto 0;
  display: table;
}

.m-nav-pager__list {
  display: table;
}

.m-nav-pager__list li {
  display: table-cell;
}

.m-nav-pager__list a {
  text-decoration: underline;
}

.m-nav-pager__list--num > * {
  padding: 0 32px 0 0;
  font-style: italic;
}

.m-nav-pager__list--num > *:last-child {
  padding-right: 0;
}

.m-nav-pager__list--num > * .is-current {
  font-style: italic;
  font-weight: normal;
  color: #33a1db;
  text-decoration: underline;
}

.m-nav-pager__list--prev, .m-nav-pager__list--next {
  position: relative;
}

.m-nav-pager__list--prev span, .m-nav-pager__list--next span {
  text-indent: -999em;
  position: absolute;
  z-index: -1;
  overflow: hidden;
}

.m-nav-pager__list--prev::after, .m-nav-pager__list--next::after {
  width: 9px;
  height: 13px;
  margin: -7px 0 0;
  position: absolute;
  top: 50%;
  background-position: -90px -10px;
  background-image: url(../img/icn_sprite.png);
  content: '';
}

.m-nav-pager__list--prev::after {
  right: 40px;
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}

.m-nav-pager__list--next::after {
  left: 40px;
}

@media screen and (max-width: 767px) {
  .m-nav-pager {
    margin-top: 80px;
  }
}

/* ------------------------------------
 * LocalNav
 * --------------------------------- */
.m-nav-local {
  overflow: hidden;
  position: relative;
}

.m-nav-local a {
  text-decoration: none;
}

.m-nav-local__list {
  max-width: 1170px;
  margin: -35px auto 0;
  padding: 17px 15px;
  overflow: hidden;
  background: #c9e8f4;
}

.m-nav-local__list::after {
  width: 100%;
  height: 100%;
  margin: 0 -100%;
  padding: 0 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background: #c9e8f4;
  content: '';
}

.m-nav-local__list--main {
  padding-right: 75px !important;
  color: #000;
}

.m-nav-local__list--main a {
  margin: -17px 0 -17px;
  padding: 17px 54px 17px;
  color: #fff;
  display: block;
  background: #33a1db;
  text-decoration: none;
}

.m-nav-local__list li {
  margin: 35px 35px 0 0;
  padding: 0 35px 0 0;
  line-height: 1.8;
  float: left;
  border-right: 1px solid #88adbc;
}

.m-nav-local__list li:last-child {
  margin-right: 0;
  padding-right: 0;
  border-right: none;
}

.m-nav-local__list a.is-current {
  color: #33a1db;
}

@media screen and (max-width: 767px) {
  .m-nav-local__list {
    margin: -15px auto 0;
    padding: 7px 15px;
    text-align: center;
  }
  .m-nav-local__list--main {
    margin-left: -15px !important;
    padding-right: 25px !important;
  }
  .m-nav-local__list--main a {
    margin: -7px 0 -7px;
    padding: 7px 34px 7px;
    text-decoration: none;

  }
  .m-nav-local__list li {
    margin: 15px 25px 0 0;
    padding: 0 25px 0 0;
    float: none;
    display: inline-block;
  }
}

/* ------------------------------------
 * ModuleTitle
 * --------------------------------- */
/* ----------------------------------------------------------------------------
 * JavaScript
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * Carousel
 * --------------------------------- */
.m-carousel {
  width: 100%;
}

.m-carousel__item--pc {
  display: block;
}

.m-carousel__item--sp {
  display: none;
}

.m-carousel__item img {
  width: 100%;
}

.m-carousel .slick-dots {
  margin: 10px auto 0;
  display: table;
}

.m-carousel .slick-dots li {
  padding: 5px;
  display: table-cell;
}

.m-carousel .slick-dots li.slick-active button {
  border: none;
  background: #33a1db;
}

.m-carousel .slick-dots li button {
  width: 12px;
  height: 12px;
  overflow: hidden;
  text-indent: -999em;
  border: 1px solid #33a1db;
  border-radius: 50%;
  background: #fff;
}

@media screen and (max-width: 767px) {
  .m-carousel__item--pc {
    display: none;
  }
  .m-carousel__item--sp {
    display: block;
  }
}

/* ------------------------------------
 * Slick
 * --------------------------------- */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}

.slick-track::before, .slick-track::after {
  content: '';
  display: table;
}

.slick-track::after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  /*height: 100%;*/
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.slick-slider {
  position: relative;
  display: block;
  moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-slider * {
  outline: 0;
}

.slick-slider .slick-list {
  margin: 0;
  padding: 0;
  position: relative;
  display: block;
  overflow: hidden;
}

.slick-slider .slick-list:focus {
  outline: none;
}

.slick-slider .slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-slider .slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
}

.slick-slider .slick-track::before, .slick-slider .slick-track::after {
  display: table;
  content: '';
}

.slick-slider .slick-track::after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  /*height: 100%;*/
  min-height: 1px;
  float: left;
  display: none;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

[dir='rtl'] .slick-slide {
  float: right;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  height: auto;
  display: block;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

@media screen and (max-width: 767px) {
  .slick-slide {
    height: 100%;
    min-height: 1px;
	  height: auto;
    float: left;
    display: none;
  }

}


/* ------------------------------------
 * Tab
 * --------------------------------- */
.m-tabnav {
  overflow: hidden;
}

.m-tabnav__list {
  margin: 50px 0 0 -20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.m-tabnav__list li {
  width: 25%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 0 0 0 20px;
  border-bottom: 1px solid #33a1db;
}

.m-tabnav__list a {
  width: 100%;
  padding: 18px 10px;
  line-height: 1;
  text-align: center;
  display: block;
  position: relative;
  border: 1px solid transparent;
  border-bottom: none;
  background: #d2dfed;
}

.m-tabnav__list a.is-current {
  cursor: default;
  border: 1px solid #33a1db;
  border-bottom: none;
  background: #edf0f0;
}

.m-tabnav__list a.is-current::after {
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: -1px;
  left: 0;
  background: #edf0f0;
  content: '';
}

.m-tabnav__list a.is-current:hover, .m-tabnav__list a.is-current:focus, .m-tabnav__list a.is-current:active {
  opacity: 1;
}

.m-tabnav__content {
  padding: 80px 0 0;
  display: none;
}

.m-tabnav__content > *:first-child {
  margin-top: 0 !important;
}

.m-tabnav__content.is-active {
  display: block;
}

@media screen and (max-width: 767px) {
  .m-tabnav__list a {
    padding: 12px 5px;
    font-size: 1.2rem;
  }
}

/* ----------------------------------------------------------------------------
 * Utility
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * TextAlign
 * --------------------------------- */
.u-al {
  text-align: left !important;
}

.u-ac {
  text-align: center !important;
}

.u-ar {
  text-align: right !important;
}

/* ------------------------------------
 * VerticalAlign
 * --------------------------------- */
.u-vat {
  vertical-align: top !important;
}

.u-vam {
  vertical-align: middle !important;
}

.u-vab {
  vertical-align: bottom !important;
}

/* ------------------------------------
 * Display
 * --------------------------------- */
.u-pc-hid {
  display: none !important;
}

.u-sp-hid {
  display: block !important;
}

@media screen and (max-width: 767px) {
  .u-pc-hid {
    display: block !important;
  }
  .u-sp-hid {
    display: none !important;
  }
}

/* ------------------------------------
 * Width
 * --------------------------------- */
.u-w0 {
  width: 0% !important;
}

.u-w5 {
  width: 5% !important;
}

.u-w10 {
  width: 10% !important;
}

.u-w15 {
  width: 15% !important;
}

.u-w20 {
  width: 20% !important;
}

.u-w25 {
  width: 25% !important;
}

.u-w30 {
  width: 30% !important;
}

.u-w35 {
  width: 35% !important;
}

.u-w40 {
  width: 40% !important;
}

.u-w45 {
  width: 45% !important;
}

.u-w50 {
  width: 50% !important;
}

.u-w55 {
  width: 55% !important;
}

.u-w60 {
  width: 60% !important;
}

.u-w65 {
  width: 65% !important;
}

.u-w70 {
  width: 70% !important;
}

.u-w75 {
  width: 75% !important;
}

.u-w80 {
  width: 80% !important;
}

.u-w85 {
  width: 85% !important;
}

.u-w90 {
  width: 90% !important;
}

.u-w95 {
  width: 95% !important;
}

.u-w100 {
  width: 100% !important;
}

/* ------------------------------------
 * Margin
 * --------------------------------- */
/* MarginTop */
.u-mt0 {
  margin-top: 0% !important;
}

.u-mt5 {
  margin-top: 5% !important;
}

.u-mt10 {
  margin-top: 10% !important;
}

.u-mt15 {
  margin-top: 15% !important;
}

.u-mt20 {
  margin-top: 20% !important;
}

.u-mt25 {
  margin-top: 25% !important;
}

.u-mt30 {
  margin-top: 30% !important;
}

.u-mt35 {
  margin-top: 35% !important;
}

.u-mt40 {
  margin-top: 40% !important;
}

.u-mt45 {
  margin-top: 45% !important;
}

.u-mt50 {
  margin-top: 50% !important;
}

.u-mt55 {
  margin-top: 55% !important;
}

.u-mt60 {
  margin-top: 60% !important;
}

.u-mt65 {
  margin-top: 65% !important;
}

.u-mt70 {
  margin-top: 70% !important;
}

.u-mt75 {
  margin-top: 75% !important;
}

.u-mt80 {
  margin-top: 80% !important;
}

.u-mt85 {
  margin-top: 85% !important;
}

.u-mt90 {
  margin-top: 90% !important;
}

.u-mt95 {
  margin-top: 95% !important;
}

.u-mt100 {
  margin-top: 100% !important;
}

/* MarginBottom */
.u-mb0 {
  margin-bottom: 0% !important;
}

.u-mb5 {
  margin-bottom: 5% !important;
}

.u-mb10 {
  margin-bottom: 10% !important;
}

.u-mb15 {
  margin-bottom: 15% !important;
}

.u-mb20 {
  margin-bottom: 20% !important;
}

.u-mb25 {
  margin-bottom: 25% !important;
}

.u-mb30 {
  margin-bottom: 30% !important;
}

.u-mb35 {
  margin-bottom: 35% !important;
}

.u-mb40 {
  margin-bottom: 40% !important;
}

.u-mb45 {
  margin-bottom: 45% !important;
}

.u-mb50 {
  margin-bottom: 50% !important;
}

.u-mb55 {
  margin-bottom: 55% !important;
}

.u-mb60 {
  margin-bottom: 60% !important;
}

.u-mb65 {
  margin-bottom: 65% !important;
}

.u-mb70 {
  margin-bottom: 70% !important;
}

.u-mb75 {
  margin-bottom: 75% !important;
}

.u-mb80 {
  margin-bottom: 80% !important;
}

.u-mb85 {
  margin-bottom: 85% !important;
}

.u-mb90 {
  margin-bottom: 90% !important;
}

.u-mb95 {
  margin-bottom: 95% !important;
}

.u-mb100 {
  margin-bottom: 100% !important;
}

/* ------------------------------------
 * Padding
 * --------------------------------- */
/* PaddingTop */
.u-pt0 {
  padding-top: 0% !important;
}

.u-pt5 {
  padding-top: 5% !important;
}

.u-pt10 {
  padding-top: 10% !important;
}

.u-pt15 {
  padding-top: 15% !important;
}

.u-pt20 {
  padding-top: 20% !important;
}

.u-pt25 {
  padding-top: 25% !important;
}

.u-pt30 {
  padding-top: 30% !important;
}

.u-pt35 {
  padding-top: 35% !important;
}

.u-pt40 {
  padding-top: 40% !important;
}

.u-pt45 {
  padding-top: 45% !important;
}

.u-pt50 {
  padding-top: 50% !important;
}

.u-pt55 {
  padding-top: 55% !important;
}

.u-pt60 {
  padding-top: 60% !important;
}

.u-pt65 {
  padding-top: 65% !important;
}

.u-pt70 {
  padding-top: 70% !important;
}

.u-pt75 {
  padding-top: 75% !important;
}

.u-pt80 {
  padding-top: 80% !important;
}

.u-pt85 {
  padding-top: 85% !important;
}

.u-pt90 {
  padding-top: 90% !important;
}

.u-pt95 {
  padding-top: 95% !important;
}

.u-pt100 {
  padding-top: 100% !important;
}

/* PaddingBottom */
.u-pb0 {
  padding-bottom: 0% !important;
}

.u-pb5 {
  padding-bottom: 5% !important;
}

.u-pb10 {
  padding-bottom: 10% !important;
}

.u-pb15 {
  padding-bottom: 15% !important;
}

.u-pb20 {
  padding-bottom: 20% !important;
}

.u-pb25 {
  padding-bottom: 25% !important;
}

.u-pb30 {
  padding-bottom: 30% !important;
}

.u-pb35 {
  padding-bottom: 35% !important;
}

.u-pb40 {
  padding-bottom: 40% !important;
}

.u-pb45 {
  padding-bottom: 45% !important;
}

.u-pb50 {
  padding-bottom: 50% !important;
}

.u-pb55 {
  padding-bottom: 55% !important;
}

.u-pb60 {
  padding-bottom: 60% !important;
}

.u-pb65 {
  padding-bottom: 65% !important;
}

.u-pb70 {
  padding-bottom: 70% !important;
}

.u-pb75 {
  padding-bottom: 75% !important;
}

.u-pb80 {
  padding-bottom: 80% !important;
}

.u-pb85 {
  padding-bottom: 85% !important;
}

.u-pb90 {
  padding-bottom: 90% !important;
}

.u-pb95 {
  padding-bottom: 95% !important;
}

.u-pb100 {
  padding-bottom: 100% !important;
}

/* add20170924 */
.m-card__body__noimage{
  width:100%;
  padding:0 0 0 20px;
}

.m-card-img__body__noimage{
 width:100%;
 margin-left:60px;
}

.m-card__figure__notext{
  width:50%;
  margin:0 auto;
}

.m-list-example__figure_notext{
  width:66%;
  margin:0 auto;
}

.m-list-example__figure_notext span {
  padding: 8px 0;
  font-style: italic;
  font-size: 1.4rem;
  text-align: center;
  color: #fff;
  line-height: 1;
  display: block;
  background: #33a1db;
}

.m-list-type__txt__noimage{
  width:100%;
}

.m-card__body > p{
  margin-top:0 !important;
}


.m-card-profile__body table{
  line-height: 1.8;
}

.m-media-este__content img{
  width:100% !important;
}

/* pager */

.wp-pagenavi{
  display:table;
}

.wp-pagenavi span.pages{
  display:none;
}

.wp-pagenavi a.page,
.wp-pagenavi span.current{
  display: table-cell;
  padding-right:40px;
}



.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink{
  display: inline-block;
  position:relative;
  text-indent: -999em;
}

.wp-pagenavi a.previouspostslink::after{
  right: 40px;
  transform: rotate(-180deg);
}

.wp-pagenavi a.nextpostslink::after{
  left:0;
}

.wp-pagenavi a.page{
  font-style: italic;
  font-weight: normal;
  text-decoration: underline;
}

.wp-pagenavi span.current{
  font-style: italic;
  font-weight: normal;
  color: #33a1db;
  text-decoration: underline;
}

.wp-pagenavi a.previouspostslink::after,
.wp-pagenavi a.nextpostslink::after{
  width: 9px;
  height: 13px;
  margin: -7px 0 0;
  position: absolute;
  top: 50%;
  background-position: -90px -10px;
  background-image: url(../img/icn_sprite.png);
  content: '';
}

.m-tbl table th, .m-tbl table td {
  line-height: 1.8;
}

/* category_color */

.m-list-topics__label{
  padding:0;
}

.m-grid__label.news,
.m-list-topics__label.news,
.m-hdg__label.news{
  background:#F0D0E4;
}

.m-grid__label.media,
.m-list-topics__label.media,
.m-hdg__label.media{
  background:#FEF7D5;
}

.m-grid__label.medical_info,
.m-list-topics__label.medical_info,
.m-hdg__label.medical_info{
  background:#EEF5D3;
}

.m-grid__label.blog,
.m-list-topics__label.blog,
.m-hdg__label.blog{
  background:#C8EFEA;
}

.m-grid__label.activity,
.m-list-topics__label.activity,
.m-hdg__label.activity{
  background:#DDD3F5;
}

.m-grid__figure[data-type="main"] img {
  width: 100%;
  height: 240px;
}

.m-card p{
  margin-top:0;
}

@media screen and (max-width: 767px) {
  .m-list-example__figure_notext{
    width:100%;
    padding-left:0;
  }

  .m-card__figure__notext{
    width:100%;
    padding-left:0;
  }

  .m-card__body__noimage{
    width:100%;
    padding-left:0;
  }

  .m-list-type__txt__noimage{
    width:100%;
    padding-left:0;
  }

  .m-card-img__body__noimage{
    width:100%;
    margin-left:0;
  }

  .m-list-type__item {
    width: 100%;
    float: none;
  }

  .m-media-figure iframe{
    width:100%;
  }

  .m-grid__inner {
    height: auto;
    padding: 0 30px 60px 30px;
  }

  m-media-este__content--sp img{
    width:100%;
    min-width: 320px;
  }
}



/******* add 171129 *******/

.price-tbl p{
    margin-top: 15px;
}

.price-tbl table{
	border-collapse:collapse;
	border-spacing:0;
}

.price-tbl table th{
    background-color: #dfe8f1;
    border-bottom: 1px solid #b3c0ce;
    font-size: 1.6rem;
    font-weight: normal;
    padding: 10px 30px;
    width: 452px;
}

.price-tbl table tr:first-of-type th{
    border-left: 1px solid #b3c0ce;
    border-top: 1px solid #b3c0ce;
    width: 344px;
}

.price-tbl table tr:first-of-type th:first-of-type{
    border-left: none;
    width: 452px;
}

.price-tbl table td{
    border-bottom: 1px solid #b3c0ce;
    border-left: 1px solid #b3c0ce;
    font-size: 1.6rem;
    font-weight: normal;
    padding: 10px 30px;
    width: 344px;
}

.price-tbl table td span{
    margin-left: 15px;
}

@media screen and (max-width: 767px) {
.price-tbl table{
    width: 100%;
}

.price-tbl table th,
.price-tbl table tr:first-of-type th:first-of-type{
    padding: 5px 10px;
    width: 8%;
}

.price-tbl table tr:first-of-type th,
.price-tbl table td{
    padding: 5px 10px;
    width: 20%;
}

.price-tbl table th span,
.price-tbl table td span{
    margin-left: 0;
    display: block;
}

.price-tbl table.other th,
.price-tbl table.other tr:first-of-type th:first-of-type{
    width: 40%;
}

.price-tbl table.other tr:first-of-type th,
.price-tbl table.other td{
    width: 40%;
}
}

.price-tbl table td.price_tdbdr{
    border-top: 1px solid #b3c0ce;	
}


@media screen and (min-width: 768px){
	.pc_only{
		display:block;
	}
	.sp_only {
		display: none;
	}
}


@media screen and (max-width: 767px){

.pc_only{
	display:none;
}

.sp_only {
	display: block;
}
}

/******* add 171129 *******/

/******* add 230620 *******/

.milano-tbl p{
    margin-top: 15px;
}

.milano-tbl table{
	border-collapse:collapse;
	border-spacing:0;
}

.milano-tbl table th{
    background-color: #dfe8f1;
    border-bottom: 1px solid #b3c0ce;
    font-size: 1.6rem;
    font-weight: normal;
    padding: 10px 30px;
    width: 200px;
}

.milano-tbl table tr:first-of-type th{
    border-left: 1px solid #b3c0ce;
    border-top: 1px solid #b3c0ce;
    width: 596px;
}

.milano-tbl table tr:first-of-type th:first-of-type{
    border-left: none;
    width: 200px;
}

.milano-tbl table td{
    border-bottom: 1px solid #b3c0ce;
    border-left: 1px solid #b3c0ce;
    font-size: 1.6rem;
    font-weight: normal;
    padding: 10px 30px;
    width: 596px;
}

.milano-tbl table td span{
    margin-left: 15px;
}

@media screen and (max-width: 767px) {
.milano-tbl table{
    width: 100%;
}

.milano-tbl table th,
.milano-tbl table tr:first-of-type th:first-of-type{
    padding: 5px 10px;
    width: 8%;
}

.milano-tbl table tr:first-of-type th,
.milano-tbl table td{
    padding: 5px 10px;
    width: 20%;
}

.milano-tbl table th span,
.milano-tbl table td span{
    margin-left: 0;
    display: block;
}

.milano-tbl table.other th,
.milano-tbl table.other tr:first-of-type th:first-of-type{
    width: 40%;
}

.milano-tbl table.other tr:first-of-type th,
.milano-tbl table.other td{
    width: 40%;
}
}

.milano-tbl table td.price_tdbdr{
    border-top: 1px solid #b3c0ce;	
}

/******* add 230620 *******/

.m-card-profile {
  max-width: 1170px;
  margin: 0 auto 150px;
  padding: 0 15px;
}
@media screen and (max-width: 767px) {
  .m-card-profile{
      margin-bottom: 60px;
  }
}	
/****** n231229 ******/ 