@charset "UTF-8";
/* form.css */
/* normalize.scss */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/*
 * Corrects `block` display not defined in IE6/7/8/9 & FF3.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
  display: block; }

/*
 * Corrects `inline-block` display not defined in IE6/7/8/9 & FF3.
 */
audio,
canvas,
video {
  display: inline-block; }

/*
 * Prevents modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/*
 * Addresses styling for `hidden` attribute not present in IE7/8/9, FF3, S4.
 * Known issue: no IE6 support.
 */
[hidden] {
  display: none; }

/* ==========================================================================
   Base
   ========================================================================== */
/*
 * 1. Corrects text resizing oddly in IE6/7 when body `font-size` is set using
 *    `em` units.
 * 2. Prevents iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-size: 100%;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 2 */ }

/*
 * Addresses `font-family` inconsistency between `textarea` and other form
 * elements.
 */
/*
 * Addresses margins handled incorrectly in IE6/7.
 */
body {
  margin: 0; }

img {
  vertical-align: top; }

/* ==========================================================================
   Links
   ========================================================================== */
/*
 * Addresses `outline` inconsistency between Chrome and other browsers.
 */
/*a:focus {
    outline: thin dotted;
}*/
/*
 * Improves readability when focused and also mouse hovered in all browsers.
 * people.opera.com/patrickl/experiments/keyboard/test
 */
/*a:active,
a:hover {
    outline: 0;
}*/
/* ==========================================================================
   Typography
   ========================================================================== */
/*
 * Addresses font sizes and margins set differently in IE6/7.
 * Addresses font sizes within `section` and `article` in FF4+, Chrome, S5.
 */
h1, h2, h3, h4, h5, h6 {
  font-size: 1.0em;
  font-weight: normal;
  margin: 0;
  padding: 0; }

/*
 * Addresses styling not present in IE7/8/9, S5, Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/*
 * Addresses style set to `bolder` in FF3+, S4/5, Chrome.
 */
b,
strong {
  font-weight: bold; }

blockquote {
  margin: 1em 40px; }

/*
 * Addresses styling not present in S5, Chrome.
 */
dfn {
  font-style: italic; }

/*
 * Addresses styling not present in IE6/7/8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/*
 * Addresses margins set differently in IE6/7.
 */
p,
pre {
  margin: 0;
  padding: 0; }

/*
 * Corrects font family set oddly in IE6, S4/5, Chrome.
 * en.wikipedia.org/wiki/User:Davidgothberg/Test59
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  _font-family: 'courier new', monospace;
  font-size: 1em; }

/*
 * Improves readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word; }

/*
 * Addresses CSS quotes not supported in IE6/7.
 */
q {
  quotes: none; }

/*
 * Addresses `quotes` property not supported in S4.
 */
q:before,
q:after {
  content: '';
  content: none; }

small {
  font-size: 75%; }

/*
 * Prevents `sub` and `sup` affecting `line-height` in all browsers.
 * gist.github.com/413930
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* ==========================================================================
   Lists
   ========================================================================== */
/*
 * Addresses margins set differently in IE6/7.
 */
dl,
menu,
ol,
ul {
  margin: 0; }

dd {
  margin: 0; }

/*
 * Addresses paddings set differently in IE6/7.
 */
menu,
ol,
ul {
  padding: 0; }

/*
 * Corrects list images handled incorrectly in IE7.
 */
ul,
ol {
  list-style: none;
  list-style-image: none; }

/* ==========================================================================
   Embedded content
   ========================================================================== */
/*
 * 1. Removes border when inside `a` element in IE6/7/8/9, FF3.
 * 2. Improves image quality when scaled in IE7.
 *    code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/
 */
img {
  border: 0;
  /* 1 */
  -ms-interpolation-mode: bicubic;
  /* 2 */
  margin: 0;
  padding: 0; }

/*
 * Corrects overflow displayed oddly in IE9.
 */
svg:not(:root) {
  overflow: hidden; }

/* ==========================================================================
   Figures
   ========================================================================== */
/*
 * Addresses margin not present in IE6/7/8/9, S5, O11.
 */
figure {
  margin: 0; }

/* ==========================================================================
   Forms
   ========================================================================== */
/*
 * Corrects margin displayed oddly in IE6/7.
 */
form {
  margin: 0; }

/*
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/*
 * 1. Corrects color not being inherited in IE6/7/8/9.
 * 2. Corrects text not wrapping in FF3.
 * 3. Corrects alignment displayed oddly in IE6/7.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  white-space: normal;
  /* 2 */ }

/*
 * 1. Corrects font size not being inherited in all browsers.
 * 2. Addresses margins set differently in IE6/7, FF3+, S5, Chrome.
 * 3. Improves appearance and consistency in all browsers.
 */
button,
input,
select,
textarea {
  font-size: 100%;
  /* 1 */
  margin: 0;
  /* 2 */
  vertical-align: baseline;
  /* 3 */ }

/*
 * Addresses FF3/4 setting `line-height` on `input` using `!important` in the
 * UA stylesheet.
 */
button,
input {
  line-height: normal; }

/*
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Corrects inability to style clickable `input` types in iOS.
 * 3. Improves usability and consistency of cursor style between image-type
 *    `input` and others.
 * 4. Removes inner spacing in IE7 without affecting normal text inputs.
 *    Known issue: inner spacing remains in IE6.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/*
 * Re-set default cursor for disabled elements.
 */
button[disabled],
input[disabled] {
  cursor: default; }

/*
 * 1. Addresses box sizing set to content-box in IE8/9.
 * 2. Removes excess padding in IE8/9.
 * 3. Removes excess padding in IE7.
 *    Known issue: excess padding remains in IE6.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/*
 * 1. Addresses `appearance` set to `searchfield` in S5, Chrome.
 * 2. Addresses `box-sizing` set to `border-box` in S5, Chrome (include `-moz`
 *    to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box; }

/*
 * Removes inner padding and search cancel button in S5, Chrome on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/*
 * Removes inner padding and border in FF3+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/*
 * 1. Removes default vertical scrollbar in IE6/7/8/9.
 * 2. Improves readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */ }

/* ==========================================================================
   Tables
   ========================================================================== */
/*
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

/* ==========================================================================
   hr
   ========================================================================== */
hr {
  visibility: hidden; }

/* ==========================================================================
   hr
   ========================================================================== */
a {
  outline: none; }

a, a:link {
  outline: none; }

a:visited {
  outline: none; }

/* module_corp */
* {
  margin: 0;
  padding: 0; }

.orange02 {
  color: #ff8c00; }

body {
  color: #333;
  font-family: "Noto Sans JP",Meiryo, "メイリオ",Osaka,"MS P Gothic", "ＭＳ Ｐゴシック",sans-serif;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.7;
  margin: 0;
  padding: 0; }

@media screen and (max-width: 1079px) {
  /* スマホ, Tablet */
  body {
    width: 100%; } }
/* End MQ */
@media screen and (max-width: 767px) {
  /* スマホ */
  .pc_only {
    display: none !important; } }
/* End MQ */
@media screen and (min-width: 768px) {
  /* Tablet, PC */
  .sp_only {
    display: none !important; } }
/* End MQ */
a {
  color: #333;
  transition: .2s;
  text-decoration: none; }

a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -moz-opacity: 0.7;
  transition: .2s; }

#screen {
  position: relative;
  min-height: 100%;
  text-align: left; }
  @media screen and (max-width: 1079px) {
    #screen {
      padding-top: 64px;
      margin-top: -64px; } }

#container {
  margin: 0 auto;
  clear: both;
  position: relative;
  min-height: 500px; }
  @media screen and (max-width: 1079px) {
    #container {
      margin-top: 64px; } }

section,
.section {
  clear: both;
  text-align: left;
  margin: 0; }

section p,
.section p {
  text-align: left; }

.fadeInDown {
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 1s;
  -ms-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
  visibility: visible !important; }

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0); } }
@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    transform: translateY(-20px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); } }
/*--------------------------------------
1　COLUMN用
--------------------------------------*/
.content {
  /* 背景100％時のコンテンツ区切り */
  width: 100%;
  text-align: left; }

.content section,
.content .section {
  margin: 0 auto; }

@media screen and (max-width: 1079px) {
  /* スマホ */
  .content section,
  .content .section {
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box; } }
/* End MQ */
@media screen and (min-width: 1080px) {
  /* PC */
  .content section,
  .content .section {
    width: 1080px;
    padding-left: 0;
    padding-right: 0; } }
/* End MQ */
/*--------------------------------------
2　COLUMN用
--------------------------------------*/
#contents {
  clear: both;
  text-align: left;
  min-height: 600px;
  padding: 0;
  margin: 0 auto; }

@media screen and (max-width: 1079px) {
  /* スマホ, Tablet */
  #contents {
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box;
    flex-flow: column; } }
/* End MQ */
@media screen and (min-width: 1080px) {
  /* PC */
  #contents {
    width: 1080px; } }
/* End MQ */
@media screen and (min-width: 768px) {
  #mainContents_02 {
    /* ONE COLUMNのページでの使用は禁止。 ONE COLUMNでは<main>を使用すること　*/
    width: 74%;
    float: right; } }
/* End MQ */
/* ------------------------------------------------
サイドバー
------------------------------------------------ */
#columnLeft {
  overflow: hidden;
  margin: 0 0 10px 0; }

@media screen and (min-width: 768px) {
  #columnLeft {
    width: 23%;
    float: left; } }
/* End MQ */
#columnLeft form {
  margin: 0; }

#columnLeft ul {
  margin: 0;
  padding: 0; }

#columnLeft ul li {
  list-style-type: none; }

#columnLeft #widget_area ul ul {
  margin: 0 0 20px 20px; }

#columnLeft #widget_area ul ul ul, #columnLeft #widget_area ul ol {
  margin: 0 0 0 10px; }

#columnLeft section, #columnLeft .section {
  overflow: hidden;
  margin: 0 0 10px 0; }

#columnLeft .side_hd p {
  padding: 0 0 0 0;
  font-weight: bold;
  margin: 0 0 10px 0; }

.default_list ul {
  margin-left: 25px; }
  .default_list ul li {
    list-style-type: disc; }
    .default_list ul li:last-child {
      margin-bottom: 0; }

.nayami_bottom p {
  text-align: center;
  font-weight: bold; }
  .nayami_bottom p + p {
    font-size: 1.25rem;
    margin-bottom: 20px; }

.nayami {
  background: #f0f0f0;
  border: solid 2px #e0e0e0;
  padding: 20px 10px 10px;
  box-sizing: border-box;
  margin: 0 0 50px;
  position: relative; }
  @media screen and (min-width: 768px) {
    .nayami {
      padding: 40px 30px 10px;
      margin: 0 0 50px; } }
  .nayami img {
    position: absolute;
    left: 10px;
    top: -140px;
    width: 90px;
    height: auto; }
    @media screen and (min-width: 768px) {
      .nayami img {
        width: 120px;
        left: 20px;
        top: -150px; } }
  .nayami::after {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -40px;
    margin: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 60px 0 60px;
    border-color: #e0e0e0 transparent transparent transparent;
    content: ""; }
  .nayami ul {
    display: flex;
    justify-content: space-between;
    font-size: 1rem;
    font-weight: 700;
    box-sizing: border-box;
    margin-bottom: 20px;
    flex-wrap: wrap; }
    @media screen and (min-width: 768px) {
      .nayami ul {
        font-size: 1.125rem; } }
    .nayami ul li {
      width: 100%;
      position: relative;
      padding-left: 40px;
      margin-bottom: 15px;
      border-bottom: dashed 1px #e0e0e0;
      padding-bottom: 5px; }
      @media screen and (min-width: 768px) {
        .nayami ul li {
          width: 45%; } }
      .nayami ul li:last-child {
        width: 100%; }
      .nayami ul li::after {
        position: absolute;
        left: 0;
        top: -5px;
        background: url("../images/chintai_renovation/check01.png") no-repeat;
        width: 50px;
        height: 36px;
        background-size: contain;
        content: ""; }

.nayami_img {
  width: 100%;
  height: auto;
  text-align: center;
  position: relative;
  margin: 20px auto 80px; }
  .nayami_img::after {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -40px;
    margin: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 60px 0 60px;
    border-color: #ccc transparent transparent transparent;
    content: ""; }
  .nayami_img img {
    width: 100%;
    height: auto;
    max-width: 970px; }

/* ------------------------------------------------
Hタグ
------------------------------------------------ */
section h1 a,
section h2 a,
section h3 a {
  text-decoration: none; }

section h1 a:hover,
section h2 a:hover,
section h3 a:hover,
section h1 a:active,
section h2 a:active,
section h3 a:active {
  text-decoration: underline; }

/* ------------------------------------------------
ぱんくずリスト
------------------------------------------------ */
.breadcrumbs {
  margin: 10px auto; }

.breadcrumbs p {
  margin: 0;
  font-size: .875rem; }

.content section,
.content .section {
  margin: 0 auto; }

@media screen and (max-width: 1079px) {
  /* スマホ */
  .breadcrumbs {
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box; } }
/* End MQ */
@media screen and (min-width: 1080px) {
  /* PC */
  .breadcrumbs {
    width: 1080px;
    padding-left: 0;
    padding-right: 0; } }
/* End MQ */
/* ------------------------------------------------
width 100% 画像幅100%
sectionに枠, 画像幅100%
------------------------------------------------ */
.single-body,
.entry_single-body {
  width: 100%;
  overflow: hidden; }

.single-body img,
.entry_single-body img {
  max-width: 100%;
  height: auto;
  margin: 0 0 5px 0; }

/* ------------------------------------------------
width 100%, バナー×2 横並べ
------------------------------------------------ */
.half {
  width: 100%;
  overflow: hidden; }

.half .element_01,
.half .element_02 {
  overflow: hidden; }

.half .element_01 img,
.half .element_02 img {
  width: 100%;
  height: auto; }

@media screen and (max-width: 767px) {
  /* スマホ */
  .half .element_01,
  .half .element_02 {
    width: 100%; }

  .half .element_01 {
    margin-bottom: 15px; } }
/* End MQ */
@media screen and (min-width: 768px) and (max-width: 1079px) {
  /* Tablet */
  .half .element_01,
  .half .element_02 {
    width: 49%; } }
/* End MQ */
@media screen and (min-width: 1080px) {
  /* PC */
  .half .element_01,
  .half .element_02 {
    width: 340px; } }
/* End MQ */
@media screen and (min-width: 768px) {
  /* Tablet, PC */
  .half .element_01 {
    float: left; }

  .half .element_02 {
    float: right; } }
/* End MQ */
/* ------------------------------------------------
width 100%, イメージ×3 横並べ
------------------------------------------------ */
.third {
  width: 100%;
  overflow: hidden;
  margin: 0 auto; }

.third .element_01,
.third .element_02 {
  overflow: hidden; }

.third .element_01 img,
.third .element_02 img {
  margin: 0 0 0 0;
  width: 100%;
  height: auto; }

@media screen and (max-width: 767px) {
  /* スマホ */
  .third .element_01,
  .third .element_02 {
    width: 100%; }

  .third .element_01 {
    margin-bottom: 15px; } }
/* End MQ */
@media screen and (min-width: 768px) and (max-width: 1079px) {
  /* Tablet */
  .third {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }

  .third .element_01,
  .third .element_02 {
    width: 32%; } }
/* End MQ */
@media screen and (min-width: 1080px) {
  /* PC */
  .third .element_01,
  .third .element_02 {
    width: 226px; }

  .third .element_01 {
    float: left;
    margin-right: 16px; }

  .third .element_02 {
    float: right;
    margin-right: 0; } }
/* End MQ */
/* リストによる横並び */
.list_pc3_smp1, .list_pc3_smp1 ul, .list_pc3_smp1 li,
.list_pc3_smp2, .list_pc3_smp2 ul, .list_pc3_smp2 li {
  overflow: hidden; }

.list_pc3_smp1 li img,
.list_pc3_smp2 li img {
  width: 100%;
  height: auto; }

@media screen and (max-width: 767px) {
  .list_pc3_smp1 li {
    width: 100%;
    margin-bottom: 15px; }

  .list_pc3_smp1 li:last-child {
    margin-bottom: 0; } }
/* End MQ */
@media screen and (max-width: 1079px) {
  /* スマホ, Tablet */
  .list_pc3_smp2 li {
    width: 49%;
    float: left;
    margin-bottom: 16px; }

  .list_pc3_smp2 li:nth-child(2n) {
    float: right; }

  .list_pc3_smp2 li:nth-child(2n+1) {
    clear: both; } }
/* End MQ */
@media screen and (min-width: 768px) and (max-width: 1079px) {
  /* Tablet */
  .list_pc3_smp1 ul,
  .list_pc3_smp2 ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }

  .list_pc3_smp1 li,
  .list_pc3_smp2 li {
    width: 32%; } }
/* End MQ */
@media screen and (min-width: 1080px) {
  /* PC */
  .list_pc3_smp1 li,
  .list_pc3_smp2 li {
    float: left;
    width: 226px;
    margin-right: 16px;
    margin-bottom: 16px; }

  .list_pc3_smp1 li:nth-child(3n),
  .list_pc3_smp2 li:nth-child(3n) {
    float: right;
    margin-right: 0; }

  .list_pc3_smp1 li:nth-child(3n+1),
  .list_pc3_smp2 li:nth-child(3n+1) {
    clear: both; } }
/* End MQ */
/* ------------------------------------------------
width 100%, イメージ×3 横並べ liquid
------------------------------------------------ */
.third-liquid {
  width: 100%;
  overflow: hidden;
  margin: 0 auto; }

.third-liquid .element_01,
.third-liquid .element_02 {
  overflow: hidden; }

.third-liquid .element_01 img,
.third-liquid .element_02 img {
  margin: 0 0 0 0;
  width: 100%;
  height: auto; }

.third-liquid .element_01,
.third-liquid .element_02 {
  width: 30%; }

.third-liquid .element_01 {
  float: left;
  margin: 0 5% 0 0; }

.third-liquid .element_02 {
  float: right; }

/* ------------------------------------------------
width 100%, イメージ×4 横並べ
------------------------------------------------ */
.list_pc4_smp2, .list_pc4_smp2 ul, .list_pc4_smp2 li {
  overflow: hidden; }

.list_pc4_smp2 li {
  float: left; }

.list_pc4_smp2 li img {
  width: 100%;
  height: auto; }

@media screen and (max-width: 1079px) {
  /* スマホ, Tablet */
  .list_pc4_smp2 li {
    width: 49%;
    margin-bottom: 15px; }

  .list_pc4_smp2 li:nth-child(2n) {
    float: right; }

  .list_pc4_smp2 li:nth-child(2n+1) {
    clear: both; } }
/* End MQ */
@media screen and (min-width: 1080px) {
  /* PC */
  .list_pc4_smp2 li {
    width: 167px;
    margin-right: 24px;
    margin-bottom: 24px; }

  .list_pc4_smp2 li:nth-child(2n) {
    float: right;
    margin-right: 0; }

  .list_pc4_smp2 li:nth-child(2n+1) {
    clear: both; } }
/* End MQ */
/* ------------------------------------------------
width100%, 左イメージ×1 右コンテンツ
------------------------------------------------ */
.left_imgfix,
.left_imgfix-02 {
  width: 100%;
  overflow: hidden; }

.left_imgfix img {
  width: 130px;
  float: left;
  margin: 0 10px 10px 0; }

.left_imgfix-02 .element_01 {
  width: 230px; }

.left_imgfix-02 .element_01 img {
  width: 100%; }

@media screen and (max-width: 767px) {
  /* スマホ */
  .left_imgfix-02 .element_01 {
    width: 230px;
    margin: 0 auto 10px auto; } }
/* End MQ */
@media screen and (min-width: 768px) {
  /* Tablet, PC */
  .left_imgfix-02 .element_01 {
    width: 230px;
    float: left; }

  .left_imgfix-02 .element_02 {
    float: right; } }
/* End MQ */
@media screen and (min-width: 768px) and (max-width: 1079px) {
  /* Tablet */
  .left_imgfix-02 .element_02 {
    width: calc(100% - 250px); } }
/* End MQ */
@media screen and (min-width: 1080px) {
  /* PC */
  .left_imgfix-02 .element_02 {
    width: 460px; } }
/* End MQ */
/* ------------------------------------------------
左コンテンツ 右イメージ×1
------------------------------------------------ */
.right_imgfix,
.right_imgfix-02 {
  width: 100%;
  overflow: hidden; }

.right_imgfix img {
  width: 130px;
  float: right;
  margin: 0 0 10px 10px; }

.right_imgfix-02 .element_01 {
  width: 230px; }

.right_imgfix-02 .element_01 img {
  width: 100%; }

@media screen and (max-width: 767px) {
  /* スマホ */
  .right_imgfix-02 .element_01 {
    width: 230px;
    margin: 0 auto 10px auto; } }
/* End MQ */
@media screen and (min-width: 768px) {
  /* Tablet, PC */
  .right_imgfix-02 .element_01 {
    width: 230px;
    float: right; }

  .right_imgfix-02 .element_02 {
    float: left; } }
/* End MQ */
@media screen and (min-width: 768px) and (max-width: 1079px) {
  /* Tablet */
  .right_imgfix-02 .element_02 {
    width: calc(100% - 250px); } }
/* End MQ */
@media screen and (min-width: 1080px) {
  /* PC */
  .right_imgfix-02 .element_02 {
    width: 460px; } }
/* End MQ */
/* ------------------------------------------------
　1カラムレイアウト 4分割
------------------------------------------------ */
.list_w_pc4_smp2,
.list_w_pc4_smp2 ul,
.list_w_pc4_smp2 li {
  overflow: hidden; }

.list_w_pc4_smp2 li {
  float: left; }

.list_w_pc4_smp2 li img {
  width: 100%;
  height: auto; }

@media screen and (max-width: 1079px) {
  /* スマホ, Tablet */
  .list_w_pc4_smp2 li {
    width: 49%; }

  .list_w_pc4_smp2 li:nth-child(2n) {
    float: right; }

  .list_w_pc4_smp2 li:nth-child(2n+1) {
    clear: both; } }
/* End MQ */
@media screen and (min-width: 1080px) {
  /* PC */
  .list_w_pc4_smp2 li {
    width: 255px;
    margin-right: 20px; }

  .list_w_pc4_smp2 li:nth-child(4n) {
    float: right;
    margin-right: 0; }

  .list_w_pc4_smp2 li:nth-child(4n+1) {
    clear: both; } }
/* End MQ */
/* ------------------------------------------------
　1カラムレイアウト 3分割
------------------------------------------------ */
.list_w_pc3_smp1, .list_w_pc3_smp1 ul, .list_w_pc3_smp1 li,
.list_w_pc3_smp2, .list_w_pc3_smp2 ul, .list_w_pc3_smp2 li,
.list_w_pc3_smp2, .list_w_pc3_smp3 ul, .list_w_pc3_smp3 li {
  overflow: hidden; }

.list_w_pc3_smp1 li img,
.list_w_pc3_smp2 li img,
.list_w_pc3_smp3 li img {
  width: 100%;
  height: auto; }

@media screen and (max-width: 767px) {
  .list_w_pc3_smp1 li {
    width: 100%;
    margin-bottom: 15px; }

  .list_w_pc3_smp1 li:last-child {
    margin-bottom: 0; } }
/* End MQ */
@media screen and (max-width: 1079px) {
  /* スマホ, Tablet */
  .list_w_pc3_smp2 li {
    width: 49%;
    float: left;
    margin-bottom: 16px; }

  .list_w_pc3_smp2 li:nth-child(2n) {
    float: right; }

  .list_w_pc3_smp2 li:nth-child(2n+1) {
    clear: both; } }
/* End MQ */
@media screen and (max-width: 1079px) {
  /* スマホ, Tablet */
  .list_w_pc3_smp3 ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }

  .list_w_pc3_smp3 li {
    width: 32%; } }
/* End MQ */
@media screen and (min-width: 768px) and (max-width: 1079px) {
  /* Tablet */
  .list_w_pc3_smp1 ul,
  .list_w_pc3_smp2 ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }

  .list_w_pc3_smp1 li,
  .list_w_pc3_smp2 li {
    width: 32%; } }
/* End MQ */
@media screen and (min-width: 1080px) {
  /* PC */
  .list_w_pc3_smp1 li,
  .list_w_pc3_smp2 li,
  .list_w_pc3_smp3 li {
    float: left;
    width: 340px;
    margin-right: 30px;
    margin-bottom: 20px; }

  .list_w_pc3_smp1 li:nth-child(3n),
  .list_w_pc3_smp2 li:nth-child(3n),
  .list_w_pc3_smp3 li:nth-child(3n) {
    float: right;
    margin-right: 0; }

  .list_w_pc3_smp1 li:nth-child(3n+1),
  .list_w_pc3_smp2 li:nth-child(3n+1),
  .list_w_pc3_smp3 li:nth-child(3n+1) {
    clear: both; } }
/* End MQ */
/* ------------------------------------------------
　1カラムレイアウト sigle-doouble,
　1カラムレイアウト double-single,
　1カラムレイアウト w-half, list_w02
------------------------------------------------ */
.single-double, .double-single,
.w-half, .list_w_pc2_smp1, .list_w_pc2_smp2 {
  width: 100%;
  overflow: hidden;
  clear: both; }

.single-double .area_01, .single-double .area_02,
.double-single .area_01, .double-single .area_02,
.w-half .area_01, .w-half .area_02,
.list_w_pc2_smp1 li,
.list_w_pc2_smp2 li {
  overflow: hidden; }

.single-double .area_01 img,
.double-single .area_01 img,
.w-half .area_01 img,
.w-half .area_02 img,
.list_w_pc2_smp1 li img,
.list_w_pc2_smp2 li img {
  width: 100%;
  height: auto; }

@media screen and (max-width: 767px) {
  /* スマホ */
  .single-double .area_01,
  .double-single .area_01,
  .w-half .area_01,
  .list_w_pc2_smp1 li {
    margin-bottom: 15px; } }
/* End MQ */
@media screen and (max-width: 1079px) {
  /* スマホ, Tablet */
  .list_w_pc2_smp2 li {
    float: left;
    margin-bottom: 15px;
    width: 49%; }

  .list_w_pc2_smp2 li:nth-child(2n) {
    float: right; }

  .list_w_pc2_smp2 li:nth-child(2n+1) {
    clear: both; } }
/* End MQ */
@media screen and (min-width: 768px) {
  /* Tablet, PC */
  .single-double .area_01,
  .double-single .area_02 {
    float: left; }

  .single-double .area_02,
  .double-single .area_01 {
    float: right; }

  .w-half .area_01 {
    float: left; }

  .w-half .area_02 {
    float: right; }

  .list_w_pc1_smp1 li:nth-child(2n) {
    float: right; }

  .list_w_pc2_smp1 li:nth-child(2n+1) {
    clear: both; } }
/* End MQ */
@media screen and (min-width: 768px) and (max-width: 1079px) {
  /* Tablet */
  .single-double .area_01,
  .double-single .area_02 {
    width: 29%; }

  .single-double .area_02,
  .double-single .area_01 {
    width: 70%; }

  .w-half .area_01,
  .w-half .area_02 {
    width: 49%; }

  .list_w_pc1_smp1 li {
    float: left;
    margin-bottom: 15px;
    width: 49%; } }
/* End MQ */
@media screen and (min-width: 1080px) {
  /* PC */
  .single-double .area_01,
  .double-single .area_02 {
    width: 340px; }

  .single-double .area_02,
  .double-single .area_01 {
    width: 710px; }

  .w-half .area_01,
  .w-half .area_02 {
    width: 530px; }

  .list_w_pc2_smp1 li,
  .list_w_pc2_smp2 li {
    width: 530px;
    float: left; }

  .list_w_pc2_smp1 li:nth-child(2n),
  .list_w_pc2_smp2 li:nth-child(2n) {
    float: right; }

  .list_w_pc2_smp1 li:nth-child(2n+1),
  .list_w_pc2_smp2 li:nth-child(2n+1) {
    clear: both; } }
/* End MQ */
/* ------------------------------------------------
挨拶文などの署名
------------------------------------------------ */
#signiture {
  text-align: right; }

/* ------------------------------------------------
予約カレンダー用
------------------------------------------------ */
#timetable table {
  width: 100%;
  border: solid 1px #39F;
  border-collapse: collapse;
  margin: 0 0 15px 0; }

#timetable table th,
#timetable table td {
  border: solid 1px #39F;
  border-collapse: collapse;
  text-align: center; }

#timetable table th {
  background: #E2F3FC;
  color: #39F; }

/* ------------------------------------------------
YouTube
------------------------------------------------ */
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  margin-bottom: 60px; }
  @media screen and (min-width: 1080px) {
    .video-container {
      width: 854px;
      height: 480px;
      padding: 0;
      margin-left: auto;
      margin-right: auto; } }

.video-container iframe,
.video-container object,
.video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

/* ------------------------------------------------
MAP
------------------------------------------------ */
.ggmap {
  position: relative;
  /*padding-bottom: 56.25%;*/
  padding-bottom: 40%;
  padding-top: 30px;
  height: 0;
  overflow: hidden; }

.ggmap iframe,
.ggmap object,
.ggmap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

/* ------------------------------------------------
可変 Table
------------------------------------------------ */
.table_01 {
  margin: 0 0 10px 0; }

.table_01 dd {
  width: 100%; }

@media screen and (max-width: 767px) {
  /* スマホ */
  .table_01 {
    width: 100%; } }
/* End MQ */
@media screen and (min-width: 768px) {
  /* Tablet, PC */
  .table_01 {
    border-bottom: solid 1px #999;
    border-right: solid 1px #999;
    border-left: none; } }
/* End MQ */
@media screen and (max-width: 767px) {
  /* スマホ */
  .table_01 .tbody {
    display: block;
    border-top: solid 1px #999;
    border-right: solid 1px #999;
    border-left: solid 1px #999; } }
/* End MQ */
@media screen and (min-width: 768px) {
  /* Tablet, PC */
  .table_01 .tbody {
    display: table-row-group; } }
/* End MQ */
@media screen and (max-width: 767px) {
  /* スマホ */
  .table_01 dl {
    display: block;
    font-size: 90%;
    margin: 0; } }
/* End MQ */
@media screen and (min-width: 768px) {
  /* Tablet, PC */
  .table_01 dl {
    display: table-row;
    line-height: 1.6;
    border-top: solid 1px #999;
    overflow: hidden;
    *zoom: 1;
    width: 100%; } }
/* End MQ */
@media screen and (max-width: 767px) {
  /* スマホ */
  .table_01 dl dt,
  .table_01 dl dd {
    float: none;
    display: block;
    padding: 3px;
    margin: 0;
    border-bottom: solid 1px #999; } }
/* End MQ */
@media screen and (min-width: 768px) {
  /* Tablet, PC */
  .table_01 dl dt,
  .table_01 dl dd {
    display: table-cell;
    *display: inline;
    padding: 5px 8px;
    border-top: solid 1px #999;
    border-left: solid 1px #999;
    *border-top: none;
    *border-left: none;
    vertical-align: middle;
    *zoom: 1; } }
/* End MQ */
.table_01 dl dt {
  background: #EEE;
  font-weight: bold; }

@media screen and (min-width: 768px) {
  /* Tablet, PC */
  .table_01 dl dt {
    border-bottom: none;
    min-width: 150px;
    white-space: nowrap;
    vertical-align: top; } }
/* End MQ */
@media screen and (min-width: 768px) {
  /* Tablet, PC */
  .table_01 dl dd {
    border-bottom: none; } }
/* End MQ */
.table_01 dl dd label {
  margin-right: 4px; }

.table_01 dl dd label input {
  margin-right: 4px; }

.submit-button {
  text-align: center; }

.table_02 {
  width: 100%;
  margin-bottom: 20px;
  border-collapse: collapse;
  vertical-align: middle; }

/* X方向にthが多いタイプのtable */
.table_02 th,
.table_02 td {
  border: 1px solid #aaa;
  padding: 15px; }

.table_02 th {
  background: #ffe4e1;
  font-weight: normal; }

.table_02 label {
  line-height: 34px;
  margin: 0; }

@media screen and (max-width: 1079px) {
  /* スマホ, Tablet */
  .table_02 thead {
    display: none; }

  .table_02 tr,
  .table_02 td {
    display: block;
    width: auto; }

  .table_02 tr {
    margin-bottom: 30px; }

  .table_02 td {
    border: none;
    border-bottom: 1px solid #ffe4e1;
    box-sizing: border-box;
    padding: 10px 0;
    justify-content: space-between;
    text-align: left; }

  .table_02 td::before {
    content: attr(aria-label);
    display: inline-block;
    float: left;
    text-align: left;
    background: #ffe4e1;
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 8px;
    font-weight: normal;
    padding: 4px;
    font-size: .875rem; } }
/* End MQ */
/* ------------------------------------------------
WP-Pagenavi
------------------------------------------------ */
.wp-pagenavi a, .wp-pagenavi span {
  display: inline-block;
  margin-bottom: 0.5em; }

/* ------------------------------------------------
Contact Form7
------------------------------------------------ */
.table_01 dl dd textarea {
  width: 100%; }

.table_01 dl dd .wpcf7-checkbox .wpcf7-list-item {
  display: block;
  clear: both;
  margin-bottom: 5px; }

@media screen and (max-width: 1079px) {
  /* スマホ, Tablet */
  .nme input {
    width: 30% !important; }

  .eml input {
    width: 70% !important; }

  .zip input {
    width: 20% !important; }

  .add input {
    width: 60% !important; } }
/* End MQ */
@media screen and (min-width: 1080px) {
  /* PC */
  .nme input {
    width: 30% !important; }

  .eml input {
    width: 50% !important; } }
/* End MQ */
/* ------------------------------------------------
Clear Fix
------------------------------------------------ */
.clear {
  clear: both; }

/* ------------------------------------------------
カラー、サイズ、ライン など　微調整用
------------------------------------------------ */
/*カラー*/
.black {
  color: #000 !important; }

.red, .error {
  color: #C03 !important; }

.base_color {
  color: #101E91 !important; }

.bold {
  font-weight: bold; }

/* -----------------------------------------------------------------------------------------------------------------------
背景色
----------------------------------------------------------------------------------------------------------------------- */
.bg_gray {
  background-color: #CFCFCF !important; }

.bg_blue {
  background-color: #ADE4FF !important; }

/* -----------------------------------------------------------------------------------------------------------------------
文字サイズ
----------------------------------------------------------------------------------------------------------------------- */
.fsize10 {
  font-size: 10px !important; }

.fsize11 {
  font-size: 11px !important; }

.fsize12 {
  font-size: 12px !important; }

.fsize13 {
  font-size: 13px !important; }

.fsize14 {
  font-size: 14px !important; }

.fsize15 {
  font-size: 15px !important; }

.fsize16 {
  font-size: 16px !important; }

.fsize17 {
  font-size: 17px !important; }

.fsize18 {
  font-size: 18px !important; }

.fsize19 {
  font-size: 19px !important; }

/*▼▼▼　ＰＣ＆タブ　▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼*/
@media screen and (min-width: 768px) {
  .pc_fsize10 {
    font-size: 10px !important; }

  .pc_fsize11 {
    font-size: 11px !important; }

  .pc_fsize12 {
    font-size: 12px !important; }

  .pc_fsize13 {
    font-size: 13px !important; }

  .pc_fsize14 {
    font-size: 14px !important; }

  .pc_fsize15 {
    font-size: 15px !important; }

  .pc_fsize16 {
    font-size: 16px !important; }

  .pc_fsize17 {
    font-size: 17px !important; }

  .pc_fsize18 {
    font-size: 18px !important; }

  .pc_fsize19 {
    font-size: 19px !important; }

  .pc_fsize20 {
    font-size: 20px !important; } }
/*▼▼▼　スマホ　▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼*/
@media screen and (max-width: 767px) {
  .sp_fsize10 {
    font-size: 10px !important; }

  .sp_fsize11 {
    font-size: 11px !important; }

  .sp_fsize12 {
    font-size: 12px !important; }

  .sp_fsize13 {
    font-size: 13px !important; }

  .sp_fsize14 {
    font-size: 14px !important; }

  .sp_fsize15 {
    font-size: 15px !important; }

  .sp_fsize16 {
    font-size: 16px !important; }

  .sp_fsize17 {
    font-size: 17px !important; }

  .sp_fsize18 {
    font-size: 18px !important; }

  .sp_fsize19 {
    font-size: 19px !important; }

  .sp_fsize20 {
    font-size: 20px !important; } }
/* -----------------------------------------------------------------------------------------------------------------------
幅
----------------------------------------------------------------------------------------------------------------------- */
.w10 {
  width: 10% !important; }

.w20 {
  width: 20% !important; }

.w30 {
  width: 30% !important; }

.w40 {
  width: 40% !important; }

.w50 {
  width: 50% !important; }

.w60 {
  width: 60% !important; }

.w70 {
  width: 70% !important; }

.w80 {
  width: 80% !important; }

.w90 {
  width: 90% !important; }

.w100 {
  width: 100% !important; }

/*▼▼▼　ＰＣ＆タブ　▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼*/
@media screen and (min-width: 768px) {
  .pc_w10 {
    width: 10% !important; }

  .pc_w20 {
    width: 20% !important; }

  .pc_w30 {
    width: 30% !important; }

  .pc_w40 {
    width: 40% !important; }

  .pc_w50 {
    width: 50% !important; }

  .pc_w60 {
    width: 60% !important; }

  .pc_w70 {
    width: 70% !important; }

  .pc_w80 {
    width: 80% !important; }

  .pc_w90 {
    width: 90% !important; }

  .pc_w100 {
    width: 100% !important; } }
/*▼▼▼　スマホ　▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼*/
@media screen and (max-width: 767px) {
  .sp_w10 {
    width: 10% !important; }

  .sp_w20 {
    width: 20% !important; }

  .sp_w30 {
    width: 30% !important; }

  .sp_w40 {
    width: 40% !important; }

  .sp_w50 {
    width: 50% !important; }

  .sp_w60 {
    width: 60% !important; }

  .sp_w70 {
    width: 70% !important; }

  .sp_w80 {
    width: 80% !important; }

  .sp_w90 {
    width: 90% !important; }

  .sp_w100 {
    width: 100% !important; } }
/* -----------------------------------------------------------------------------------------------------------------------
文字配置
----------------------------------------------------------------------------------------------------------------------- */
.textc {
  text-align: center !important; }

.textr {
  text-align: right !important; }

.textl {
  text-align: left !important; }

.textj {
  text-align: justify !important; }

/*▼▼▼　ＰＣ＆タブ　▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼*/
@media screen and (min-width: 768px) {
  .pc_textc {
    text-align: center !important; }

  .pc_textr {
    text-align: right !important; }

  .pc_textl {
    text-align: left !important; }

  .pc_textj {
    text-align: justify !important; } }
/*▼▼▼　スマホ　▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼*/
@media screen and (max-width: 767px) {
  .sp_textc {
    text-align: center !important; }

  .sp_textr {
    text-align: right !important; }

  .sp_textl {
    text-align: left !important; }

  .sp_textj {
    text-align: justify; } }
/* -----------------------------------------------------------------------------------------------------------------------
余白微調整
----------------------------------------------------------------------------------------------------------------------- */
.mr20 {
  margin-right: 20px; }

.mr30 {
  margin-right: 30px; }

.no_margin {
  margin: 0 !important; }

.mra {
  margin-right: auto !important; }

.mla {
  margin-left: auto !important; }

.mt0 {
  margin-top: 0px !important; }

.mt5 {
  margin-top: 5px !important; }

.mt10 {
  margin-top: 10px !important; }

.mt15 {
  margin-top: 15px !important; }

.mt20 {
  margin-top: 20px !important; }

.mt30 {
  margin-top: 30px !important; }

.mt35 {
  margin-top: 35px !important; }

.mt40 {
  margin-top: 40px !important; }

.mt50 {
  margin-top: 50px !important; }

.mt60 {
  margin-top: 60px !important; }

.mt70 {
  margin-top: 70px !important; }

.mt80 {
  margin-top: 80px !important; }

.mt90 {
  margin-top: 90px !important; }

.mt100 {
  margin-top: 100px !important; }

.mb0 {
  margin-bottom: 0px !important; }

.mb5 {
  margin-bottom: 5px !important; }

.mb10 {
  margin-bottom: 10px !important; }

.mb15 {
  margin-bottom: 15px !important; }

.mb20 {
  margin-bottom: 20px !important; }

.mb25 {
  margin-bottom: 25px !important; }

.mb30 {
  margin-bottom: 30px !important; }

.mb40 {
  margin-bottom: 40px !important; }

.mb50 {
  margin-bottom: 50px !important; }

.mb60 {
  margin-bottom: 60px !important; }

.mb70 {
  margin-bottom: 70px !important; }

.mb80 {
  margin-bottom: 80px !important; }

.mb90 {
  margin-bottom: 90px !important; }

.mb100 {
  margin-bottom: 100px !important; }

.mb180 {
  margin-bottom: 180px !important; }

.mb200 {
  margin-bottom: 200px !important; }

.pdlr0 {
  padding-left: 0 !important;
  padding-right: 0 !important; }

.pt0 {
  padding-top: 0px !important; }

.pb0 {
  padding-bottom: 0px !important; }

.pa10_all {
  padding: 10px !important; }

.no_pa {
  padding: 0px !important; }

.pt0 {
  padding-top: 0px !important; }

.pb0 {
  padding-bottom: 0px !important; }

.pa10_all {
  padding: 10px !important; }

.no_pa {
  padding: 0px !important; }

/*▼▼▼　タブ　▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼*/
@media screen and (min-width: 768px) {
  .tb_mr20 {
    margin-right: 20px !important; }

  .tb_mt0 {
    margin-top: 0px !important; }

  .tb_mt5 {
    margin-top: 5px !important; }

  .tb_mt10 {
    margin-top: 10px !important; }

  .tb_mt15 {
    margin-top: 15px !important; }

  .tb_mt20 {
    margin-top: 20px !important; }

  .tb_mt30 {
    margin-top: 30px !important; }

  .tb_mt40 {
    margin-top: 40px !important; }

  .tb_mt50 {
    margin-top: 50px !important; }

  .tb_mt60 {
    margin-top: 60px !important; }

  .tb_mt70 {
    margin-top: 70px !important; }

  .tb_mt80 {
    margin-top: 80px !important; }

  .tb_mt90 {
    margin-top: 90px !important; }

  .tb_mt100 {
    margin-top: 100px !important; }

  .tb_mb0 {
    margin-bottom: 0px !important; }

  .tb_mb5 {
    margin-bottom: 5px !important; }

  .tb_mb10 {
    margin-bottom: 10px !important; }

  .tb_mb15 {
    margin-bottom: 15px !important; }

  .tb_mb20 {
    margin-bottom: 20px !important; }

  .tb_mb30 {
    margin-bottom: 30px !important; }

  .tb_mb40 {
    margin-bottom: 40px !important; }

  .tb_mb50 {
    margin-bottom: 50px !important; }

  .tb_mb60 {
    margin-bottom: 60px !important; }

  .tb_mb70 {
    margin-bottom: 70px !important; }

  .tb_mb80 {
    margin-bottom: 80px !important; }

  .tb_mb90 {
    margin-bottom: 90px !important; }

  .tb_mb100 {
    margin-bottom: 100px !important; } }
/*▼▼▼　ＰＣ　▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼*/
@media screen and (min-width: 1080px) {
  .pc_mr20 {
    margin-right: 20px !important; }

  .pc_mt0 {
    margin-top: 0px !important; }

  .pc_mt5 {
    margin-top: 5px !important; }

  .pc_mt10 {
    margin-top: 10px !important; }

  .pc_mt15 {
    margin-top: 15px !important; }

  .pc_mt20 {
    margin-top: 20px !important; }

  .pc_mt30 {
    margin-top: 30px !important; }

  .pc_mt40 {
    margin-top: 40px !important; }

  .pc_mt50 {
    margin-top: 50px !important; }

  .pc_mt60 {
    margin-top: 60px !important; }

  .pc_mt70 {
    margin-top: 70px !important; }

  .pc_mt80 {
    margin-top: 80px !important; }

  .pc_mt90 {
    margin-top: 90px !important; }

  .pc_mt100 {
    margin-top: 100px !important; }

  .pc_mb0 {
    margin-bottom: 0px !important; }

  .pc_mb5 {
    margin-bottom: 5px !important; }

  .pc_mb10 {
    margin-bottom: 10px !important; }

  .pc_mb15 {
    margin-bottom: 15px !important; }

  .pc_mb20 {
    margin-bottom: 20px !important; }

  .pc_mb30 {
    margin-bottom: 30px !important; }

  .pc_mb40 {
    margin-bottom: 40px !important; }

  .pc_mb50 {
    margin-bottom: 50px !important; }

  .pc_mb60 {
    margin-bottom: 60px !important; }

  .pc_mb70 {
    margin-bottom: 70px !important; }

  .pc_mb80 {
    margin-bottom: 80px !important; }

  .pc_mb90 {
    margin-bottom: 90px !important; }

  .pc_mb100 {
    margin-bottom: 100px !important; }

  .pc_mb120 {
    margin-bottom: 120px !important; } }
/*▼▼▼　スマホ　▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼*/
@media screen and (max-width: 767px) {
  .sp_mt0 {
    margin-top: 0px !important; }

  .sp_mt5 {
    margin-top: 5px !important; }

  .sp_mt10 {
    margin-top: 10px !important; }

  .sp_mt15 {
    margin-top: 15px !important; }

  .sp_mt20 {
    margin-top: 20px !important; }

  .sp_mt30 {
    margin-top: 30px !important; }

  .sp_mt40 {
    margin-top: 40px !important; }

  .sp_mt50 {
    margin-top: 50px !important; }

  .sp_mt60 {
    margin-top: 60px !important; }

  .sp_mt70 {
    margin-top: 70px !important; }

  .sp_mt80 {
    margin-top: 80px !important; }

  .sp_mt90 {
    margin-top: 90px !important; }

  .sp_mt100 {
    margin-top: 100px !important; }

  .sp_mb0 {
    margin-bottom: 0px !important; }

  .sp_mb5 {
    margin-bottom: 5px !important; }

  .sp_mb10 {
    margin-bottom: 10px !important; }

  .sp_mb15 {
    margin-bottom: 15px !important; }

  .sp_mb20 {
    margin-bottom: 20px !important; }

  .sp_mb30 {
    margin-bottom: 30px !important; }

  .sp_mb40 {
    margin-bottom: 40px !important; }

  .sp_mb50 {
    margin-bottom: 50px !important; }

  .sp_mb60 {
    margin-bottom: 60px !important; }

  .sp_mb70 {
    margin-bottom: 70px !important; }

  .sp_mb80 {
    margin-bottom: 80px !important; }

  .sp_mb90 {
    margin-bottom: 90px !important; }

  .sp_mb100 {
    margin-bottom: 100px !important; } }
/*◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆

【　６　】　部分的に特別なデザインやレイアウトが必要な場合

◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆*/
.mxw100 {
  width: 574px;
  max-width: 100%;
  height: auto;
  margin-bottom: 20px; }

/* -----------------------------------------------------------------------------------------------------------------------
FLEX　個別設定
----------------------------------------------------------------------------------------------------------------------- */
.flex {
  display: flex; }

.justify-between {
  justify-content: space-between !important; }

.justify-around {
  justify-content: space-around !important; }

.justify-center {
  justify-content: center !important; }

.justify-start {
  justify-content: flex-start !important; }

.justify-end {
  justify-content: flex-end !important; }

.align-center {
  align-items: center !important; }

.align-start {
  align-items: flex-start !important; }

.align-end {
  align-items: flex-end !important; }

.flex1 {
  flex: 1; }

.flex_column {
  flex-flow: column !important; }

@media screen and (max-width: 767px) {
  .sp_flex {
    display: flex; }

  .sp_align-end {
    align-items: flex-end !important; }

  .sp_column-reverse {
    flex-flow: column-reverse !important; }

  .sp_column {
    flex-flow: column !important; }

  .sp_row {
    flex-flow: row !important; }

  .sp_row-reverse {
    flex-flow: row-reverse !important; }

  .sp_justify-center {
    justify-content: center !important; } }
.sp_justify-end {
  justify-content: flex-end !important; }

@media screen and (min-width: 768px) {
  .pc_flex {
    display: flex; }

  .pc_column-reverse {
    flex-flow: column-reverse !important; }

  .pc_column {
    flex-flow: column !important; }

  .pc_row {
    flex-flow: row !important; }

  .pc_row-reverse {
    flex-flow: row-reverse !important; }

  .pc_justify-between {
    justify-content: space-between !important; }

  .pc_justify-around {
    justify-content: space-around !important; }

  .pc_justify-center {
    justify-content: center !important; }

  .pc_justify-start {
    justify-content: flex-start !important; }

  .pc_justify-end {
    justify-content: flex-end !important; }

  .pc_align-center {
    align-items: center !important; }

  .pc_align-start {
    align-items: flex-start !important; }

  .pc_align-end {
    align-items: flex-end !important; } }
.tabletype01 {
  width: 100%;
  background: #F3F3F3;
  border-radius: 10px;
  padding: 10px;
  font-size: .875rem;
  position: relative;
  box-sizing: border-box; }
  @media screen and (min-width: 1080px) {
    .tabletype01 {
      padding: 50px; }
      .tabletype01::after {
        position: absolute;
        right: 50px;
        top: 50px;
        content: "";
        background: url("../images/chintai_renovation/contact02.jpg") no-repeat;
        width: 400px;
        height: 674px; } }
  .tabletype01 dl {
    width: 100%;
    margin-bottom: 20px; }
    @media screen and (min-width: 1080px) {
      .tabletype01 dl {
        width: 800px;
        margin-left: auto;
        margin-right: auto; } }
    .tabletype01 dl dd.check_label .wpcf7-list-item {
      display: block; }
      .tabletype01 dl dd.check_label .wpcf7-list-item label {
        display: block; }
  .tabletype01 textarea {
    width: 100%;
    height: 150px;
    box-sizing: border-box;
    font-size: 1rem;
    padding: 10px;
    font-family: "Noto Sans JP",Meiryo, "メイリオ",Osaka,"MS P Gothic", "ＭＳ Ｐゴシック",sans-serif;
    border: solid 1px #5A5A5A;
    border-radius: 5px; }
    @media screen and (min-width: 1080px) {
      .tabletype01 textarea {
        width: 50% !important; } }
  .tabletype01 input,
  .tabletype01 select {
    padding: 10px;
    width: 100%;
    box-sizing: border-box;
    border: solid 1px #5A5A5A;
    border-radius: 5px;
    background: #fff; }
    @media screen and (min-width: 1080px) {
      .tabletype01 input,
      .tabletype01 select {
        width: 50% !important; } }
  .tabletype01 input[type="checkbox"] {
    width: auto !important; }

.hisu {
  color: #FF0000;
  display: inline-block;
  margin-left: 5px; }

input.contact_button {
  margin: 20px auto 30px;
  vertical-align: middle;
  line-height: 1;
  background: #EB5436;
  border-radius: 0 !important;
  border: 1px solid #EB5436 !important;
  color: #ffffff;
  -webkit-appearance: none;
  width: 200px !important;
  height: 60px;
  box-sizing: border-box; }
  input.contact_button:hover {
    opacity: .7; }
  @media screen and (min-width: 768px) {
    input.contact_button {
      width: 300px !important;
      height: 70px; } }

input.contact_button:nth-of-type(2) {
  border: 1px solid #101E91 !important;
  background: #101E91 !important; }

input.contact_button
div.wpcf7 .ajax-loader {
  display: none !important; }

.wpcf7-mail-sent-ok {
  display: none !important; }

/* -----------------------------------------------------------------------------------------------------------------------
トップページ
----------------------------------------------------------------------------------------------------------------------- */
.bg01 {
  background: url("../images/chintai_renovation/back01.jpg") no-repeat;
  background-size: cover;
  width: 100%;
  height: auto;
  padding: 40px 0 60px;
  margin-bottom: 40px;
  box-sizing: border-box; }
  @media screen and (min-width: 768px) {
    .bg01 {
      padding: 60px 0 70px; } }
  .bg01 p {
    text-align: center; }

.title_type01 {
  font-size: 1.75rem;
  font-weight: 700;
  text-align: center;
  position: relative;
  margin-bottom: 30px;
  padding: 0 20px;
  box-sizing: border-box;
  display: inline-block; }
  .title_type01 small {
    font-size: .75rem; }
    @media screen and (min-width: 768px) {
      .title_type01 small {
        font-size: 1rem; } }
  .title_type01:before {
    position: absolute;
    top: 10px;
    left: 0;
    content: "";
    background: url("../images/chintai_renovation/sub.png") no-repeat;
    background-size: contain;
    width: 17px;
    height: 26px; }
    @media screen and (min-width: 840px) {
      .title_type01:before {
        left: -10px; } }
  .title_type01:after {
    position: absolute;
    top: 10px;
    content: "";
    background: url("../images/chintai_renovation/sub.png") no-repeat;
    transform: scale(-1, 1);
    background-size: contain;
    width: 17px;
    height: 26px; }
    @media screen and (max-width: 840px) {
      .title_type01:after {
        right: 0; } }

.qa_block_left {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  margin-bottom: 15px; }
  @media screen and (min-width: 800px) {
    .qa_block_left {
      margin-bottom: -110px; } }
  .qa_block_left li {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-weight: 700; }
    .qa_block_left li span {
      font-family: 'Roboto Condensed', sans-serif;
      font-size: 1.875rem;
      line-height: 1.2; }
    @media screen and (min-width: 1080px) {
      .qa_block_left li {
        font-size: 1.25rem; } }
  @media screen and (min-width: 1080px) {
    .qa_block_left li:first-child p {
      font-size: 1.25rem; } }
  .qa_block_left li:first-child img {
    width: 70px;
    height: auto; }
    @media screen and (min-width: 800px) {
      .qa_block_left li:first-child img {
        width: 151px; } }
  .qa_block_left li:last-child {
    color: #AD4D32;
    margin-left: 20px; }
    .qa_block_left li:last-child p {
      text-indent: -1.75rem;
      padding-left: 1.75rem;
      margin-top: -10px; }
      @media screen and (min-width: 800px) {
        .qa_block_left li:last-child p {
          margin-top: 25px; } }
      @media screen and (min-width: 1080px) {
        .qa_block_left li:last-child p {
          font-size: 1.25rem; } }
    .qa_block_left li:last-child a {
      color: #101E91;
      text-decoration: underline; }
      .qa_block_left li:last-child a:hover {
        text-decoration: none; }

.qa_block_right {
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
  margin-bottom: 80px; }
  .qa_block_right li {
    display: flex;
    justify-content: flex-end;
    align-items: center; }
    .qa_block_right li span {
      font-family: 'Roboto Condensed', sans-serif;
      font-size: 1.875rem;
      line-height: 1.2; }
    @media screen and (min-width: 800px) {
      .qa_block_right li {
        font-weight: 700; } }
    @media screen and (min-width: 1080px) {
      .qa_block_right li {
        font-size: 1.25rem; } }
  .qa_block_right li:last-child img {
    width: 70px;
    height: auto; }
    @media screen and (min-width: 800px) {
      .qa_block_right li:last-child img {
        width: 151px; } }
  .qa_block_right li:first-child {
    color: #333;
    margin-right: 20px;
    flex-flow: column;
    align-items: flex-start; }
    .qa_block_right li:first-child p {
      margin-top: -10px;
      text-indent: -1.75rem;
      padding-left: 1.75rem; }
      @media screen and (min-width: 800px) {
        .qa_block_right li:first-child p {
          margin-top: 0; } }
    .qa_block_right li:first-child a {
      color: #101E91;
      text-decoration: underline; }
      .qa_block_right li:first-child a:hover {
        text-decoration: none; }

.title_type02 {
  text-align: center;
  position: relative;
  margin-bottom: 5px;
  background: url("../images/chintai_renovation/title_back_long02.svg") repeat-x;
  background-size: auto;
  background-position: top;
  padding: 0 20px;
  box-sizing: border-box;
  width: calc(100% - 50px);
  margin-left: auto;
  margin-right: auto;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: left;
  height: 130px;
  margin-bottom: 20px; }
  .title_type02::before {
    content: "";
    background: url("../images/chintai_renovation/title_back_left02.svg") repeat-x;
    background-size: auto;
    background-position: left;
    width: 30px;
    height: 130px;
    position: absolute;
    left: -25px;
    top: 0;
    z-index: 2; }
  .title_type02::after {
    content: "";
    background: url("../images/chintai_renovation/title_back_right02.svg") repeat-x;
    background-size: auto;
    background-position: right;
    width: 30px;
    height: 130px;
    position: absolute;
    right: -25px;
    top: 0;
    z-index: 2; }
  @media screen and (min-width: 720px) {
    .title_type02 {
      background-position: center;
      padding: 15px 30px;
      background-size: contain; } }
  @media screen and (min-width: 1080px) {
    .title_type02 {
      text-align: center; } }
  .title_type02 h1, .title_type02 h2 {
    font-size: 1.375rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.3; }
    @media screen and (min-width: 1080px) {
      .title_type02 h1, .title_type02 h2 {
        font-size: 2rem; } }
    .title_type02 h1 small, .title_type02 h2 small {
      font-size: 1.5rem; }
    .title_type02 h1 strong, .title_type02 h2 strong {
      font-size: 1.5rem; }
      @media screen and (min-width: 768px) {
        .title_type02 h1 strong, .title_type02 h2 strong {
          font-size: 2.5rem; } }
      .title_type02 h1 strong b, .title_type02 h2 strong b {
        font-size: 2rem; }
        @media screen and (min-width: 768px) {
          .title_type02 h1 strong b, .title_type02 h2 strong b {
            font-size: 3rem; } }

area {
  border: none !important;
  outline: none !important; }

.title_type02a {
  text-align: center;
  position: relative;
  margin-bottom: 5px;
  background: url("../images/chintai_renovation/title_back_long.svg") repeat-x;
  background-size: auto;
  background-position: top;
  padding: 0 20px;
  box-sizing: border-box;
  width: calc(100% - 60px);
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: left;
  margin-left: auto;
  margin-right: auto;
  height: 160px;
  margin-bottom: 20px; }
  .title_type02a::before {
    content: "";
    background: url("../images/chintai_renovation/title_back_left.svg") repeat-x;
    background-size: auto;
    background-position: left;
    width: 30px;
    height: 160px;
    position: absolute;
    left: -30px;
    top: 0;
    z-index: 2; }
  .title_type02a::after {
    content: "";
    background: url("../images/chintai_renovation/title_back_right.svg") repeat-x;
    background-size: auto;
    background-position: right;
    width: 30px;
    height: 160px;
    position: absolute;
    right: -30px;
    top: 0;
    z-index: 2; }
  @media screen and (min-width: 720px) {
    .title_type02a {
      padding: 15px 35px; } }
  @media screen and (min-width: 1080px) {
    .title_type02a {
      text-align: center; } }
  .title_type02a h1, .title_type02a h2 {
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.3;
    text-align: center; }
    @media screen and (min-width: 1080px) {
      .title_type02a h1, .title_type02a h2 {
        font-size: 2rem; } }
    @media screen and (max-width: 767px) {
      .title_type02a h1 small, .title_type02a h2 small {
        font-size: .8125rem; } }

.title_type03 h1, .title_type03 h2, .title_type03 h3 {
  font-weight: 700;
  padding-bottom: 5px;
  border-bottom: solid 3px #101E91;
  margin-bottom: 20px; }
  @media screen and (max-width: 767px) {
    .title_type03 h1, .title_type03 h2, .title_type03 h3 {
      font-size: 1.25rem; } }
  @media screen and (min-width: 768px) {
    .title_type03 h1, .title_type03 h2, .title_type03 h3 {
      font-size: 1.5rem; } }

.faq_title {
  text-align: center;
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 20px;
  position: relative; }
  @media screen and (min-width: 768px) {
    .faq_title {
      font-size: 2.25rem; } }
  .faq_title span {
    position: relative; }
    .faq_title span::before {
      content: "";
      position: absolute;
      left: -25px;
      top: 10px;
      background: url("../images/chintai_renovation/mark.svg") no-repeat;
      background-size: contain;
      width: 20px;
      height: 20px; }
      @media screen and (min-width: 768px) {
        .faq_title span::before {
          left: -30px;
          top: 15px;
          width: 30px;
          height: 30px; } }
    .faq_title span::after {
      content: "";
      position: absolute;
      right: -25px;
      background: url("../images/chintai_renovation/mark.svg") no-repeat;
      transform: scaleX(-1);
      background-size: contain;
      width: 20px;
      height: 20px;
      top: 10px; }
      @media screen and (min-width: 768px) {
        .faq_title span::after {
          width: 30px;
          height: 30px;
          top: 15px;
          right: -30px; } }

.faq_title.front {
  margin-top: 10px;
  line-height: 1.2; }

.sanakaku {
  color: #FF6539;
  display: inline-block;
  margin-right: 10px; }
  @media screen and (max-width: 767px) {
    .sanakaku {
      transform: rotate(90deg);
      margin-left: auto;
      margin-right: auto; } }

.t_color {
  background: linear-gradient(transparent 60%, #FFF000 60%); }

.can_block {
  position: relative;
  border: solid 2px #000;
  border-radius: 6px;
  padding: 15px 0 15px 27px;
  box-sizing: border-box;
  margin-bottom: 50px;
  font-weight: 700;
  font-size: 1rem;
  position: relative; }
  @media screen and (min-width: 385px) {
    .can_block {
      white-space: nowrap; } }
  @media screen and (min-width: 768px) {
    .can_block {
      padding: 25px 15px 25px 80px;
      font-size: 1.25rem;
      width: 85%;
      margin-left: auto;
      margin-right: auto; } }
  @media screen and (min-width: 1080px) {
    .can_block {
      width: 940px;
      margin-left: auto;
      margin-right: auto; } }
  .can_block img {
    position: absolute;
    left: -20px;
    top: -20px;
    width: 70px;
    height: auto; }
    @media screen and (min-width: 768px) {
      .can_block img {
        left: -40px;
        top: -40px;
        width: 106px; } }
  .can_block strong {
    font-size: 1.75rem; }
    @media screen and (min-width: 768px) {
      .can_block strong {
        font-size: 2.75rem; } }

.hr {
  width: 100%;
  height: 2px;
  background: #101E91;
  margin: 80px auto; }

.support::after {
  content: "";
  background: url("../images/chintai_renovation/support.png") no-repeat;
  background-size: contain;
  width: 160px;
  height: 100px;
  position: absolute;
  right: 5px;
  top: -50px; }
  @media screen and (min-width: 768px) {
    .support::after {
      width: 200px;
      height: 120px;
      top: -50px; } }
  @media screen and (min-width: 1080px) {
    .support::after {
      width: 300px;
      height: 120px;
      right: -40px; } }

.wave_line {
  position: relative;
  font-size: 1rem;
  font-weight: 900; }
  @media screen and (min-width: 768px) {
    .wave_line {
      font-size: 2rem; } }
  .wave_line:after {
    position: absolute;
    background-size: auto;
    bottom: -4px;
    left: 0;
    content: "";
    width: 100%;
    height: 7px; }

.wave_line.big {
  font-size: 1.75rem; }
  @media screen and (min-width: 768px) {
    .wave_line.big {
      font-size: 2.75rem; } }

.red_mark {
  position: relative; }
  .red_mark::before {
    position: absolute;
    left: -10px;
    top: -10px;
    font-size: 1.75rem;
    color: #FF0000;
    content: "*"; }

.inner_absolute {
  position: relative;
  padding-left: 1rem; }
  @media screen and (min-width: 1080px) {
    .inner_absolute {
      padding-left: 0; } }
  .inner_absolute::before {
    position: absolute;
    font-weight: 400;
    left: 115px;
    top: 2px;
    font-size: .685rem;
    color: #FF0000;
    text-align: right;
    white-space: nowrap;
    content: "*2023年6月末迄の施工済み物件の成約率";
    line-height: 2; }
    @media screen and (min-width: 768px) {
      .inner_absolute::before {
        top: 6px;
        left: 142px;
        font-size: .75rem; } }

.tb_only {
  display: block; }
  @media screen and (min-width: 1080px) {
    .tb_only {
      display: none; } }

.wave_line_none {
  position: relative;
  font-size: 1.325rem;
  font-weight: 900; }
  @media screen and (min-width: 768px) {
    .wave_line_none {
      font-size: 2rem; } }

.link_block01 {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column; }

.bg02 {
  background: #F3F3F3;
  border-top: solid 2px #333333;
  border-bottom: solid 2px #333333;
  padding: 70px 0 60px;
  position: relative;
  margin-bottom: 60px; }

/* 旧タイプのリンク 念のため残しています */
.case_block {
  position: relative;
  margin-bottom: 60px; }

.case_block_left {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-flow: column;
  margin-bottom: 30px; }
  @media screen and (min-width: 768px) {
    .case_block_left {
      flex-flow: row; } }
  .case_block_left .mark {
    font-size: 1.375rem;
    margin-bottom: -15px; }
  @media screen and (max-width: 767px) {
    .case_block_left .mark {
      writing-mode: vertical-rl;
      font-size: 1.125rem;
      display: inline-block;
      margin-bottom: -10px; }
    .case_block_left p {
      text-align: center; } }
  .case_block_left img {
    width: 120px;
    height: auto; }
    @media screen and (min-width: 768px) {
      .case_block_left img {
        width: 151px; } }
  .case_block_left p {
    color: #101E91;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.4; }
    @media screen and (min-width: 768px) {
      .case_block_left p {
        font-size: 1.875rem; } }
    .case_block_left p span {
      font-size: 2.5rem;
      font-family: "Roboto Condensed", sans-serif; }
      @media screen and (min-width: 768px) {
        .case_block_left p span {
          font-size: 3.125rem; } }

.case_block_owner {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  width: 100%; }
  @media screen and (max-width: 767px) {
    .case_block_owner {
      padding: 0 15px;
      box-sizing: border-box;
      margin: 25px auto;
      flex-flow: column; } }
  .case_block_owner div:first-of-type {
    border: solid 2px #333;
    border-radius: 6px;
    padding: 15px;
    box-sizing: border-box;
    position: relative;
    margin-bottom: 25px; }
    @media screen and (min-width: 768px) {
      .case_block_owner div:first-of-type {
        margin-right: 15px;
        margin-bottom: 60px; } }
    .case_block_owner div:first-of-type p {
      position: relative;
      font-size: 1.25rem;
      font-weight: 700;
      line-height: 1.4; }
      .case_block_owner div:first-of-type p:after {
        content: "";
        position: absolute;
        background: url("../images/chintai_renovation/hukidasi.svg") no-repeat;
        background-size: cover;
        width: 40px;
        height: 30px;
        right: -40px;
        bottom: -10px; }
        @media screen and (max-width: 767px) {
          .case_block_owner div:first-of-type p:after {
            right: 40px;
            bottom: -35px;
            transform: rotate(35deg); } }
      @media screen and (min-width: 768px) {
        .case_block_owner div:first-of-type p {
          font-size: 1.75rem; } }
  .case_block_owner div:last-of-type {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end; }
    @media screen and (max-width: 767px) {
      .case_block_owner div:last-of-type {
        margin-left: 10px; } }
    @media screen and (min-width: 480px) {
      .case_block_owner div:last-of-type {
        align-items: flex-start; } }
    .case_block_owner div:last-of-type p {
      position: absolute;
      bottom: 0;
      right: 120px;
      color: #AD4D32;
      font-size: .75rem;
      white-space: nowrap; }
      @media screen and (min-width: 480px) {
        .case_block_owner div:last-of-type p {
          right: 170px;
          font-size: .875rem; } }
  .case_block_owner img {
    width: 100px;
    height: auto; }
    @media screen and (min-width: 480px) {
      .case_block_owner img {
        width: 150px; } }
    @media screen and (min-width: 768px) {
      .case_block_owner img {
        width: 200px; } }

.relative {
  position: relative; }

.bg03 {
  background: #EEEEEE;
  padding: 60px 0 10px !important;
  box-sizing: border-box;
  position: relative;
  z-index: 2; }
  @media screen and (min-width: 768px) {
    .bg03 {
      padding: 40px 15px !important; } }
  @media screen and (min-width: 1080px) {
    .bg03 {
      padding: 60px 60px 10px !important; } }
  .bg03:after {
    position: absolute;
    content: "";
    bottom: -134px;
    left: 0;
    right: 0;
    margin: auto;
    background: url("../images/chintai_renovation/before_kazari.svg") no-repeat;
    background-size: contain;
    width: 100%;
    height: 135px;
    z-index: 2; }

.before {
  position: absolute;
  left: 0;
  top: -30px;
  background: #CCCCCC;
  font-size: 1.25rem;
  font-weight: 700;
  width: 180px;
  height: 44px;
  display: flex;
  justify-content: center;
  align-items: center; }
  @media screen and (min-width: 768px) {
    .before {
      width: 210px;
      height: 60px;
      font-size: 1.5rem; } }

.bg04 {
  background: #FDF7D2;
  padding: 120px 0 40px !important;
  box-sizing: border-box;
  position: relative; }
  @media screen and (min-width: 768px) {
    .bg04 {
      padding: 160px 15px 40px !important; } }
  @media screen and (min-width: 1080px) {
    .bg04 {
      padding: 190px 60px 20px !important; } }

.after {
  position: absolute;
  left: 0;
  top: 70px;
  background: #FEEB79;
  font-size: 1.25rem;
  font-weight: 700;
  width: 180px;
  height: 44px;
  display: flex;
  justify-content: center;
  align-items: center; }
  @media screen and (min-width: 768px) {
    .after {
      width: 210px;
      height: 60px;
      font-size: 1.5rem; } }
  .after::after {
    position: absolute;
    content: '';
    width: 0px;
    height: 0px;
    z-index: 1; }
  .after::after {
    top: 0;
    right: 0;
    border-width: 30px 15px 30px 0px;
    border-color: transparent #FDF7D2 transparent transparent;
    border-style: solid; }

@media screen and (min-width: 768px) {
  .star {
    position: relative; }
    .star::before {
      position: absolute;
      content: "";
      left: -10px;
      top: -20px;
      background: url("../images/chintai_renovation/star.png") no-repeat;
      background-size: cover;
      width: 91px;
      height: 87px; }
    .star::after {
      position: absolute;
      content: "";
      right: -10px;
      bottom: -20px;
      background: url("../images/chintai_renovation/star.png") no-repeat;
      background-size: cover;
      width: 91px;
      height: 87px; } }

.case_img {
  margin-bottom: 40px; }
  @media screen and (min-width: 768px) {
    .case_img {
      display: flex;
      justify-content: space-between; } }
  .case_img li {
    width: 280px; }
    @media screen and (min-width: 768px) and (max-width: 1079px) {
      .case_img li {
        width: 32%; } }
    .case_img li img {
      width: 100%;
      height: auto; }
      @media screen and (min-width: 1080px) {
        .case_img li img {
          width: 280px; } }

.case_comment {
  display: flex;
  justify-content: center;
  flex-flow: column;
  padding: 0 15px;
  box-sizing: border-box; }
  @media screen and (min-width: 768px) {
    .case_comment {
      padding: 0;
      flex-flow: row;
      justify-content: space-between; } }
  .case_comment li {
    border: solid 2px #333;
    border-radius: 6px;
    box-sizing: border-box;
    position: relative;
    background: #fff;
    padding: 20px; }
    .case_comment li:first-child {
      width: 100%;
      padding-top: 40px;
      margin-bottom: 30px; }
      @media screen and (min-width: 768px) {
        .case_comment li:first-child {
          width: 55%;
          margin-bottom: 0; } }
    .case_comment li:last-child {
      width: 100%; }
      @media screen and (min-width: 768px) {
        .case_comment li:last-child {
          width: 42%; } }
      .case_comment li:last-child dl {
        display: flex;
        justify-content: flex-start; }
        .case_comment li:last-child dl dt {
          width: 30%; }
          @media screen and (min-width: 768px) {
            .case_comment li:last-child dl dt {
              width: 20%; } }
        .case_comment li:last-child dl dd {
          width: 70%; }
          @media screen and (min-width: 768px) {
            .case_comment li:last-child dl dd {
              width: 80%; } }

.case_comment_title {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: -23px;
  width: 190px;
  height: 46px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background: #101E91;
  border-radius: 4px;
  font-weight: 700;
  font-size: 1.25rem; }

.reverse {
  display: flex;
  justify-content: center;
  flex-flow: column-reverse; }
  @media screen and (min-width: 768px) {
    .reverse {
      flex-flow: column; } }

@media screen and (max-width: 767px) {
  .slider {
    width: 90%;
    margin: 30px auto 0; }

  .slider li {
    padding: 0 10px;
    box-sizing: border-box; }

  .slick-slide img {
    width: 100%;
    height: auto; }

  .mypattern {
    width: 100%; }

  .mypattern .slick-slide {
    margin: 5; } }
@media screen and (min-width: 768px) {
  .slides {
    width: 100%;
    max-width: 960px;
    margin: 0 auto; }
    .slides li {
      text-align: center; } }
.plan_wrap {
  border-radius: 10px;
  padding: 30px 0 15px;
  box-sizing: border-box;
  border: solid 2px #101E91;
  text-align: center;
  position: relative;
  background: #f7faff;
  margin-top: 80px; }
  @media screen and (min-width: 768px) {
    .plan_wrap {
      padding: 30px 10px; } }

.paln_block01 {
  border-radius: 10px;
  padding: 40px 10px 0;
  box-sizing: border-box;
  position: relative;
  text-align: center; }
  @media screen and (min-width: 768px) {
    .paln_block01 {
      padding: 80px 60px 40px; } }

.plan_title {
  position: absolute;
  left: 0;
  right: 0;
  top: -35px;
  margin: auto;
  width: 90%; }
  .plan_title span {
    font-size: 2.5rem;
    font-family: "Roboto Condensed", sans-serif;
    font-weight: 700; }
    @media screen and (min-width: 768px) {
      .plan_title span {
        font-size: 3.125rem; } }
  .plan_title h3,
  .plan_title h4 {
    display: inline-block;
    padding: 2px 10px;
    background: #fff;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.4;
    position: relative; }
    @media screen and (min-width: 768px) {
      .plan_title h3,
      .plan_title h4 {
        font-size: 1.875rem; } }
  .plan_title h3 {
    top: -15px; }
  @media screen and (max-width: 767px) {
    .plan_title h4 {
      top: 8px; } }

.hd_pl {
  padding: 10px 50px !important;
  margin-bottom: 20px;
  background: #0166ff !important;
  color: #FFF; }
  .hd_pl small {
    font-size: 1rem; }

.hd_gy,
.hd_nb,
.hd_r {
  padding: 10px 50px !important;
  margin-bottom: 20px; }

.hd_gy {
  background: #f0f0f0 !important;
  color: #101E91; }

.hd_nb {
  background: #101E91 !important;
  color: #FFF; }

.hd_r {
  background: #FF0000 !important;
  color: #FFF; }

.b_red {
  border-radius: 10px;
  border: solid 3px #FF0000 !important; }

.b_gy {
  border-radius: 10px;
  border: solid 3px #ddd !important; }

.price_list {
  overflow: hidden; }
  .price_list img {
    padding-bottom: 80px; }

.plan_title h3 {
  position: relative; }

span.rby {
  position: absolute; }
  @media screen and (min-width: 768px) {
    span.rby {
      top: 10px; } }
  @media screen and (max-width: 767px) {
    span.rby {
      top: 0; } }

.small {
  font-size: 1.3rem !important; }

.orange {
  color: #FF6539; }

.paln_block_in {
  border-radius: 10px;
  border: solid 3px #101E91;
  position: relative;
  padding: 40px 10px;
  box-sizing: border-box;
  text-align: center;
  margin-top: 30px;
  background: #fff;
  margin-bottom: 80px; }
  @media screen and (min-width: 768px) {
    .paln_block_in {
      margin-top: 0; } }
  .paln_block_in img {
    width: 100%;
    height: auto;
    max-width: 710px;
    margin-bottom: 5px; }
  .paln_block_in p {
    text-align: center; }

.point_illust02 {
  position: absolute;
  display: block;
  background: url("../images/chintai_renovation/illust_dl02.png") no-repeat;
  background-size: contain;
  width: 100px;
  height: 85px;
  position: absolute;
  right: -5px;
  top: -65px;
  z-index: 2; }
  @media screen and (min-width: 768px) {
    .point_illust02 {
      top: -70px; } }
  @media screen and (min-width: 1080px) {
    .point_illust02 {
      width: 150px;
      height: 120px; } }

.point_illust {
  position: absolute;
  display: block;
  background: url("../images/chintai_renovation/illust_dl.png") no-repeat;
  background-size: contain;
  width: 188px;
  height: 100px;
  position: absolute;
  right: -5px;
  top: -102px;
  cursor: pointer;
  z-index: 2; }
  @media screen and (min-width: 768px) {
    .point_illust {
      top: -77px;
      right: -10px; } }
  @media screen and (min-width: 1080px) {
    .point_illust {
      width: 280px;
      height: 120px;
      top: -80px; } }

.plan_img01 {
  max-width: 664px !important; }

.plus {
  padding: 30px 0 55px;
  text-align: center; }
  .plus img {
    width: 30px;
    height: 30px; }
    @media screen and (min-width: 768px) {
      .plus img {
        width: 56px;
        height: 56px; } }

.paln_block02 {
  border-radius: 10px;
  border: solid 3px #101E91;
  padding: 20px 0 0;
  box-sizing: border-box;
  position: relative;
  text-align: center;
  margin-top: 30px; }
  @media screen and (min-width: 768px) {
    .paln_block02 {
      padding: 60px 20px 0;
      margin-top: 0; } }
  .paln_block02 .plan_title h3 {
    top: 0 !important; }

.paln_block03 {
  border-radius: 10px;
  border: solid 2px #000;
  padding: 30px 10px 20px;
  box-sizing: border-box;
  position: relative;
  text-align: center; }
  @media screen and (min-width: 768px) {
    .paln_block03 {
      padding: 30px 60px; } }
  .paln_block03 .plan_title h3 {
    top: 0 !important; }

.option_img {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }
  .option_img li {
    width: 240px;
    margin-bottom: 40px; }
    @media screen and (max-width: 767px) {
      .option_img li {
        width: 48%; } }
    @media screen and (min-width: 768px) {
      .option_img li {
        width: 24%; } }
    .option_img li img {
      width: 100%;
      height: auto; }
  .option_img p {
    font-size: 1rem;
    text-align: center;
    color: #101E91;
    font-weight: 700;
    margin-bottom: 5px; }
    @media screen and (min-width: 1080px) {
      .option_img p {
        font-size: 1.125rem; } }

.flat {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-flow: column; }
  @media screen and (min-width: 768px) {
    .flat {
      flex-flow: row; } }
  .flat img {
    width: 100%;
    height: auto; }
  .flat li:first-child {
    width: 100%;
    margin-bottom: 20px; }
    @media screen and (min-width: 768px) {
      .flat li:first-child {
        width: 40%;
        margin-bottom: 0; } }
  .flat li:last-child {
    width: 100%; }
    @media screen and (min-width: 768px) {
      .flat li:last-child {
        width: 55%; } }

.link_type01 a {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #101E91;
  color: #fff;
  font-weight: 700;
  border-radius: 40px;
  width: 100%;
  height: 60px;
  font-size: .75rem; }
  @media screen and (min-width: 768px) {
    .link_type01 a {
      height: 80px;
      font-size: 1rem; } }
  .link_type01 a:hover {
    opacity: .8; }

.flow_block ul {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-flow: column; }
  @media screen and (min-width: 1080px) {
    .flow_block ul {
      flex-flow: row; } }
  .flow_block ul li {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-flow: row;
    width: 100%;
    position: relative;
    margin-bottom: 30px; }
    @media screen and (min-width: 1080px) {
      .flow_block ul li {
        ustify-content: center;
        flex-flow: column;
        width: 180px;
        margin-bottom: 0; } }
    .flow_block ul li .flow_title {
      color: #101E91;
      font-size: 1.125rem;
      font-weight: 700;
      margin: 4px 0; }
      @media screen and (min-width: 1080px) {
        .flow_block ul li .flow_title {
          text-align: center;
          font-size: 1.25rem; } }
    .flow_block ul li .flow_number {
      text-align: center;
      margin-bottom: 5px;
      width: 30px; }
      .flow_block ul li .flow_number + img {
        margin: 0 5px; }
    @media screen and (min-width: 1080px) {
      .flow_block ul li div > p {
        padding: 0 20px;
        box-sizing: border-box; } }
    .flow_block ul li:after {
      position: absolute;
      content: "";
      background: url("../images/chintai_renovation/flow_next.svg") no-repeat;
      width: 20px;
      height: 25px;
      background-size: contain; }
      @media screen and (max-width: 1079px) {
        .flow_block ul li:after {
          bottom: -25px;
          left: 80px;
          transform: rotate(90deg); } }
      @media screen and (min-width: 1080px) {
        .flow_block ul li:after {
          width: 26px;
          height: 31px;
          top: 92px;
          right: 0; } }
    .flow_block ul li:last-of-type::after {
      content: none; }
    .flow_block ul li figure {
      position: absolute; }
      @media screen and (max-width: 1079px) {
        .flow_block ul li figure {
          right: 0;
          top: 0; }
          .flow_block ul li figure img {
            width: 90px;
            height: auto; } }
      @media screen and (min-width: 1080px) {
        .flow_block ul li figure {
          right: -58px;
          top: 0; } }

@media screen and (max-width: 767px) {
  #contact {
    padding-top: 70px;
    margin-top: -70px; } }

.flow_contact {
  text-align: right;
  margin-top: 10px; }
  .flow_contact a {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #dc3232;
    border-radius: 50px;
    width: 180px;
    font-size: .75rem;
    color: #fff;
    width: 160px;
    height: 30px;
    position: relative;
    margin-left: auto;
    line-height: 1.4; }
    @media screen and (min-width: 768px) {
      .flow_contact a {
        margin-right: auto;
        font-size: 1.125rem;
        height: 60px;
        text-align: left; } }
    .flow_contact a:hover {
      opacity: .8; }

.kaizen {
  position: absolute;
  background: url("../images/chintai_renovation/kaizen.svg") no-repeat;
  background-size: contain;
  width: 120px;
  height: 60px;
  left: -65%;
  top: -20px;
  right: 0;
  margin: auto; }
  @media screen and (min-width: 768px) {
    .kaizen {
      width: 144px;
      height: 70px;
      left: -300px;
      top: -30px; } }
  @media screen and (min-width: 1080px) {
    .kaizen {
      left: -420px;
      top: -40px; } }

.youtube_block {
  text-align: center; }
  .youtube_block p {
    font-size: 1.25rem;
    text-align: center;
    position: relative;
    margin-bottom: 15px; }
    .youtube_block p img {
      position: relative;
      top: -10px;
      width: 200px;
      height: auto;
      margin-left: auto;
      margin-right: auto; }

.block_bottom {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 0;
  box-sizing: border-box;
  flex-flow: row;
  margin-bottom: 30px; }
  @media screen and (min-width: 768px) {
    .block_bottom {
      flex-flow: column; } }
  .block_bottom h3 {
    font-size: 2rem;
    font-weight: 700; }
    @media screen and (min-width: 768px) {
      .block_bottom h3 {
        font-size: 3.5rem; } }
  .block_bottom p {
    margin-bottom: 10px; }

.youtube_block02 {
  text-align: center;
  border: solid 1px #333;
  position: relative;
  font-weight: 700;
  margin-bottom: 50px; }
  @media screen and (min-width: 768px) {
    .youtube_block02 {
      margin-bottom: 80px; } }
  .youtube_block02 .block_top {
    background: #333;
    position: relative;
    padding: 10px;
    box-sizing: border-box;
    margin-bottom: 10px;
    position: relative;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column; }
    @media screen and (min-width: 768px) {
      .youtube_block02 .block_top {
        margin-bottom: 10px;
        flex-flow: row;
        align-items: flex-end; } }
    .youtube_block02 .block_top img {
      position: relative;
      margin: 0 10px 0 0;
      width: 200px;
      height: auto; }
      @media screen and (min-width: 768px) {
        .youtube_block02 .block_top img {
          margin: 0 20px 0 0; } }
    .youtube_block02 .block_top::after {
      content: "";
      position: absolute;
      bottom: -20px;
      left: 0;
      right: 0;
      margin: auto;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 40px 30px 0 30px;
      border-color: #333 transparent transparent transparent;
      z-index: -1; }
    .youtube_block02 .block_top div {
      display: flex;
      justify-content: center;
      align-items: center;
      flex-flow: column; }
    .youtube_block02 .block_top p {
      font-size: .75rem;
      white-space: nowrap;
      margin-bottom: 10px; }
      @media screen and (min-width: 768px) {
        .youtube_block02 .block_top p {
          margin-left: -60px;
          font-size: 1.5rem; } }
    .youtube_block02 .block_top h2 {
      font-size: 1rem;
      font-weight: 700;
      white-space: nowrap; }
      @media screen and (min-width: 768px) {
        .youtube_block02 .block_top h2 {
          font-size: 3rem; } }
    .youtube_block02 .block_top span {
      display: flex;
      justify-content: center;
      align-items: center; }
  .youtube_block02 .block_bottom {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 15px;
    box-sizing: border-box;
    flex-flow: row;
    margin-bottom: 30px; }
    @media screen and (min-width: 768px) {
      .youtube_block02 .block_bottom {
        flex-flow: column; } }
    .youtube_block02 .block_bottom p {
      text-align: center;
      font-size: 1.25rem; }
      @media screen and (min-width: 768px) {
        .youtube_block02 .block_bottom p {
          font-size: 2rem; } }
    .youtube_block02 .block_bottom h3 {
      font-size: .75rem;
      font-weight: 700; }
      @media screen and (min-width: 768px) {
        .youtube_block02 .block_bottom h3 {
          font-size: 3.5rem; } }
  .youtube_block02 ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-flow: column;
    width: calc(100% - 40px);
    margin: 0 auto 20px; }
    @media screen and (min-width: 768px) {
      .youtube_block02 ul {
        flex-flow: row;
        margin: 0 auto 20px; } }
    .youtube_block02 ul li {
      width: 90%;
      margin-bottom: 20px;
      position: relative;
      height: 0; }
      @media screen and (max-width: 767px) {
        .youtube_block02 ul li {
          padding-bottom: 50.875%;
          margin-bottom: 50px; } }
      @media screen and (min-width: 768px) {
        .youtube_block02 ul li {
          width: 32%;
          padding-bottom: 18%; } }
      .youtube_block02 ul li img {
        width: 100%;
        height: auto; }
      .youtube_block02 ul li p {
        position: absolute;
        top: -30px;
        left: 0;
        right: 0;
        margin: auto;
        text-align: center; }
        @media screen and (min-width: 768px) {
          .youtube_block02 ul li p {
            top: -40px;
            font-size: 1.25rem; } }
      .youtube_block02 ul li iframe,
      .youtube_block02 ul li object,
      .youtube_block02 ul li embed {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }

.owner_contact {
  margin-bottom: 20px;
  text-align: right;
  box-sizing: border-box;
  display: inline-block;
  margin-top: 10px; }
  .owner_contact a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background: #dc3232;
    border-radius: 50px;
    width: 240px;
    font-size: .75rem;
    color: #fff;
    height: 30px;
    position: relative;
    margin-left: auto;
    transition: .2s; }
    .owner_contact a:hover {
      opacity: .7;
      transition: .2s; }

.flow_contact01 {
  margin-bottom: 20px;
  text-align: right;
  padding: 0 40px;
  box-sizing: border-box; }
  .flow_contact01 a {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #dc3232;
    border-radius: 50px;
    width: 240px;
    font-size: .75rem;
    color: #fff;
    height: 30px;
    position: relative;
    margin-left: auto;
    transition: .2s; }
    .flow_contact01 a:hover {
      opacity: .7;
      transition: .2s; }
    .flow_contact01 a::after {
      position: absolute;
      content: "";
      right: -10px;
      bottom: -35px;
      background: url("../images/chintai_renovation/hand.png") no-repeat;
      width: 42px;
      height: 44px; }

.flow_contact02 {
  text-align: right;
  box-sizing: border-box;
  margin-top: 20px; }
  @media screen and (min-width: 768px) {
    .flow_contact02 {
      margin-top: 0; } }
  .flow_contact02 a {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #dc3232;
    border-radius: 50px;
    width: 250px;
    font-size: .875rem;
    color: #fff;
    height: 60px;
    position: relative;
    margin-left: auto;
    transition: .2s; }
    @media screen and (min-width: 768px) {
      .flow_contact02 a {
        width: 300px;
        font-size: 1.25rem; } }
    .flow_contact02 a:hover {
      opacity: .7;
      transition: .2s; }

.flow_contact03 {
  text-align: right;
  position: relative;
  box-sizing: border-box; }
  .flow_contact03 a {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #dc3232;
    border-radius: 50px;
    width: 250px;
    font-size: .875rem;
    color: #fff;
    height: 60px;
    position: absolute;
    top: 40px;
    right: 0;
    margin-left: auto;
    transition: .2s; }
    .flow_contact03 a:hover {
      opacity: .7;
      transition: .2s; }

.flow_contact04 {
  text-align: right;
  position: relative;
  box-sizing: border-box; }
  .flow_contact04 a {
    width: 160px;
    font-size: .75rem;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #dc3232;
    border-radius: 50px;
    color: #fff;
    position: absolute;
    top: 40px;
    right: 0;
    margin-left: auto;
    transition: .2s; }
    @media screen and (min-width: 768px) {
      .flow_contact04 a {
        width: 250px;
        height: 60px;
        font-size: .875rem; } }
    .flow_contact04 a:hover {
      opacity: .7;
      transition: .2s; }

.tiku {
  color: #dc3232;
  font-size: 3rem;
  font-weight: 700;
  position: absolute;
  top: -50px;
  right: 3%;
  text-shadow: 2px  2px 0px #fff, -2px  2px 0px #fff, 2px -2px 0px #fff, -2px -2px 0px #fff, 2px  0px 0px #fff, 0px  2px 0px #fff, -2px  0px 0px #fff, 0px -2px 0px #fff; }
  @media screen and (min-width: 768px) {
    .tiku {
      right: 5%; } }

.yt_contact {
  margin: 30px 0 0 0; }
  @media screen and (min-width: 768px) {
    .yt_contact {
      margin: 0 20px 0 0; } }
  .yt_contact a {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 15px;
    box-sizing: border-box;
    color: #fff;
    background: #333;
    border-radius: 10px;
    font-size: .875rem;
    transition: .2s;
    height: 60px; }
    .yt_contact a:hover {
      opacity: .7;
      transition: .2s; }
    .yt_contact a img {
      margin-right: 15px;
      width: 140px;
      height: auto; }

.after_flex {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 30px;
  flex-flow: column; }
  @media screen and (min-width: 768px) {
    .after_flex {
      flex-flow: row;
      justify-content: flex-end; } }

.rec_auth {
  line-height: 1 !important;
  font-size: 0.8em; }

#sec01,
#sec02,
#sec03,
#sec04,
#sec05,
#sec06,
#jirei01,
#jirei02,
#contact {
  margin-top: -80px;
  padding-top: 80px; }
  @media screen and (min-width: 768px) {
    #sec01,
    #sec02,
    #sec03,
    #sec04,
    #sec05,
    #sec06,
    #jirei01,
    #jirei02,
    #contact {
      margin-top: -60px;
      padding-top: 60px; } }

.dl_img {
  width: 100%;
  height: auto;
  text-align: center;
  margin-left: auto;
  margin-right: auto; }
  .dl_img img {
    width: 100%;
    max-width: 880px;
    height: auto; }

.dl_img02 {
  width: 100%;
  height: auto;
  text-align: center;
  margin-left: auto;
  margin-right: auto; }
  .dl_img02 img {
    width: 100%;
    max-width: 640px;
    height: auto; }

.before_after {
  margin-bottom: 80px; }
  .before_after ul {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap; }
    .before_after ul li {
      width: 50%;
      position: relative;
      transition: .2s; }
      @media screen and (min-width: 768px) {
        .before_after ul li {
          width: 33.3333%; } }
      .before_after ul li img {
        width: 100%;
        height: 250px;
        font-family: 'object-fit: cover;';
        object-fit: cover; }
        @media screen and (min-width: 768px) {
          .before_after ul li img {
            height: 350px; } }
        @media screen and (min-width: 1080px) {
          .before_after ul li img {
            height: 400px; } }
      .before_after ul li:hover .after_in {
        opacity: 0;
        transition: .2s;
        cursor: pointer; }
      .before_after ul li > div {
        position: relative;
        width: 100%;
        height: 250px;
        transition: .2s;
        border: solid 2px #fff;
        border-top: solid 0 #fff; }
        @media screen and (min-width: 768px) {
          .before_after ul li > div {
            height: 350px; } }
        @media screen and (min-width: 1080px) {
          .before_after ul li > div {
            height: 400px; } }

.after_in {
  position: absolute;
  top: 0;
  width: 100%;
  height: 250px;
  transition: .2s; }
  @media screen and (min-width: 768px) {
    .after_in {
      height: 350px; } }
  @media screen and (min-width: 1080px) {
    .after_in {
      height: 400px; } }
  .after_in p {
    background: #FF0000;
    padding: 2px 10px;
    position: absolute;
    right: 0;
    top: 0;
    color: #fff;
    font-size: .675rem; }
    @media screen and (min-width: 768px) {
      .after_in p {
        padding: 4px 20px;
        font-size: .75rem; } }
  .after_in ul {
    position: absolute;
    padding: 10px;
    box-sizing: border-box;
    background: rgba(255, 255, 255, 0.5);
    bottom: 10px;
    left: 5px;
    right: 5px;
    margin: auto;
    color: #000;
    font-size: .675rem;
    z-index: 2; }
    @media screen and (min-width: 768px) {
      .after_in ul {
        font-size: .875rem;
        left: 10px;
        right: 10px; } }
    .after_in ul li {
      width: 100%;
      line-height: 1.5; }

.before_in {
  position: absolute;
  top: 0;
  width: 100%;
  height: 250px;
  transition: .2s; }
  @media screen and (min-width: 768px) {
    .before_in {
      height: 350px; } }
  @media screen and (min-width: 1080px) {
    .before_in {
      height: 400px; } }
  .before_in p {
    background: #999;
    padding: 4px 20px;
    position: absolute;
    right: 0;
    top: 0;
    color: #fff;
    font-size: .675rem; }
    @media screen and (min-width: 768px) {
      .before_in p {
        padding: 4px 20px;
        font-size: .75rem; } }

.big {
  font-weight: 700;
  font-size: 1.5rem; }
  @media screen and (min-width: 768px) {
    .big {
      font-size: 2.5rem; } }

.big02 {
  font-weight: 700;
  font-size: 1.125rem; }
  @media screen and (min-width: 768px) {
    .big02 {
      font-size: 2rem; } }

.big03 {
  font-weight: 700;
  font-size: 1.125rem; }
  @media screen and (min-width: 768px) {
    .big03 {
      font-size: 1.5rem; } }

.interview {
  margin-bottom: 80px; }
  .interview h3 {
    font-size: 1rem;
    text-align: center;
    font-weight: 700;
    margin-bottom: 20px; }
    @media screen and (min-width: 768px) {
      .interview h3 {
        font-size: 1.5rem; } }
  .interview ul {
    display: flex;
    justify-content: space-between;
    flex-flow: column; }
    @media screen and (min-width: 768px) {
      .interview ul {
        flex-flow: row; } }
    .interview ul li {
      width: 100%;
      margin-bottom: 20px; }
      @media screen and (min-width: 768px) {
        .interview ul li {
          width: 48%;
          margin-bottom: 0; } }
      .interview ul li .youtube {
        position: relative;
        padding-bottom: 56.25%;
        padding-top: 30px;
        height: 0;
        overflow: hidden;
        width: 100%;
        margin-bottom: 5px; }
        .interview ul li .youtube iframe,
        .interview ul li .youtube object,
        .interview ul li .youtube embed {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%; }
      .interview ul li p {
        text-align: center; }

.president_block {
  background: #ECF8FC;
  padding: 20px 10px;
  box-sizing: border-box;
  width: 100%;
  max-width: 880px;
  margin-left: auto;
  margin-right: auto;
  position: relative; }
  .president_block::after {
    position: absolute;
    content: "";
    bottom: -60px;
    left: 0;
    right: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 60px calc(50vw - 19px) 0 calc(50vw - 19px);
    border-color: #ECF8FC transparent transparent transparent; }
    @media screen and (min-width: 768px) {
      .president_block::after {
        border-width: 60px 440px 0 440px; } }
  @media screen and (min-width: 768px) {
    .president_block {
      padding: 30px 60px; } }
  .president_block ul {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column;
    margin-bottom: 25px; }
    @media screen and (min-width: 768px) {
      .president_block ul {
        flex-flow: row; } }
    .president_block ul li {
      width: 100%; }
      .president_block ul li h3 {
        font-size: 1.125rem;
        font-weight: 700;
        text-align: center; }
        .president_block ul li h3 small {
          font-size: .875rem; }
          @media screen and (min-width: 768px) {
            .president_block ul li h3 small {
              font-size: 1.125rem; } }
        @media screen and (min-width: 768px) {
          .president_block ul li h3 {
            font-size: 2rem; } }
      @media screen and (min-width: 768px) {
        .president_block ul li {
          width: 65%; }
          .president_block ul li:last-child {
            width: 25%; } }
      .president_block ul li p {
        text-align: center;
        margin-top: 10px;
        font-size: .875rem; }
      .president_block ul li img {
        width: 60%;
        height: auto; }
        @media screen and (min-width: 768px) {
          .president_block ul li img {
            width: 100%; } }
      @media screen and (max-width: 767px) {
        .president_block ul li:last-child {
          text-align: center;
          margin-top: 10px; } }
  .president_block > p {
    margin-bottom: 20px; }

/* --------------------------------
お問い合わせ
-------------------------------- */
@media screen and (max-width: 1079px) {
  .formpage {
    padding-top: 60px; } }
.single-body_w80 {
  text-align: center; }
  .single-body_w80 img {
    height: auto; }
    @media screen and (max-width: 767px) {
      .single-body_w80 img {
        max-width: 100%; } }
    @media screen and (min-width: 768px) {
      .single-body_w80 img {
        max-width: 80%; } }

.title_type20 {
  color: #101E91;
  font-weight: bold;
  font-size: 1.375rem;
  padding-bottom: 3px;
  border-bottom: solid 2px #101E91; }

.phone_inq img {
  display: block;
  height: auto; }
  @media screen and (max-width: 767px) {
    .phone_inq img {
      max-width: 100%; } }
  @media screen and (min-width: 768px) {
    .phone_inq img {
      width: 50%;
      margin: 0 auto; } }

.tabletype02 {
  width: 100%;
  background: #F3F3F3;
  border-radius: 10px;
  font-size: .875rem;
  box-sizing: border-box; }
  @media screen and (max-width: 1079px) {
    .tabletype02 {
      padding: 10px; } }
  @media screen and (min-width: 1080px) {
    .tabletype02 {
      padding: 50px 100px; } }
  .tabletype02 dl {
    width: 100%;
    margin-bottom: 20px; }
    .tabletype02 dl dd.check_label .wpcf7-list-item {
      display: block; }
      .tabletype02 dl dd.check_label .wpcf7-list-item label {
        display: block; }
  .tabletype02 textarea {
    width: 100%;
    height: 150px;
    box-sizing: border-box;
    font-size: 1rem;
    padding: 10px;
    font-family: "Noto Sans JP",Meiryo, "メイリオ",Osaka,"MS P Gothic", "ＭＳ Ｐゴシック",sans-serif;
    border: solid 1px #5A5A5A;
    border-radius: 5px; }
  .tabletype02 input,
  .tabletype02 select {
    padding: 10px;
    width: 100%;
    box-sizing: border-box;
    border: solid 1px #5A5A5A;
    border-radius: 5px;
    background: #fff; }
  .tabletype02 input[type="checkbox"], .tabletype02 input[type="radio"] {
    width: auto !important; }

.tabletype02 h3 {
  background: #101E91;
  color: #FFF;
  font-size: 1.375rem;
  padding: 10px 14px; }

/************************ 

YouTube動画サムネイル設定

******************** */
.top_main {
  text-align: center;
  box-sizing: border-box;
  /*@media screen and (min-width:1080px) {
  	padding-left:200px;
  }*/
  width: 100%; }
  .top_main img {
    width: 100%;
    max-width: 1080px;
    height: auto; }
    @media screen and (min-width: 768px) and (max-width: 1079px) {
      .top_main img {
        width: 80%; } }

.main_bg {
  background: url("../images/chintai_renovation/main_bg.jpg") no-repeat;
  background-size: cover;
  padding: 70px 15px 40px 15px;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column; }
  @media screen and (min-width: 1080px) {
    .main_bg {
      padding: 30px 15px 30px 15px; } }

.movie-inner {
  width: 100%;
  height: auto;
  padding-top: 56.25%;
  position: relative; }
  @media screen and (min-width: 1080px) {
    .movie-inner {
      width: 958px;
      height: 540px;
      padding-top: 0; } }
  .movie-inner:hover {
    opacity: .7; }
  .movie-inner::before {
    content: "";
    background: url("../images/chintai_renovation/kokai.png") no-repeat;
    background-size: contain;
    width: 80px;
    height: 90px;
    position: absolute;
    left: -5px;
    top: -70px;
    z-index: 2; }
    @media screen and (min-width: 768px) {
      .movie-inner::before {
        width: 100px;
        height: 105px;
        left: -10px;
        top: -60px; } }
    @media screen and (min-width: 1080px) {
      .movie-inner::before {
        left: -40px;
        top: -60px; } }

.movie-inner.show:hover {
  opacity: 1; }

.movie-inner .movie-thumb {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  background: url("../images/chintai_renovation/main.jpg") no-repeat;
  background-size: cover; }

.movie-inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

/* 各種フォーム */
.img_r {
  overflow: hidden; }
  .img_r .img_r_img {
    float: right;
    max-width: 180px;
    width: 100%;
    height: auto;
    margin: 0 0 15px 15px; }

.flow {
  display: flex;
  /* flexboxで横並びにする */
  justify-content: space-between;
  /* 横並びにしたものを等間隔で並べる */ }

.flow li {
  color: #333;
  /* 文字色を黒に指定 */
  width: calc(100% / 4);
  /* 横幅を三等分した1つの大きさに指定 */
  background: #eee;
  /* 背景色をグレーに指定 */
  line-height: 1.4;
  /* 行間(高さの代わり)を指定 */
  text-align: center;
  /* 文字を中央寄せにする */
  position: relative;
  /* 基準位置とする */
  min-height: 60px;
  display: flex;
  align-items: center;
  justify-content: center; }

.flow li span {
  background: #FFF;
  color: #000;
  padding: 4px 10px;
  margin-right: 5px; }

.flow li:not(:first-child):not(:last-child) {
  padding: 0 0 0 10px;
  /* 最初と最後以外には左に適度な余白を指定 */ }

.flow li::before,
.flow li::after {
  content: "";
  width: 0;
  height: 0;
  display: block;
  position: absolute; }

.flow li::before {
  border: solid 38px transparent;
  /* 32pxのborderを指定 */
  border-right: solid 14px transparent;
  /* 幅を合わせるため右線は13pxにする */
  border-left: solid 14px #FFF;
  /* 白い三角形を作成して▷の形で上に重ねて削り取る */
  top: -8px;
  /* 重ねる位置(縦軸)を調整 */
  left: 0;
  /* 重ねる位置(横軸)を調整 */
  z-index: 1;
  /* 重なり順を指定 */ }

.flow li::after {
  border: solid 30px transparent;
  /* 25pxのborderを指定 */
  border-left: solid 10px #EDEDED;
  /* 左のborderで背景色と同じ▶の部分を作成する */
  border-right: solid 10px transparent;
  /* 幅を合わせるために右線は10pxにする */
  top: 0;
  /* 重ねる位置(縦軸)を調整 */
  right: -20px;
  /* 重ねる位置(横軸)を調整 */
  z-index: 2;
  /* 重なり順の優先度を他よりも上げる */ }

.flow li:first-child {
  width: calc(100% / 2); }

.flow li:first-child::before,
.flow li:last-child::after {
  content: none;
  /* 最初のliの左と最後のliの右は作らない */ }

/* 以下.currentだけ色を変えるCSS */
.flow li:nth-child(1) {
  color: #FFF;
  background: #101E91; }

.flow li:nth-child(1)::after {
  border-left: solid 10px #101E91; }

.flow li:nth-child(2) {
  color: #FFF;
  background: #FF6539; }

.flow li:nth-child(2)::after {
  border-left: solid 10px #FF6539; }

.flow li:nth-child(2) img {
  position: absolute;
  top: -35px;
  left: 0px;
  margin: auto;
  right: 0; }

@media screen and (min-width: 768px) {
  .w_center {
    width: 650px;
    margin-left: auto;
    margin-right: auto; } }

.wpcf7-spinner {
  display: none !important; }

.deco {
  text-decoration: underline; }
  .deco:hover {
    text-decoration: none; }

.marker_red {
  background: linear-gradient(transparent 70%, #e77373 70%); }

.banner_block {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  width: calc(100% - 40px);
  margin-left: auto;
  margin-right: auto;
  max-width: 1000px;
  flex-flow: column; }
  @media screen and (min-width: 768px) {
    .banner_block {
      flex-flow: row; } }
  .banner_block a {
    display: block;
    width: 100%; }
    @media screen and (min-width: 768px) {
      .banner_block a {
        width: 50%; } }
    @media screen and (min-width: 1000px) {
      .banner_block a {
        width: 480px; } }
  .banner_block img {
    width: 100%;
    height: auto; }

/* トップページ　スライド　*/
#photo01 {
  overflow: hidden;
  width: 100%;
  margin: 40px auto; }

#photo02 {
  margin-top: -80px !important;
  overflow: hidden;
  width: 100%; }

#photo01 .slick-slide,
#photo02 .slick-slide {
  margin-left: 10px;
  margin-right: 10px; }

.main_bg02 {
  width: 100%;
  margin-top: 64px; }
  @media screen and (min-width: 768px) {
    .main_bg02 {
      margin-top: 0; } }
  .main_bg02 img {
    width: 100%;
    height: auto; }

.side_banner {
  position: fixed;
  top: 160px;
  right: 3px;
  z-index: 100; }
  @media screen and (max-width: 767px) {
    .side_banner {
      display: none; } }

.price_plan {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  padding: 20px 0;
  max-width: 960px; }
  @media screen and (min-width: 768px) {
    .price_plan {
      padding: 40px 0; } }
  .price_plan img {
    width: 100%;
    height: auto; }
  .price_plan .price_plan_bottom {
    position: relative; }
    .price_plan .price_plan_bottom a {
      position: absolute;
      display: block;
      width: 70%;
      height: 100%;
      left: 0;
      right: 0;
      bottom: 0;
      top: 0;
      margin: auto;
      z-index: 2; }
      .price_plan .price_plan_bottom a:hover {
        opacity: .2;
        background: #fff; }

.sp_main {
  display: block;
  margin-top: 64px !important; }
  @media screen and (min-width: 1080px) {
    .sp_main {
      display: none; } }

.pc_main {
  display: none; }
  @media screen and (min-width: 1080px) {
    .pc_main {
      display: block; } }

#sec06,
#sec07 {
  margin-top: -70px;
  padding-top: 70px; }

.chintai_contact_button {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column;
  width: calc(100% - 40px);
  max-width: 1240px;
  margin: 60px auto 80px; }
  @media screen and (min-width: 768px) {
    .chintai_contact_button {
      flex-flow: row; } }
  .chintai_contact_button div {
    display: block;
    width: 100%;
    margin-bottom: 30px;
    position: relative; }
    @media screen and (min-width: 768px) {
      .chintai_contact_button div {
        width: 48%; } }
    @media screen and (max-width: 767px) {
      .chintai_contact_button div:first-of-type {
        margin-bottom: 60px; } }
  .chintai_contact_button a {
    display: block;
    width: 100%; }
    .chintai_contact_button a img {
      width: 100%;
      height: auto; }
    .chintai_contact_button a:hover {
      opacity: .75; }
  .chintai_contact_button .sub_text {
    font-size: .8125rem;
    background: #ffc000;
    padding: 4px 10px;
    box-sizing: border-box;
    border-radius: 10px;
    position: absolute;
    right: 0;
    top: -43px;
    line-height: 1.4;
    font-weight: 700;
    z-index: 3; }
    @media screen and (max-width: 400px) {
      .chintai_contact_button .sub_text {
        top: -48px; } }
    .chintai_contact_button .sub_text::after {
      content: "";
      position: absolute;
      left: 30px;
      right: 0;
      bottom: -18px;
      margin: auto;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 18px 12px 0 12px;
      border-color: #ffc000 transparent transparent transparent;
      z-index: 2; }

.nodeco {
  text-decoration: none !important; }

.underline01 {
  position: relative;
  color: #000 !important;
  text-decoration-color: #101E91 !important; }
  .underline01:hover {
    text-decoration: underline !important;
    opacity: 1; }

.sub_text02 {
  font-size: .875rem;
  background: #ffc000;
  padding: 10px 20px;
  box-sizing: border-box;
  border-radius: 10px;
  position: absolute;
  top: -40px;
  line-height: 1.4;
  font-weight: 700;
  z-index: 3; }
  @media screen and (max-width: 767px) {
    .sub_text02 {
      top: 170px;
      left: 0;
      font-size: .75rem; } }
  @media screen and (min-width: 520px) {
    .sub_text02 {
      left: 50px; } }
  @media screen and (min-width: 640px) {
    .sub_text02 {
      left: 150px; } }
  @media screen and (min-width: 768px) {
    .sub_text02 {
      left: 55%; } }
  @media screen and (min-width: 1080px) {
    .sub_text02 {
      top: -20px;
      left: 450px; } }
  .sub_text02::after {
    content: "";
    position: absolute;
    left: 55px;
    bottom: -8px;
    margin: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 18px 12px 0 12px;
    border-color: #ffc000 transparent transparent transparent;
    z-index: -1; }
    @media screen and (min-width: 768px) {
      .sub_text02::after {
        bottom: -18px; } }

.photo_block {
  padding: 20px;
  box-sizing: border-box;
  background: #C5DFFF;
  margin-bottom: 40px; }
  .photo_block picture {
    width: 100%; }
    .photo_block picture:last-of-type img {
      margin-bottom: 0; }
    .photo_block picture img {
      width: 100%;
      margin-bottom: 20px;
      height: auto; }

@media screen and (max-width: 1079px) {
  .maintenance {
    margin-top: 50px !important;
    padding-bottom: 300px; } }
@media screen and (min-width: 1080px) {
  .maintenance {
    margin-top: 200px !important;
    padding-bottom: 0; } }
.maintenance p {
  font-size: 1.2rem;
  line-height: 2.0; }

/* CF7 */
.wpcf7-spinner {
  display: block; }

/* ベースカラー調整 */
.page-id-45437 .gnav_pc, .page-id-45478 .gnav_pc {
  border-bottom: solid 2px #e75626; }
.page-id-45437 .mean-container a.meanmenu-reveal, .page-id-45478 .mean-container a.meanmenu-reveal {
  background: #e75626 !important; }
@media screen and (max-width: 1079px) {
  .page-id-45437 .footer_banner, .page-id-45478 .footer_banner {
    border-top: solid 3px #e75626;
    border-bottom: solid 3px #e75626; } }

/* header.scss */
.header {
  background: #fff;
  width: 100%;
  display: none; }
  @media screen and (min-width: 1080px) {
    .header {
      display: block; } }
  .header .header_inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: calc(100% - 30px);
    margin-left: auto;
    margin-right: auto;
    position: relative;
    max-width: 1080px; }
    @media screen and (min-width: 768px) {
      .header .header_inner {
        margin: 5px auto; } }
  .header .h_left {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end; }
    .header .h_left ul {
      display: flex;
      justify-content: flex-start;
      align-items: center; }
      .header .h_left ul li {
        margin-right: 6px;
        background: #000;
        padding: 2px 12px 5px;
        box-sizing: border-box;
        border-radius: 20px;
        color: #fff;
        white-space: nowrap;
        font-size: .75rem; }
    .header .h_left .ribon {
      display: flex;
      justify-content: flex-start;
      align-items: center; }
      .header .h_left .ribon figure {
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 0 5px; }
        .header .h_left .ribon figure img {
          width: 100%;
          max-width: 105px;
          height: auto; }
  .header .logo a {
    width: 200px;
    margin-right: 5px;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-direction: column;
    /*p {
        margin-top: 5px;
        font-size: .75rem;
        color:#a6a6a6;
    }*/ }
    .header .logo a img {
      padding-top: 3px;
      width: 100%;
      height: auto; }
  .header .h_contact {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end; }
    .header .h_contact > a > figure {
      display: block;
      margin-right: 10px; }
    .header .h_contact .h_mail {
      margin-right: 10px; }
      .header .h_contact .h_mail a {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        background: #FF0000;
        border-radius: 10px;
        height: 92px;
        padding: 10px;
        box-sizing: border-box; }
        .header .h_contact .h_mail a figure {
          display: flex;
          justify-content: center;
          align-items: center; }
          .header .h_contact .h_mail a figure img {
            margin-bottom: 10px;
            width: 24px;
            height: auto; }
        .header .h_contact .h_mail a p {
          font-weight: 700;
          text-align: center;
          font-size: 1rem;
          color: #fff;
          line-height: 1.1; }

@media screen and (max-width: 1079px) {
  /* スマホ, Tablet */
  .menu-text {
    position: absolute;
    top: 26px;
    right: 9px;
    color: #FFF;
    font-size: .685rem; } }
/* End MQ */
@media screen and (min-width: 1080px) {
  /* PC */
  .menu-text {
    display: none; } }
/* End MQ */
@media screen and (max-width: 1079px) {
  /* スマホ */
  .sub_title {
    position: absolute;
    top: 4px;
    left: 6px;
    color: #FFF;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: calc(100% - 60px); }
    .sub_title .logo {
      margin-top: 10px; }
      .sub_title .logo a {
        /*display:flex;
        justify-content: center;
        align-items: center;*/ }
        .sub_title .logo a img {
          width: 100%;
          max-width: 120px;
          height: auto; }
    .sub_title .h_area {
      display: flex;
      justify-content: flex-start;
      align-items: center;
      position: relative;
      left: 6px;
      top: 6px; } }
    @media screen and (max-width: 1079px) and (max-width: 420px) {
      .sub_title .h_area {
        display: none; } }
@media screen and (max-width: 1079px) {
      .sub_title .h_area p {
        margin-right: 6px;
        background: #000;
        padding: 2px 12px;
        box-sizing: border-box;
        border-radius: 20px;
        color: #fff;
        white-space: nowrap;
        font-size: .675rem; }
    .sub_title .ribon {
      display: flex;
      justify-content: flex-start;
      align-items: center; } }
    @media screen and (max-width: 1079px) and (max-width: 600px) {
      .sub_title .ribon {
        display: none; } }
@media screen and (max-width: 1079px) {
      .sub_title .ribon img {
        margin-left: 6px;
        width: auto;
        height: 52px; }
    .sub_title .sh_sp_mail {
      position: absolute;
      top: 0;
      right: 6px; }
      .sub_title .sh_sp_mail a {
        background: #FF0000;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        width: 50px;
        height: 50px;
        padding-top: 2px;
        box-sizing: border-box;
        border-radius: 50px; }
        .sub_title .sh_sp_mail a p {
          color: #fff;
          font-size: .675rem; }
        .sub_title .sh_sp_mail a figure {
          display: flex;
          justify-content: center;
          align-items: center; }
          .sub_title .sh_sp_mail a figure img {
            max-width: 20px;
            height: auto; } }
/* End MQ */
.corp_logo_hd a {
  font-family: 'M PLUS Rounded 1c', sans-serif;
  position: relative;
  font-size: 1.0rem;
  margin-bottom: 15px;
  font-weight: 700;
  display: flex;
  justify-content: flex-start;
  align-items: center; }
  .corp_logo_hd a img {
    margin-right: 5px;
    width: 60px;
    height: auto; }

@media screen and (min-width: 1080px) {
  /* Tablet, PC */
  .sub_title {
    display: none; } }
/* End MQ */
/* gnav.scss */
@media screen and (min-width: 1080px) {
  /* PC */
  .gnav_pc {
    height: 50px;
    border-bottom: solid 2px #101E91; }
    .gnav_pc ul {
      display: flex;
      justify-content: space-around;
      align-items: center;
      height: 50px;
      max-width: 1080px;
      margin-left: auto;
      margin-right: auto; }
      .gnav_pc ul li a {
        color: #232323;
        font-size: .9325rem;
        font-weight: 500; }
        .gnav_pc ul li a figure {
          display: flex;
          justify-content: center;
          align-items: center;
          margin-right: 6px; }

  #gnav_mm {
    display: none !important; } }
/* End MQ */
/*! #######################################################################

	MeanMenu 2.0.6
	--------
	
	To be used with jquery.meanmenu.js by Chris Wharton (http://www.meanthemes.com/plugins/meanmenu/)

####################################################################### */
@media screen and (max-width: 1079px) {
  .gnav_pc {
    display: none; }

  a.meanmenu-reveal {
    display: none; }

  /* 一番上のバー */
  .mean-container .mean-bar {
    position: fixed;
    z-index: 999;
    right: 0;
    top: 0;
    height: 60px;
    background: #fff;
    width: 100%; }

  .mean-container a.meanmenu-reveal {
    width: 50px;
    height: 50px;
    border-radius: 50px;
    box-sizing: border-box;
    padding: 10px 13px;
    position: absolute;
    top: 5px;
    right: 5px !important;
    cursor: pointer;
    color: #fff;
    text-decoration: none;
    line-height: 22px;
    display: block;
    z-index: 1000;
    background: #101E91; } }
@media screen and (max-width: 1079px) and (max-width: 1079px) {
  #service_post a.meanmenu-reveal {
    display: none !important; } }
@media screen and (max-width: 1079px) {
  .mean-container a.meanmenu-reveal span {
    display: block;
    background: #fff;
    height: 1px;
    margin-top: 6px; }

  .mean-container a.meanmenu-reveal span:first-of-type {
    margin-top: 3px; }

  /*開いた中のバー*/
  .mean-container .mean-nav {
    width: 100%; }

  .mean-container .mean-nav > ul {
    background: #fff;
    padding: 0;
    margin: 0;
    height: calc(100% - 60px);
    top: 60px;
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-flow: column;
    list-style-type: none;
    position: fixed;
    overflow-y: auto; }

  .mean-container .mean-nav ul li {
    position: relative;
    width: 100%; }

  .mean-container .mean-nav ul li a {
    display: block;
    width: 90%;
    padding: 1em 5%;
    margin: 0;
    text-align: left;
    color: #232323;
    border-top: 1px solid #383838;
    border-top: 1px solid #232323;
    text-decoration: none;
    text-transform: uppercase;
    font-size: .875rem; }
    .mean-container .mean-nav ul li a img {
      vertical-align: middle; }

  .mean-container .mean-nav ul li li a {
    width: 80%;
    padding: 1em 10%;
    border-top: 1px solid #f1f1f1;
    opacity: 0.75;
    filter: alpha(opacity=75);
    text-shadow: none !important;
    visibility: visible; }

  .mean-container .mean-nav ul li.mean-last a {
    border-bottom: none;
    margin-bottom: 0; }

  .mean-container .mean-nav ul li li li a {
    width: 70%;
    padding: 1em 15%; }

  .mean-container .mean-nav ul li li li li a {
    width: 60%;
    padding: 1em 20%; }

  .mean-container .mean-nav ul li li li li li a {
    width: 50%;
    padding: 1em 25%; }

  .mean-container .mean-nav ul li a:hover {
    color: #FFF;
    background: #1528bf; }

  .mean-container .mean-nav ul li a.mean-expand {
    margin-top: 1px;
    width: 26px;
    height: 29px;
    padding: 7px 12px 16px 12px;
    text-align: center;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2;
    font-weight: 700;
    color: #FFF;
    background: #1528bf;
    border: none !important;
    border-left: 1px solid rgba(255, 255, 255, 0.4) !important; }

  .mean-container .mean-nav ul li a.mean-expand:hover {
    color: #FFF;
    background: #1528bf; }

  .mean-container .mean-push {
    float: left;
    width: 100%;
    padding: 0;
    margin: 0;
    clear: both; }

  .mean-nav .wrapper {
    width: 100%;
    padding: 0;
    margin: 0; }

  /* Fix for box sizing on Foundation Framework etc. */
  .mean-container .mean-bar, .mean-container .mean-bar * {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box; } }
.mean-remove {
  display: none !important; }

/* footer.scss */
.footer_banner {
  display: flex;
  justify-content: center;
  align-items: center; }
  @media screen and (max-width: 1079px) {
    .footer_banner {
      position: fixed;
      bottom: 0;
      left: 0;
      right: 0;
      margin: auto;
      z-index: 5;
      border-top: solid 3px #101E91;
      border-bottom: solid 3px #101E91;
      background: #fff;
      width: 100%; } }
  @media screen and (min-width: 1080px) {
    .footer_banner {
      margin-bottom: 100px;
      position: relative;
      margin-bottom: 80px; } }
  .footer_banner picture {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (min-width: 1080px) {
      .footer_banner picture {
        max-width: 800px; } }
    .footer_banner picture img {
      width: 100%;
      height: auto; }

.footer {
  background: #262626;
  padding: 30px 0 120px; }
  @media screen and (min-width: 1080px) {
    .footer {
      padding: 30px 0; } }
  .footer .footer_inner {
    width: calc(100% - 30px);
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    color: #fff; }
    @media screen and (min-width: 1080px) {
      .footer .footer_inner {
        justify-content: space-between; } }
  .footer .footer_left {
    font-size: .8125rem; }
    @media screen and (max-width: 1079px) {
      .footer .footer_left {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column; }
        .footer .footer_left p {
          text-align: center; } }
    .footer .footer_left .f_logo {
      margin-bottom: 10px; }
      .footer .footer_left .f_logo a {
        display: block;
        margin-top: 10px; }
      .footer .footer_left .f_logo figure {
        padding: 6px 20px;
        box-sizing: border-box;
        /*display:flex;*/
        text-align: center;
        /*justify-content: center;
        align-items: center;*/
        background: #fff;
        border-radius: 6px;
        max-width: 400px; }
        @media screen and (max-width: 1079px) {
          .footer .footer_left .f_logo figure {
            margin-left: 15px;
            margin-right: 15px; } }
        .footer .footer_left .f_logo figure p {
          font-family: "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, sans-serif;
          font-weight: 500; }
        .footer .footer_left .f_logo figure img {
          width: 100%;
          max-width: 180px;
          height: auto; }
    .footer .footer_left .tel {
      margin: 20px 0; }
      .footer .footer_left .tel a {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        color: #fff;
        font-size: 2rem;
        font-weight: 600;
        line-height: 1;
        margin-bottom: 10px; }
        .footer .footer_left .tel a figure {
          display: flex;
          justify-content: flex-start;
          align-items: center;
          margin-right: 8px; }
          .footer .footer_left .tel a figure img {
            width: 28px;
            height: auto; }
  .footer .footer_right {
    display: none; }
    @media screen and (min-width: 1080px) {
      .footer .footer_right {
        display: block; } }
    .footer .footer_right figure {
      display: flex;
      justify-content: center;
      align-items: center; }
    .footer .footer_right nav {
      display: flex;
      justify-content: flex-end;
      align-items: flex-start;
      font-size: .875rem; }
      .footer .footer_right nav ul {
        margin-left: 80px; }
        .footer .footer_right nav ul:first-child {
          margin-left: 0; }
        .footer .footer_right nav ul li {
          margin-bottom: 10px; }
          .footer .footer_right nav ul li a {
            color: #fff; }
            .footer .footer_right nav ul li a figure {
              margin-right: 6px; }
    .footer .footer_right .free_link a {
      margin-top: 10px;
      background: #FF0000;
      border-radius: 30px;
      display: flex;
      justify-content: center;
      align-items: center;
      width: 150px;
      padding: 4px;
      box-sizing: border-box;
      line-height: 1.2;
      font-size: .8125rem; }
      .footer .footer_right .free_link a img {
        margin-right: 6px; }

.footer_right ul ul {
  margin-left: 20px !important;
  margin-top: 10px; }
  .footer_right ul ul li {
    position: relative; }
    .footer_right ul ul li::before {
      content: "\03e";
      position: absolute;
      left: -1em;
      top: 1em;
      transform: translateY(-50%); }
.footer_right ul ul ul li::before {
  content: "・"; }

li.free_link::before {
  content: none !important; }

/*.corp_logo a {
	font-family: 'M PLUS Rounded 1c', sans-serif;
	position: relative;
	font-size: 1.2rem!important;
	margin: 10px 0;

	display:flex;
	justify-content: flex-start;
	align-items: center;

	img {
		margin-right:5px;
		width:70px;
		height:auto;
	}
}*/
@media screen and (max-width: 1079px) {
  .def {
    display: none; } }

/* --ページのトップへ戻る--------------------- */
#pageTop {
  text-decoration: none;
  background: #000;
  width: 50px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  z-index: 20000;
  right: 0; }
  @media screen and (max-width: 1079px) {
    #pageTop {
      bottom: 120px; } }
  @media screen and (min-width: 1080px) {
    #pageTop {
      bottom: 0; } }
  #pageTop img {
    width: 20px;
    height: 20px; }

#pageTop:hover {
  background: #000;
  transition: background-color 0.25s; }

/* reCAPTCHA v3　表示位置 */
.grecaptcha-badge {
  z-index: 20000; }
  @media screen and (max-width: 1079px) {
    .grecaptcha-badge {
      margin-bottom: 170px; } }
  @media screen and (min-width: 1080px) {
    .grecaptcha-badge {
      margin-bottom: 50px; } }

/* CSS for Nail-Form Page */
/* --------------------------------
お問い合わせ
-------------------------------- */
@media screen and (max-width: 1079px) {
  .formpage {
    padding-top: 60px; } }
.single-body_w80 {
  text-align: center; }
  .single-body_w80 img {
    height: auto; }
    @media screen and (max-width: 767px) {
      .single-body_w80 img {
        max-width: 100%; } }
    @media screen and (min-width: 768px) {
      .single-body_w80 img {
        max-width: 80%; } }

.title_type20 {
  color: #101E91;
  font-weight: bold;
  font-size: 1.375rem;
  padding-bottom: 3px;
  border-bottom: solid 2px #101E91; }

.phone_inq img {
  display: block;
  height: auto; }
  @media screen and (max-width: 767px) {
    .phone_inq img {
      max-width: 100%; } }
  @media screen and (min-width: 768px) {
    .phone_inq img {
      width: 50%;
      margin: 0 auto; } }

.tabletype02 {
  width: 100%;
  background: #F3F3F3;
  border-radius: 10px;
  font-size: .875rem;
  box-sizing: border-box; }
  @media screen and (max-width: 1079px) {
    .tabletype02 {
      padding: 10px; } }
  @media screen and (min-width: 1080px) {
    .tabletype02 {
      padding: 50px 100px; } }
  .tabletype02 dl {
    width: 100%;
    margin-bottom: 20px; }
    .tabletype02 dl dd.check_label .wpcf7-list-item {
      display: block; }
      .tabletype02 dl dd.check_label .wpcf7-list-item label {
        display: block; }
  .tabletype02 textarea {
    width: 100%;
    height: 150px;
    box-sizing: border-box;
    font-size: 1rem;
    padding: 10px;
    font-family: "Noto Sans JP",Meiryo, "メイリオ",Osaka,"MS P Gothic", "ＭＳ Ｐゴシック",sans-serif;
    border: solid 1px #5A5A5A;
    border-radius: 5px; }
  .tabletype02 input,
  .tabletype02 select {
    padding: 10px;
    width: 100%;
    box-sizing: border-box;
    border: solid 1px #5A5A5A;
    border-radius: 5px;
    background: #fff; }
  .tabletype02 input[type="checkbox"], .tabletype02 input[type="radio"] {
    width: auto !important;
    margin-right: 2px; }

.tabletype02 h3 {
  background: #101E91;
  color: #FFF;
  font-size: 1.375rem;
  padding: 10px 14px; }

.wpcf7-list-item {
  display: inline-block;
  margin: 0 0 0 1em; }

/* 各種フォーム */
.img_r {
  overflow: hidden; }
  .img_r .img_r_img {
    float: right;
    max-width: 180px;
    width: 100%;
    height: auto;
    margin: 0 0 15px 15px; }

.flow {
  display: flex;
  /* flexboxで横並びにする */
  justify-content: space-between;
  /* 横並びにしたものを等間隔で並べる */ }

.flow li {
  color: #333;
  /* 文字色を黒に指定 */
  width: calc(100% / 4);
  /* 横幅を三等分した1つの大きさに指定 */
  background: #eee;
  /* 背景色をグレーに指定 */
  line-height: 1.4;
  /* 行間(高さの代わり)を指定 */
  text-align: center;
  /* 文字を中央寄せにする */
  position: relative;
  /* 基準位置とする */
  min-height: 60px;
  display: flex;
  align-items: center;
  justify-content: center; }

.flow li span {
  background: #FFF;
  color: #000;
  padding: 4px 10px;
  margin-right: 5px; }

.flow li:not(:first-child):not(:last-child) {
  padding: 0 0 0 10px;
  /* 最初と最後以外には左に適度な余白を指定 */ }

.flow li::before,
.flow li::after {
  content: "";
  width: 0;
  height: 0;
  display: block;
  position: absolute; }

.flow li::before {
  border: solid 38px transparent;
  /* 32pxのborderを指定 */
  border-right: solid 14px transparent;
  /* 幅を合わせるため右線は13pxにする */
  border-left: solid 14px #FFF;
  /* 白い三角形を作成して▷の形で上に重ねて削り取る */
  top: -8px;
  /* 重ねる位置(縦軸)を調整 */
  left: 0;
  /* 重ねる位置(横軸)を調整 */
  z-index: 1;
  /* 重なり順を指定 */ }

.flow li::after {
  border: solid 30px transparent;
  /* 25pxのborderを指定 */
  border-left: solid 10px #EDEDED;
  /* 左のborderで背景色と同じ▶の部分を作成する */
  border-right: solid 10px transparent;
  /* 幅を合わせるために右線は10pxにする */
  top: 0;
  /* 重ねる位置(縦軸)を調整 */
  right: -20px;
  /* 重ねる位置(横軸)を調整 */
  z-index: 2;
  /* 重なり順の優先度を他よりも上げる */ }

.flow li:first-child {
  width: calc(100% / 2); }

.flow li:first-child::before,
.flow li:last-child::after {
  content: none;
  /* 最初のliの左と最後のliの右は作らない */ }

/* 以下.currentだけ色を変えるCSS */
.flow li:nth-child(1) {
  color: #FFF;
  background: #101E91; }

.flow li:nth-child(1)::after {
  border-left: solid 10px #101E91; }

.flow li:nth-child(2) {
  color: #FFF;
  background: #FF6539; }

.flow li:nth-child(2)::after {
  border-left: solid 10px #FF6539; }

.flow li:nth-child(2) img {
  position: absolute;
  top: -35px;
  left: 0px;
  margin: auto;
  right: 0; }

@media screen and (min-width: 768px) {
  .w_center {
    width: 650px;
    margin-left: auto;
    margin-right: auto; } }

.wpcf7-spinner {
  display: none !important; }

.deco {
  text-decoration: underline; }
  .deco:hover {
    text-decoration: none; }

.marker_red {
  background: linear-gradient(transparent 70%, #e77373 70%); }

.banner_block {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  width: calc(100% - 40px);
  margin-left: auto;
  margin-right: auto;
  max-width: 1000px;
  flex-flow: column; }
  @media screen and (min-width: 768px) {
    .banner_block {
      flex-flow: row; } }
  .banner_block a {
    display: block;
    width: 100%; }
    @media screen and (min-width: 768px) {
      .banner_block a {
        width: 50%; } }
    @media screen and (min-width: 1000px) {
      .banner_block a {
        width: 480px; } }
  .banner_block img {
    width: 100%;
    height: auto; }

/* 代表挨拶 */
.message_layout {
  margin-bottom: 40px; }
  .message_layout img {
    max-width: 100%;
    height: auto; }
  @media screen and (max-width: 767px) {
    .message_layout .element_01 {
      text-align: center; } }
  @media screen and (min-width: 768px) {
    .message_layout {
      display: flex;
      justify-content: space-between;
      align-items: flex-start; }
      .message_layout .element_01 {
        width: 30%; }
      .message_layout .element_02 {
        width: 68%; } }

.message_text {
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif; }
