@charset "utf-8";

/*
Theme Name: kamikubojyuutaku2021
Theme URI: http://iiieiii.com/
Description: This is our original theme.
Author: Natsumi Maeda
Author URI: http://iiieiii.com/
Version: 1.0
*/

/*-------------------------------------------------

		☆ base

-------------------------------------------------*/
* {
    box-sizing: border-box;
}

html {
    color: #000;
    background: #fff;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
}

body {
    background: #fff;
    color: #000;
    line-height: 1;
    text-align: center;
    overflow-y: scroll;
    font-size: 62.5%;
    -webkit-text-size-adjust: 100% !important;
    font-family: 'YuGothic', 'Yu Gothic','游ゴシック','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ','Meiryo',sans-serif;
    -webkit-font-variant-ligatures: none;
    -moz-font-variant-ligatures: none;
    font-variant-ligatures: none;
}

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
    background: transparent;
}

h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, acronym, address, cite, code, del, dfn, em, b, i, img, q, s, samp, small, strike, strong, sub, sup, tt, var, dd, dl, dt, li, ol, ul, fieldset, form, label, legend, button, table, caption, tbody, tfoot, thead, tr, th, td, figure, figcaption, span, a {
    margin: 0;
    padding: 0;
    border: 0;
    font-style: normal;
    font-size: 100%;
}

ul, ol, li, dl, dt, dd {
    list-style-type: none;
    list-style-position: outside;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}

a {
    margin: 0;
    padding: 0;
    vertical-align: baseline;
    background: transparent;
    text-decoration: none;
}

@media only screen and (max-width: 1024px) {
    a {
        -moz-transition: none;
        -o-transition: none;
        -webkit-transition: none;
        transition: none;
    }
}

a:link {
    color: #3d9ed1;
}

a:visited {
    color: #3d9ed1;
}

a:hover {
    -moz-transition: all 0.4s;
    -o-transition: all 0.4s;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
}

img {
    line-height: 1;
    font-size: 0;
    vertical-align: top;
    height: auto;
    max-width: 100%;
}

img.scaled-image {
  border: none !important;
  margin: 0 !important;
}

picture {
  display: block;
  max-width: 100%;
}

video {
  width: 100%;
  max-width: 800px; /* 最大でも800px以下 */
}

p {
    font-size: 16px;
    line-height: 1.75;
}

@media screen and (max-width: 1024px) {
    p {
        font-size: 14px;
        line-height: 2;
        text-align: left;
    }
}

span.small {
  font-size: 10px;
}

select, input, button, textarea {
    font: 99% arial, helvetica, clean, sans-serif;
}

input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea {
  padding: 8px;
  width: 100%;
  border-radius: 1px;
  border: solid 1px #e2e5e8;
  background-color: #fff;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-size: 16px;
}

button {
  background-color: inherit;
}

*, :after, :before {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

*, ::after, ::before {
  box-sizing: border-box;
}

.bran {
  font-family: 'Century Gothic', sans-serif;
  font-weight: 700;
}

@media screen and (max-width: 1023.9px) {
    .pc {
        display: none !important;
    }
}

@media screen and (min-width: 1024px) {
    .sp {
        display: none !important;
    }
}


/*-------------------------------------------------

		☆ base

-------------------------------------------------*/
#margin_wrap {
    /* top: -50px;  新事務所オープンしたらコメントアウト外す！！！！*/
    position: relative;
    background-color: #fff;
}

#main {
    min-width: 1080px;
    position: relative;
}

@media only screen and (max-width: 1024px) {
#main {
  min-width: auto;
  max-width: 100%;
  overflow: hidden;
}
}

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.f-section {
  max-width: 1080px;
  margin: 0 auto;
  text-align: left;
}

.event.f-section {
  max-width: 900px;
}

@media only screen and (max-width: 1024px) {
.f-section {
  max-width: 100%;
  padding: 0 4%;
}
}

/*-------------------------------------------------

		☆ base decoration

-------------------------------------------------*/
.d-jp {
    font-family: 'YuGothic', 'Yu Gothic','游ゴシック','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ','Meiryo',sans-serif;
    font-weight: 700;
}

.ja {
  font-family: 'YuGothic', 'Yu Gothic','游ゴシック','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ','Meiryo',sans-serif;
  font-weight: 700;
  font-style: normal;
}

.bold {
  font-weight: bold;
}

.mini {
  font-size: 11px;
  font-weight: 500;
}


/*-------------------------------------------------

		☆ slick css

-------------------------------------------------*/
.slick-slide img {
  transform: scale(1.2);
  transition: .8s cubic-bezier(.645, .045, .355, 1);
}
.slick-current img {
  transform: scale(1);
}

@media only screen and (max-width: 1024px) {
.main_visual .slick-slide img {
  width: 100vw;
  height: 95vh !important;
  object-fit: cover;
  font-family: "object-fit: cover;";
  transform: none;
}
}

/*-------------------------------------------------

		☆ header

-------------------------------------------------*/
.header_box {
  -webkit-animation: aniHead 0.8s cubic-bezier(0.45,0.05,0.19,0.98) 0.5s forwards;
  animation: aniHead 0.8s cubic-bezier(0.45,0.05,0.19,0.98) 0.5s forwards;
  background: #fff;
  height: 89px;
  width: 100%;
  z-index: 999991;
  overflow: hidden;
  position: fixed;
  background-color: rgba(255,255,255,.9);
}

@media only screen and (max-width: 768px) {
  .header_box {
    height: 56px;
  }
}

.header_box .inner {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 auto;
  width: 100%;
  height: 100%;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 768px) {
.header_box .inner {
  display: block;
}
}

.header_box_logo {
  margin-left: 20px;
  margin-top: 8px;
}

@media only screen and (max-width: 768px) {
.header_box_logo {
  margin-left: 0;
  margin-top: 6px;
  text-align: left;
  padding-left: 10px;
}
}

.header_box_logo img {
  width: 72%;
}

@media only screen and (max-width: 768px) {
.header_box_logo img {
  width: 170px;
}
}

.header_box h1 {
  font-size: 11px;
  text-align: left;
  margin-left: 29px;
  padding-bottom: 7px;
  color: #212121;
  font-weight: normal;
}

@media only screen and (max-width: 768px) {
.header_box h1 {
  font-size: 10px;
  padding-bottom: 4px;
  margin-left: 0;
}
}

.header_box_mainnav, .header_box_model, .header_box_subnav {
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
}

@media only screen and (max-width: 768px) {
.header_box_subnav {
  display: none;
}
}

@media screen and (max-width: 1320px) {
.header_box_mainnav {
    display: none;
}
}

.header_box_mainnav ul {
  margin-right: 35px;
}

.header_box_mainnav ul li a {
  display: block;
  height: 100%;
  margin-left: 29px;
  padding: 36px 0 40px;
  position: relative;
  font-weight: 700;
  font-style: normal;
  font-size: 14px;
}

.header_box a {
    color: #000;
    font-size: 12px;
    font-weight: bold;
    line-height: 1.2;
}

.header_box_mainnav ul li a:before {
  background: #71a8cb;
  content: "";
  display: block;
  height: 0;
  position: absolute;
  top: 0;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  width: 100%;
}

.header_box_mainnav ul li a:hover {
  color: #4da4c5;
}

.header_box_mainnav ul li a:hover:before {
  height: 4px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.header_box_model {
  margin: 0;
}

@media only screen and (max-width: 768px) {
.header_box_model {
  -webkit-animation: anifoot 0.8s cubic-bezier(0.45, 0.05, 0.19, 0.98) 3s forwards;
  animation: anifoot 0.8s cubic-bezier(0.45, 0.05, 0.19, 0.98) 3s forwards;
  -webkit-box-shadow: 0 -2px 10px -4px rgb(0 0 0 / 10%);
  box-shadow: 0 -2px 10px -4px rgb(0 0 0 / 10%);
  right: 0;
  position: absolute;
  top: 0;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  width: 35.2%;
  z-index: 9999;
}
}

@media only screen and (max-width: 768px) {
.header_box_model {
  display: none;
}
}

.header_box_model a {
  display: block;
  background: url(../img/cmn/house.svg) no-repeat 20px 37% #71a8cb;
  background-size: 24px;
  color: #fff;
  height: 100%;
  line-height: 1.4;
  padding: 27px 26px 0 57px;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  height: 89px;
}

@media only screen and (max-width: 768px) {
.header_box_model a {
  background: url(../img/cmn/house.svg) no-repeat 13px 50% #71a8cb;
  background-size: 15px;
  height: 56px;
  line-height: 1.3;
  padding: 12px 0 0 35px;
  font-size: 14px;
}
}

@media only screen and (max-width: 320px) {
.header_box_model a {
  font-size: 12px;
  padding: 13px 0 0 32px;
}
}

@media (min-width: 769px) {
.header_box_model a:hover {
    background: url(../img/cmn/house.svg) no-repeat 20px 34% #5a95b9;
    background-size: 24px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
}

.header_box_subnav {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.header_box_mainnav, .header_box_model, .header_box_subnav {
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
}

.header_box_subnav li {
  height: 100%;
}

.header_box_subnav a {
    border-right: 1px solid #eee;
    display: block;
    height: 100%;
    padding: 48px 0 0;
    text-align: center;
    width: 89px;
}

.header_box_subnav li:first-child a {
  background: url(../img/cmn/icon-map.svg) no-repeat 50% 20%;
  background-size: 28px 26px;
}

.header_box_subnav li:nth-child(2) a {
  background: url(../img/cmn/icon-reform.svg) no-repeat 50% 20%;
  background-size: 28px 26px;
}

.header_box_subnav li:nth-child(3) a {
  background: url(../img/cmn/icon-home02.svg) no-repeat 50% 20%;
  background-size: 28px 26px;
}

.header_box_subnav li:nth-child(4) a {
  background: url(../img/cmn/icon-home03.svg) no-repeat 50% 20%;
  background-size: 28px 26px;
}

@media (min-width: 769px) {
.header_box_subnav li:first-child a:hover {
    background: url(../img/cmn/icon-map.svg) no-repeat 50% 16% #f5f5f5;
    background-size: 28px 26px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.header_box_subnav li:nth-child(2) a:hover {
  background: url(../img/cmn/icon-reform.svg) no-repeat 50% 16% #f5f5f5;
  background-size: 28px 26px;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
.header_box_subnav li:nth-child(3) a:hover {
  background: url(../img/cmn/icon-home02.svg) no-repeat 50% 16% #f5f5f5;
  background-size: 28px 26px;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
.header_box_subnav li:nth-child(4) a:hover {
  background: url(../img/cmn/icon-home03.svg) no-repeat 50% 16% #f5f5f5;
  background-size: 28px 26px;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
}

.humbimg {
  margin-top: 20px;
}

/*FIXメニュー*/
.side-fix {
  position: fixed;
  top: 22%;
  right: 0;
  z-index: 1000;
  text-align: right;
  opacity: 0;
  transition: all 0.65s;
}

.side-fix.isActive {
  opacity: 1;
  transition: all 0.65s;
}

.side-fix ul li {
  margin-bottom: 5px;
}

li.list-03 {
  width: 60px;
  right: 0;
  position: absolute;
}

@media only screen and (max-width: 1024px) {
.sp-fix-list {
    background-color: #ffffff;
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 996;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    opacity: 0;
    transition: all 0.65s;
}
.sp-fix-list.isActive {
  opacity: 1;
  transition: all 0.65s;
}
.sp-fix-list_recruit {
    justify-content: center;
    align-items: center;
    background: rgba(255, 255, 255, 0.8);
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 996;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    opacity: 0;
    transition: all 0.65s;
}
.sp-fix-list_recruit.isActive {
  opacity: 1;
  transition: all 0.65s;
}
.sp-fix-list_recruit a {
    display: inline-block;
    box-sizing: border-box;
    padding: 1.2em 2em;
    position: relative;
    border-radius: 2.4em;
    vertical-align: middle;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    line-height: 1;
    text-decoration: none;
    text-align: center;
    cursor: pointer;
    font-feature-settings: "palt" 1;
    letter-spacing: 0.05em;

    border: solid 1px transparent;
    filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.04));
    transition: border 0.3s ease 0s, color 0.3s ease 0s, background 0.3s ease 0s, filter 0.3s ease 0s;
	margin: 10px;
}
.sp-fix-list_recruit a.sinsotsu {
    background-color: #369ebd;
}
.sp-fix-list_recruit a.chuto {
    background-color: #b5a51d;
}
.sp-fix-list_recruit a.satei {
    background-color: #F6DE3B;
	color: #000;
	width: 86%;
    font-size: 16px;
}
#sateibtn.sp-fix-list_recruit {
    display: block !important;
}
}


/*-------------------------------------------------

		☆ main visual

-------------------------------------------------*/
.layer {
  position: relative;
  height: 82vh;
  min-height: 680px;    /* ← これが超重要 */
}

@media screen and (max-width: 1024px) {
.layer {
    height: 95vh;
    min-height: 560px;
}
}

.main_visual {
  position: relative;
  height: 100%;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  text-align: center;
  align-items: center;
}

.main_visual div.slick-list {
  /* position: fixed; */
  position: relative; /* ← fixed をやめる */
  top: 0;
  right: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  min-height: 680px;
}

@media screen and (min-width: 1024px) {
.main_visual div.slick-list {
    min-height: 680px;
}
}

.main_visual_catch {
  position: absolute;
  /* bottom: 160px; */
  /* left: 90px; */
  bottom: 20vh; /* pxよりvhの方が安定 */
  left: 5vw;
  z-index: 9999;
  color: #fff;
  text-align: left;
  min-height: 340px;  /* ★追加 */
}

@media only screen and (max-width: 1024px) {
.main_visual_catch {
  bottom: 187px;
  min-height: 300px;  /* ★追加 */
}
}

@media only screen and (max-width: 320px) {
.main_visual_catch {
  bottom: 185px;
}
}

.main_visual_catch .ttl {
  margin-bottom: 30px;
  font-size: 57px;
  line-height: 1.45;
  letter-spacing: .09em;
  text-shadow: 0 0 27px rgb(0 0 0 / 20%);
  font-family: 'YuGothic', 'Yu Gothic','游ゴシック','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ','Meiryo',sans-serif;
  font-weight: 700;
  font-style: normal;
}

@media screen and (max-width: 1024px) {
.main_visual_catch {
  left: 20px;
}
.main_visual_catch .ttl {
  font-size: 33px;
  margin-bottom: 20px;
  line-height: 1.45;
}
}

@media screen and (max-width: 320px) {
.main_visual_catch .ttl {
  font-size: 26px;
  line-height: 1.45;
}
}

.pc-none {
  display: none;
}

.main_visual_catch .txt {
  max-width: 630px;
  font-size: 20px;
  letter-spacing: .05em;
  text-shadow: 0 0 27px rgb(0 0 0 / 40%);
  font-weight: bold;
  margin: 0;
  line-height: 1.7;
}

@media screen and (max-width: 1024px) {
.main_visual_catch .txt {
  font-size: 14px;
  line-height: 1.7;
  margin-bottom: 10px;
}
}

@media screen and (max-width: 320px) {
  .main_visual_catch .txt {
    font-size: 12px;
    line-height: 1.7;
    margin-bottom: 0;
  }
  }

.main_visual_bnr {
  position: absolute;
  right: 20px;
  bottom: 77px;
  z-index: 1;
}

@media screen and (max-width: 768px) {
.main_visual_bnr {
  bottom: 80px;
  left: 20px;
}
}

.main_visual_bnr.zeh {
  position: absolute;
  right: 30px;
  bottom: 250px;
  z-index: 1;
}

@media screen and (max-width: 768px) {
.main_visual_bnr.zeh {
  right: 10px;
  top: 10px;
  left: auto;
}
}

.main_visual_bnr img {
  width: 450px;
  aspect-ratio: 656 / 248;
  height: auto;
  object-fit: contain;
}

@media screen and (max-width: 1024px) {
.main_visual_bnr img {
  width: 330px;
} 
}

@media screen and (max-width: 768px) {
.main_visual_bnr img {
  width: 450px;
} 
}

.main_visual_bnr.zeh img {
  width: 170px;
  aspect-ratio: 250 / 295;
  height: auto;
  object-fit: contain;
}

@media screen and (max-width: 1024px) {
.main_visual_bnr.zeh img {
    width: 90px;
}
}

.main_visual_bnr_caption {
  position: absolute;
  right: 20px;
  bottom: 55px;
}

.main_visual_bnr_caption span {
  color: #fff;
  font-size: 10px;
}


.main_visual_slider {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

/* slick初期化前（チラ見え防止） */
.main_visual_slider {
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
}

/* slick初期化後 */
.main_visual_slider.is-ready {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

.main_visual_lcp {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 0;
}



/*-------------------------------------------------

		☆ front

-------------------------------------------------*/
#f_main {
  display: block;
  height: 100%;
  font-size: 0;
  padding-top: 89px;
}

@media screen and (max-width: 1024px) {
#f_main {
  padding-top: 56px;
}
}

.staffblog_top {
  display: inline-block;
  z-index: 1;
  position: absolute;
  right: 20px;
  bottom: 20px;
}

.staffblog_top .staffblog_top_in {
  display: flex;
  width: 550px;
  height: 40px;
  overflow: hidden;
  border-radius: 30px;
}

.staffblog_top .staffblog_top_in .date {
  min-width: 115px;
  background-color: #95c7df;
  color: #fff;
  font-family: Prompt,sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
}

@media print, screen and (min-width: 900px) {
.staffblog_top .staffblog_top_in .date {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}
}

.staffblog_top .staffblog_top_in .tit {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-bottom: 2px;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: .4px;
  line-height: 1;
  transition: background-color .5s ease;
}

@media print, screen and (min-width: 900px) {
.staffblog_top .staffblog_top_in .tit {
    padding-left: 11px;
    background-color: hsla(0,0%,100%,.9);
}
.staffblog_top .staffblog_top_in .tit {
    background-color: #fff;
}
.staffblog_top .staffblog_top_in .tit span {
  position: relative;
}
.staffblog_top .staffblog_top_in .tit span:after {
  opacity: 1;
}
.staffblog_top .staffblog_top_in .tit span:after {
  display: inline-block;
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #302d2c;
  content: "";
  opacity: 0;
  transition: opacity .5s ease;
}
}

/*-------------------------------------------------

	☆ midashi

-------------------------------------------------*/
h2.f_midashi {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  margin: 0 auto 30px auto;
}

@media only screen and (max-width: 1024px) {
h2.f_midashi {
  font-size: 19px;
  margin: 0 auto 20px auto;
}
}

.f_midashi {
  margin-bottom: 0;
}

.f_midashi span.f_midashi_ja {
  font-style: normal;
  font-size: 36px;
  letter-spacing: .15em;
  color: #000;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
.f_midashi span.f_midashi_ja {
  font-size: 26px;
}
.f_midashi span.f_midashi_ja.tokucho {
  font-size: 22px;
  line-height: 1.4;
}
}

@media only screen and (max-width: 320px) {
.f_midashi span.f_midashi_ja {
    font-size: 26px;
}
}

.f_midashi span.f_midashi_en {
  font-family: 'Century Gothic', sans-serif;
  display: block;
  font-weight: bold;
  padding-top: 13px;
  color: #cc9f6e;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: .15em;
}

.minisize {
  font-size: 11px;
  display: block;
  padding-bottom: 1rem;
}

.f-section em {
  font-weight: normal;
  text-align: center;
  display: block;
  font-size: 18px;
  line-height: 1.76;
  letter-spacing: 1px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-style: normal;
  color: #000000;
}

@media only screen and (max-width: 1024px) {
.f-section em {
  font-size: 15px;
}
}

@media only screen and (max-width: 320px) {
.f-section em {
  font-size: 14px;
}
}

/*-------------------------------------------------

		☆ front bnr slide

-------------------------------------------------*/
#f_bunnerslide {
  position: relative;
  z-index: 100;
  top: 1px;
}

#f_bunnerslide::before {
  content: '';
  display: block;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: #fff;
}

@media screen and (min-width: 1024px) {
#f_bunnerslide::before {
    height: calc(100% - 16rem);
}
}

#f_bunnerslide .slick-prev, #f_bunnerslide .slick-next {
  position: absolute;
  top: 0;
  outline: 0;
  width: 80px;
  height: 80px;
  text-indent: -9999px;
  z-index: 9999;
  background-size: cover;
  cursor: pointer;
}

#f_bunnerslide .slick-next {
  width: 60px;
  height: 60px;
  background-color: #0c0c0c;
  border-radius: 50%;
  background-position: 0 0;
  right: 175px;
  top: 27%;
}

@media only screen and (max-width: 1024px) {
#f_bunnerslide .slick-next {
  display: none !important;
}
}

#f_bunnerslide .slick-next::before {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 25px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 15px;
  height: 15px;
  border-top: 4px solid #ffffff;
  border-right: 4px solid #ffffff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

#f_bunnerslide .slick-prev {
  display: none;
}

.bunnerslide {
  background-color: #fff;
  margin: 0 0 0 auto;
}

@media screen and (min-width: 561px) {
  .bunnerslide {
      padding-top: 1rem;
}
}

@media screen and (min-width: 1024px) {
.bunnerslide {
    width: 97.79412%;
    border-radius: 1rem 0 0 0;
    padding-left: 3rem;
    padding-bottom: 1.8rem;
}
}

@media screen and (min-width: 1361px) {
  .bunnerslide {
      width: calc(100% - 30px);
}
}

@media screen and (min-width: 561px) {
.bunnerslide_header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
}

@media only screen and (max-width: 1024px) {
.bunnerslide_header {
  padding: 20px 0 10px 5%;
}
}

.c-title {
  display: flex;
  align-items: center;
  color: #a0a0a0;
  line-height: 1;
  letter-spacing: .1em;
  font-weight: 400;
}

@media screen and (min-width: 561px) {
.c-title {
    font-size: 12px;
    font-size: max(12px ,10px);
}
}

@media only screen and (max-width: 1024px) {
.c-title {
  font-size: 10px;
}
}

@media only screen and (max-width: 1024px) {
.c-title .tap {
  font-size: 10px;
  position: absolute;
  right: 20px;
}
}

.c-title::before {
  content: '';
  display: block;
  width: 15px;
  height: 1px;
  background-color: #c9c9c9;
  margin-right: 1rem;
  margin-bottom: .1rem;
}

@media screen and (min-width: 1024px) {
.bunnerslide_header_info {
    display: flex;
    align-items: center;
    margin-right: 8.6rem;
}
}

@media only screen and (max-width: 1024px) {
.bunnerslide_header_info {
  display: none;
}
}

.bunnerslide_list {
  position: relative;
  overflow: hidden;
}

.bunnerslide_cell {
  display: inline-block;
}

@media screen and (min-width: 1024px) {
.bunnerslide_cell {
    width: 20.73529vw !important;
    margin-right: 1.61765vw;
}
}

@media only screen and (max-width: 1024px) {
.bunnerslide_cell {
  width: 77.33333vw !important;
  margin-right: 5.33333vw;
}
}

.bunnerslide_cell a {
  display: block;
  position: relative;
  margin-right: 6%;
}

.bunnerslide_cell_figure {
  position: relative;
  z-index: 1;
  border-radius: 1rem;
  overflow: hidden;
  transition: all .3s cubic-bezier(.215,.61,.355,1);
}

.bunnerslide_cell_figure img {
  transform: scale(1);
}

.bunnerslide_cell_contents {
  width: 100%;
  display: flex;
}

.bunnerslide_cell_contents h3 {
  flex: 1;
  border-bottom: solid 1px #e3e3e3;
  padding: 1.25rem 0;
  text-align: left;
}

@media screen and (min-width: 1024px) {
.bunnerslide_cell_contents h3 {
  font-size: 14px;
  color: #000;
  line-height: 1.4;
}
}

@media only screen and (max-width: 1024px) {
.bunnerslide_cell_contents h3 {
  font-size: 14px;
  line-height: 1.4;
}
}

.c-arrow-square {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-basis: 4rem;
  width: 4rem;
  position: relative;
}

.c-arrow-square::before {
  content: "";
  position: absolute;
  top: 0;
  right: 16px;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  transform: rotate( -45deg);
  border-right: 2px solid;
  border-bottom: 2px solid;
}

.c-arrow-square::after {
  content: '';
  display: block;
  width: 4rem;
  height: 1px;
  background-color: #71a8cb;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 1;
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
  transition: all .3s cubic-bezier(.215,.61,.355,1);
}

.c-arrow-square.-black::after {
  background-color: #71a8cb;
}

/*-------------------------------------------------

		☆ front no1 bnr

-------------------------------------------------*/
#f_no1bnr {
  background: #fff;
  padding: 40px 0 80px 0;
}

@media screen and (max-width: 1024px) {
#f_no1bnr {
  padding: 10px 0 30px 0;
}
}

#f_no1bnr .no1bnr_box {
  margin: 0 auto;
  text-align: center;
}

#f_no1bnr .no1bnr_box img {
  width: 73%;
  height: auto;
}

@media screen and (max-width: 1024px) {
#f_no1bnr .no1bnr_box img {
  width: 98%;
  height: auto;
}
}

#f_onlinebnr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content:space-between;
  padding-top: 80px;
  background: #fff;
}

.onlinebnr_box.online {
  width: 48%;
}

@media screen and (max-width: 768px) {
#f_onlinebnr {
  display: block;
}
.onlinebnr_box.online {
  width: 100%;
  padding-bottom: 40px;
}
}

/*-------------------------------------------------

		☆ front 4butonn

-------------------------------------------------*/
#button4 {
  background-color: #f7f7f7;
  position: relative;
  /* margin-top: -50px; */
}

.button4_wrap {
  padding: 38px 0 43px 0;
  overflow: hidden;
}

@media screen and (max-width: 1024px) {
.button4_wrap {
  padding: 20px 4% 10px 4%;
}
}

.button4_in {
  display: flex;
  justify-content: space-between;
  margin-top: 36px;
  margin-bottom: 30px;
}

@media screen and (max-width: 1024px) {
.button4_in {
  display: block;
}
}

.button4_list {
  width: 31%;
}

@media screen and (max-width: 1024px) {
.button4_list {
  float: none;
  width: 100% !important;
  margin-bottom: 10px;
}
.button4_list:nth-child(odd) {
  margin-right: 4%;
}
}

.button4_list .txt {
  font-weight: bold;
  font-size: 16px;
  line-height: 1.34;
  padding-left: 26px;
  color: #000;
  text-align: left;
  letter-spacing: 1px;
  font-weight: 700;
  font-style: normal;
}

.button4_list .txt.reform {
  font-size: 16px;
}

@media screen and (max-width: 320px) {
  .button4_list .txt {
      font-size: 14px;
      padding-left: 26px;
    }
  .button4_list .txt.reform {
      font-size: 14px;
  }
  }

.button4_list .img {
    width: 31.818%;
    position: absolute;
    right: 10px;
    bottom: 12px;
}

@media screen and (max-width: 1024px) {
.button4_list .img {
        width: 26.818%;
        right: 10px;
        bottom: 8px;
}
}

.button4_list .img.hiraya {
    width: 33.818%;
    right: 17px;
    bottom: 25px;
}

@media screen and (max-width: 1024px) {
.button4_list .img.hiraya {
        width: 26.818%;
        right: 12px;
        bottom: 21px;
}
}

.button4_list .img.reform {
    width: 27.818%;
    right: 15px;
    bottom: 16px;
}

@media screen and (max-width: 1024px) {
.button4_list .img.reform {
        width: 22.818%;
        right: 17px;
        bottom: 11px;
}
}

.button4_list .img.renova {
    width: 42.818%;
    right: -1px;
    bottom: 5px;
}

@media screen and (max-width: 1024px) {
.button4_list .img.renova {
        width: 33.818%;
        right: -2px;
        bottom: 5px;
}
}

.button4_list .img.tochi {
    width: 34.818%;
    right: 8px;
    bottom: 13px;
}

@media screen and (max-width: 1024px) {
.button4_list .img.tochi {
        width: 28.818%;
        right: 4px;
        bottom: 11px;
}
}

.button4_list .img.churenova {
    width: 34.818%;
    right: 8px;
    bottom: 13px;
}

@media screen and (max-width: 1024px) {
.button4_list .img.churenova {
        width: 26.818%;
        right: 10px;
        bottom: 15px;
}
}


.button4_list .btn {
  width: 100%;
  height: 120px;
  position: relative;
  display: flex;
  align-items: center;
  background-color: #fff;
  transition: background-color .3s;
  overflow: inherit;
  border-radius: 10px;
}

@media screen and (max-width: 1024px) {
.button4_list .btn {
  height: 100px;
}
}

.button4_list .btn:hover {
  background-color: #71a8cb;
}

.button4_list .btn:hover .txt {
  color: #fff;
}

.button4_list .button4_list_txt {
  font-size: 1.1rem;
  letter-spacing: -.04em;
  text-indent: -.04em;
  line-height: 1.4em;
  transition: color .3s;
  color: #000;
  font-weight: bold;
}

.button4_list .btn:hover:hover .button4_list_txt {
  color: #fff;
}

.button4_list .button4_list_icon {
  position: absolute;
  bottom: -2px;
  right: -2px;
  width: 26px;
  height: 26px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #71a8cb;
  transition: background-color .3s;
}

.button4_list .button4_list_icon svg {
  display: block;
  width: calc(6px*.6);
  height: calc(13px*.6);
  fill: #fff;
  transition: fill .3s;
}

.button4_list .button4_list_icon svg.is-down {
  width: calc(15px*.6);
  height: calc(8px*.6);
}

.button4_list .button4_list_icon svg {
  display: block;
  width: calc(6px*.6);
  height: calc(13px*.6);
  fill: #fff;
  transition: fill .3s;
}

/*-------------------------------------------------

		☆ front event

-------------------------------------------------*/
#f_event {
    width: 100%;
    margin: 0 auto;
}

@media screen and (max-width: 1024px) {
#f_event {
    width: 100%;
    margin: 0 auto;
}
}

.f_event_box {
  background-color: #f9f9f9;
  padding: 40px 0 90px;
}

@media screen and (max-width: 1024px) {
.f_event_box {
  padding: 20px 0 40px;
}
}

.f_event_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 30px auto 60px auto;
}

@media screen and (max-width: 1024px) {
.f_event_list {
  margin: 30px auto 20px auto;
}
}

.f_event_list li {
  width: 23.5%;
  margin-right: 2%;
  background: #fff;
  padding: 20px 20px 30px;
  position: relative;
}

@media screen and (max-width: 1024px) {
.f_event_list li {
    width: 48%;
    margin-right: 4%;
    background: #fff;
    position: relative;
    margin-bottom: 4%;
    line-height: 1.4;
    padding: 3% 3% 13%;
}
.f_event_list li:nth-child(even) {
  margin-right: 0;
}
}

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

.rel {
  position: relative;
}

.f_event_list .f_event_pic {
  width: 100%;
  max-height: 200px;
  overflow: hidden;
  text-align: center;
  object-fit: cover;
  font-family: "object-fit: cover;";
  margin-bottom: 20px;
}

@media screen and (max-width: 1024px) {
.f_event_list .f_event_pic {
  width: 100%;
  height: 120px;
  overflow: hidden;
  text-align: center;
  margin-bottom: 8%;
}
}

.f_event_list .f_event_pic img {
  max-width: 100%;
  max-height: 200px;
  width: auto;
  height: auto;
  object-fit: cover;
  font-family: "object-fit: cover;";
}

@media screen and (max-width: 1024px) {
.f_event_list .f_event_pic img {
    max-width: 100%;
    max-height: 120px;
    width: auto;
    height: auto;
}
}

.f_event_list .f_event_pic figure.dark::before {
  content: '';
  background-color: rgba(0, 0, 0, 0.3);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.f_event_list .f_event_icon {
  font-size: 12px;
  color: #fff;
  text-align: center;
  padding: 10px 15px;
  background: #190a08;
  position: absolute;
  bottom: -8px;
  left: -8px;
  margin: 0;
  font-size: 13px;
  font-weight: bold;
}

@media screen and (max-width: 1024px) {
.f_event_list .f_event_icon {
  padding: 0 10px;
  font-size: 10px;
}
}

.f_event_list .f_event_icon.icon_2::before {
    content: "■";
    margin-right: .3em;
    color: #ffc53b;
}

.f_event_list .f_event_icon_2 span {
  position: absolute;
  top: 0;
  right: 0;
}

@media screen and (max-width: 1024px) {
.f_event_list .f_event_icon_2 span {
    position: absolute;
    top: 0;
    right: 0;
    width: 38%;
}
}

.f_event_list .f_event_ttl_1 {
  font-size: 16px;
  line-height: 1.5;
  font-weight: bold;
  letter-spacing: 0.05em;
  color: #3e3a39;
  position: relative;
  margin-bottom: 10px;
  padding-bottom: 25px;
}

@media screen and (max-width: 1024px) {
.f_event_list .f_event_ttl_1 {
    font-size: 14px;
    line-height: 1.5;
    font-weight: bold;
    letter-spacing: 0.05em;
    color: #3e3a39;
    position: relative;
    margin-bottom: 8%;
    padding-bottom: 5%;
    padding-top: 5px;
}
}

.f_event_list .f_event_ttl_1::after {
    content: "";
    border-bottom: 1px solid #595656;
    width: 20px;
    position: absolute;
    bottom: 0;
    left: 0;
}

@media screen and (max-width: 1024px) {
.f_event_list .f_event_ttl_1::after {
    content: "";
    border-bottom: 1px solid #595656;
    width: 20px;
    position: absolute;
    bottom: 0;
    left: 0;
}
}

.f_event_list .f_event_date {
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #595757;
  margin-bottom: 20px;
}

@media screen and (max-width: 1024px) {
.f_event_list .f_event_date {
    font-size: 11px;
    margin: 0 0% 5%;
}
}

.f_event_list .f_event_time {
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #595757;
}

.f_event_list .f_event_btn {
  font-size: 12px;
  letter-spacing: 0.05em;
  color: #4da4c5;
  position: absolute;
  bottom: 20px;
  right: 20px;
  border-bottom: 1px solid #4da4c5;
}

@media screen and (max-width: 1024px) {
.f_event_list .f_event_btn {
    font-size: 12px;
    letter-spacing: 0.05em;
    color: #4da4c5;
    position: absolute;
    bottom: 20px;
    right: 20px;
    border-bottom: 1px solid #4da4c5;
}
}

.f_event_list .f_event_btn:before {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 32px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 5px;
  height: 5px;
  border-top: 2px solid #4da4c5;
  border-right: 2px solid #4da4c5;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}


/*-------------------------------------------------

		☆ front news and blog

-------------------------------------------------*/
#f_staffblog {
  position: relative;
  background: #fff;
  padding-bottom: 20px;
}

#f_staffblog .listBox {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  border-top: 1px solid #000;
  padding-top: 113px;
  position: relative;
}

@media only screen and (max-width: 1024px) {
#f_staffblog {
  padding-bottom: 0;
}

#f_staffblog .listBox {
  padding-top: 40px;
}
}

#f_staffblog .listBox::after {
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  width: 100px;
  height: 3px;
  background: #4da4c5;
}

#f_staffblog .secBoxIn {
  width: 100%;
}

#f_staffblog .f_staffblog_titIn {
  display: flex;
  display: -webkit-flex;
  align-items: center;
  -webkit-align-items: center;
  padding: 0 0 23px;
}

@media only screen and (max-width: 1024px) {
.f_staffblog_titIn {
  display: block !important;
  text-align: center;
}
}

#f_staffblog .f_staffblog_titEng {
  font-size: 28px;
  line-height: 35px;
  letter-spacing: 3px;
  font-weight: 700;
  padding-right: 15px;
}

#f_staffblog .f_staffblog_titMain {
  font-size: 15px;
  line-height: 18px;
  letter-spacing: 2px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
#f_staffblog .f_staffblog_titEng {
  font-size: 20px;
}
#f_staffblog .f_staffblog_titMain {
  font-size: 14px;
  padding-top: 3px;
}
}

#f_staffblog .list {
  border-top: 1px solid #e1e1e1;
}

#f_staffblog .aBox {
  display: flex;
  display: -webkit-flex;
  align-items: center;
  -webkit-align-items: center;
  color: #1d1d1d;
  text-decoration: none;
  padding: 15px 0;
  border-bottom: 1px solid #e1e1e1;
  position: relative;
}

#f_staffblog .imgBox {
  width: 11.329%;
  height: 0;
  padding-top: 7.813%;
}

.imgCover, .imgCover2 {
  position: relative;
}

#f_staffblog .boxIn {
  width: calc(100% - 11.329% - 50px);
  padding: 0 0 0 25px;
}

#f_staffblog .boxTit {
  font-weight: 600;
  font-size: 16px;
  line-height: 18px;
  letter-spacing: 1px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

@media only screen and (max-width: 768px) {
#f_staffblog .imgBox {
  width: 16.329%;
  padding-top: 16.813%;
}
#f_staffblog .boxIn {
  padding: 0 0 0 15px;
}
#f_staffblog .boxTit {
  font-size: 13px;
}
}

#f_staffblog .subIn {
  font-size: 0;
  padding-top: 12px;
}

#f_staffblog .txtDate, #f_staffblog .iconList {
  display: inline-block;
  vertical-align: middle;
}

#f_staffblog .txtDate {
  font-size: 13px;
  line-height: 23px;
  letter-spacing: 0.5px;
  color: #979797;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

@media only screen and (max-width: 768px) {
#f_staffblog .txtDate {
    font-size: 11px;
}
}

.iconList {
  font-size: 0;
}

#f_staffblog .txtDate, #f_staffblog .iconList {
  display: inline-block;
  vertical-align: middle;
}

#f_staffblog .iconList {
  margin: 2px 0 0 12px;
}

.iconList li {
  display: inline-block;
  vertical-align: top;
}

.iconList li.new {
  background: #f9ed00;
  color: #000;
  font-size: 11px;
  line-height: 18px;
  font-weight: 700;
  letter-spacing: 0.5px;
  padding: 1px 5px;
}

#f_staffblog .aBox::after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 30px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 8px;
  height: 8px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.cf:before, .cf:after {
  content: ".";
  display: table;
  height: 0;
  font-size: 0;
  line-height: 0;
  visibility: hidden;
}

.cf:after {
  clear: both;
}

#f_staffblog .aBtn {
  color: #212121;
  position: relative;
  font-size: 13px;
  line-height: 18px;
  letter-spacing: 1px;
  background: #fff;
  text-align: center;
  width: 280px;
  padding: 21px;
  text-decoration: none;
  font-weight: 700;
  display: block;
  float: right;
  margin-top: 30px;
  border: 1px solid #b5b5b5;
}

@media only screen and (max-width: 768px) {
#f_staffblog .aBtn {
  float: none;
  margin: 30px auto 0 auto;
}
#f_staffblog .aBox::after {
  right: 20px;
}
}

#f_staffblog .aBtn::after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 23px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}



/*-------------------------------------------------

		☆ front about

-------------------------------------------------*/
.f_about {
  padding: 100px 40px 70px;
  overflow: hidden;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  background: #fff;
}

@media only screen and (max-width: 1024px) {
.f_about {
  padding: 80px 40px 40px;
}
}

.f_ttl.line {
  position: relative;
}

.f_ttl.line:before {
  content: '';
  position: absolute;
  left: 50%;
  top: 37px;
  height: 5px;
  background: #60bbd6;
  z-index: 1;
}

.f_about .f_ttl:before {
  width: 165px;
  margin-left: -82px;
}

.f_ttl.line .en {
  position: relative;
  display: block;
  font-family: 'Century Gothic';
  font-style: normal;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 24px;
  z-index: 2;
  margin-bottom: 33px;
}

.f_ttl.line .ja {
  display: block;
  font-weight: bold;
  font-size: 14px;
  letter-spacing: 1px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

.f_ttl.line:after {
  content: '';
  position: absolute;
  left: 50%;
  top: 41px;
  margin-left: -4px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 4px 0 4px;
  border-color: #60bbd6 transparent transparent transparent;
}

.f_about .txt1 {
  margin-top: 50px;
  font-weight: bold;
  font-size: 24px;
  line-height: 1.75;
  font-weight: 700;
  font-style: normal; letter-spacing: 1px;
}

@media only screen and (max-width: 1024px) {
.f_about .txt1 {
  margin-top: 40px;
  font-size: 16px;
  text-align: center;
}
}

@media only screen and (max-width: 320px) {
.f_about .txt1 {
    font-size: 15px;
}
}

.f_about .concept_illust {
  margin: 50px auto 60px;
  width: 300px;
  position: relative;
}

@media only screen and (max-width: 1024px) {
.f_about .concept_illust {
  width: 170px;
}
}

.f_about .txt2 {
  position: relative;
  display: inline-block;
  font-size: 12px;
}

@media only screen and (max-width: 1024px) {
.f_about .txt2 {
  margin-top: 20px;
}
}

.f_about .txt2 span:not(.line) {
  position: relative;
  z-index: 2;
}

.f_about .txt2 .line {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 5px;
  background: #eae489;
  color: #fff;
  bottom: -6px;
  left: 0;
  width: 100%;
}

.f_about .btn_more {
  margin: 20px auto 0;
}

.btn_more {
  margin: 60px auto 100px auto;
  display: block;
  width: 350px;
  height: 60px;
  text-decoration: none;
  font-size: 15px;
  letter-spacing: 1px;
  line-height: 60px;
  text-align: center;
  font-weight: bold;
  background: #fff;
  color: #212121 !important;
  -webkit-transition-duration: 0.25s;
  transition-duration: 0.25s;
  border: 1px solid #b5b5b5;
}

@media only screen and (max-width: 768px) {
.btn_more {
  max-width: 98%;
  font-size: 11px;
}
}

a.btn_more:hover {
  color: #808080 !important;
}

.btn_more:before {
  width: 9px;
  height: 13px;
  margin: 22px 14px 0 0;
  display: inline-block;
  vertical-align: top;
  content: '';
  background: url(../img/cmn/arrow_white.svg) no-repeat 0 0/contain;
}

.f_about .img img, .f_about .img .circle {
  position: absolute;
  left: 50%;
  top: 409px;
}

@media only screen and (max-width: 1024px) {
.f_about .img img, .f_about .img .circle {
  top: 396px;
}
}

.f_about .img .circle {
  display: block;
  width: 15px;
  height: 15px;
  border-radius: 50%;
}

@media only screen and (max-width: 1024px) {
.f_about .img .circle {
  width: 8px;
  height: 8px;
}
}

.f_about .img .circle.blue {
  background: #4da4c5;
}

.f_about .img .circle.red {
  background: #f78585;
}

.f_about .img .circle.yellow {
  background: #f9f066;
}

@media only screen and (max-width: 1024px) {
.f_about .img1, .f_about .img2, .f_about .img3, .f_about .img4, .f_about .img5 {
  width: 54px;
  height: auto;
}
.f_about .img6, .f_about .img7, .f_about .img8, .f_about .img9, .f_about .img10, .f_about .img11, .f_about .img12, .f_about .img13, .f_about .img14, .f_about .img15, .f_about .img16, .f_about .img17, .f_about .img18 {
  width: 28px;
  height: auto;
}
}

/*位置*/
.f_about .img1 {
  margin-left: 370px;
  margin-top: -140px;
}

@media only screen and (max-width: 1024px) {
.f_about .img1 {
  margin-left: 93px;
  margin-top: -319px;
}  
}

.f_about .img2 {
  margin-left: -452px;
  margin-top: -41px;
}

@media only screen and (max-width: 1024px) {
.f_about .img2 {
  margin-left: -164px;
  margin-top: -30px;
}  
}

.f_about .img3 {
  margin-left: 360px;
  margin-top: 191px;
}

@media only screen and (max-width: 1024px) {
.f_about .img3 {
  margin-left: 140px;
  margin-top: -17px;
}  
}

.f_about .img4 {
  margin-left: -690px;
  margin-top: -233px;
}

@media only screen and (max-width: 1024px) {
.f_about .img4 {
  margin-left: -190px;
  margin-top: -200px;
}  
}

.f_about .img5 {
  margin-left: -287px;
  margin-top: -408px;
}

@media only screen and (max-width: 1024px) {
.f_about .img5 {
  margin-left: -109px;
  margin-top: -375px;
}  
}

.f_about .img6 {
  margin-left: -408px;
  margin-top: -269px;
}

@media only screen and (max-width: 1024px) {
.f_about .img6 {
  margin-left: -135px;
  margin-top: -273px;
}
}

.f_about .img7 {
  margin-left: 307px;
  margin-top: -312px;
}

@media only screen and (max-width: 1024px) {
.f_about .img7 {
  margin-left: 96px;
  margin-top: -61px;
}
}

.f_about .img8 {
  margin-left: 458px;
  margin-top: -262px;
}

@media only screen and (max-width: 1024px) {
.f_about .img8 {
  margin-left: 49px;
  margin-top: 122px;
}
}

.f_about .img9 {
  margin-left: -299px;
  margin-top: 102px;
}

@media only screen and (max-width: 1024px) {
.f_about .img9 {
  margin-left: -87px;
  margin-top: -61px;
}
}

.f_about .img10 {
  margin-left: 421px;
  margin-top: 20px;
}

.f_about .img11 {
  margin-left: 261px;
  margin-top: 35px;
}

@media only screen and (max-width: 1024px) {
.f_about .img11 {
  margin-left: 128px;
  margin-top: 76px;
}
}

.f_about .img12 {
  margin-left: 520px;
  margin-top: -407px;
}

@media only screen and (max-width: 1024px) {
.f_about .img12 {
  margin-left: 166px;
  margin-top: -361px;
}
}

.f_about .img13 {
  margin-left: -596px;
  margin-top: -35px;
}

@media only screen and (max-width: 1024px) {
.f_about .img13 {
  margin-left: -192px;
  margin-top: 60px;
}
}

.f_about .img14 {
  margin-left: 557px;
  margin-top: -127px;
}

@media only screen and (max-width: 1024px) {
.f_about .img14 {
  margin-left: 148px;
  margin-top: -216px;
}
}

.f_about .img15 {
  margin-left: -598px;
  margin-top: 266px;
}

.f_about .img16 {
  margin-left: -469px;
  margin-top: 143px;
}

@media only screen and (max-width: 1024px) {
.f_about .img16 {
  margin-left: -118px;
  margin-top: 85px;
}
}

.f_about .img17 {
  margin-left: 615px;
  margin-top: 130px;
}

.f_about .img18 {
  margin-left: -263px;
  margin-top: -68px;
}

@media only screen and (max-width: 1024px) {
.f_about .img10, .f_about .img15, .f_about .img17, .f_about .img18 {
  display: none;
}
}

.f_about .c1 {
  margin-left: -371px;
  margin-top: -406px;
}

@media only screen and (max-width: 1024px) {
.f_about .c1 {
  margin-left: -128px;
  margin-top: -71px;
}
}

.f_about .c2 {
  margin-left: 157px;
  margin-top: -346px;
}

@media only screen and (max-width: 1024px) {
.f_about .c2 {
  margin-left: -151px;
  margin-top: -323px;
}
}

.f_about .c3 {
  margin-left: 650px;
  margin-top: -310px;
}

@media only screen and (max-width: 1024px) {
.f_about .c3 {
  margin-left: 65px;
  margin-top: -356px;
}
}

.f_about .c4 {
  margin-left: -520px;
  margin-top: -306px;
}

@media only screen and (max-width: 1024px) {
.f_about .c4 {
  margin-left: -73px;
  margin-top: 135px;
}
}

.f_about .c5 {
  margin-left: 402px;
  margin-top: -176px;
}

@media only screen and (max-width: 1024px) {
.f_about .c5 {
  margin-left: 54px;
  margin-top: -51px;
}
}

.f_about .c6 {
  margin-left: -429px;
  margin-top: -161px;
}

@media only screen and (max-width: 1024px) {
.f_about .c6 {
  margin-left: 143px;
  margin-top: -104px;
}
}

.f_about .c7 {
  margin-left: 565px;
  margin-top: 41px;
}

@media only screen and (max-width: 1024px) {
.f_about .c7 {
  margin-left: 93px;
  margin-top: 103px;
}
}

.f_about .c8 {
  margin-left: -555px;
  margin-top: 109px;
}

.f_about .c9 {
  margin-left: 251px;
  margin-top: 189px;
}

.f_about .c10 {
  margin-left: -328px;
  margin-top: 214px;
}

@media only screen and (max-width: 1024px) {
.f_about .img .circle.c8, .f_about .img .circle.c9, .f_about .img .circle.c10 {
  display: none;
}
}

/*-------------------------------------------------

		☆ front modelhouse

-------------------------------------------------*/
section#modelhouse {
  background: #fff;
}

@media only screen and (max-width: 1024px) {
section#modelhouse {
  padding-top: 0;
}
}

.f_modelhouse {
  position: relative;
  margin-top: -1px;
}

.f_modelhouse>.flex {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.f_modelhouse h2.f_midashi {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 30px;
}

@media only screen and (max-width: 1024px) {
.f_modelhouse h2.f_midashi {
  font-size: 19px;
  margin: 0 auto 20px auto;
}
}

.f_modelhouse>.flex>.f_midashi {
  margin-bottom: 0;
}

@media only screen and (max-width: 1024px) {
.f_modelhouse_in_list.flex {
  display: block;
}
.f_modelhouse_in>.f-section {
  padding: 0;
}
}

.f_modelhouse .f_midashi span.f_midashi_ja {
  font-style: normal;
  font-weight: bold;
  font-size: 36px;
  letter-spacing: .15em;
  color: #000;
}

@media only screen and (max-width: 1024px) {
.f_modelhouse .f_midashi span.f_midashi_ja {
  font-size: 26px;
}
}

.f_modelhouse .f_midashi span.f_midashi_en {
    font-family: 'Century Gothic', sans-serif;
    display: block;
    font-weight: bold;
    padding-top: 13px;
    color: #cc9f6e;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: .15em;
}

.f_modelhouse .f_section em {
  font-weight: 500;
  text-align: center;
  display: block;
  font-size: 17px;
  line-height: 1.76;
  letter-spacing: 1px;
}

.f_wrap.special-txt {
  padding-top: 30px;
}

.f_wrap.special-txt p {
  font-weight: bold;
  background: url(../img/works/works-bg.png) repeat-x top;
  background: #f3f3f3;
  color: #000 !important;
  text-align: center;
  padding: 15px 0 0 10px;
}

@media only screen and (max-width: 1024px) {
.f_wrap.special-txt p {
  padding: 10px 3% 0 3%;
  line-height: 1.8; 
}
}

.f_modelhouse_in_list a {
  font-weight: bold;
  color: #000;
}

.f_modelhouse_in_list .f_modelhouse_box {
  margin-bottom: 40px;
  margin-right: 30px;
  width: 48.6%;
}

@media only screen and (max-width: 1024px) {
.f_modelhouse_in_list .f_modelhouse_box {
  width: 100%;
  margin-bottom: 30px;
}
}

.f_modelhouse_in_list .f_modelhouse_box:nth-child(even) {
  margin-right: 0;
}

.f_modelhouse .f_modelhouse_in_list .f_modelhouse_box .f_modelhouse_box_img {
  margin-bottom: 20px;
  overflow: hidden;
  width: 100%;
  position: relative;
}

.f_modelhouse .f_modelhouse_in_list .f_modelhouse_box .kakaku {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 66%;
}

.f_modelhouse .f_modelhouse_in_list .f_modelhouse_box .f_modelhouse_box_img img {
  font-family: "object-fit: cover;";
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: 0.7s;
  -o-transition: 0.7s;
  transition: 0.7s;
  width: 100%;
}

.f_modelhouse .f_modelhouse_in_list .f_modelhouse_box .f_modelhouse_box_date {
  font-size: 13px;
  margin-bottom: 10px;
}

@media only screen and (max-width: 1024px) {
.f_modelhouse .f_modelhouse_in_list .f_modelhouse_box .f_modelhouse_box_img {
  margin-bottom: 10px;
}
}

.c-infocat {
  background-color: #fff;
  border: 1px solid #F46060;
  border-radius: 11px;
  color: #ffffff;
  background-color: #F46060;
  font-size: 14px;
  font-weight: bold;
  padding: 6px 10px;
}

.f_modelhouse .f_modelhouse_in_list .f_modelhouse_box .f_modelhouse_box_date .c-infocat {
  margin-right: 15px;
}

.f_modelhouse .f_modelhouse_in_list .f_modelhouse_box dt {
  font-size: 22px;
  line-height: 1.625;
  margin-bottom: 15px;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
.f_modelhouse .f_modelhouse_in_list .f_modelhouse_box dt {
  font-size: 18px;
  margin-bottom: 5px;
}
}

.f_modelhouse .f_modelhouse_in_list .f_modelhouse_box dd {
  background: url(../img/cmn/icon-map.svg) no-repeat 0% 50%;
  background-size: 14px 17px;
  font-size: 14px;
  font-weight: lighter;
  padding: 5px 0 5px 20px;
}

@media only screen and (max-width: 1024px) {
.f_modelhouse .f_modelhouse_in_list .f_modelhouse_box dd {
  font-size: 12px;
  padding: 5px 0px 0px 20px;
}
}

@media only screen and (max-width: 320px) {
.f_modelhouse .f_modelhouse_in_list .f_modelhouse_box dd {
  font-size: 10px;
}
}

.f_modelhouse .f_modelhouse_in_list .f_modelhouse_box dd .address {
  border-left: 1px solid #eee;
  display: inline-block;
  margin-left: 10px;
  padding-left: 10px;
}


/*-------------------------------------------------

		☆ front tokucho

-------------------------------------------------*/
.secTokucho {
  background: #fff;
  margin: 0 auto;
  padding-top: 60px;
}

@media only screen and (max-width: 1024px) {
.secTokucho {
  padding-top: 60px;
}
}

.secTokucho.page {
  margin: 20px auto 100px auto;
  padding-top: 0;
  clear: both;
}

.secTokucho .aSpec {
  background: url(../img/tokucho/bgTokucho.jpg) top center no-repeat;
  display: block;
  text-align: center;
  color: #fff;
  text-decoration: none;
  height: 700px;
  background-size: cover !important;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  padding-top: 45px;
}

@media only screen and (max-width: 1024px) {
.secTokucho .aSpec {
  background: url(../img/tokucho/bgTokucho-sp.jpg) top center no-repeat;
  height: auto;
  padding: 45px 0 50px;
}
}

.secTokucho .aSpec .tit {
  font-size: 46px;
  line-height: 102px;
  font-weight: 900;
  letter-spacing: 12px;
  line-height: 1.6;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
.secTokucho .aSpec .tit {
  font-size: 22px;
  letter-spacing: 1.5px;
  line-height: 1.6;
}
}

.secTokucho .aSpec .txtMain {
  font-size: 40px;
  font-weight: 700;
  letter-spacing: 2px;
  padding-top: 30px;
  position: relative;
  line-height: 35px;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
.secTokucho .aSpec .txtMain {
  display: none;
}
}

.secTokucho .aSpec .aBtn {
  font-size: 16px;
  letter-spacing: 1px;
  line-height: 18px;
  border: 1px solid #fff;
  width: 280px;
  padding: 20px 0;
  position: relative;
  margin: 45px auto 0;
}

@media only screen and (max-width: 1024px) {
.secTokucho .aSpec .aBtn {
  font-size: 13px;
  width: 75%;
  padding: 18px 0;
  margin: 30px auto 0;
}
}

.secTokucho .aSpec .aBtn::after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 33px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media only screen and (max-width: 1024px) {
.secTokucho .aSpec .aBtn::after {
  right: 23px;
}
}

.secTokucho .list {
  display: flex;
  display: -webkit-flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  margin-top: 60px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media only screen and (max-width: 1024px) {
.secTokucho .list {
  display: block;
  margin-top: 2px;
}
}

.secTokucho .list .aBox {
  display: block;
  width: 32%;
  margin-right: 2%;
  position: relative;
  margin-bottom: 20px;
}

@media only screen and (max-width: 1024px) {
.secTokucho .list .aBox {
  width: 100%;
  margin: 2px 0 0;
}
}

.secTokucho .list .aBox::after {
  position: absolute;
  top: auto;
  bottom: 44px;
  right: 33px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 13px;
  height: 13px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.secTokucho .list .aBox:hover,.secTokucho .aSpec:hover {
  opacity: 0.8;
}

.secTokucho .list .aBox:nth-child(3) {
  margin-right: 0;
}

.secTokucho .list .aBox img {
  width: 100%;
  height: auto;
}

@media only screen and (max-width: 1024px) {
.secTokucho .list .aBox img {
  border-radius: 0px;
}
}

.secTokucho .logomark {
  width: 45px;
  height: auto;
  text-align: center;
  margin: 0 auto 20px auto;
}

@media only screen and (max-width: 1024px) {
.secTokucho .logomark {
  width: 30px;
}
}

.boxIn_sub {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin: 0;
  padding: 0;
  color: #fff;
  text-shadow: 0 0 27px rgb(0 0 0 / 20%);
  text-align: center;
}

.boxIn_sub .tit {
  font-weight: 700;
  font-style: normal;
  color: #fff;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 230px;
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  font-size: 17px;
  height: 70px;
  display: table;
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
}

.boxIn_sub .tit:after {
  width: 40px;
  height: 2px;
  background: #fff;
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
}

.boxIn_sub .tit h2 {
  display: table-cell;
  vertical-align: middle;
}

@media only screen and (max-width: 320px) {
.boxIn_sub .tit {
  font-size: 15px;
}
}

.boxIn_sub .txtMain_sub {
  font-size: 19px;
  font-weight: bold;
  letter-spacing: .15em;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
.boxIn_sub .txtMain_sub {
  font-size: 14px;
  text-align: center;
}
}

.boxIn_sub .en_sub {
  letter-spacing: .15em;
  text-align: center;
}

@media only screen and (max-width: 1024px) {
.boxIn_sub .en_sub {
  display: none;
}
}

#tokucho {
  background: #fff;
  margin: 0 auto;
  padding-top: 100px;
}

@media only screen and (max-width: 1024px) {
#tokucho {
  padding-top: 60px;
}
}

.tokucho_box {
  width: 1205px;
  margin: 60px auto 0 auto;
}

#tokucho li {
  margin-right: 8px;
}

#tokucho li:last-child {
  margin-right: 0;
}

#tokucho li figure {
  text-align: center;
  margin-bottom: 10px;
}

#tokucho li p {
  text-align: center;
  font-size: 14px;
  color: #000;
}

/*-------------------------------------------------

		☆ front works

-------------------------------------------------*/
.secGallery {
  padding-bottom: 60px;
}

.secGallery .list {
  display: flex;
  display: -webkit-flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  margin: 50px auto 60px auto;
}

@media only screen and (max-width: 1024px) {
.secGallery .list {
    margin-top: 23px;
    margin: 40px auto 40px auto;
}
}

.secGallery .box {
  width: 24.688%;
  margin-right: 0.416%;
  position: relative;
  background: #f9f9f9;
}

.secGallery .box:nth-child(2n) {
  background: #fcf9f4;
}

@media only screen and (max-width: 1024px) {
.secGallery .box:nth-child(2n) {
  margin-right: 0;
}
}

@media only screen and (max-width: 1024px) {
.secGallery .box:nth-child(n+3) {
  margin-top: 1%;
}
}
  

@media only screen and (max-width: 1024px) {
.secGallery .box, .secGallery .box:nth-child(odd) {
  width: 49.6%;
  margin-right: 0.8%;
}
}

.secGallery .box:nth-child(4n) {
  margin-right: 0;
}

.secGallery .iconNew {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  color: #000;
}

.iconNew {
  width: 44px;
  background: #ffff00;
  height: 24px;
  text-align: center;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  font-size: 12px;
  line-height: 20px;
  font-weight: 700;
  letter-spacing: 1px;
}

.secGallery .box .aBox {
  display: block;
  color: #000;
  text-decoration: none;
}

.secGallery .imgBoxIn {
  position: relative;
}

.secGallery .box .imgBox {
  width: 100%;
  height: 0;
  padding-top: 130.804%;
}

@media only screen and (max-width: 1024px) {
.secGallery .box .imgBox {
  width: 100%;
  height: 220px;
  overflow: hidden;
  text-align: center;
}
}

.imgCover, .imgCover2 {
  position: relative;
}

.imgCover2 img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
  font-family: 'object-fit:cover;';
}

@media only screen and (max-width: 1024px) {
.imgCover2 img {
  width: 100%;
  height: 220px;
  object-fit: cover;
}
}

.secGallery .subBox {
  padding: 25px 30px 38px;
  width: 100%;
  text-align: left;
  height: 100px;
}

@media only screen and (max-width: 1024px) {
.secGallery .subBox {
  padding: 10px 4% 5px 4%;
  height: 80px;
}
}

h3.boxTxt::after {
  position: absolute;
  bottom: 15px;
  right: 13px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate( 45deg);
  transform: rotate( 45deg);
}

.secGallery .subBox h3.boxTxt {
  font-weight: bold;
  line-height: 1.4;
  font-size: 14px;
}

@media only screen and (max-width: 1024px) {
.secGallery .subBox h3.boxTxt {
  font-size: 12px;
}
}


/* OLD style */
section#works {
  position: relative;
  background: #fff;
}

.f_works {
  padding-top: 30px;
}

@media only screen and (max-width: 1024px) {
.f_works {
  padding-top: 0;
}
}

.f_works>.f-section {
  /* border-top: 1px solid #000; */
  padding-top: 80px;
  position: relative;
}

@media only screen and (max-width: 1024px) {
.f_works>.f-section {
  padding: 40px 0 0 0;
}
}

.titEngIn {
  text-align: center;
  padding-bottom: 30px;
}

.f_event_box .titEngIn {
  position: relative;
}

.titEng {
  color: #4da4c5;
  font-size: 20px;
  line-height: 35px;
  display: inline-block;
  position: relative;
  letter-spacing: 2px;
}

@media only screen and (max-width: 1024px) {
.titEngIn {
  text-align: center;
  padding-bottom: 10px;
}
.titEng {
  font-size: 14px;
}
}

.titEng::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: -90px;
  background: #4da4c5;
  width: 80px;
  height: 1px;
}

.titEng::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: -90px;
  background: #4da4c5;
  width: 80px;
  height: 1px;
}

.titEngIn .wel {
  position: absolute;
  left: 410px;
  top: 30px;
}

@media only screen and (max-width: 1024px) {
.titEngIn .wel {
  left: 34px;
  top: 23px;
  width: 90px;
}
}

.f_wrap {
  position: relative;
}

.f_works .flex {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.f_works .f_works_sec {
  height: 540px;
  margin-top: 40px;
  margin-bottom: 130px;
  position: relative;
}

.f_works .f_works_sec.left {
  margin-top: 60px;
  margin-bottom: 0;
}

.s_ttl.line {
  position: relative;
}

.f_works .f_works_sec .wrap {
  position: relative;
}

.f_works .f_works_sec a {
  color: #212121;
  display: block;
  text-decoration: none;
}

.f_works .f_works_sec .f_works_detail {
  padding: 60px 0;
  width: 580px;
}


.f_works .f_works_sec .f_works_detail.right {
  position: absolute;
  right: 200px;
  top: 230px;
  z-index: 2;
  background: rgba(255,255,255,0.9);
}

.f_works .f_works_sec .f_works_detail.left {
  left: 200px;
  position: absolute;
  top: 230px;
  z-index: 2;
  background: rgba(255,255,255,0.9);
}

.f_works .f_works_sec .f_works_detail .f_works_box {
  margin: 0 80px;
}

.f_works .f_works_sec .f_works_detail span {
  color: #4da4c5;
  display: block;
  font-family: "Montserrat",sans-serif;
  font-size: 15px;
  font-weight: bold;
  margin-bottom: 20px;
}

.f_works .f_works_sec .f_works_detail h3 {
  font-size: 30px;
  font-weight: bold;
  line-height: 1.625;
  margin-bottom: 20px;
}

.f_works .f_works_sec .f_works_detail .f_works_txt {
  font-size: 14px;
  line-height: 1.5rem;
  margin-bottom: 23px;
  text-align: left;
  font-weight: 500;
}

.f_works .f_works_sec .f_works_detail .f_works_btn {
  font-size: 16px;
  font-weight: bold;
  padding: 3px 40px 2px 30px;
  position: relative;
  display: block;
  padding: 12px 0;
  border: 2px solid;
  color: #4da4c5;
  line-height: 1;
  text-align: center;
  width: 240px;
  margin: 0 auto;
  -webkit-transition-duration: 0.25s;
  transition-duration: 0.25s;
}

.f_works .f_works_sec .f_works_detail .f_works_btn:hover {
  background-color: #4da4c5;
  color: #fff;
}

.f_works .f_works_sec .f_works_detail .f_works_btn::after {
  content: "";
  position: absolute;
  top: 0;
  right: 16px;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  transform: rotate(-45deg);
  border-right: 2px solid;
  border-bottom: 2px solid;
}

.f_works .f_works_sec .f_works_img {
  display: block;
  height: 540px;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 80%;
  z-index: 1;
}

.f_works .f_works_sec .f_works_img img {
  font-family: "object-fit: cover;";
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 70% 100%;
  object-position: 70% 100%;
  width: 100%;
}

.f_works .f_works_sec .f_works_img.right {
  right: 0;
}
/* /OLD style */


/*-------------------------------------------------

		☆ works（single）

-------------------------------------------------*/
.wrapper1100 {
  width: calc(100% - 40px);
  max-width: 1100px;
  margin: 0 auto;
}

.secDetails .detailsTit {
  padding-top: 45px;
  text-align: left;
}

.secDetails .detailsTit .boxIn {
  font-size: 0;
}

.secDetails .detailsTit .txtName, .secDetails .detailsTit .iconNewIn {
  display: inline-block;
  vertical-align: middle;
}

.secDetails .detailsTit .txtName {
  font-size: 15px;
  line-height: 25px;
  letter-spacing: 2px;
}

.secDetails .detailsTit .txtName span {
  color: #fff;
  padding: 6px 6px 6px 10px;
  margin-right: 5px;
  font-weight: bold;
  font-size: 11px;
}

.secDetails .detailsTit .txtName span.ordertype {
  background-color: #383838;
}

.secDetails .detailsTit .txtName span.hometype {
  background-color: #be3636;
}

.secDetails .detailsTit .txtName span.ini {
  font-size: 12px;
  line-height: 25px;
  letter-spacing: 2px;
  font-weight: normal;
  padding: 0;
  margin-right: 0;
  color: inherit;
  display: block;
  margin-top: 10px;
}

.secDetails .detailsTit .tit {
  font-size: 26px;
  line-height: 29px;
  font-weight: 700;
  letter-spacing: 2px;
  margin-top: 25px;
}

.secDetails .tabBoxMain {
  margin-top: 40px;
  padding-top: 40px;
  border-top: 1px solid #dddddd;
  position: relative;
}

.secDetails .tagBox {
  background: #fbfbfb;
  position: relative;
  text-align: center;
}

.secDetails .tagBox .tagList {
  font-size: 0;
  padding: 23px 50px;
}

.secDetails .tagBox .tag {
  font-size: 14px;
  line-height: 32px;
  display: inline-block;
  vertical-align: top;
  color: #000;
  text-decoration: none;
  margin-right: 15px;
}

.secDetails .tagBox .tag span {
  color: #e9495b;
}

.secDetails .tabBoxMain::after {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  width: 100px;
  height: 1px;
  background: #000;
}

.secDetailsImg {
  padding-top: 40px;
}

.imgCenter {
  text-align: center;
}

.imgCenter img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}

table.mobile-scroll {
  margin: 40px auto;
  width: 400px;
}

@media only screen and (max-width: 768px) {
.secDetails .detailsTit {
  padding-top: 10px;
}
.secDetails .detailsTit .tit {
  font-size: 18px;
  margin-top: 10px;
}
.secDetails .tabBoxMain {
  margin-top: 20px;
  padding-top: 20px;
}
.secDetailsImg {
  padding-top: 20px;
}
table.mobile-scroll {
  width: 100%;
  margin: 20px auto;
}
.secDetails .tagBox .tagList {
  padding: 10px 20px;
}
}

.mobile-scroll table{
  border-collapse: collapse;
  margin: 0 auto;
}

.mobile-scroll td, .mobile-scroll th{
  border-top: 2px solid #e6e6e6;
  padding: 20px;
  font-size: 13px;
}

.mobile-scroll td {
  text-align: left;
}

.mobile-scroll tr:last-child td,
.mobile-scroll tr:last-child th{
  border-bottom: 2px solid #e6e6e6;  
}

.works_main_desc {
  font-size: 16px;
  line-height: 1.75;
  padding: 20px;
  border: 3px solid #f1f1f1;
  width: 92%;
  margin: 20px auto 60px auto;
}

.gallery_img_text figure {
  margin-top: 20px;
}

.gallery_img_text p {
  line-height: 1.75;
  padding: 15px 0 20px 0;
}

@media only screen and (max-width: 768px) {
.mobile-scroll td, .mobile-scroll th {
  padding: 10px;
}
.works_main_desc {
  width: 100%;
  text-align: left;
  font-size: 14px;
  margin-bottom: 20px;
}
.gallery_img_text p {
  padding: 10px 0;
}
}

/* 建築実例 single 建築データ・担当スタッフ PC */
/* line 10133, scss/style.scss */
.building-status-area {
  overflow: hidden;
  margin-top: 20px;
  width: 100%;
}

/* line 10139, scss/style.scss */
.b-wrap {
  width: 100%;
  overflow: hidden;
  margin-bottom: 30px;
}

/* line 10145, scss/style.scss */
.b-midashi {
  float: left;
  width: 23%;
  text-align: center;
}

/* line 10151, scss/style.scss */
.b-midashi h3 {
  font-size: 30px;
  font-weight: 600;
  font-family: "Yu Mincho", "YuMincho","ＭＳ Ｐ明朝","MS PMincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","serif";
}

/* line 10157, scss/style.scss */
.b-midashi span.mini-midashi {
  display: inline-block;
  font-size: 12px;
  top: -23px;
  position: relative;
}

/* line 10164, scss/style.scss */
.b-midashi .mini-midashi-txt:after {
  content: "";
  display: block;
  background-color: #f7e9cd;
  width: 110%;
  height: 7px;
  margin: -9px 0 0 -5%;
}

/* line 10173, scss/style.scss */
.b-status {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}

/* line 10185, scss/style.scss */
.b-status-row {
  width: 50%;
  border-bottom: 1px solid #ccc;
  font-size: 15px;
}

/* line 10191, scss/style.scss */
.b-status-row:nth-child(2n) {
  border-left: 1px solid #ccc;
}

/* line 10195, scss/style.scss */
.b-status-row.nobeyuka {
  width: 100%;
  border: none;
}

/* line 10200, scss/style.scss */
.row-label {
  display: table-cell;
  width: 110px;
  padding: 20px 0 20px 20px;
  font-weight: bold;
}

/* line 10207, scss/style.scss */
.row-data {
  display: table-cell;
  padding: 15px 20px;
  font-weight: normal;
}

/* line 10213, scss/style.scss */
.b-concept {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

/* line 10223, scss/style.scss */
.b-concept-txt {
  font-weight: normal;
  font-size: 1.4rem;
}

/* line 10228, scss/style.scss */
.b-staff-wrap {
  margin: 0 auto;
  overflow: hidden;
  padding: 10px 0 60px 10px;
  border-bottom: 1px solid #ccc;
  width: 800px;
}

/* line 10235, scss/style.scss */
.b-staff {
  overflow: hidden;
  background: #fff;
}

/* line 10239, scss/style.scss */
.b-staff-img-wrap {
  float: left;
  width: 20%;
}

/* line 10244, scss/style.scss */
.b-staff-img-wrap img {
  width: 100%;
}

/* line 10252, scss/style.scss */
.b-staff-tantou {
  float: left;
  font-size: 14px;
  font-weight: normal;
  padding-top: 5px;
  padding-left: 30px;
}

/* line 10260, scss/style.scss */
.b-staff-tantou a {
  text-decoration: underline;
}

/* line 10264, scss/style.scss */
.b-staff-comment {
  float: left;
  position: relative;
  color: #484848;
  font-size: 16px;
  background: #FFF;
  box-sizing: border-box;
  border-radius: 10px;
  text-align: left;
  font-weight: normal;
  overflow: hidden;
  display: block;
  width: 73%;
  margin: 10px auto 0 30px;
  padding: 20px;
  border: 5px solid #ebebeb;
  line-height: 1.6;
}

/* line 10281, scss/style.scss */
.b-staff-comment p {
  margin: 0;
  padding: 0;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.9;
}

.b-staff-img img {
  border-radius: 50%;
}

.b-staff .watatan {
  width: 40%;
  text-align: center;
  margin: 0 auto;
}

.b-staff .watatan img {
  width: 200px;
}

/* line 10289, scss/style.scss */
.profile-btn {
  color: #6ABECC;
  padding: 6px 18px 6px 12px;
  border-radius: 5px;
  display: block;
  font-size: 13px;
  text-align: center;
  float: right;
  margin: 50px 0 0 0;
  text-decoration: underline;
}

/* line 10301, scss/style.scss */
.profile-btn:hover {
  text-decoration: none;
  opacity: 0.8;
  transition: 0.3s;
}

/* 建築実例 single 建築データ・担当スタッフ SP */
@media screen and (max-width: 768px) {
  /* line 10309, scss/style.scss */
  .b-midashi {
    width: 100%;
    margin-bottom: 20px;
  }

  /* line 10313, scss/style.scss */
  .b-status {
    width: 100%;
    font-size: 1.3rem;
  }

  /* line 10317, scss/style.scss */
  .b-status-row {
    width: 100%;
    font-size: 12px;
  }

  /* line 10321, scss/style.scss */
  .b-status-row:nth-child(2n) {
    border-left: none;
  }

  /* line 10324, scss/style.scss */
  .row-label {
    padding: 7px 0 7px 20px;
  }

  /* line 10327, scss/style.scss */
  .row-data {
    padding: 10px 20px;
    border-left: 1px solid #ccc;
  }

  /* line 10331, scss/style.scss */
  .b-concept {
    width: 100%;
  }

  /* line 10334, scss/style.scss */
  .b-staff-wrap {
    width: 100%;
    float: none;
    padding: 20px 4%;
  }

  /* line 10339, scss/style.scss */
  .b-staff {
    width: 100%;
  }

  /* line 10342, scss/style.scss */
  .b-staff-img-wrap {
    width: 34%;
    text-align: center;
    margin: 0 auto;
  }

  /* line 10347, scss/style.scss */
  .b-staff-tantou {
    font-size: 13px;
    padding-left: 10px;
    width: 66%;
  }

  /* line 10352, scss/style.scss */
  .b-staff-comment {
    display: block;
    width: 100%;
    margin: 1rem auto auto;
    padding: 20px;
    border: 5px solid #ebebeb;
    font-size: 14px;
  }

  /* line 10358, scss/style.scss */
  .profile-btn {
    font-size: 11px;
  }
}
/* そのほかの建築実例  PC */
/* line 10364, scss/style.scss */
.other-post {
  overflow: hidden;
}

/* line 10368, scss/style.scss */
.other-post-in {
  background: #e8e5e3;
  padding: 50px 35px 0px;
}

/* line 10373, scss/style.scss */
.other-post-in h3 {
  font-size: 1.8rem;
  text-align: center;
  margin-bottom: 30px;
}

/* line 10379, scss/style.scss */
.other-post-in ul.other-list {
  font-size: 0;
  letter-spacing: 0;
  text-align: center;
  max-width: 930px;
  margin: 0 auto;
}

/* line 10387, scss/style.scss */
.other-post-in ul li {
  width: 33.33333%;
  padding: 0 20px;
  display: inline-block;
  vertical-align: top;
  margin: 0 0 45px;
}

/* line 10396, scss/style.scss */
.other-post-in ul li a {
  line-height: 0;
  outline: none;
  display: block;
  background-color: transparent;
}

/* line 10403, scss/style.scss */
.other-post-in ul li a img {
  display: block;
  width: 100%;
  margin-bottom: 7px;
}

/* line 10409, scss/style.scss */
.other-post-in ul li a span {
  font-size: 1.6rem;
  font-weight: normal;
  display: inline-block;
  text-decoration: underline;
  color: #333;
  line-height: 1.5;
  padding: 0 0px;
  text-align: left;
}

/* そのほかの建築実例 SP */
@media only screen and (max-width: 767px) {
  /* line 10422, scss/style.scss */
  .other-post-in {
    padding: 25px 5px 0;
  }

  /* line 10425, scss/style.scss */
  .other-post-in h3 {
    font-size: 14px;
    margin-bottom: 15px;
  }

  /* line 10429, scss/style.scss */
  .other-post-in ul.other-list {
    margin: 0 -1px 20px 0;
    text-align: left;
  }

  /* line 10433, scss/style.scss */
  .other-post-in ul.other-list li {
    width: 50%;
    margin: 0 0 14px;
    padding: 0 10px;
  }

  /* line 10438, scss/style.scss */
  .other-post-in ul.other-list li img {
    margin-bottom: 9px;
  }

  /* line 10441, scss/style.scss */
  .other-post-in ul.other-list li a span {
    font-size: 1.3rem;
    padding: 0 0px;
    text-align: left;
    font-weight: bold;
  }
}
/* 次の記事へ 前の記事へ （建築実例 single）*/
/* line 10450, scss/style.scss */
.NextPrev {
  max-width: 830px;
  margin: 0 auto;
  padding: 56px 15px 86px;
}

/* line 10456, scss/style.scss */
.np-post {
  font-size: 0;
  letter-spacing: 0;
}

/* line 10461, scss/style.scss */
.np-post li {
  display: inline-block;
  position: relative;
  width: 37.5%;
  vertical-align: top;
  margin-right: 25%;
}

/* line 10469, scss/style.scss */
.np-post li:not(:first-child) {
  margin-right: 0;
}

/* line 10473, scss/style.scss */
.np-post li.cm-postlink-listItem {
  text-align: center;
  margin: 0 auto;
  display: block;
}

/* line 10479, scss/style.scss */
.cm-postlink-listItem .backtop:hover span {
  color: #fff;
}

/* line 10483, scss/style.scss */
.np-post li .txt {
  font-size: 18px;
  color: #999;
  float: left;
  width: 32%;
  padding-top: 22%;
}

/* line 10491, scss/style.scss */
.np-post .nextBox .txt {
  text-align: right;
}

/* line 10495, scss/style.scss */
.np-post .box {
  overflow: hidden;
  float: left;
  width: 68%;
}

/* line 10501, scss/style.scss */
.np-post .img img {
  display: block;
  width: 100%;
  margin-bottom: 10px;
}

/* line 10507, scss/style.scss */
.np-post .txt1 {
  font-size: 14px;
  font-weight: bold;
  text-decoration: underline;
  display: inline-block;
}

/* line 10514, scss/style.scss */
.linkBoxCom {
  display: block;
  position: absolute;
  width: 100%;
  background: #fff;
  opacity: 0;
  top: 0;
  bottom: 0;
  left: 0;
}

/* line 10525, scss/style.scss */
.np-post .backTop {
  width: 17.5%;
  text-align: center;
  padding-top: 9.4%;
}

/* line 10531, scss/style.scss */
.np-post .backTop a {
  display: block;
  font-size: 14px;
  text-decoration: underline;
  color: #333;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  /* line 10540, scss/style.scss */
  .NextPrev {
    padding: 0 4% 36px;
  }

  /* line 10543, scss/style.scss */
  .np-post {
    position: relative;
    padding: 0;
    text-align: center;
  }

  /* line 10548, scss/style.scss */
  .np-post li {
    margin-right: 0;
    width: 50%;
  }

  /* line 10552, scss/style.scss */
  .np-post .prevBox {
    padding-right: 10px;
    text-align: left;
  }

  /* line 10556, scss/style.scss */
  .np-post li .txt {
    font-size: 15px;
    float: none;
    padding-top: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    text-align: left;
  }

  /* line 10566, scss/style.scss */
  .np-post .box {
    width: 100%;
    padding-top: 30px;
  }

  /* line 10570, scss/style.scss */
  .np-post .img img {
    max-width: 100%;
  }

  /* line 10573, scss/style.scss */
  .np-post .txt1 {
    font-size: 13px;
  }

  /* line 10576, scss/style.scss */
  .np-post .backTop {
    width: 100%;
    padding-top: 10px;
  }

  /* line 10580, scss/style.scss */
  .np-post .nextBox {
    padding-left: 10px;
    text-align: right;
  }
}

/*-------------------------------------------------

		☆ front long bunner

-------------------------------------------------*/
section.long_bnr {
  position: relative;
  /*background: #f1f1f1; */
  padding: 80px 0 100px 0;
  top: -1px;
}

@media only screen and (max-width: 1024px) {
section.long_bnr {
  padding: 0;
}
}

section.long_bnr .f-section {
  text-align: center;
}

section.long_bnr img {
  width: 100%;
}


/*-------------------------------------------------

		☆ front plan

-------------------------------------------------*/
section#plan {
  position: relative;
  background: #fff;
  padding-top: 100px;
  top: -2px;
  padding-bottom: 10px;
}

@media only screen and (max-width: 1024px) {
section#plan {
  padding-bottom: 0;
}
}

.f_plan_ordermade {
  padding-top: 40px;
}

.f_plan_ordermade .f_wrap {
  position: relative;
}

.f_plan_ordermade .f_wrap .f_plan_img {
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.f_plan_ordermade .f_wrap .f_plan_img img {
  width: 100%;
}

.f_plan_ordermade .f_plan_info {
  border-bottom: 1px dotted rgba(159,159,159,0.4);
  margin-bottom: 60px;
  margin-top: 40px;
  padding-bottom: 57px;
}

@media only screen and (max-width: 1024px) {
.f_plan_ordermade .f_plan_info {
  margin: 20px auto 0 auto;
  padding-bottom: 20px;
}
}

.f_plan_ordermade .f_plan_info h2 {
  margin-left: 39px;
  width: 280px;
}

@media only screen and (max-width: 1024px) {
.f_plan_ordermade .f_plan_info h2 {
  margin-left: 0;
  width: 100%;
}
}

.f_plan_ordermade .f_plan_info h2 span {
  display: block;
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 15px;
  color: #6195b9;
}

@media only screen and (max-width: 1024px) {
.f_plan_ordermade .f_plan_info h2 span {
  font-size: 14px;
  margin-bottom: 10px;
  text-align: center;
}
}

.f_plan_ordermade .f_plan_info h2 em {
  font-size: 27px;
  font-weight: bold;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
.f_plan_ordermade .f_plan_info h2 em {
  font-size: 22px;
  text-align: center;
  margin-bottom: 5px;
}
}

.f_plan_ordermade .f_plan_info span.f_plan_price {
  font-size: 12px;
  font-family: 'YuGothic', 'Yu Gothic','游ゴシック','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ','Meiryo',sans-serif;
}

.f_plan_ordermade .f_plan_info .f_plan_txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 14px;
  line-height: 2;
  margin-left: 18px;
  margin-top: 15px;
}

@media only screen and (max-width: 1024px) {
.f_plan_ordermade .f_plan_info .f_plan_txt {
  display: block;
  margin: 0 auto;
}
}

.f_plan_ordermade .f_plan_info .f_plan_txt p {
  text-align: left;
  color: #000;
  font-weight: bold;
}

@media only screen and (max-width: 1024px) {
.f_plan_ordermade .f_plan_info .f_plan_txt p {
  font-weight: 500;
  line-height: 1.75;
  max-width: 70%;
  margin: 0 auto;
}
}

.f_plan_ordermade .f_plan_info .f_plan_txt .f_plan_btn {
  height: 55px;
  font-size: 14px;
  font-weight: bold;
  padding: 3px 40px 2px 30px;
  position: relative;
  display: block;
  padding: 12px 0;
  border-radius: 28px;
  border: 2px solid;
  color: #fff;
  background: #88b2d0;
  text-align: center;
  width: 180px;
  margin-left: 20px;
  line-height: 1.6rem;
  -webkit-transition-duration: 0.25s;
  transition-duration: 0.25s;
}

@media only screen and (max-width: 1024px) {
.f_plan_ordermade .f_plan_info .f_plan_txt .f_plan_btn {
  width: 70%;
  margin: 10px auto;
}
}

.f_plan_ordermade .f_plan_info .f_plan_txt .f_plan_btn::before {
  content: "";
  position: absolute;
  top: 0;
  right: 16px;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  transform: rotate(-45deg);
  border-right: 2px solid;
  border-bottom: 2px solid;
}

.f_plan_brandseries .c-secttl {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 30px;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
.f_plan_brandseries .c-secttl {
  text-align: center;
  margin: 40px auto;
}
}

.f_plan_brandseries .f_plan_brandseries_list {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.f_plan_brandseries .f_plan_brandseries_list .f_plan_box {
  margin-bottom: 84px;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  width: 520px;
  position: relative;
}

@media only screen and (max-width: 1024px) {
.f_plan_brandseries .f_plan_brandseries_list .f_plan_box {
  margin-bottom: 40px;
  width: 100%;
}
}

.f_plan_brandseries .f_plan_brandseries_list .f_plan_box .img {
  height: 348px;
  margin-bottom: 30px;
  overflow: hidden;
  width: 100%;
}

@media only screen and (max-width: 1024px) {
.f_plan_brandseries .f_plan_brandseries_list .f_plan_box .img {
  height: auto;
  margin-bottom: 20px;
}
}

.f_plan_brandseries .f_plan_brandseries_list .f_plan_box .img img {
  font-family: "object-fit: cover;";
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
}

.f_plan_brandseries .f_plan_brandseries_list .f_plan_box .img .prd-ttl, .f_plan_brandseries .f_plan_brandseries_list .f_plan_box span {
  color: #6195b9;
  display: block;
  font-size: 16px;
  font-weight: bold;
}

@media only screen and (max-width: 1024px) {
.f_plan_brandseries .f_plan_brandseries_list .f_plan_box .img .prd-ttl, .f_plan_brandseries .f_plan_brandseries_list .f_plan_box span {
  font-size: 14px;
  margin-bottom: 10px;
  text-align: center;
}
}

.f_plan_brandseries .f_plan_brandseries_list .f_plan_box .img .prd-ttl, .f_plan_brandseries .f_plan_brandseries_list .f_plan_box span.f_plan_price {
  color: #000;
  font-size: 12px;
  padding: 10px 0 10px 0;
  text-align: right;
}

.f_plan_brandseries .f_plan_brandseries_list .f_plan_box .flex {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media only screen and (max-width: 1024px) {
.f_plan_brandseries .f_plan_brandseries_list .f_plan_box .flex {
  display: block;
}
}

.f_plan_brandseries .f_plan_brandseries_list .f_plan_box h3 {
  text-align: center;
  width: 184px;
}

@media only screen and (max-width: 1024px) {
.f_plan_brandseries .f_plan_brandseries_list .f_plan_box h3 {
  width: auto;
  margin-bottom: 10px;
}
}

.f_plan_brandseries .f_plan_brandseries_list .f_plan_box h3 img.story {
  margin-right: 6px;
  margin-top: 2px;
  width: 153px;
}

.f_plan_brandseries .f_plan_brandseries_list .f_plan_box h3 img.homa {
  margin-right: 6px;
  width: 180px;
}

@media only screen and (max-width: 1024px) {
.f_plan_brandseries .f_plan_brandseries_list .f_plan_box h3 img.homa {
  padding-bottom: 5px;
}
}

.f_plan_brandseries .f_plan_brandseries_list .f_plan_box .txt {
  font-size: 13px;
  line-height: 1.8461538462;
  margin-left: 40px;
  position: relative;
  width: 290px;
  text-align: justify;
  color: #000;
  margin: 10px 0 0 30px;
  font-weight: bold;
}

@media only screen and (max-width: 1024px) {
.f_plan_brandseries .f_plan_brandseries_list .f_plan_box .txt {
  width: auto;
  font-weight: 500;
  line-height: 1.75;
  max-width: 70%;
  margin: 0 auto;
  font-size: 14px;
}
}

.f_plan_brandseries .f_plan_brandseries_list .f_plan_box .txt:before {
  border-right: 1px dotted #eee;
  content: "";
  display: block;
  height: 30px;
  left: -50px;
  margin: 0 20px;
  position: absolute;
  top: calc(50% - 15px);
  width: 1px;
}

.f_plan_brandseries .f_plan_brandseries_list .f_plan_box .cta {
  font-size: 14px;
  font-weight: bold;
  padding: 3px 40px 2px 30px;
  position: absolute;
  right: 0;
  display: block;
  padding: 12px 0;
  border-radius: 28px;
  border: 2px solid;
  color: #fff;
  background: #88b2d0;
  text-align: center;
  width: 180px;
  margin-left: 20px;
  line-height: 1.6rem;
  -webkit-transition-duration: 0.25s;
  transition-duration: 0.25s;
}

@media only screen and (max-width: 1024px) {
.f_plan_brandseries .f_plan_brandseries_list .f_plan_box .cta {
  position: inherit;
  margin: 15px auto 0 auto;
}
}

.f_plan_brandseries .f_plan_brandseries_list .f_plan_box .cta:before {
  content: "";
  position: absolute;
  top: 0;
  right: 16px;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  transform: rotate(-45deg);
  border-right: 2px solid;
  border-bottom: 2px solid;
}

/* planhint */
#hint {
  width: 100%;
  margin-bottom: 60px;
  background: url(../img/plan/hint_bg.jpg) top center no-repeat;
  padding: 50px 0 0;
  margin-top: 80px;
}

@media only screen and (max-width: 1024px) {
#hint {
  margin-top: 0;
  margin-bottom: 0;
  background: url(../img/plan/hint_bg-sp.jpg) top center no-repeat;
  background-size: 100%;
  padding: 29% 3% 5%;
}
}

#hint .inner {
  width: 1100px;
  margin: 0 auto;
  text-align: left;
}

@media only screen and (max-width: 1024px) {
#hint .inner {
  width: 100%;
}
}

#hint .inner h4 {
  margin-bottom: 50px;
}

@media only screen and (max-width: 1024px) {
#hint .inner h4 {
  margin-bottom: 35px;
}   
}

#hint-btn img {
  width: 28%;
  margin-top: -30px;
}

@media only screen and (max-width: 1024px) {
#hint-btn {
  width: 100%;
  text-align: center;
  margin: auto 0; 
}
#hint-btn p {
  text-align: center;
}
#hint-btn img {
  width: 70%;
  margin-top: -20px;
}
}

/* planidea */
.f_planidea {
  width: calc(100%);
  max-width: 1024px;
  margin: 40px auto 0 auto;
  background: #fff;
  padding: 60px;
}

@media only screen and (max-width: 1024px) {
.f_planidea {
  max-width: 100%;
  padding: 20px 2%;
}
}

.planidea_box {
  width: 48.171%;
  margin-right: 3.658%;
}

@media only screen and (max-width: 1024px) {
.planidea_box {
  width: 100%;
  margin-right: 0;
  margin-bottom: 20px;
}
}

.planidea_box a {
  display: block;
}

.imgCenter {
  text-align: center;
}

.imgCenter img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}

.planidea_box:nth-child(2n) {
  margin-right: 0;
}

.planidea_box:nth-child(n + 3) {
  margin-top: 60px;
}

@media only screen and (max-width: 1024px) {
.planidea_box:nth-child(n + 3) {
  margin-top: 0;
}
}


/*-------------------------------------------------

		☆ page reason 選ばれる理由

-------------------------------------------------*/
.p-reason--box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  max-width: 1100px;
  margin: 60px auto 0;
}

@media only screen and (max-width: 768px) {
.p-reason--box {
  display: block;
  max-width: 100%;
  margin-top: 20px;
}
}

.p-reason--box--tit {
  width: 558px;
  padding-left: 50px;
  padding-right: 30px;
}

.p-reason--box--content {
  width: calc(100% - 560px);
  padding-top: 43px;
}

@media only screen and (max-width: 768px) {
.p-reason--box--tit {
  width: 100%;
  padding-left: 4%;
  padding-right: 4%;
}
.p-reason--box--content {
  width: calc(100%);
}
}

.p-reason--box--content .title {
  border-left: 2px solid #71A8CB;
  padding-left: 21px;
  line-height: 25px;
  font-size: 29px;
  color: #71A8CB;
  font-family: 'Century Gothic', sans-serif;
}

.p-reason--box--content .text {
  border-left: 2px solid #71A8CB;
  padding-left: 21px;
  line-height: 30px;
  font-size: 16px;
  padding-top: 8px;
}

.p-reason--list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  background: #f7f7f7;
  padding: 46px 88px 49px;
  margin-top: 36px;
  margin-bottom: 71px;
}

@media only screen and (max-width: 768px) {
.p-reason--list {
  padding: 25px 35px 7px;
  margin: 25px -12px 40px;
}
}

.p-reason--list li {
  width: 156px;
  margin-bottom: 29px;
  margin-right: 0;
  text-align: center;
}

@media only screen and (max-width: 768px) {
.p-reason--list li {
  width: calc(50% - 23px);
  margin-bottom: 35px;
}
}

.p-reason--list .txt {
  font-size: 18px;
  line-height: 23px;
  margin-top: 9px;
  font-weight: bold;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 768px) {
.p-reason--list .txt {
  font-size: 15.5px;
  line-height: 20px;
  margin-top: 9px;
  text-align: center;
}
}

.p-reason--item {
  margin: 0 50px 55px;
}

@media only screen and (max-width: 768px) {
.p-reason--item {
  margin: 0 0 40px 0;
}  
}

.p-reason--title {
  position: relative;
  color: #fff;
  font-weight: 500;
  background: #71A8CB;
  text-align: center;
  font-size: 16px;
  padding: 8px 0 4px;
}

.p-reason--title a {
  display: block;
  padding-top: 37px;
  margin-top: -37px;
}

.p-reason--title .number {
  background-size: 106px 97px;
  font-size: 50px;
  top: -29px;
  left: 23px;
  padding: 23px 0 0 0;
  width: 106px;
  height: 97px;
  font-family: 'Century Gothic', sans-serif;
}

@media only screen and (max-width: 768px) {
.p-reason--title .number {
  font-size: 40px;
}
}

.p-reason--title .text {
  text-transform: uppercase;
  font-family: 'Century Gothic', sans-serif;
  font-weight: 500;
  text-align: center;
}

.p-reason--inner {
  border: 2px solid #71A8CB;
  padding: 26px 48px 45px;
}

@media only screen and (max-width: 768px) {
.p-reason--inner {
  padding: 20px 23px 27px;
}
}

.p-reason--tt {
  font-size: 30px;
  line-height: 39px;
  margin-bottom: 33px;
  text-align: center;
  font-weight: bold;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 768px) {
.p-reason--tt {
  font-size: 22px;
}
}

.p-reason--flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

@media only screen and (max-width: 768px) {
.p-reason--flex {
  display: block;
}
}

.p-reason--flex .txt {
  font-size: 16px;
  line-height: 36px;
  padding-left: 59px;
  padding-top: 2px;
}

@media only screen and (max-width: 768px) {
.p-reason--flex .txt {
  font-size: 14px;
  line-height: 25px;
  padding-top: 20px;
  letter-spacing: 0.5px;
  padding-left: 0;
}
}

.p-reason--right {
  width: calc(100% - 396px);
}

@media only screen and (max-width: 768px) {
.p-reason--right {
  width: 100%;
}
}

.p-reason--gray {
  margin-top: 25px;
  border-radius: 10px;
  margin-bottom: 25px;
  padding: 34px 25px 29px;
  background: #f1f1f1;
}

.p-reason--graytit {
  font-size: 18px;
  margin-bottom: 24px;
  color: #71A8CB;
  font-weight: bold;
}

.p-reason--grayflex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.p-reason--grayflex .txt {
  margin-right: 57px;
  margin-top: 6px;
  line-height: 30px;
  font-size: 16px;
  color: #A0A0A0;
}

.p-reason--grayflex .img {
  margin: 23px 6px 0;
}

.p-reason--flex .img {
  margin: 0;
}

@media only screen and (max-width: 768px) {
.p-reason--gray {
  margin-top: 13px;
  border-radius: 10px;
  margin-bottom: 17px;
  padding: 34px 15px 29px;
}
.p-reason--grayflex {
  display: block;
}
.p-reason--graytit {
  font-size: 18px;
  margin-bottom: 24px;
}
.p-reason--grayflex .txt {
  line-height: 25px;
  font-size: 14px;
  margin: 0;
}
.p-reason--grayflex .img {
  margin: 23px 0 0;
}
}

a.c-bnt {
  background: #f7db51;
  color: #000;
  width: 90%;
  padding: 20px;
  display: block;
  margin-top: 20px;
  text-align: center;
  margin: 20px auto 10px auto;
  font-weight: bold;
  font-size: 13px;
  line-height: 1.35;
}

/*-------------------------------------------------

		☆ page design こだわりを叶えるデザイン

-------------------------------------------------*/
.c-mainvisual--tit2 {
  font-size: 30px;
  letter-spacing: 3px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
  margin: 60px auto 20px auto;
  line-height: 1.75;
}

.c-mainvisual--txt {
  margin: 40px auto 0 auto;
}

.p-design1--item {
  width: 1100px;
  margin: 0 auto;
  padding: 100px 0 47px;
  position: relative;
  text-align: left;
}

.p-design1--item::before {
  content: '';
  background: #f1f1f1;
  position: absolute;
  bottom: 0;
  left: 400px;
  height: 552px;
  width: 57vw;
}

.p-design1--title {
  position: relative;
  letter-spacing: 3px;
  font-weight: 700;
  font-style: normal;
}

.p-design1--title .en {
  font-family: 'Century Gothic', sans-serif;
  text-transform: initial;
  color: #71A8CB;
  letter-spacing: 2px;
  font-size: 45px;
}

.p-design1--title .jp {
  color: #221815;
  font-weight: bold;
  display: block;
  font-size: 36px;
  line-height: 45px;
  letter-spacing: 2px;
  margin: 25px 0 16px 0;
}

.p-design1--title .note {
  font-weight: bold;
  color: #221815;
  letter-spacing: 0.5px;
  font-size: 20px;
}

.p-design1--item .p-design1--flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 1190px;
  margin: -23px 0 0;
}

.p-design1--item .p-design1--flex .p-design1--content {
  width: 520px;
  padding: 73px 0 0;
}

.p-design1--item .p-design1--flex .p-design1--content .txt {
  text-align: justify;
  color: #000;
  font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
  font-size: 16px;
  line-height: 36px;
  letter-spacing: 0.5px;
}

.p-design1--item .p-design1--flex .p-design1--img {
  width: 600px;
}

.p-design1--item .p-design1--flex .p-design1--img img {
  width: 100%;
}

.p-design1--imgItem1 {
  position: relative;
  margin-top: 40px;
  text-align: center;
}

.p-design1--item2 {
  width: 1100px;
  margin: 95px auto 0;
  position: relative;
}

.p-design1--img2 {
  position: absolute;
  top: 83px;
  left: 0;
}

.p-design1--item2 .p-design1--title {
  text-align: right;
}

.p-design1--flexright {
  height: 600px;
  padding: 10px 0 0 675px;
}

.p-design1--flexright .txt {
  font-size: 16px;
  line-height: 36px;
  margin: 24px 0 0;
  text-align: left;
}

.p-design1--check {
  width: 1000px;
  margin: 106px auto 0;
  padding: 47px 60px 23px;
  border: 2px solid #71A8CB;
  position: relative;
  text-align: left;
}

.p-design1--check.centers {
  text-align: center;
}

.p-design1--check.centers .tit {
  text-align: center;
}

.p-design1--check.centers .txt {
  width: 100%;
}

.p-design1--check.centers .img {
  position: relative;
  top: auto;
  left: auto;
}

.p-design1--check.centers .img img {
  width: 100%;
}

.p-design1--check .check {
  display: block;
  position: absolute;
  top: -37px;
  left: 28px;
}

.p-design1--check .note {
  font-size: 17px;
  margin: 0 0 0 -10px;
  letter-spacing: 0.5px;
  font-weight: bold;
}

.p-design1--check .tit {
  font-size: 32px;
  margin: 17px 0 12px;
  letter-spacing: 1.5px;
  color: #71A8CB;
  font-weight: bold;
  text-align: left;
}

.p-design1--check .txt {
  font-size: 16px;
  line-height: 36px;
  width: 600px;
  text-align: left;
  margin: 0;
}

.p-design1--check .img {
  position: absolute;
  top: 39px;
  right: 35px;
}

.p-design1--check .img img {
  width: 271px;
}

.p-design1--item3 {
  width: 1100px;
  margin: 112px auto 0;
  position: relative;
}

.p-design1--item3 .p-design1--title {
  text-align: left;
}

.p-design1--item3 .p-design1--flex {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 1150px;
  margin: -80px 0 0;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.p-design1--item3 .p-design1--flex .p-design1--content {
  width: 504px;
  padding: 137px 0 0;
}

.p-design1--item3 .p-design1--flex .p-design1--content .txt {
  line-height: 36px;
  font-size: 16px;
  text-align: justify;
}

.p-design1--item3 .p-design1--flex .p-design1--img {
  width: 579px;
}

.p-design1--item3 .p-design1--flex .p-design1--img img {
  width: 100%;
}

.p-design1--item3 .p-design1--flex2 {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 1075px;
  margin: 6px 0 0;
}

.p-design1--item3 .p-design1--flex2 .p-design1--img {
  width: 497px;
}

.p-design1--item3 .p-design1--flex2 .p-design1--img img {
  width: 100%;
}

.p-design1--item3 .p-design1--flex2 .p-design1--content {
  width: 501px;
  padding: 36px 0 0;
}

.p-design1--item3 .p-design1--flex2 .p-design1--content .txt {
  line-height: 36px;
  font-size: 16px;
  text-align: justify;
}

.p-design1--item3 {
  width: 1100px;
  margin: 112px auto 0;
}

.p-design1--item3 .p-design1--flex {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 1150px;
  margin: -80px 0 0;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.p-design1--item3 .p-design1--flex .p-design1--content {
  width: 504px;
  padding: 137px 0 0;
}

.p-design1--item3 .p-design1--flex .p-design1--content .txt {
  line-height: 36px;
  font-size: 16px;
  text-align: justify;
}

.p-design1--item3 .p-design1--flex .p-design1--img {
  width: 579px;
}

.p-design1--item3 .p-design1--flex .p-design1--img img {
  width: 100%;
}

@media only screen and (max-width: 1024px) {
.l-container, .c-mainvisual--box {
    padding: 0 25px;
}
.c-mainvisual--tit2 {
  font-size: 20px;
  margin: 40px auto 20px auto;
}
.p-design1--item {
  margin: 0;
  padding: 40px 0 47px;
}
.p-design1--item::before {
  width: 100vw;
}
.p-design1--item, .p-design1--item .p-design1--flex, .p-design1--item .p-design1--flex .p-design1--content,
.p-design1--item2, .p-design1--check, .p-design1--check .txt, .p-design1--item3,.p-design1--item3 .p-design1--flex,
.p-design1--item3 .p-design1--flex .p-design1--content, .p-design1--item3 .p-design1--flex .p-design1--img,
.p-design1--item3 .p-design1--flex2 .p-design1--img,.p-design1--item3 .p-design1--flex2 .p-design1--content,
.p-design1--item3 .p-design1--flex2 {
  width: 100%;
}
.p-design1--item::before {
  content: '';
  background: #f1f1f1;
  position: absolute;
  top: 145px;
  bottom: 46px;
  right: -20px;
  left: 75px;
}
.p-design1--title {
  position: relative;
}
.p-design1--title .en {
  font-size: 13px;
  letter-spacing: 0.5px;
}
.p-design1--title .jp {
  font-size: 27px;
  letter-spacing: 1.5px;
  line-height: 37px;
  margin: 4px 0 3px;
}
.p-design1--title .note {
  font-size: 14px;
  line-height: 22px;
}
.p-design1--item .p-design1--flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  -webkit-flex-wrap: wrap-reverse;
  -ms-flex-wrap: wrap-reverse;
  flex-wrap: wrap-reverse;
  margin: 18px 0 0;
}
.p-design1--item .p-design1--flex .p-design1--content {
  padding: 15px 0 0;
}
.p-design1--item .p-design1--flex .p-design1--content .txt {
  font-size: 14px;
  line-height: 25px;
  letter-spacing: 1.5px;
  text-align: justify;
}
.p-design1--item .p-design1--flex .p-design1--img {
  width: 100%;
}
.p-design1--imgItem1 {
  margin-top: 33px;
}
.p-design1--item2 {
  margin: 60px -6px 0;
}
.p-design1--flexright {
  padding: 10px 0 0 0;
  height: auto;
}
.p-design1--img2 {
  position: relative;
  margin: 19px 0 0 0;
  top: auto;
}
.p-design1--check {
  margin: 40px 0 0;
  padding: 35px 20px 10px;
  border: 2px solid #71A8CB;
  position: relative;
}
.p-design1--check .check {
  position: absolute;
  top: -31px;
  left: 3px;
  width: 115px;
}
.p-design1--check .note {
  font-size: 15px;
  line-height: 25px;
  display: block;
  margin: 0 0 0 5px;
}
.p-design1--check .tit {
  font-size: 26px;
  letter-spacing: 1.5px;
  margin: 5px 0 12px;
}
.p-design1--check .txt {
  font-size: 14px;
  line-height: 25px;
}
.p-design1--check .img {
  position: relative;
  margin: 0;
  text-align: right;
  top: auto;
  right: auto;
}
.p-design1--check .img img {
  width: 208px;
}
.p-design1--item3 {
  margin: 40px auto 0;
}
.p-design1--item3 .p-design1--flex .p-design1--content {
  padding: 100px 0 20px;
}
}

/*-------------------------------------------------

		☆ page cost 価格以上の品質

-------------------------------------------------*/
.p-quality1--flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 70px auto;
}

.p-quality1--title1 {
  font-size: 17px;
  line-height: 20px;
  color: #71A8CB;
}

.p-quality1--title2 {
  width: 550px;
  font-size: 30px;
  line-height: 46px;
  padding: 26px 15px 22px 27px;
  letter-spacing: 0.05em;
  margin-top: 8px;
  font-weight: bold;
  position: relative;
  color: #71A8CB;
}

.p-quality1--title3 {
  font-size: 19px;
  line-height: 33px;
  margin-top: 22px;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
}

.p-quality1 .txt {
  max-width: 522px;
  margin-top: 8px;
  line-height: 36px;
  font-size: 16px;
}

.p-quality1--img {
  padding: 10px 34px 0 50px;
}

.p-quality--inner {
  margin-bottom: 105px;
}

.p-quality--inner .l-container {
  padding: 0 50px;
  width: 1200px;
  margin: 0 auto;
}

.p-quality--tt {
  font-size: 28px;
  line-height: 36px;
  padding: 31px 0 25px;
  letter-spacing: 0.05em;
  color: #fff;
  position: relative;
  z-index: 99;
  font-weight: bold;
  background: #71A8CB;
  position: relative;
  text-align: center;
}

.p-quality--content {
  padding: 41px 50px 55px;
  background: #f1f1f1;
}

.p-quality--content .text {
  font-size: 15px;
  margin-bottom: 28px;
  text-align: center;
}

.p-quality2--white {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 30px 100px 38px;
  background: #fff;
}

.p-quality2--box {
  width: 355px;
  text-align: center;
}

.p-quality2--tt {
  width: 344px;
  font-size: 20px;
  border-radius: 19px;
  padding: 8px 0 5px;
  line-height: 26px;
  margin-bottom: 18px;
  background: #f1f1f1;
  text-align: center;
  font-weight: bold;
  color: #71A8CB;
  letter-spacing: 0.05em;
}

.p-quality2--box .txt-bold {
  font-size: 18px;
  line-height: 27px;
  letter-spacing: 0.05em;
  margin: 28px 0 11px;
  font-weight: bold;
  text-align: left;
}

.p-quality2--box .txt {
  font-size: 16px;
  line-height: 30px;
  color: #555;
  letter-spacing: 0.05em;
  text-align: left;
}

.p-quality3 .p-quality--content {
  padding: 25px 0 51px;
}

.p-quality--white {
  background: #fff;
}

.p-quality3 .p-quality--white {
  padding: 42px 103px 71px;
  margin: 0 50px;
}

.p-quality3--tt {
  letter-spacing: 0.05em;
  font-size: 23px;
  font-weight: bold;
  color: #71A8CB;
  text-align: center;
  position: relative;
}

.p-quality3--tt:before {
  content: "";
  width: 100%;
  height: 2px;
  background: #71A8CB;
  position: absolute;
  top: 50%;
  margin-top: -1px;
  left: 0;
}

.p-quality3--tt span {
  padding: 0 23px;
  background: #fff;
  z-index: 99;
  position: relative;
}

.p-quality3 .text {
  font-size: 16px;
  margin: 21px 0 43px;
  text-align: center;
}

.p-quality3--img {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 36px;
}

.p-quality3--img img:first-child {
  margin-right: 17px;
}

.p-quality3 .txt {
  font-size: 16px;
  line-height: 30px;
}

.p-quality4 .p-quality--content {
  padding: 48px 50px 55px;
}

.p-quality4 .p-quality--white {
  padding: 59px 73px 70px 66px;
}

.p-quality4--flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-bottom: 43px;
  margin-bottom: 35px;
}

.p-quality4--ct {
  text-align: left;
}

.p-quality4--tt {
  color: #71A8CB;
  font-weight: bold;
  letter-spacing: 0.05em;
  font-size: 28px;
  padding-top: 27px;
  margin-bottom: 20px;
}

.p-quality4--tt span {
  font-size: 20px;
  margin-bottom: 7px;
  display: block;
  color: #221815;
  letter-spacing: 0.05em;
}

.p-quality4 .txt {
  font-size: 16px;
  line-height: 30px;
  max-width: 433px;
}

.p-quality4--grey {
  margin: 66px 0 0 -6px;
  padding: 0 49px 34px 61px;
}

.p-quality4--grey {
  background: #f1f1f1;
  background: #71A8CB;
}

.p-quality4--grey .title {
  background: #fff;
  margin: auto;
  text-align: center;
  font-weight: bold;
  position: relative;
  font-size: 18px;
  border: 2px solid #71A8CB;
  letter-spacing: 0.05em;
  padding: 15px 0 16px;
  max-width: 450px;
  top: -27px;
}

.p-quality4--grey .title:before {
  content: "";
  width: 0;
  height: 0;
  border-left: 26px solid transparent;
  border-right: 26px solid transparent;
  border-top: 17px solid #fff;
  position: absolute;
  left: 50%;
  margin-left: -26px;
  bottom: -20px;
}

.p-quality4--greyFlex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 7px;
}

.p-quality4--greyFlex .p-quality4--ct {
  width: 365px;
  padding-top: 23px;
}

.p-quality4--greyTt {
  border-bottom: 2px solid #fff;
  font-size: 23px;
  padding-bottom: 12px;
  line-height: 30px;
  margin-bottom: 13px;
  font-weight: bold;
  color: #fff;
}

.p-quality4--grey .txt {
  font-size: 16px;
  color: #fff;
  line-height: 30px;
  max-width: 433px;
}

.cost_box {
  margin-bottom: 80px;
}

h3.cost-midashi {
  padding: 20px 5px;
  margin-bottom: 35px;
  font-size: 26px;
  letter-spacing: .05em;
  text-align: center;
  border-top: 1px dashed #5aa4d6;
  border-bottom: 1px dashed #5aa4d6;
  line-height: 1.75;
}

h3.cost-midashi span {
  color: #71A8CB;
}

.cost_box h4 {
  position: relative;
  padding: 15px 5px;
  padding-left: 20px;
  margin-bottom: 35px;
  background: #71A8CB;
  font-size: 22px;
  color: #fff;
  line-height: 1.75;
}

.cost_box_in {
  flex-flow: wrap;
  justify-content: space-between;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  margin-bottom: 20px;
}

.cost_box_in figure {
  width: 49%;
}

.cost_box_in figure img {
  width: 100%;
}

.p-quality5--flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.p-quality5--flex figure {
  width: 50%;
}

.p-quality5--ct {
  padding-left: 15px;
  width: 60%;
}

.p-quality5--point {
  margin-top: -15px;
  margin-left: -2px;
  position: relative;
}

.p-quality5--point:before {
  content: "";
  width: 100%;
  height: 2px;
  background: #FDD000;
  position: absolute;
  left: 0;
  top: 39px;
}

.p-quality5--point img {
  padding-right: 16px;
  background: #fff;
  position: relative;
}

.p-quality5--title {
  font-size: 23px;
  line-height: 36px;
  padding-left: 20px;
  margin-right: -30px;
  letter-spacing: 0.05em;
}

.p-quality5--ct .txt {
  font-size: 16px;
  line-height: 32px;
  padding-left: 19px;
  margin-top: 18px;
}

@media only screen and (max-width: 768px) {
.p-quality1--flex {
  display: block;
}
.p-quality1--title1 {
  font-size: 13px;
  text-align: center;
}
.p-quality1--title2 {
  font-size: 20px;
  line-height: 30.5px;
  margin-top: 5px;
  padding: 12px 10px 19px 0;
}
.p-quality1--flex {
  margin: 40px auto;
}
.cost_box {
  margin-bottom: 40px;
}
h3.cost-midashi {
  font-size: 17px;
}
.cost_box h4 {
  font-size: 15px;
}
.p-quality--inner .l-container {
  width: 100%;
  padding: 0 4%;
}
.p-quality--tt {
  font-size: 20px;
  line-height: 25px;
  padding: 31px 0 25px;
}
.p-quality--content {
  padding: 17px 14px 16px;
}
.p-quality--content .text {
  margin: 0 11px 16px;
  font-size: 14px;
  line-height: 25px;
}
.p-quality--white {
  padding: 13px 22px 46px;
}
.p-quality2--box {
  text-align: center;
  margin-bottom: 40px;
  width: 100%;
}
.p-quality2--tt {
  background: #f1f1f1;
  text-align: center;
  font-weight: bold;
  color: #71A8CB;
  letter-spacing: 0.05em;
  border-radius: 10px;
  font-size: 15px;
  padding: 8px 0;
  max-width: 100%;
  margin: 0 auto 13px;
}
.p-quality2--box .txt-bold {
  font-size: 16px;
  line-height: 24px;
  margin: 20px 0 9px;
}
.p-quality2--box .txt {
  font-size: 14px;
  line-height: 25px;
  letter-spacing: 0.05em;
  text-align: left;
}
.p-quality2--white {
  display: block;
}
.p-quality--inner {
  margin-bottom: 40px;
}
.p-quality--tt {
  font-size: 18px;
  line-height: 25px;
  padding: 31px 0 25px;
}
.p-quality3 .p-quality--white {
  padding: 10px 16px 24px;
  margin: 0 3%;
}
.p-quality3--tt {
  font-size: 17.5px;
  line-height: 25px;
  margin: 0 -15px;
}
.p-quality3--tt span {
  background: #fff;
  padding: 10px;
  display: block;
}
.p-quality3 .text {
  font-size: 14px;
  line-height: 25px;
  margin: 8px 0 14px;
  letter-spacing: 0;
}
.p-quality3--img {
  margin-bottom: 22px;
  display: block;
}
.p-quality3--img img {
  width: 100%;
}
.p-quality3--img img:first-child {
  margin-bottom: 7px;
}
.p-quality3 .txt {
  font-size: 14px;
  line-height: 25px;
}
.p-quality3--tt:before {
  content: none;
}
.p-quality--content {
  background: #f1f1f1;
}
.p-quality--white {
  background: #fff;
}
.p-quality--content {
  padding: 15px 14px 16px;
}
.p-quality4 .p-quality--white {
  padding: 10px 16px 24px;
}
.p-quality4 .p-quality--content {
  padding: 15px 14px 16px;
}
.p-quality4--flex {
  padding-bottom: 26px;
  margin-bottom: 10px;
  display: block;
}
.p-quality4--tt {
  font-size: 20px;
  padding-top: 15px;
  margin-bottom: 17px;
  text-align: center;
}
.p-quality4--tt span {
  font-size: 15px;
  margin-bottom: 7px;
}
.p-quality4 .txt {
  font-size: 14px;
  line-height: 25px;
  letter-spacing: 0.5px;
}
.p-quality4 .img {
  margin: 18px 0 0;
}
.p-quality4 .img img {
  width: 100%;
}
.cost_box_in {
  display: block;
}
.cost_box_in figure {
  width: 100%;
}
.cost_box_in figure:first-child {
  margin-bottom: 20px;
}
.cost_box h4 {
  margin-bottom: 15px;
}
.p-quality4--grey {
  margin: 49px 5px 0;
  padding: 0 19px 23px;
}
.p-quality4--grey .title {
  font-size: 15px;
  line-height: 25px;
  border: 1px solid #71A8CB;
  padding: 8px 0;
  top: -27px;
  margin: 0 -3px;
}
.p-quality4--grey .title:before {
  content: "";
  width: 0;
  height: 0;
  border-left: 26px solid transparent;
  border-right: 26px solid transparent;
  border-top: 17px solid #fff;
  position: absolute;
  left: 50%;
  margin-left: -26px;
  bottom: -12px;
}
.p-quality4--greyFlex {
  margin-top: -5px;
  display: block;
}
.p-quality4--greyTt {
  border-bottom: 5px solid #fff;
  text-align: center;
  font-size: 18px;
  padding-bottom: 4px;
  line-height: 25px;
  margin-bottom: 7px;
  letter-spacing: 0;
}
.p-quality4--greyTt span {
  font-size: 16px;
}
.p-quality4--grey .txt {
  font-size: 14px;
  line-height: 25px;
  color: #fff;
}
.p-quality4 .img {
  margin: 18px 0 0;
}
.p-quality4 .img img {
  width: 100%;
}
.p-quality4--greyFlex .p-quality4--ct {
  width: 100%;
}
.p-quality5 {
  margin-bottom: 40px;
}
.p-quality5--point {
  margin-top: -20px;
  margin-left: -7px;
  position: relative;
}
.p-quality5--point:before {
  content: "";
  width: 100%;
  height: 2px;
  background: #FDD000;
  position: absolute;
  left: 0;
  top: 23px;
}
.p-quality5--point img {
  width: 140px;
  padding-right: 16px;
}
.p-quality5--title {
  font-size: 20px;
  line-height: 33.5px;
  margin: 7px 0 0;
  letter-spacing: 2px;
}
.p-quality5--ct .txt {
  font-size: 14px;
  line-height: 25px;
  margin-top: 10px;
}
.p-quality5--flex {
  -webkit-flex-wrap: wrap-reverse;
  -ms-flex-wrap: wrap-reverse;
  flex-wrap: wrap-reverse;
}
.p-quality5--flex figure, .p-quality5--ct, .p-quality5--title, .p-quality5--ct .txt {
  width: 100%;
  padding-left: 0;
}
.p-quality5--ct .txt {
  margin-bottom: 20px;
}
}

/*-------------------------------------------------

		☆ page plan 商品ラインナップ

-------------------------------------------------*/
#plan.page {
  margin-bottom: 80px;
  padding-top: 0;
}

@media only screen and (max-width: 1024px) {
#plan.page {
  margin-bottom: 20px;
}
}

/*-------------------------------------------------

		☆ single plan オーダーメイドプラン

-------------------------------------------------*/
#planmain {
  margin-bottom: 0;
}

#planmain .inner-box {
  position: relative;
  max-width: 1100px;
  margin: 0 auto;
}

#planmain .ttl-2 {
  position: relative;
  width: 610px;
  margin: 0 auto;
  padding: 40px 0px 32px;
  text-align: center;
  color: #1a0b08;
  font-size: 26px;
  font-weight: 700;
  line-height: 46px;
  letter-spacing: 6.24px;
  background: url(../images/lineup_exy/line01.png) no-repeat bottom center,#ffffff;
  top: -60px;
}

.slider-3mai-Box {
  position: relative;
  text-align: center;
  width: 100%;
}

#planmain .txt {
  position: absolute;
  left: 8%;
  width: 230px;
  bottom: 71px;
}

#planmain .txt.hiraya {
  position: absolute;
  left: 43%;
  right: auto;
  width: 170px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

#planmain .house {
  position: absolute;
  bottom: 70px;
  right: 0;
}

#planmain .house.hiraya {
  right: 100px;
}

#recommend {
  margin-bottom: 158px;
}

#recommend .inner-box {
  background-color: #f6f2ee;
}

#recommend .list {
  max-width: 1100px;
  margin: 0 auto 79px;
  padding-top: 46px;
}

#recommend .list-item {
  float: left;
  max-width: 350px;
  margin-right: 25px;
}

#recommend .img-1 {
  margin-bottom: 13px;
}

#recommend .txt-1 {
  margin-bottom: 38px;
  text-align: center;
  color: #000000;
  font-weight: bold;
  letter-spacing: 1.12px;
}

#recommend .list-item:nth-child(3) {
  margin-right: 0;
}

#recommend .txt-box {
  max-width: 712px;
  margin: 0 auto;
  padding-bottom: 45px;
  border: solid 2px #dcdcdc;
}

#recommend .ttl-1 {
  position: relative;
  top: -35px;
  max-width: 414px;
  margin: 0 auto;
  padding: 9px 0 7px;
  text-align: center;
  font-weight: bold;
  color: #2a2726;
  font-size: 25px;
  letter-spacing: 1.25px;
  background: #fff;
  line-height: 1.2;
}

#recommend .txt-2 {
  margin-left: 146px;
  padding-left: 38px;
  color: #2a2726;
  color: #2a2726;
  font-weight: 700;
  line-height: 45px;
  letter-spacing: 0.8px;
  background: url(../img/plan/check.png) no-repeat center left;
  text-align: left;
}

#merit {
  margin-bottom: 63px;
}

#merit .inner-box {
  max-width: 1100px;
  margin: 0 auto;
  border: 2px solid #dddddd;
}

#merit .ttl-1, #merit .ttl-2, #merit .ttl-3 {
  text-align: center;
  color: #1a0b08;
}

#merit .ttl-1 {
  position: relative;
  top: -76px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 1.28px;
  background: #fff;
}

#merit .ttl-2 {
  position: relative;
  top: -56px;
  max-width: 404px;
  margin: 0 auto 10px;
  font-size: 36px;
  font-weight: 500;
  background: #fff;
  line-height: 1.2;
}

#merit .first-list {
  max-width: 990px;
  margin: 0 auto;
}

#merit .first-item {
  float: left;
  max-width: 300px;
  margin-right: 45px;
}

#merit .img-1 {
  margin-bottom: 23px;
}

#merit .ttl-3 {
  margin-bottom: 20px;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 1.44px;
}

#merit .txt-1 {
  margin-bottom: 55px;
  color: #595757;
  font-size: 15px;
  letter-spacing: 0.65px;
  text-align: left;
  font-weight: 500;
}

#merit .first-item:nth-child(3) {
  margin-right: 0;
}

#merit .second-list {
  max-width: 990px;
  margin: 0 auto;
}

#merit .second-item {
  float: left;
  max-width: 470px;
  margin-right: 47px;
}

#merit .img-1 {
  margin-bottom: 23px;
}

#merit .second-item:nth-child(2) {
  margin-right: 0;
}

#lineup {
  width: 1100px;
  margin: 0 auto 90px;
}

#lineup .ttl-1 {
  margin-bottom: 37px;
  padding: 16px 0px 14px;
  text-align: center;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 10.8px;
  background: #71a8cb;
}

#lineup .inner-box {
  margin-bottom: 120px;
}

#lineup .txt-2 {
  width: 610px;
  padding-left: 28px;
  display: block;
  margin: 0 auto;
  color: #595757;
  font-size: 14px;
  font-weight: 500;
  line-height: 32px;
  letter-spacing: 0.7px;
}

#lineup .ttl-2 {
  margin-bottom: 30px;
  padding-bottom: 40px;
  text-align: center;
  font-size: 22px;
  letter-spacing: .15em;
  color: #000;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

#lineup .list {
  width: 1106px;
  margin: 0 auto;
}

#lineup .list-item {
  float: left;
  width: 335px;
  margin-right: 50px;
  margin-bottom: 40px;
}

#lineup .img-1 {
  margin-bottom: 10px;
}

#lineup .list-txt {
  text-align: center;
  color: #252423;
  font-size: 15px;
  letter-spacing: 0.6px;
  font-weight: 500;
}

#lineup .list-item:nth-child(3), #lineup .list-item:nth-child(6) {
  margin-right: 0;
}

#gallery {
  margin-bottom: 50px;
}

#gallery .ttl-1 {
  margin-bottom: 32px;
  padding-bottom: 14px;
  text-align: center;
  padding-top: 40px;
  font-size: 32px;
  position: relative;
  font-family: 'Century Gothic', sans-serif;
  font-style: normal;
  letter-spacing: 0.05em;
  color: #1a0b08;
}

#gallery .ttl-1::after {
  content: "";
  border-top: 3px solid #71a8cb;
  width: 40px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}

#gallery .gallery-list {
  width: 1100px;
  margin: 0 auto 40px auto;
}

#gallery li {
  float: left;
  width: 260px;
  margin: 0 20px 23px 0;
}

.fit img {
  object-fit: cover;
  font-family: "object-fit: cover;";
}

#gallery li:nth-child(4n) {
  margin-right: 0;
}

#gallery .btn-works {
  width: 840px;
  margin: 40px auto;
}

.btn_more.plan {
  width: 470px;
}

@media only screen and (max-width: 768px) {
#planmain .inner-box {
  position: relative;
}
#planmain .ttl-2 {
  position: relative;
  top: -5vh;
  width: 90%;
  margin: 0 auto;
  margin-bottom: 5%;
  padding: 4% 0;
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.6em;
  letter-spacing: 0.12em;
  color: #1a0b08;
  font-weight: 700;
}
#planmain .ttl-2.hiraya {
  font-size: 21px;
}
#planmain .txt {
  position: absolute;
  display: block;
  width: 30%;
  left: 4%;
  bottom: 22px;
}
#planmain .txt.hiraya {
  position: absolute;
  display: block;
  width: 130px;
  top: 37%;
}
#planmain .house {
  position: absolute;
  display: block;
  width: 100px;
  top: 7vh;
  right: 1vh;
}
#planmain .house.hiraya {
  width: 100px;
  top: 7vh;
  right: 2vh;
}
.clearfix:after {
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
  line-height: 0;
  content: ".";
}
#recommend {
  margin-bottom: 20%;
}
#recommend .inner-box {
  margin-bottom: 15%;
  padding: 8% 0%;
  background-color: #f6f2ee;
}
#recommend .list {
  max-width: 95%;
  margin: 0 auto;
  padding-top: 0;
}
#recommend .list-item {
  float: left;
  width: 49%;
  margin-right: 2%;
}
#recommend .img-1 {
  margin-bottom: 3%;
}
#recommend .txt-1 {
  margin-bottom: 3%;
  padding: 0 2%;
  text-align: center;
  font-size: 0.9rem;
  line-height: 1.8em;
  letter-spacing: 0.12em;
  color: #000000;
  font-weight: bold;
}
#recommend .list-item {
  float: left;
  width: 49%;
  margin-right: 2%;
}
#recommend .list-item:nth-child(2) {
  margin-right: 0;
}
#recommend .list-item:nth-child(3) {
  position: relative;
  left: 26%;
  margin-top: 20px;
}
#recommend .list-item:nth-child(2) .txt-1 {
  letter-spacing: 0.1em;
}
#recommend .txt-box {
  width: 90%;
  margin: 0 auto;
  border: solid 2px #dcdcdc;
}
#recommend .ttl-1 {
  position: relative;
  top: -4vh;
  width: 75%;
  margin: 0 auto;
  padding: 0 2%;
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.6em;
  letter-spacing: 0.12em;
  font-weight: bold;
  color: #2a2726;
  background: #fff;
}
#recommend .txt-2 {
  margin: 0 0 3% 3%;
  padding: 0 0 0 25px;
  text-align: left;
  color: #2a2726;
  font-weight: bold;
  font-size: 0.9rem;
  line-height: 1.8em;
  letter-spacing: 0.12em;
  background: url(../img/plan/check.png) no-repeat top left;
  background-size: 15px;
}
#what .txt-box {
  width: 90%;
  margin: 0 auto;
  border: solid 2px #dcdcdc;
}
#what .ttl-1 {
  position: relative;
  top: -4vh;
  width: 75%;
  margin: 0 auto;
  padding: 0 2%;
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.6em;
  letter-spacing: 0.12em;
  font-weight: bold;
  color: #2a2726;
  background: #fff;
}
#what .txt-2 {
  margin: 0 0 3% 3%;
  padding: 0 0 0 25px;
  text-align: left;
  color: #2a2726;
  font-weight: bold;
  font-size: 0.9rem;
  line-height: 1.8em;
  letter-spacing: 0.12em;
  background: url(../img/plan/check.png) no-repeat top left;
  background-size: 15px;
}
#merit {
  margin-bottom: 40px;
}
#merit .inner-box {
  max-width: 95%;
  margin: 0 auto;
  border: 2px solid #dddddd;
}
#merit .ttl-1 {
  position: relative;
  top: -5vh;
  padding: 0 2%;
  text-align: center;
  font-size: 0.9rem;
  letter-spacing: 0.12em;
  font-weight: 500;
  background: #fff;
}
#merit .ttl-2 {
  position: relative;
  top: -5vh;
  width: 80%;
  margin: 0 auto;
  padding: 02% 0;
  text-align: center;
  font-size: 1.3rem;
  letter-spacing: 0.12em;
  font-weight: 500;
  background: #fff;
}
#merit .first-list {
  margin-bottom: 8%;
}
#merit .first-item {
  width: 90%;
  margin: 0 auto;
  float: none;
}
#merit .first-item:nth-child(3) {
  margin-right: auto;
}
#merit .img-1 {
  margin-bottom: 3%;
  text-align: center;
}
#merit .ttl-3 {
  margin-bottom: 5%;
  padding: 0 2%;
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.6em;
  letter-spacing: 0.12em;
  font-weight: 700;
}
#merit .txt-1 {
  margin-bottom: 10%;
  padding: 0 2%;
  text-align: left;
  font-size: 0.9rem;
  line-height: 1.8em;
  letter-spacing: 0.12em;
  color: #595757;
}
#merit .second-list {
  max-width: 95%;
  margin: 0 auto;
}
#merit .second-item {
  margin-bottom: 5%;
  float: none;
  margin-right: 0;
}
#lineup {
  margin-bottom: 20px;
  width: 100%;
}
#lineup .inner-box {
  margin-bottom: 0;
}
#lineup .ttl-1 {
  margin-bottom: 8%;
  padding: 2% 4%;
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.6em;
  letter-spacing: 0.12em;
  color: #1a0b08;
  font-weight: 700;
  background: #f0f0f0;
}
#lineup .txt-2 {
  width: 90%;
  margin: 0 auto;
  border-left: solid 1px #1a0b08;
  margin-bottom: 8%;
  padding: 0 2%;
  text-align: left;
  font-size: 0.9rem;
  line-height: 1.8em;
  letter-spacing: 0.12em;
  color: #595757;
}
#lineup .ttl-2 {
  margin-bottom: 8%;
  text-align: center;
  padding-bottom: 5%;
}
#lineup .list {
  max-width: 100%;
  margin: 0 auto;
}
#lineup .list-item {
  float: left;
  width: 49%;
  margin-right: 2%;
}
#lineup .img-1 {
  margin-bottom: 3%;
}
#lineup .list-txt {
  margin-bottom: 3%;
  padding: 0 2%;
  text-align: center;
  font-size: 0.9rem;
  line-height: 1.8em;
  letter-spacing: 0.12em;
  color: #252423;
}
#lineup .list-item:nth-child(2) {
  margin-right: 0;
}
#gallery {
  margin-bottom: 20%;
}
#gallery .ttl-1 {
  margin-bottom: 6%;
  padding-bottom: 5%;
  text-align: center;
  background: url(../images/lineup_exy/line03.png) no-repeat bottom center;
}
#gallery .gallery-list {
  max-width: 100%;
  margin: 0 auto;
}
#gallery li {
  float: left;
  width: 49%;
  margin: 0 2% 3% 0;
}
#gallery li:nth-child(2n) {
  margin-right: 0;
}
#gallery .btn-works {
  width: 90%;
  margin: 8% auto 8%;
}
.btn_more.plan {
  width: 75%;
  margin-top: 20px;
}
}

#what {
  position: relative;
  width: 1100px;
  margin: 0 auto 100px;
}

#what .big-img {
  position: relative;
  left: 0;
  margin-bottom: 120px;
}

#what .txt-box {
  position: absolute;
  top: 110px;
  right: 50px;
  width: 510px;
}

#what .txt-1 {
  color: #1a0b08;
  font-size: 20px;
  font-weight: 700;
  line-height: 42px;
  letter-spacing: 2px;
}

#what .border-box {
  width: 712px;
  margin: 0 auto;
  padding-bottom: 35px;
  border: 2px solid #dcdcdc;
}

#what .border-box-ttl {
  position: relative;
  top: -22px;
  width: 500px;
  margin: 0 auto 15px;
  padding: 7px 0px 9px;
  color: #2a2726;
  font-size: 25px;
  letter-spacing: 1.25px;
  font-weight: bold;
  text-align: center;
  background-color: #ffffff;
}

#what .border-box-txt {
  margin-left: 110px;
  padding: 15px 0 14px 40px;
  color: #2a2726;
  font-size: 16px;
  font-weight: bold;
  line-height: 20px;
  letter-spacing: 0.8px;
  background: url(../img/plan/check.png) no-repeat center left;
  text-align: left;
}

#style {
  margin-bottom: 90px;
}

#style .ttl-1 {
  margin-bottom: 45px;
  padding-bottom: 50px;
  text-align: center;
  color: #252525;
  font-size: 28px;
  font-weight: 500;
  letter-spacing: 2.24px;
  background: url(../images/lineup_naturie/line01.png) no-repeat bottom center;
}

#style .list-item:nth-child(1) {
  margin-bottom: 140px;
}

#style .list-item {
  margin: 40px auto;
}

#style .inner-box {
  position: relative;
  width: 1100px;
  margin: 0 auto;
}

#style .odd {
  position: relative;
  left: 0;
  top: 70px;
}

#style .right {
  position: absolute;
  top: 0;
  right: 70px;
  width: 520px;
  text-align: left;
}

#style .style-ttl-2 {
  margin-bottom: 20px;
  color: #1a0b08;
  font-size: 34px;
  font-weight: 500;
  line-height: 52px;
  letter-spacing: 3.4px;
}

#style .num01 {
  background: url(../images/lineup_naturie/01.png) no-repeat bottom 13px right 20px;
}

#style .style-txt-1 {
  color: #1a0b08;
  font-size: 14px;
  line-height: 34px;
  margin-top: 20px;
}

#lineup.hiraya .inner-box {
  position: relative;
  width: 760px;
  min-height: 266px;
  margin: 0 auto;
  border: 6px solid #88b1cc;
  background-color: #ffffff;
}

#lineup.hiraya .ttl-3 {
  width: 360px;
  margin: 0 65px 30px auto;
  padding-top: 55px;
  color: #1a0b08;
  font-size: 24px;
  text-align: left;
  line-height: 1.75;
}

#lineup.hiraya .after-img {
  position: absolute;
  top: 32px;
  left: 30px;
  width: 35%;
}

#lineup.hiraya .after-txt {
  width: 395px;
  margin: 0 30px 40px auto;
  color: #595757;
  font-size: 14px;
  line-height: 28px;
  letter-spacing: 0.39px;
  font-weight: 500;
  text-align: left;
}

#lineup.hiraya .after-txt a.btn_more {
  margin-top: 20px;
}


@media screen and (max-width: 768px) {
#lineup.hiraya .inner-box {
  width: 90%;
  margin: 0 auto;
  padding: 5% 0;
  border: 3px solid #d8dee4;
  background-color: #ffffff;
}
#lineup.hiraya .ttl-3 {
  width: 100%;
  margin-bottom: 5%;
  padding: 0 2%;
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.6em;
  letter-spacing: 0.12em;
  color: #1a0b08;
}
#lineup.hiraya .after-img {
  margin: 6% auto;
  text-align: center;
  position: relative;
  top: auto;
  left: auto;
}
#lineup.hiraya .after-txt {
  width: 100%;
  margin: 0 auto 3%;
  padding: 0 5%;
  text-align: left;
  font-size: 0.9rem;
  line-height: 1.8em;
  letter-spacing: 0.12em;
  color: #595757;
}
section#lineup.hiraya {
  margin-bottom: 60px;
}
#what {
  width: 100%;
  margin-bottom: 20%;
}
#what .big-img {
  margin-bottom: 8%;
  text-align: center;
}
#what .txt-box {
  margin-bottom: 20%;
  position: relative;
  top: auto;
  right: auto;
  width: 100%;
  border: none;
}
#what .txt-1 {
  margin-bottom: 15%;
  padding: 0 4%;
  text-align: left;
  font-size: 5vw;
  line-height: 1.8em;
  letter-spacing: 0.12em;
  color: #1a0b08;
  font-weight: 700;
}
#what .border-box {
  width: 94%;
  margin: 0 auto;
  padding: 0 3% 5% 3%;
  border: 2px solid #dcdcdc;
}
#what .border-box-ttl {
  position: relative;
  top: -5vh;
  width: 90%;
  margin: 0 auto;
  padding: 1% 0;
  text-align: center;
  color: #2a2726;
  font-size: 5vw;
  font-weight: bold;
  line-height: 1.6em;
  letter-spacing: 0.12em;
  background-color: #ffffff;
}
#what .border-box-txt {
  padding: 0;
  max-width: 500px;
  margin: 0 auto 3%;
  padding-left: 30px;
  text-align: left;
  font-size: 16px;
  line-height: 1.8em;
  letter-spacing: 0.12em;
  color: #2a2726;
  font-weight: bold;
  background: url(../img/plan/check.png) no-repeat top left;
  background-size: 15px;
}
#style {
  margin-bottom: 10%;
}
#style .ttl-1 {
  margin-bottom: 5%;
  padding: 0 2% 5%;
  text-align: center;
  font-size: 5.7vw;
  line-height: 1.6em;
  letter-spacing: 0.12em;
  color: #252525;
  font-weight: 500;
}
#style .inner-box {
  width: 100%;
  margin-bottom: 8%;
}
#style .style-img {
  margin-bottom: 5%;
  text-align: center;
}
#style .style-ttl-2 {
  margin-bottom: 5%;
  padding: 0 4%;
  text-align: left;
  font-size: 7vw;
  line-height: 1.6em;
  letter-spacing: 0.12em;
  color: #1a0b08;
  font-weight: 500;
}
#style .style-txt-1 {
  margin-bottom: 3%;
  padding: 0 4%;
  text-align: left;
  font-size: 0.9rem;
  line-height: 1.8em;
  letter-spacing: 0.12em;
  color: #1a0b08;
}
#style .right {
  position: relative;
  top: 0;
  right: auto;
  width: 100%;
  text-align: left;
}
#style .list-item:nth-child(1) {
  margin-bottom: 60px;
}
}

/*-------------------------------------------------

		☆page かみくぼ住宅の住宅性能 spec

-------------------------------------------------*/
/* line 11495, scss/style.scss */
.spec-main-box {
  background: url(../img/spec/spec-main-back.jpg) center no-repeat;
  background-size: cover;
  display: table;
  width: 100%;
  margin: 0;
  height: 540px;
}

/* line 11504, scss/style.scss */
.spec.page {
  padding: 25px 0 0 0;
}

/* line 11508, scss/style.scss */
.spec.page .title {
  margin: 0 0 50px 0;
  height: 130px;
  background: url(../img/cmn/top-plan-title-bar.png) no-repeat center bottom/20px 1px;
  text-align: center;
}

/* line 11515, scss/style.scss */
.spec.page .en {
  font-family: 'Century Gothic', sans-serif;
  font-size: 2.5rem;
  font-weight: bold;
  letter-spacing: 0.125rem;
}

/* line 11522, scss/style.scss */
.spec.page h2 {
  margin: -20px 0 0 0;
  font-weight: bold;
  letter-spacing: 0.05rem;
  font-size: 17px;
}

@media screen and (max-width: 768px) and (max-width: 768px) {
.spec.page .title {
  margin: 0 0 25px 0;
  height: 90px;
}
.spec.page .en {
  font-size: 1.65rem;
}
.spec.page h2 {
  margin: -13px 0 0 0;
  font-size: 0.769rem;
}
}

/* line 11545, scss/style.scss */
.spec-main-box .inner-box {
  display: block;
  text-align: center;
  padding: 80px 15px;
}

/* line 11552, scss/style.scss */
.spec-main-box .title {
  font-size: 32px;
  letter-spacing: 5px;
  color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.5;
  margin-bottom: 33px;
  margin-top: -18px;
}

/* line 11564, scss/style.scss */
.spec-main-box img {
  display: block;
  margin: 0 auto;
}

/* line 11569, scss/style.scss */
section div.sectionBlock {
  width: 1000px;
  margin: 0 auto 80px auto;
}

/* line 11574, scss/style.scss */
section div.sectionBox {
  width: 100%;
}

/* line 11578, scss/style.scss */
.sectionBox .boxP {
  padding: 20px;
  background: #fdf5e0;
}

/* line 11583, scss/style.scss */
section.catch p {
  text-align: center;
  width: 100%;
  margin: 0 auto;
}

/* line 11598, scss/style.scss */
section.catch div.conditionsBox {
  margin: 50px auto;
}

/* line 11602, scss/style.scss */
section.catch div.conditionsBox h2 {
  display: inline-block;
  padding: 10px 0 0 0;
  margin: 0 0 11px;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.1em;
  vertical-align: top;
  margin-right: 20px;
}

/* line 11613, scss/style.scss */
section.catch div.conditionsBox ul {
  display: inline-block;
  border-left: 1px solid;
  padding-left: 20px;
}

/* line 11619, scss/style.scss */
section.catch div.conditionsBox ul li {
  margin-bottom: 10px;
  font-size: 16px;
}

/* line 11624, scss/style.scss */
.conditionsBox span {
  padding-right: 3px;
  color: #d60000;
}

/* line 11629, scss/style.scss */
section.catch div.poster {
  width: 100%;
  margin: 0;
}

/* line 11634, scss/style.scss */
.poster figure img {
  max-width: 100%;
  height: auto;
}

/* line 11639, scss/style.scss */
section.safety {
  width: 100%;
  padding: 60px 0px 40px 0px;
  background: #fff;
}

/* line 11645, scss/style.scss */
section.safety .safetyBackground {
  width: 1200px;
  height: auto;
  padding: 0px 0px 30px 0px;
  margin: 0px auto;
  background: rgba(255, 255, 255, 0.9);
}

/* line 11654, scss/style.scss */
section.safety .safetyBlock {
  width: 1120px;
  height: auto;
  margin: 0px auto;
  padding: 0px 0px 0px 0px;
}

/* line 11661, scss/style.scss */
.safetyBlock h2 {
  width: 100%;
  font-size: 166%;
  letter-spacing: 0.01em;
  padding: 0px 0px 26px 0px;
  text-align: center;
  font-weight: 600;
}

/* line 11670, scss/style.scss */
.safetyBlock .safetyFloat {
  padding: 20px 0px 0px 0px;
  overflow: hidden;
  width: 1000px;
  margin: 0 auto;
}

/* line 11677, scss/style.scss */
.safetyFloat .safetySet {
  width: 32%;
  height: auto;
  margin: 0px 2% 3% 0px;
  padding: 0px 0px 0px 0px;
  float: left;
  overflow: hidden;
}

/* line 11686, scss/style.scss */
.safetySet div i {
  padding-right: 10px;
}

/* line 11690, scss/style.scss */
.safetySet figure {
  line-height: 0;
  margin-bottom: 6px;
}

/* line 11695, scss/style.scss */
.safetySet figure img {
  max-width: 100%;
  height: auto;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

/* line 11704, scss/style.scss */
.safetySet h3 {
  width: 100%;
  padding: 6px 0px 4px 0px;
  font-size: 20px;
  text-align: left;
  font-weight: 600;
  color: #221815;
  position: relative;
}

/* line 11715, scss/style.scss */
.safetySet div {
  display: inline-block;
  width: 50%;
  padding: 6px 0px 4px 0px;
  text-align: right;
}

/* line 11723, scss/style.scss */
.safetySet div a {
  display: inline-block;
  background: url(../../common/images/icon_link_circle_blue.png) no-repeat left top 3px;
  background-size: 14px 14px;
  font-size: 12px;
  display: inline-block;
  padding: 10px 20px;
  background-color: #3C455A;
  color: #fff;
  font-weight: bold;
}

/* line 11735, scss/style.scss */
.safetySet p {
  clear: both;
  text-align: justify;
  padding: 6px 0px 10px 0px;
  font-size: 15px;
  line-height: 1.8;
}

/* line 11743, scss/style.scss */
section.select {
  width: 1000px;
  height: auto;
  padding: 60px 0px 40px 0px;
  margin: 0 auto;
  background: #fff;
}

/* line 11751, scss/style.scss */
section.select .selectBlock {
  width: 1000px;
  height: auto;
  margin: 0px auto;
  padding: 0px 0px 0px 0px;
}

/* line 11758, scss/style.scss */
.titleArea h2 {
  width: 100%;
  font-size: 22px;
  letter-spacing: 0.01em;
  padding: 0px 0px 35px 0px;
  text-align: center;
  font-weight: bold;
  color: #221815;
  line-height: 1.75;
}

/* line 11768, scss/style.scss */
.selectBlock .selectFloat {
  padding: 0px 0px 0px 0px;
  overflow: hidden;
  margin-bottom: 30px;
}

/* line 11774, scss/style.scss */
.selectFloat .selectSet {
  width: 48%;
  height: auto;
  margin: 0px 2% 0% 0px;
  padding: 0px 0px 0px 0px;
  float: left;
}

/* line 11782, scss/style.scss */
.selectSet h3 {
  padding: 5px 0px;
  font-size: 18px;
  text-align: center;
}

/* line 11788, scss/style.scss */
.selectSet h3 i {
  padding-right: 6px;
  color: #d60000;
}

/* line 11793, scss/style.scss */
.selectSet figure {
  line-height: 0;
}

/* line 11797, scss/style.scss */
.selectSet figure img {
  max-width: 100%;
  height: auto;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

/* line 11806, scss/style.scss */
.selectSet p {
  padding: 10px 0px 20px;
}

/* line 11810, scss/style.scss */
.selectSet .btn a {
  display: block;
  padding: 15px 0px;
  text-align: center;
  color: #fff;
  background: #3e3e3e;
  font-size: 14px;
}

/* line 11819, scss/style.scss */
.selectSet .btn a img {
  height: 0.75em;
  width: auto;
  margin-right: 4px;
}

/* line 11825, scss/style.scss */
.fullimage {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

/* line 11831, scss/style.scss */
.fullimage-basic {
  padding-top: 75px;
  padding-bottom: 75px;
  margin-bottom: 30px;
}

/* line 11837, scss/style.scss */
.fullimage-tspanel {
  background-image: url(../img/spec/spec-taishin.jpg);
}

/* line 11841, scss/style.scss */
.offset-3 {
  left: 25%;
}

/* line 11845, scss/style.scss */
.px-0-lg {
  padding-left: 0;
  padding-right: 0;
}

/*
.panel-white {
    background-color: rgba(255,255,255,.85);
    line-height: 1.9;
    width: 525px;
    min-height: 525px;
    margin: 0 auto;
    padding: 50px;
}
*/
/* line 11861, scss/style.scss */
.panel-white p {
  font-size: 16px;
  line-height: 1.9;
}

/* line 11866, scss/style.scss */
nav.localNavi {
  display: block;
  width: 1000px;
  height: auto;
  margin: 0px auto;
  padding: 22px 0px 22px 0px;
}

/* line 11874, scss/style.scss */
nav.localNavi ul {
  display: block;
  overflow: hidden;
  text-align: center;
}

/* line 11880, scss/style.scss */
nav.localNavi ul li {
  display: inline-block;
  margin: 0px 5px;
}

/* line 11885, scss/style.scss */
nav.localNavi ul li a {
  text-align: center;
  display: block;
  width: 135px;
  border: 1px solid #999;
  font-size: 14px;
  color: #333;
  padding: 9px 0 3px;
  height: 47px;
  position: relative;
}

/* line 11897, scss/style.scss */
nav.localNavi ul li a.active {
  background: #EE9301 !important;
  border: 2px solid #EE9301;
  color: #fff;
}

/* line 11903, scss/style.scss */
nav.localNavi .arrow_down {
  display: inline-block;
  padding: 3px;
  position: absolute;
  bottom: 40%;
  right: 16px;
  width: 4px;
  height: 4px;
  border-top: 1px solid #464646;
  border-right: 1px solid #4c4c4c;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* line 11917, scss/style.scss */
nav.localNavi ul li a.active > .arrow_down {
  border-color: #ffffff;
}

/* line 11921, scss/style.scss */
section.technology {
  width: 100%;
  height: auto;
  padding: 10px 0px 0px 0px;
  overflow: hidden;
}

/* line 11928, scss/style.scss */
section.technology .technologyBlock {
  width: 1000px;
  height: auto;
  margin: 0px auto;
  overflow: hidden;
}

/* line 11935, scss/style.scss */
.titleArea {
  overflow: hidden;
  clear: both;
  padding-top: 20px;
  width: 1000px;
  margin: 0 auto;
}

/* line 11943, scss/style.scss */
.technologyBlock .titleArea .box {
  width: 182px;
  height: auto;
  color: #fff;
  padding: 32px 0px;
  font-size: 15px;
  text-align: center;
  float: left;
}

/* line 11953, scss/style.scss */
.technologyBlock .titleArea .box.alfa {
  background: #DC3E3E;
  margin: 0 auto;
  float: none;
  font-size: 20px;
}

/* line 11960, scss/style.scss */
.technologyBlock .titleArea .box.beta {
  background: #EE9301;
}

/* line 11964, scss/style.scss */
.technologyBlock .titleArea h1 {
  display: block;
  width: 778px;
  height: auto;
  float: right;
  text-align: left;
  line-height: 0;
  padding: 46px 0px 33px;
  font-weight: bold;
}

/* line 11975, scss/style.scss */
.titleBlack {
  background: #222;
  color: #fff;
  text-align: center;
  font-size: 22px;
  padding: 15px 0;
  margin: 40px 0 0 0;
}

/* line 11984, scss/style.scss */
.technologyBlock .technologyFloat {
  overflow: hidden;
  width: 1000px;
  margin: 0 auto;
  padding: 80px 0px 80px 0px;
}

/* line 11991, scss/style.scss */
.tecnhologyBoxFloat {
  overflow: hidden;
  width: 1000px;
  margin: 0 auto;
}

/* line 11997, scss/style.scss */
.technologyBlock .technologyFloat.border-bottom {
  border-bottom: 1px solid #dadada;
}

/* line 12001, scss/style.scss */
.technologyBlock .firstBlock {
  padding: 50px 0px 80px 0px;
  width: 1000px;
  margin: 0 auto;
}

/* line 12007, scss/style.scss */
.technologyFloat figure {
  float: left;
  width: 51%;
}

/* line 12012, scss/style.scss */
.technologyFloat figure img {
  width: 100%;
  height: auto;
}

/* line 12017, scss/style.scss */
.technologyFloat .technologyRight {
  float: right;
  width: 44%;
}

/* line 12022, scss/style.scss */
.technologyFloat h3 {
  width: 100%;
  font-size: 110%;
  font-weight: 900;
  letter-spacing: 0.01em;
  margin-bottom: 0;
}

/* line 12030, scss/style.scss */
.technologyFloat .technologyRight p {
  width: 100%;
  font-size: 16px;
  line-height: 2;
  padding: 26px 0px 0px 0px;
}

/* line 12037, scss/style.scss */
.technologyFloat h3.center {
  text-align: center;
}

/* line 12041, scss/style.scss */
.technologyFloat .tecnhologyBoxFloat {
  overflow: hidden;
  padding: 26px 0px 0px 0px;
}

/* line 12046, scss/style.scss */
.tecnhologyBoxFloat .technologyBox {
  width: 49%;
  overflow: hidden;
  border: 8px solid #f7f7f7;
  background: #fff;
  padding: 10px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* line 12056, scss/style.scss */
.col-6 {
  width: 50%;
  margin: 0 auto;
}

/* line 12061, scss/style.scss */
.floatLeft {
  float: left;
}

/* line 12065, scss/style.scss */
.floatRight {
  float: right;
}

/* line 12069, scss/style.scss */
.technologyBox figure {
  width: 168px;
  float: left;
  margin-right: 15px;
}

/* line 12075, scss/style.scss */
.technologyFloat figure img {
  width: 100%;
  height: auto;
}

/* line 12080, scss/style.scss */
.technologyBox h4 {
  font-weight: bold;
  font-size: 90%;
}

/* line 12085, scss/style.scss */
.technologyBox p {
  padding: 8px 0px 0px 0px;
}

/* line 12089, scss/style.scss */
.technology100 {
  text-align: center;
  margin: 0 0 80px 0;
  width: 1000px;
  margin: 0 auto;
}

/* line 12100, scss/style.scss */
.technology100 p {
  padding: 20px;
  font-size: 18px;
}

/* line 12105, scss/style.scss */
.technologyBoxWide {
  clear: both;
  width: 100%;
  overflow: hidden;
  border: 8px solid #f7f7f7;
  background: #fff;
  padding: 10px;
  margin-top: 26px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* line 12117, scss/style.scss */
.technologyBoxWide figure {
  width: 44%;
  float: left;
}

/* line 12122, scss/style.scss */
.technologyBoxWide figure img {
  width: 100%;
  height: auto;
}

/* line 12127, scss/style.scss */
.technologyBoxWide p {
  float: right;
  width: 51%;
  font-size: 16px;
  letter-spacing: 0.01em;
  line-height: 2;
  text-align: justify;
  padding: 20px 30px 0px 0px;
}

/* line 12137, scss/style.scss */
section.foundation {
  width: 100%;
  height: auto;
}

/* line 12142, scss/style.scss */
section.foundation .foundationBlock {
  width: 1000px;
  height: auto;
  margin: 0px auto;
}

/* line 12148, scss/style.scss */
.foundationBlock .titleArea {
  overflow: hidden;
  /* border-bottom: 1px solid #000; */
}

/* line 12153, scss/style.scss */
.foundationBlock .titleArea h2 {
  width: 100%;
  font-size: 166%;
  font-weight: 900;
  letter-spacing: 0.01em;
  text-align: center;
  margin-bottom: 26px;
}

/* line 12162, scss/style.scss */
.foundationBlock .foundationFloat {
  overflow: hidden;
  width: 100%;
  padding: 60px 0px;
  border-bottom: 1px solid #dadada;
}

/* line 12169, scss/style.scss */
.foundationFloat figure {
  float: left;
  width: 44%;
  text-align: center;
}

/* line 12175, scss/style.scss */
.foundationFloat figure img {
  width: 80%;
  height: auto;
}

/* line 12180, scss/style.scss */
.foundationFloat figure img.photoL {
  width: 100%;
  height: auto;
}

/* line 12185, scss/style.scss */
.foundationFloat .foundationRight {
  float: right;
  width: 51%;
}

/* line 12190, scss/style.scss */
.foundationFloat .foundationRight p {
  width: 100%;
  font-size: 16px;
  line-height: 2;
  padding: 26px 0px 0px 0px;
}

/* line 12197, scss/style.scss */
.foundationFloat .foundationRight p.textTop {
  padding: 39px 0px 0px 0px;
}

/* line 12201, scss/style.scss */
.foundationFloat h3 {
  width: 100%;
  font-size: 110%;
  font-weight: 900;
  margin-bottom: 0;
}

/* line 12208, scss/style.scss */
.foundationBoxWide {
  clear: both;
  width: 100%;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 30px 0 60px 0;
}

/* line 12217, scss/style.scss */
.foundationBoxWide figure {
  float: left;
  width: 44%;
}

/* line 12222, scss/style.scss */
.foundationBoxWide figure img {
  width: 100%;
  height: auto;
}

/* line 12227, scss/style.scss */
.foundationBoxWide div {
  float: right;
  width: 51%;
}

/* line 12232, scss/style.scss */
.foundationBoxWide h4 {
  width: 100%;
  font-size: 110%;
  font-weight: 900;
  letter-spacing: 0.01em;
  margin-bottom: 0;
}

/* line 12240, scss/style.scss */
.foundationBoxWide p {
  width: 100%;
  font-size: 16px;
  letter-spacing: 0.01em;
  line-height: 2;
  text-align: justify;
  padding: 26px 0px 0px 0px;
}

/* line 12249, scss/style.scss */
.spec-box {
  padding: 0 15px 40px;
  margin-bottom: 40px;
  overflow: hidden;
  background: #f2f2f2;
  width: 100%;
  float: left;
}

/* line 12258, scss/style.scss */
.spec-box .inner-box {
  max-width: 79%;
  margin: 0 auto;
  overflow: hidden;
  background: #f2f2f2;
}

/* line 12265, scss/style.scss */
.spec-box .inner-box .title {
  font-size: 3.6rem;
  font-weight: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  margin-bottom: 43px;
}

/* line 12274, scss/style.scss */
.spec-box .inner-box .sub-pagelink {
  display: block;
  margin-bottom: 45px;
}

/* line 12279, scss/style.scss */
.spec-box .inner-box .sub-pagelink li {
  float: left;
  margin-bottom: 15px;
}

/* line 12284, scss/style.scss */
.spec-box .inner-box .sub-pagelink li:nth-child(odd) {
  width: 100%;
}

/* line 12288, scss/style.scss */
.spec-box .inner-box .sub-pagelink a {
  display: block;
  font-size: 16px;
  text-decoration: underline;
  position: relative;
  padding-left: 20px;
}

/* line 12296, scss/style.scss */
.spec-box .inner-box .sub-pagelink a:hover {
  text-decoration: none;
}

/* line 12300, scss/style.scss */
.spec-box .inner-box .sub-pagelink .arrow-down {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  border: solid #929285;
  border-width: 0 1px 1px 0;
  display: inline-block;
  padding: 3px;
  position: absolute;
  left: 0;
  bottom: 11px;
}

/* line 12315, scss/style.scss */
.anchor-box {
  height: 0px;
}

/* line 12319, scss/style.scss */
.contentTtl_Top {
  padding: 30px 0 15px;
  text-align: center;
}

/* line 12324, scss/style.scss */
.contentTtl_h2 {
  text-align: center;
  font-size: 20px;
  letter-spacing: 2px;
  margin-bottom: 5px;
  font-weight: bold;
}

/* line 12332, scss/style.scss */
.contentTtl_h2_cap {
  text-align: center;
  font-size: 16px;
  letter-spacing: 1px;
  width: 100%;
  line-height: 1;
}

/* line 12340, scss/style.scss */
table.blace {
  width: 100%;
  font-size: 15px;
  margin-bottom: 80px;
  border-collapse: collapse;
  border-spacing: 0;
  text-align: center;
}

/* line 12349, scss/style.scss */
table.blace th, table.blace td {
  border: 1px solid #d0d0d0;
  padding: 15px 0;
}

/* line 12354, scss/style.scss */
table.blace th {
  background-color: #f1f1f1;
  vertical-align: middle;
}

/* line 12359, scss/style.scss */
table.blace .strong {
  color: #e91f1b;
  font-weight: bold;
  background-color: #fff194;
}

/* line 12365, scss/style.scss */
.list-spec {
  max-width: 944px;
  margin: 0 auto 60px auto;
  overflow: hidden;
}

/* line 12371, scss/style.scss */
.list-spec li {
  float: left;
  width: 50%;
  margin-bottom: 24px;
}

/* line 12377, scss/style.scss */
.list-spec li .box {
  position: relative;
  display: table;
  width: 100%;
}

/* line 12383, scss/style.scss */
.list-spec li:nth-child(odd) {
  padding-right: 12px;
}

/* line 12387, scss/style.scss */
.list-spec li:nth-child(odd) .box {
  background: #e1dcda;
}

/* line 12391, scss/style.scss */
.list-spec li:nth-child(even) .box {
  background: #f0eeed;
}

/* line 12395, scss/style.scss */
.list-spec li .box .img {
  display: table-cell;
}

/* line 12399, scss/style.scss */
.list-spec li .box .img img {
  display: block;
  width: 100%;
}

/* line 12404, scss/style.scss */
.list-spec li .box .txt {
  display: table-cell;
  vertical-align: middle;
  width: 60.87%;
  position: relative;
  padding-left: 22px;
  padding-right: 20px;
  font-size: 18px;
}

/* line 12414, scss/style.scss */
.list-spec .arrow_r {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  border: solid #999;
  border-width: 0 1px 1px 0;
  display: inline-block;
  padding: 5px;
  position: absolute;
  top: 45%;
  right: 14px;
}

/* line 12429, scss/style.scss */
li.boxZeh {
  margin: 60px auto 65px auto;
}

/* line 12433, scss/style.scss */
li.boxZeh p {
  text-align: left;
}

/* line 12437, scss/style.scss */
li.boxZeh .ttl-bg {
  line-height: 1;
  text-align: center;
  padding: 20px 0 0;
  margin-bottom: 50px;
}

/* line 12444, scss/style.scss */
li.boxZeh .zeh img {
  text-align: center;
}

/* line 12448, scss/style.scss */
li.boxZeh .zeh .ac {
  text-align: center;
}

/* line 12452, scss/style.scss */
li.boxZeh .ttl-bg .ttl {
  font-size: 32px;
  font-weight: 400;
  display: block;
  padding: 0 0 40px 0;
}

/* line 12459, scss/style.scss */
li.boxZeh .txts {
  font-size: 22px;
  display: inline-block;
  position: relative;
  padding-left: 40px;
  margin-bottom: 20px;
}

/* line 12467, scss/style.scss */
li.boxZeh .txts:before {
  content: '';
  position: absolute;
  left: 0;
  top: 40%;
  display: inline-block;
  width: 26px;
  height: 7px;
  background-color: #535353;
}

/* line 12478, scss/style.scss */
li.boxZeh .txt-box {
  margin-bottom: 30px;
  text-align: left;
}

/* line 12483, scss/style.scss */
.outer {
  display: block;
  font-size: 16px;
}

/* line 12488, scss/style.scss */
.ten {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}

/* line 12497, scss/style.scss */
.outer dl {
  border-bottom: 1px solid #f6f7f7;
  color: #191919;
  line-height: 1.8;
  letter-spacing: .05em;
}

/* line 12504, scss/style.scss */
.outer dl dt {
  width: 19.8%;
  background: #dcdddd;
  padding: 15px 0 15px 15px;
  margin-right: 0.2%;
}

/* line 12511, scss/style.scss */
.outer dl {
  border-bottom: 1px solid #f6f7f7;
  color: #191919;
  line-height: 1.8;
  letter-spacing: .05em;
}

/* line 12518, scss/style.scss */
.outer dl dd {
  width: 20%;
  background: #fff;
  padding: 15px 0 15px 15px;
}

#specSection {
  text-align: center;
}

.spec-midashi-midi {
  font-size: 24px;
  position: relative;
  display: block;
  padding: 30px 0 0 0;
  margin-bottom: 40px;
  letter-spacing: 2px;
}

.spec-midashi-midi::after {
  content: "";
  border-top: 3px solid #71a8cb;
  width: 40px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}

#specSection p {
  margin: 10px 0 20px 0;
}

.spec-midashi-text {
  font-weight: bold;
  margin: 30px 0 20px 0;
  font-size: 18px;
  text-align: center;
  line-height: 1.75;
}

a.arrow_down {
  position: absolute;
  right: 7px;
  top: 50%;
}

.arrow_down:before {
  content: '';
  width: 22px;
  height: 22px;
  background: #71a8cb;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -12px;
}
.arrow_down:after {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  top: 50%;
  right: 8px;
  margin-top: -5px;
  transform: rotate(135deg);
}

.spec-midashi-border {
  padding: 20px 5px;
  margin-bottom: 35px;
  font-size: 26px;
  letter-spacing: .05em;
  text-align: center;
  border-top: 1px dashed #5aa4d6;
  border-bottom: 1px dashed #5aa4d6;
  line-height: 1.75;
}

.spec-midashi-border span {
  color: #71A8CB;
}

.spec-midashi-backcolor {
  padding: 20px 5px;
  margin-bottom: 35px;
  font-size: 26px;
  letter-spacing: .05em;
  text-align: center;
  line-height: 1.75;
  color: #fff;
  background: #44a0cc;
}

@media screen and (max-width: 768px) {
.spec.page {
  padding: 25px 0 0px 0;
}
.spec.page .title {
  margin: 0 0 25px 0;
  height: 90px;
}

  /* line 12532, scss/style.scss */
  .spec.page .en {
    font-size: 1.65rem;
  }

  /* line 12535, scss/style.scss */
  .spec.page h2 {
    margin: -13px 0 0 0;
    font-size: 0.769rem;
    padding: 0 0 25px 0;
  }

  /* line 12540, scss/style.scss */
  .techno-page h3.midashi-1 {
    font-size: 16px;
    padding: 0 10px;
  }

  /* line 12544, scss/style.scss */
  .spec-main-box {
    background: url(../img/spec/spec-main-back-sp.jpg) center no-repeat;
    background-size: cover;
    height: 300px;
  }

  /* line 12549, scss/style.scss */
  .spec-main-box .title {
    font-size: 19px;
    margin-bottom: 15px;
    margin-top: 0;
  }

  /* line 12554, scss/style.scss */
  .spec-main-box .inner-box {
    display: block;
    padding: 15px 15px 40px 15px;
  }

  /* line 12558, scss/style.scss */
  .specMainBox img {
    max-height: 163px;
  }

  /* line 12561, scss/style.scss */
  .titleArea {
    width: 100%;
  }

  /* line 12564, scss/style.scss */
  section.safety {
    width: 100%;
    height: auto;
    padding: 0px 0px 0px 0px;
  }

  /* line 12569, scss/style.scss */
  section.safety .safetyBackground {
    width: 90%;
    height: auto;
    padding: 0px 0px 0px 0px;
    margin: 0px auto;
  }

  /* line 12575, scss/style.scss */
  section.safety .safetyBlock {
    width: 100%;
    height: auto;
    margin: 0px auto;
    padding: 0px 0px 0px 0px;
  }

  /* line 12581, scss/style.scss */
  .safetyBlock h2 {
    width: 100%;
    font-size: 18px;
    letter-spacing: 0.01em;
    padding: 0px 0px 22px 0px;
    text-align: center;
  }

  /* line 12588, scss/style.scss */
  .safetyBlock .safetyFloat {
    width: 100%;
    padding: 0px 0px 0px 0px;
    margin-bottom: 33px;
    overflow: hidden;
    border-bottom: 1px solid #a5a5a5;
  }

  /* line 12595, scss/style.scss */
  .safetyFloat .safetySet {
    width: 100%;
    height: auto;
    margin: 0px 4% 18px 0px;
    padding: 0px 0px 0px 0px;
    float: none;
  }

  /* line 12602, scss/style.scss */
  .safetySet figure {
    line-height: 0;
  }

  /* line 12605, scss/style.scss */
  .safetySet figure img {
    max-width: 100%;
    height: auto;
  }

  /* line 12609, scss/style.scss */
  .safetySet h3 {
    width: 100%;
    padding: 6px 0px 4px 0px;
    font-size: 20px;
    text-align: left;
    font-weight: 600;
    color: #221815;
    position: relative;
  }

  /* line 12617, scss/style.scss */
  .safetySet div {
    display: inline-block;
    padding: 6px 0px 4px 0px;
    width: 60%;
  }

  /* line 12622, scss/style.scss */
  .safetySet div a {
    display: inline-block;
    padding: 10px 20px;
    background-size: 12px 12px;
    background-color: #ff9901;
    color: #fff;
    font-weight: bold;
  }

  /* line 12630, scss/style.scss */
  .safetySet p {
    padding: 3px 0px 10px 0px;
  }

  /* line 12633, scss/style.scss */
  section.select {
    width: 100%;
    height: auto;
    padding: 40px 0px 0px 0px;
    background: #fff;
  }

  /* line 12639, scss/style.scss */
  section.select .selectBlock {
    width: 90%;
    height: auto;
    margin: 0px auto;
    padding: 0px 0px 0px 0px;
  }

  /* line 12645, scss/style.scss */
  .selectBlock h2 {
    width: 100%;
    font-size: 18px;
    letter-spacing: 0.01em;
    padding: 0px 0px 22px 0px;
    text-align: center;
  }

  /* line 12652, scss/style.scss */
  .selectBlock .selectFloat {
    padding: 0px 0px 0px 0px;
    overflow: hidden;
  }

  /* line 12656, scss/style.scss */
  .selectFloat .selectSet {
    width: 100%;
    height: auto;
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 40px 0px;
    overflow: hidden;
  }

  /* line 12663, scss/style.scss */
  .selectSet h3 {
    padding: 5px 0px;
    font-size: 17px;
    text-align: center;
    font-weight: bold;
    padding: 0px 0px 12px 0px;
    border-bottom: 1px solid #333;
    margin: 0px 0px 9px 0px;
  }

  /* line 12672, scss/style.scss */
  .selectSet figure {
    line-height: 0;
    width: 100%;
    float: none;
  }

  /* line 12677, scss/style.scss */
  .selectSet figure img {
    max-width: 100%;
    height: auto;
  }

  /* line 12681, scss/style.scss */
  .selectSet p {
    display: block;
    width: 100%;
    float: none;
    padding: 0px 0px 10px;
  }

  /* line 12687, scss/style.scss */
  .selectSet .btn {
    width: 100%;
    float: none;
  }

  /* line 12691, scss/style.scss */
  .selectSet .btn a {
    display: block;
    padding: 10px 0px;
    text-align: center;
    color: #fff;
  }

  /* line 12697, scss/style.scss */
  .selectSet .btn a img {
    height: 0.75em;
    width: auto;
    margin-right: 4px;
  }

  /* line 12702, scss/style.scss */
  section div.sectionBlock {
    width: 94%;
    margin: 0 auto 33px;
  }

  /* line 12706, scss/style.scss */
  section div.sectionBox {
    width: 100%;
  }

  /* line 12709, scss/style.scss */
  section div.sectionBlock p.mainTitle {
    margin-top: 22px;
  }

  /* line 12712, scss/style.scss */
  section.catch p {
    width: 100%;
    margin: 0px auto 0;
  }

  /* line 12716, scss/style.scss */
  section div.sectionBlock p img {
    max-width: 100%;
    height: auto;
  }

  /* line 12728, scss/style.scss */
  section.catch div.conditionsBox {
    margin: 20px auto 0 auto;
  }

  /* line 12731, scss/style.scss */
  li.boxZeh {
    margin: 0;
  }

  /* line 12734, scss/style.scss */
  li.boxZeh .ttl-bg {
    line-height: 1;
    padding: 20px 0 0;
    margin-bottom: 50px;
  }

  /* line 12739, scss/style.scss */
  li.boxZeh .ttl-bg .ttl {
    font-size: 20px;
    font-weight: 600;
    display: block;
  }

  /* line 12744, scss/style.scss */
  li.boxZeh .txts {
    font-size: 19px;
    line-height: 1.3;
    display: inline-block;
    position: relative;
    padding-left: 40px;
    font-weight: 600;
  }

  /* line 12752, scss/style.scss */
  li.boxZeh .txts::before {
    content: '';
    position: absolute;
    left: 0;
    top: 40%;
    display: inline-block;
    width: 26px;
    height: 7px;
    background-color: #535353;
  }

  /* line 12762, scss/style.scss */
  .txt-box {
    color: #191919;
    line-height: 2;
  }

  /* line 12766, scss/style.scss */
  .outer {
    width: 100%;
    border: 6px solid #f6f7f7;
  }

  /* line 12770, scss/style.scss */
  .outer dl {
    border-bottom: 1px solid #f6f7f7;
    line-height: 1.8;
    letter-spacing: .05em;
  }

  /* line 12775, scss/style.scss */
  .outer dl dt {
    width: 30%;
    background: #dcdddd;
    padding: 3% 5%;
    display: block;
    float: left;
  }

  /* line 12782, scss/style.scss */
  .outer dl dd {
    width: 70%;
    background: #fff;
    padding: 3% 5%;
    display: block;
    float: left;
  }

  /* line 12789, scss/style.scss */
  nav.localNavi {
    display: block;
    width: 96%;
    height: auto;
    margin: 0px auto;
    padding: 0px 0px 22px 0px;
  }

  /* line 12796, scss/style.scss */
  nav.localNavi ul {
    display: block;
    overflow: hidden;
  }

  /* line 12800, scss/style.scss */
  nav.localNavi ul li {
    display: block;
    width: 46.7%;
    float: left;
    padding: 0px 0px 8px 0px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }

  /* line 12808, scss/style.scss */
  nav.localNavi ul li a {
    width: 100%;
  }

  /* line 12811, scss/style.scss */
  nav.localNavi ul li a.active {
    padding-bottom: 4px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }

  /* line 12816, scss/style.scss */
  .titleArea h2 {
    font-size: 19px;
    font-weight: bold;
  }

  /* line 12820, scss/style.scss */
  .fullimage-basic {
    padding-top: 30px;
    padding-bottom: 20px;
  }

  /* line 12824, scss/style.scss */
  .fullimage .col-12-sm {
    margin: 0 auto;
    width: 100%;
    float: none;
    left: 0;
  }

  /* line 12830, scss/style.scss */
  .fullimage .title-medium {
    font-size: 18px;
  }

  /* line 12833, scss/style.scss */
  .fullimage .panel-white {
    width: 100%;
    min-height: auto;
    padding: 20px;
  }

  /* line 12838, scss/style.scss */
  .fullimage .panel-white p {
    font-size: 14px;
    line-height: 1.9;
  }

  /* line 12842, scss/style.scss */
  section.technology .technologyBlock {
    width: 100%;
  }

  /* line 12845, scss/style.scss */
  section.technology .technologyBlock .selectSet figure {
    width: 100%;
    float: none;
  }

  /* line 12849, scss/style.scss */
  section.technology .technologyBlock .selectSet p {
    width: 100%;
    float: none;
  }

  /* line 12853, scss/style.scss */
  section.technology .technologyBlock .selectSet .btn {
    width: 100%;
  }

  /* line 12856, scss/style.scss */
  section.technology .technologyBlock .selectSet .spec-box {
    float: none;
    padding: 0 15px 10px;
  }

  /* line 12860, scss/style.scss */
  section.technology .technologyBlock .selectSet .spec-box:last-child {
    margin-bottom: 0;
  }

  /* line 12863, scss/style.scss */
  section.technology .technologyBlock .selectSet .spec-box .inner-box {
    max-width: 100%;
  }

  /* line 12866, scss/style.scss */
  .spec-box .inner-box {
    max-width: 100%;
  }

  /* line 12869, scss/style.scss */
  section.technology .technologyBlock .selectSet .spec-box .inner-box .sub-pagelink a {
    font-size: 13px;
  }

  /* line 12872, scss/style.scss */
  section.technology .technologyBlock .selectSet .spec-box .inner-box .contentTtl_Top {
    padding: 20px 0;
  }

  /* line 12875, scss/style.scss */
  section.technology .technologyBlock .selectSet .spec-box .inner-box .contentTtl_Top .contentTtl_h2 {
    font-size: 16px;
  }

  /* line 12878, scss/style.scss */
  .contentTtl_h2 {
    font-size: 18px;
  }

  /* line 12881, scss/style.scss */
  section.technology .technologyBlock .selectSet .spec-box .inner-box .contentTtl_Top .contentTtl_h2_cap {
    font-size: 12px;
  }

  /* line 12884, scss/style.scss */
  .titleBlack {
    font-size: 18px;
    padding: 15px 6%;
  }

  /* line 12888, scss/style.scss */
  .technologyBlock .technologyFloat {
    padding: 10px 6% 20px 6%;
    width: 100%;
  }

  /* line 12892, scss/style.scss */
  .tecnhologyBoxFloat {
    width: 100%;
  }

  /* line 12895, scss/style.scss */
  .technologyBlock .firstBlock {
    width: 100%;
    padding: 10px 6% 20px 6%;
  }

  /* line 12899, scss/style.scss */
  .technologyFloat figure {
    float: left;
    width: 100%;
  }

  /* line 12903, scss/style.scss */
  .technologyFloat .technologyRight {
    float: none;
    width: 100%;
    padding-top: 20px;
  }

  /* line 12908, scss/style.scss */
  .technologyFloat h3 {
    font-size: 18px;
  }

  /* line 12911, scss/style.scss */
  .technologyFloat .technologyRight p {
    font-size: 14px;
  }

  /* line 12914, scss/style.scss */
  .technology100 {
    width: 100%;
    padding: 0 6%;
    margin: 0;
  }

  /* line 12919, scss/style.scss */
  .technology100 p {
    padding: 20px 0;
    font-size: 14px;
    line-height: 2.2;
    text-align: left;
  }

  /* line 12925, scss/style.scss */
  .technologyBox h4 {
    font-size: 75%;
  }

  /* line 12928, scss/style.scss */
  .technologyBlock .titleArea .box {
    padding: 15px 0;
  }

  /* line 12931, scss/style.scss */
  .technologyBlock .titleArea .box {
    float: none;
  }

  /* line 12934, scss/style.scss */
  .technologyBlock .titleArea h1 {
    display: block;
    width: auto;
    height: auto;
    float: none;
    text-align: left;
    line-height: 2.2;
    padding: 20px 6% 10px;
    font-size: 18px;
    font-weight: bold;
  }

  /* line 12945, scss/style.scss */
  .technologyBox.floatLeft, .technologyBox.floatRight {
    float: none;
    width: 90%;
    margin: 0 auto 20px auto;
  }

  /* line 12950, scss/style.scss */
  .technologyBox figure {
    width: 100%;
    float: none;
  }

  /* line 12954, scss/style.scss */
  .technologyBox p {
    font-size: 12px;
  }

  /* line 12957, scss/style.scss */
  .technologyFloat figure {
    float: none;
  }

  /* line 12960, scss/style.scss */
  .technologyBoxWide p {
    float: none;
    width: 100%;
    font-size: 12px;
    line-height: 2;
    text-align: left;
    padding: 20px 0px 20px 0px;
  }

  /* line 12968, scss/style.scss */
  section.foundation .foundationBlock {
    width: 100%;
    padding: 0 6%;
  }

  /* line 12972, scss/style.scss */
  .foundationBlock .titleArea h2 {
    margin-bottom: 0;
    font-size: 18px;
  }

  /* line 12976, scss/style.scss */
  .foundationBlock .foundationFloat {
    padding: 20px 0px;
  }

  /* line 12979, scss/style.scss */
  .foundationFloat figure {
    float: none;
    width: 100%;
  }

  /* line 12983, scss/style.scss */
  .foundationFloat .foundationRight {
    float: none;
    width: 100%;
    padding-top: 20px;
  }

  /* line 12988, scss/style.scss */
  .foundationFloat .foundationRight p {
    font-size: 14px;
  }

  /* line 12991, scss/style.scss */
  .foundationFloat h3 {
    font-size: 18px;
  }

  /* line 12994, scss/style.scss */
  .foundationFloat .foundationRight p {
    font-size: 14px;
    padding: 10px 0px 0px 0px;
    text-align: left;
  }

  /* line 12999, scss/style.scss */
  .foundationBoxWide {
    margin-bottom: 40px !important;
  }

  /* line 13002, scss/style.scss */
  .foundationBoxWide figure {
    float: none;
    width: 100%;
  }

  /* line 13006, scss/style.scss */
  .foundationBoxWide div {
    float: none;
    width: 100%;
  }

  /* line 13010, scss/style.scss */
  .foundationBoxWide h4 {
    font-size: 18px;
    padding-top: 20px;
  }

  /* line 13014, scss/style.scss */
  .foundationBoxWide p {
    font-size: 14px;
    padding: 10px 0px 0px 0px;
    text-align: left;
  }

  /* line 13019, scss/style.scss */
  table.blace {
    margin-bottom: 30px;
  }

  /* line 13022, scss/style.scss */
  .list-spec {
    margin: 0 auto 40px auto;
  }

  /* line 13025, scss/style.scss */
  .list-spec li {
    float: none;
    width: 100%;
    margin-bottom: 0;
  }

  /* line 13030, scss/style.scss */
  .list-spec li:nth-child(odd) {
    padding-right: 0;
  }

  /* line 13033, scss/style.scss */
  .list-spec li:nth-child(even) {
    padding-left: 0;
  }

  /* line 13036, scss/style.scss */
  .list-spec li .box .img {
    width: 90px;
  }

  /* line 13039, scss/style.scss */
  .list-spec li .box .txt {
    padding-left: 12px;
    padding-right: 12px;
    font-size: 13px;
  }

  /* line 13044, scss/style.scss */
  .list-spec li .box .txt {
    width: auto;
  }

  /* line 13047, scss/style.scss */
  .list-spec .arrow_r {
    padding: 3px;
    top: 45%;
    right: 10px;
  }
}
@media screen and (max-width: 320px) {
  /* line 13055, scss/style.scss */
  .spec-main-box .title {
    font-size: 16px;
  }
}
/* line 13061, scss/style.scss */
.title-bar-black {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 120px;
  height: 44px;
  color: #FFF;
  background-color: #3a3a3a;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 10px;
  margin-bottom: 20px;
  font-weight: bold;
}

/* line 13080, scss/style.scss */
.panel-white {
  box-sizing: border-box;
}

/* line 13084, scss/style.scss */
.title-medium {
  line-height: 1.4;
  font-weight: 700;
  color: #484848;
  margin-bottom: 20px;
}

/* line 13091, scss/style.scss */
.block-image {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top center;
}

/* line 13097, scss/style.scss */
.block-image img {
  vertical-align: bottom;
}

.narrow_frame {
  width: 920px;
  padding-right: 20px;
  padding-left: 20px;
  margin-right: auto;
  margin-left: auto;
  background: #f1f1f1;
  padding: 30px 40px 0 40px;
}

.grade {
  padding: 40px 20px 20px 20px;
}

.grade h2 {
  font-size: 20px;
  margin-bottom: 30px;
  line-height: 1.75;
}

.grade h2 span {
  color: #71A8CB;
}

.grade_list li {
  float: left;
  width: 21.7%;
  margin-left: 4.4%;
  margin-bottom: 20px;
}

.grade_list li:first-child {
  margin-left: 0;
}

.grade_list_circle {
  background: #fff;
  border-radius: 50%;
  padding-top: 100%;
  position: relative;
}

.grade_list_circle .text_box {
  position: absolute;
  top: 20px;
  left: 0;
  right: 0;
  text-align: center;
}

.grade_list_circle .icon {
  width: 46px;
  height: auto;
  margin-bottom: 20px;
}

.star {
  color: #cc0000;
  font-size: 14px;
}

.grade_ttl {
  font-size: 22px;
  margin-bottom: 20px;
  font-weight: normal;
}

.grade_text {
  font-size: 12px;
}

.dannetsu {
  padding: 40px;
}

.dannetsu h2 {
  font-size: 20px;
  margin-bottom: 30px;
  line-height: 1.75;
}

.dannetsu picture {
  margin-bottom: 20px;
}

.dannetsu_list {
  flex-flow: wrap;
  justify-content: space-between;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  margin-bottom: 20px;
}

.dannetsu_list section {
  position: relative;
  display: inline-block;
  width: 32%;
  padding: 30px;
  border: 2px solid #92b6ce;
  border-radius: 10px;
  background: #fff;
}

@media only screen and (max-width: 768px) {
.dannetsu_list section {
  width: 100%;
  margin-bottom: 20px;
}
.inner_frame, .narrow_frame {
  padding-right: 4%;
  padding-left: 4%;
  width: 100%;
}
.grade_list li {
  width: 47.8%;
}
.grade_list li:nth-child(2n+1) {
  margin-left: 0;
  clear: both;
}
.grade_list_circle .text_box {
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.grade_list_circle .icon {
  width: 24%;
}
.grade_ttl {
  font-size: 18px;
  line-height: 1.1;
}
}

.dannetsu_list section h6 {
  font-size: 16px;
  font-weight: 600;
  text-align: center;
}

.dannetsu_list section .dannetsu_list_in {
  padding: 30px 0;
}

.dannetsu_list section .dannetsu_list_in h5 {
  position: relative;
  font-size: 35px;
  text-align: center;
  letter-spacing: 2px;
}

.dannetsu_list section .dannetsu_list_in section .fs3 {
  font-size: 30px;
}

.color_blue {
  color: #3489bb;
}

.dannetsu_list section .dannetsu_list_in h5 span {
  position: absolute;
  bottom: -17px;
  left: 50%;
  display: block;
  font-size: 11px;
  transform: translate(-50%, 50%);
  font-weight: normal;
}

.dannetsu_list section figure {
  margin-top: 20px;
}

@media print, screen and (min-width: 961px) {
  /* line 13102, scss/style.scss */
  .title-bar-black {
    font-size: 18px;
    margin-bottom: 30px;
  }

  /* line 13106, scss/style.scss */
  .panel-white {
    padding: 50px;
  }
}
@media only screen and (min-width: 768px) {
  /* line 13112, scss/style.scss */
  .panel-white {
    background-color: rgba(255, 255, 255, 0.85);
  }

  /* line 13115, scss/style.scss */
  .title-medium {
    font-size: 24px;
    margin-bottom: 20px;
  }

  /* line 13119, scss/style.scss */
  .block-image {
    margin-left: -50px;
    margin-right: -50px;
    margin-bottom: -50px;
  }
}
@media only screen and (max-width: 767px) {
  /* line 13127, scss/style.scss */
  .title-bar-black {
    font-size: 20px;
  }

  /* line 13130, scss/style.scss */
  .section-warranty .cols {
    padding-left: 0;
    padding-right: 0;
  }

  /* line 13134, scss/style.scss */
  .section-warranty .title {
    font-size: 20px;
  }

  /* line 13137, scss/style.scss */
  .warrantyBody .box-inner01 {
    margin: 10px auto 28px;
  }

  /* line 13140, scss/style.scss */
  .warrantyBody .box-inner01 .img-top img {
    width: 100%;
  }

  /* line 13143, scss/style.scss */
  .warrantyBody .wcm-s {
    padding: 0 12px;
  }

  /* line 13146, scss/style.scss */
  .warrantyBody .box-inner01 .tit-page {
    font-size: 22px;
    margin: 17px auto 14px;
  }

  /* line 13150, scss/style.scss */
  .warrantyBody .box-inner01 .row-txt p {
    font-size: 15px;
    line-height: 26px;
  }

  /* line 13154, scss/style.scss */
  .panel-white {
    background-color: #FFF;
    background-color: rgba(255, 255, 255, 0.85);
    padding: 15px;
  }

  /* line 13159, scss/style.scss */
  .block-image-inspect-photo {
    height: 150px;
  }
}
/* ページ送り */
/* line 13165, scss/style.scss */
.wp-pagenavi {
  text-align: center;
  margin-bottom: 30px;
}

/* line 13170, scss/style.scss */
.wp-pagenavi span.pages {
  display: none;
}

/* line 13174, scss/style.scss */
.wp-pagenavi span.current {
  background: #20252f;
  border: solid 1px #20252f;
  color: #fff;
  border: solid 1px #ccc;
  padding: 5px 12px;
  margin: 0 2px;
  text-decoration: none;
  font-size: 14px;
  display: inline-block;
}

/* line 13186, scss/style.scss */
.wp-pagenavi a.page.larger {
  background: #fff;
  border: solid 1px #ccc;
  padding: 5px 12px;
  margin: 0 2px 0 8px;
  text-decoration: none;
  display: inline-block;
  font-size: 14px;
}

/* line 13196, scss/style.scss */
.wp-pagenavi a.page.smaller {
  background: #fff;
  border: solid 1px #ccc;
  padding: 5px 12px;
  margin: 0 8px;
  text-decoration: none;
  display: inline-block;
  font-size: 14px;
}

/* line 13206, scss/style.scss */
.wp-pagenavi a.previouspostslink {
  margin-right: 10px;
}

/* line 13210, scss/style.scss */
.wp-pagenavi a.nextpostslink {
  margin-left: 10px;
}

/*-------------------------------------------------

		☆ page active かみくぼ住宅の取り組み

-------------------------------------------------*/
#p_active .contents_ttl {
  font-size: 26px;
  text-align: center;
  padding: 30px 0 0 0;
  margin-bottom: 40px;
  letter-spacing: 2px;
  position: relative;
}

@media only screen and (max-width: 1024px) {
#p_active .contents_ttl {
  font-size: 22px;
  margin-bottom: 20px;
}
}

@media only screen and (max-width: 320px) {
#p_active .contents_ttl {
  font-size: 20px;
}
}

#p_active .contents_ttl::after {
  content: "";
  border-top: 4px solid #00a0c2;
  width: 40px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}

/* SDGs */
#p_active .sdgs {
  margin: 40px auto;
}

@media only screen and (max-width: 1024px) {
#p_active .sdgs {
  margin: 20px auto;
}
}

#p_active .sdgs_logo {
  width: 40%;
  padding: 20px;
}

#p_active .sdgs_logo.zebmark {
  width: 29%;
}

@media only screen and (max-width: 1024px) {
#p_active .sdgs_logo {
  width: 100%;
  text-align: center;
}
#p_active .sdgs_logo.zebmark {
  width: 58%;
  margin: 0 auto;
  padding: 0;
}
}

#p_active .sdgs_detail {
  width: 60%;
  padding: 20px;
}

@media only screen and (max-width: 1024px) {
#p_active .sdgs_detail {
  width: 100%;
}
}

#p_active .sdgs_detail h3 {
  font-size: 24px;
}

#p_active .sdgs_detail h3 span.mini {
  display: inline-block;
  padding-left: 10px;
}

#p_active .sdgs_detail .ttl {
  padding-top: 20px;
}

#p_active .sdgs_detail span.ryaku {
  font-size: 20px;
  color: #03A2DB;
  font-weight: bold;
}

#p_active .sdgs_detail .txt {
  padding-top: 40px;
}

#p_active .sdgs_contents h4, #p_active .sdgs_detail_in h4.blue {
  color: #fff;
  background: #71A8CB;
}

#p_active .sdgs_contents h4, #p_active .sdgs_detail_in h4 {
  font-size: 22px;
  background: #f1f1f1;
  padding: 20px;
  text-align: center;
  color: inherit;
  line-height: 1.6;
}

@media only screen and (max-width: 1024px) {
#p_active .sdgs_contents h4, #p_active .sdgs_detail_in h4 {
  font-size: 20px;
}
}

#p_active .sdgs_contents .sdgs_block {
  width: 60%;
  padding: 60px 0 0 60px;
}

@media only screen and (max-width: 1024px) {
#p_active .sdgs_contents .sdgs_block {
  width: 100%;
  padding: 20px;
}
}

#p_active .sdgs_contents .sdgs_block .main_txt {
  font-size: 20px;
  font-weight: bold;
  line-height: 2;
}

@media only screen and (max-width: 1024px) {
#p_active .sdgs_contents .sdgs_block .main_txt {
  font-size: 18px;
} 
}

@media only screen and (max-width: 320px) {
#p_active .sdgs_contents .sdgs_block .main_txt {
  font-size: 16px;
} 
}

#p_active .sdgs_contents .sdgs_pic {
  width: 40%;
  padding: 20px;
}

@media only screen and (max-width: 1024px) {
#p_active .sdgs_contents .sdgs_pic {
  width: 100%;
}
}

#p_active .rinen_ttl {
  margin-bottom: 10px;
}

#p_active .rinen_ttl span {
  display: inline-block;
  clip-path: polygon(0% 0%, 75% 0%, 85% 53%, 75% 100%, 0% 100%);
  background: #000;
  color: #fff;
  font-size: 14px;
  padding: 4px 60px 4px 30px;
  font-weight: bold;
}

@media only screen and (max-width: 1024px) {
#p_active .rinen_ttl p {
  line-height: 2.4;
}
#p_active .rinen_ttl span {
  display: block;
  padding: 4px 20px 4px 20px;
}
}

#p_active .sdgs_detail_in {
  margin: 80px auto;
}

@media only screen and (max-width: 1024px) {
#p_active .sdgs_detail_in {
  margin: 20px auto;
}
}

#p_active .sdgs_detail_in .logo_wheel {
  text-align: center;
  top: 26px;
  position: relative;
}

#p_active .sdgs_detail_in .in {
  background: #f1f1f1;
  padding: 60px 20px 20px 20px;
}

#p_active .sdgs_detail_in .flex {
  background: #fff;
  padding: 60px 20px 20px 20px;
  justify-content: center;
}

@media only screen and (max-width: 1024px) {
#p_active .sdgs_detail_in .flex {
  padding: 0;
}
}

#p_active .sdgs_detail_in h3 {
  font-size: 26px;
  line-height: 1.5;
  text-align: center;
  top: 42px;
  position: relative;
  z-index: 1;
}

@media only screen and (max-width: 1024px) {
#p_active .sdgs_detail_in h3 {
  font-size: 20px;
}
}

@media only screen and (max-width: 320px) {
#p_active .sdgs_detail_in h3 {
  font-size: 18px;
}
}

#p_active .sdgs_detail_in .txt {
  width: 46%;
  margin: 20px 20px 40px 20px;
}

@media only screen and (max-width: 1024px) {
#p_active .sdgs_detail_in .txt {
  width: 100%;
  margin: 0 20px;
}
#p_active .sdgs_detail_in .txt.mob {
  padding-top: 20px;
}
}

#p_active .sdgs_detail_in .txt h4 {
  font-size: 18px;
  line-height: 1.7;
  margin-bottom: 20px;
  color: #357fb9;
  text-align: left;
  padding-left: 0;
  background: inherit;
}

@media only screen and (max-width: 1024px) {
#p_active .sdgs_detail_in .txt h4 {
  padding: 0;
}
}

@media only screen and (max-width: 320px) {
#p_active .sdgs_detail_in .txt h4 {
    font-size: 16px;
}
}

#p_active .sdgs_detail_in .pic{
  width: 46%;
  margin: 20px;
}

@media only screen and (max-width: 1024px) {
#p_active .sdgs_detail_in .pic {
  width: 100%;
}
}

#p_active .mark .flex {
  padding: 20px 0;
}

#p_active .mark ul li {
  width: 18%;
  margin-right: 30px;
}

@media only screen and (max-width: 1024px) {
#p_active .mark ul li {
  width: 26%;
  margin-right: 10px;
}
#p_active .mark ul li:last-child {
  margin-right: 0;
}
}

/* ZEH */
#p_active .zeh {
  margin-top: 40px;
}

.zeh_inner_ttl {
  font-size: 24px;
  text-align: center;
  margin: 40px 0;
  letter-spacing: 1px;
}

@media only screen and (max-width: 768px) {
.zeh_inner_ttl {
  font-size: 20px;
  margin: 20px 0;
}
}

@media only screen and (max-width: 320px) {
.zeh_inner_ttl {
  font-size: 18px;
}
}

.zeh_inner_txt {
  text-align: left;
}

.zeh_btn_list {
  margin: 40px 0;
}

.zeh_btn_list li {
  width: 23%;
  background: #e7eff3;
  margin-right: 20px;
  font-size: 14px;
  font-weight: bold;
  border-left: 6px solid #70a5c1;
}

@media only screen and (max-width: 1024px) {
.zeh_btn_list {
  margin: 20px 0 0 0;
}

.zeh_btn_list li {
  width: 46%;
  margin-bottom: 20px;
}
.zeh_btn_list li:nth-child(even) {
  margin-right: 0;
}
}

.zeh_btn_list li a {
  display: block;
  padding: 20px;
}

@media only screen and (max-width: 768px) {
.zeh_btn_list li a {
  padding: 10px;
  font-size: 12px;
}
}

.zeh_btn_list li:hover {
  background: #c7dbe4;
  transition: 0.3s;
}

.zeh_detail {
  padding: 60px 40px 10px 40px;
}

.zeh_detail.zeb_detail {
  padding: 60px 40px 40px 40px !important;
}

.zeh_detail#whats_zeh {
  background: #f1f1f1;
  padding: 60px 40px;
}

@media only screen and (max-width: 768px) {
.zeh_detail {
  padding: 40px 20px;
}
.zeh_detail#whats_zeh {
  padding: 40px 20px;
}
}

.zeh_detail_in h3 {
  font-size: 24px;
  text-align: center;
  font-weight: bold;
  margin-bottom: 40px;
  line-height: 1.4;
}

.zeh_detail_in .box_l {
  width: 59%;
}

.zeh_detail_in .box_l.zebbox {
  text-align: center;
}

.zeh_detail_in .box_l.zebboxs {
  width: 48%;
}

#zeh_merit .zeh_detail_in .box_l {
  margin-right: 2%;
}

.zeh_detail_in .box_r {
  width: 39%;
  margin-bottom: 60px;
}

.zeh_detail_in .box_r.zebboxs {
  width: 48%;
  margin-bottom: 0;
}

.zeh_detail_in .zeh_sub_ttl {
  font-size: 20px;
  background: #f1f1f1;
  padding: 15px 0 15px 10px;
  margin-bottom: 20px;
}

#zeh_merit .zeh_inner_txt {
  margin-bottom: 40px;
}

#zeh_merit .zeh_detail_in .flex {
  margin-bottom: 40px;
}

#zeh_merit .zeh_detail_in .flex.zebb {
  margin-bottom: 0;
}

@media only screen and (max-width: 1024px) {
.zeh_detail_in .box_l, .zeh_detail_in .box_r {
  width: 100%;
  margin-bottom: 0;
}
p.sub_txt {
  padding-bottom: 20px;
}
p.sub_ttl {
  text-align: left;
  font-size: 16px;
}
#zeh_merit .zeh_detail_in .flex.zebb {
  display: block;
}
.zeh_detail_in .box_l.zebboxs, .zeh_detail_in .box_r.zebboxs {
  width: 100%;
  margin-bottom: 0;
}
}

.zeh_detail_in .sub_ttl {
  font-weight: bold;
  padding-bottom: 10px;
  color: #71A8CB;
}

.zeh_list_4 li {
  width: 22%;
  margin-right: 30px;
  background: #fff;
  padding: 30px;
  text-align: center;
}

@media only screen and (max-width: 1024px) {
.zeh_list_4 li {
  width: 100%;
  margin-right: 0;
  margin-bottom: 20px;
  border-radius: 20px;
} 
.zeh_detail.zebstyle {
  padding: 0 !important;
}
}

.zeh_list_4 li img {
  width: 70px;
}

.zeh_list_4 li h4 {
  font-size: 14px;
  font-weight: normal;
  margin: 20px 0;
}

.zeh_list_4 li h4 span {
  font-size: 24px;
  display: block;
  padding-top: 10px;
}

.zeh_list_4 li p {
  font-size: 12px;
}

.mb50 {
  margin-bottom: 50px;
}

.mb30 {
  margin-bottom: 30px;
}

@media only screen and (max-width: 1024px) {
.zeh_list_4 li h4 span {
  font-size: 20px;
}
.mb50 {
  margin-bottom: 20px;
}
}

.zeh_detail .zeh_center_ttl {
  font-weight: bold;
  padding-bottom: 10px;
  text-align: center;
}

img.midashi_img {
  display: block;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 20px !important;
  width: 8%;
}

@media only screen and (max-width: 1024px) {
img.midashi_img {
  width: 16%;
}
}

.zeh_inner_img {
  text-align: center;
  margin: 20px auto;
}

.zeh_box {
  margin-top: 60px;
  text-align: center;
}

.zeh_box h3 {
  font-size: 24px;
  text-align: center;
  margin: 40px 0;
  letter-spacing: 1px;
  line-height: 1.75;
}

.zeh_box .zeh-list li:not(:first-child) {
  margin-top: 60px;
}

.zeh_box .zeh-list li span {
  color: #D7DF23;
}

.zeh_box .zeh-list li .small {
  font-size: 12px;
  text-align: right;
}

.bezeh {
  background: #f1f1f1;
  padding: 50px;
  box-sizing: border-box;
  overflow: hidden;
  clear: both;
  margin: 50px 0 0 0;
  position: relative;
}

.bezeh .pic {
  float: left;
  width: 40%;
  position: relative;
}

.bezeh .pic h4 {
  position: absolute;
  background: #FFF;
  top: -20px;
  left: -20px;
  width: 88%;
  padding: 20px 25px 25px 20px;
  font-size: 20px;
  color: #333;
}

.bezeh .pic h4 span {
  color: #D7DF76;
}

.bezeh .text {
  float: right;
  width: 55%;
  text-align: left;
}

.bezeh .text ul li {
  margin-bottom: 12px;
  text-indent: -2em;
  padding-left: 2em;
  line-height: 180%;
  font-size: 16px;
}

.bezeh .text ul li span {
  margin-right: 1em;
  color: #D7DF76;
}

.bezeh-new {
  clear: both;
  overflow: hidden;
}

.bezeh-new h3 {
  border: 1px solid #666;
  padding: 20px;
  text-align: center;
  font-size: 20px;
  margin: 30px 0 0 0;
}

@media only screen and (max-width: 768px) {
.bezeh {
  padding: 15px;
  margin: 50px 0 0 0;
}
.bezeh .pic, .bezeh .text {
  float: none;
  width: auto;
  position: relative;
}
.bezeh .pic h4 {
  font-size: 16px;
  padding: 0 15px 15px 0;
  line-height: 180%;
}
.bezeh .text ul {
  margin: 10px 0 0 0;
}
.bezeh .text ul li {
  font-size: 13px;
}
.bezeh-new h3 {
  font-size: 16px;
  line-height: 180%;
  margin-top: 5px;
}
}

table.zeb_jisseki {
    margin: 50px auto 0px auto;
    width: 80%;
    border-collapse: collapse;
    font-size: 16px;
}

table.zeb_jisseki th, table.zeb_jisseki td {
  padding: 10px;
  text-align: left;
  vertical-align: middle;
  line-height: 1.8;
  border: 1px solid #484848;
}

#faq .inner_frame {
  width: 1100px;
  padding-right: 20px;
  padding-left: 20px;
  margin-right: auto;
  margin-left: auto;
}

#faq .ttl img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 8px;
}

#faq dl {
  width: 880px;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.8;
}

#faq dt {
  background: #f1f1f1;
  padding: 10px 3%;
  font-size: 18px;
}

#faq dd {
  padding: 20px 5%;
  font-size: 14px;
}

@media only screen and (max-width: 768px) {
#faq .inner_frame {
  width: 100%;
  padding-right: 4%;
  padding-left: 4%;
}
#faq dl {
  width: 100%;
}
#faq dt {
  font-size: 14px;
}
}

.bg_baige {
  margin: 40px auto 40px auto;
}

@media only screen and (max-width: 768px) {
.bg_baige {
  padding: 0;
}
}

.bg_baige span {
  color: #71A8CB;
}

#model .inner_frame {
  width: 1100px;
  padding: 2px 20px 60px 20px;
  margin-right: auto;
  margin-left: auto;
}

#model h4 {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}

#model p {
  text-align: center;
  margin: 17px 0 30px 0;
}

#model .box_l {
  float: left;
  width: 49.05%;
  box-sizing: border-box;
}

#model .box_l img {
  width: 100%;
}

#model .clearfix {
  margin-bottom: 20px;
}

#model .btn_area {
  text-align: center;
}

#model .zeh_btn {
  font-size: 14px;
  display: inline-block;
  line-height: 1;
  color: #fff;
  text-decoration: none;
  text-align: center;
  font-weight: bold;
  box-sizing: border-box;
  border-radius: 5px;
  cursor: pointer;
  background: #424242;
  width: 400px;
  letter-spacing: 2px;
  padding: 20px;
}

@media only screen and (max-width: 768px) {
#model .inner_frame {
  width: 100%;
}
#model .box_l, #model .box_r {
  float: none;
  width: 100%;
}
#model .zeh_btn {
  width: 94%;
  font-size: 13px;
}
#model h4 {
  margin-top: 40px;
  line-height: 1.75;
}
}

/*-------------------------------------------------

		☆ page flow 家づくりの流れ

-------------------------------------------------*/
#flow {
  max-width: 1400px;
  margin: 0 auto 74px;
  padding: 57px 0 50px;
  background: #f9f7f4;
}

#flow .ttl-1 {
  margin-bottom: 50px;
  padding-bottom: 20px;
  text-align: center;
  color: #1a0b08;
  font-size: 27px;
  letter-spacing: 6.16px;
  background: url(../images/lineup_exy/line04.png) no-repeat bottom center;
}

#flow .list {
  width: 1170px;
  margin: 0 auto 17px;
}

#flow .list-item {
  float: left;
  position: relative;
  width: 370px;
  min-height: 564px;
  margin: 0 30px 26px 0;
  padding: 30px 28px 0;
  background-color: #ffffff;
  text-align: left;
}

#flow .ttl-2 {
  padding: 0 0 0 15px;
  color: #71A8CB;
  font-weight: 700;
  letter-spacing: 0.66px;
  display: inline-block;
  font-size: 18px;
  line-height: 1.2;
}

#flow .list-item:nth-child(1) .ttl-2 {
  padding-top: 19px;
  padding-bottom: 14px;
  background: url(../images/lineup_exy/01.png) no-repeat center left;
}

#flow .img-1 {
  margin-bottom: 20px;
  padding-top: 10px;
}

#flow .txt-1 {
  margin-bottom: 20px;
  color: #292828;
  letter-spacing: 0.58px;
  line-height: 27.17px;
  font-size: 14px;
  font-weight: 500;
}

#flow .txt-1 .link {
  color: #00a0c7;
}

#flow .arrow {
  position: absolute;
  top: 151px;
  right: -30px;
}

#flow .list-item:nth-child(3n) {
  margin-right: 0;
}

#flow .inner-box {
  position: relative;
  width: 760px;
  min-height: 266px;
  margin: 0 auto;
  border: 6px solid #88b1cc;
  background-color: #ffffff;
}

#flow .ttl-3 {
  width: 360px;
  margin: 0 65px 30px auto;
  padding-top: 55px;
  color: #1a0b08;
  font-size: 24px;
  line-height: 28px;
}

#flow .after-img {
  position: absolute;
  top: 32px;
  left: 30px;
}

#flow .after-txt {
  width: 395px;
  margin: 0 30px 40px auto;
  color: #595757;
  font-size: 14px;
  line-height: 28px;
  letter-spacing: 0.39px;
  font-weight: 500;
  text-align: left;
}

#flow .after-txt a.btn_more {
  margin-top: 20px;
}

@media screen and (max-width: 768px) {
#flow {
  margin-bottom: 20%;
  padding: 8% 0;
  background: #f9f7f4;
}
#flow .ttl-1 {
  margin-bottom: 5%;
  padding: 0 2% 5%;
  text-align: center;
  font-size: 22px;
  line-height: 1.6em;
  letter-spacing: 0.12em;
  color: #1a0b08;
}
#flow .list {
  width: 95%;
  margin: 0 auto;
}
#flow .list-item {
  position: relative;
  width: 94%;
  margin: 0 auto 10vh;
  padding: 5% 2% 10%;
  background-color: #ffffff;
  float: none;
}
#flow .ttl-2 {
  padding-left: 10px;
  margin: 0 auto 5% auto;
  text-align: left;
  font-size: 1.2rem;
  line-height: 1.6em;
  letter-spacing: 0.12em;
  color: #71A8CB;
  font-weight: 700;
}
#flow .img-1 {
  width: 100%;
  margin: 0 auto 6%;
  text-align: center;
}
#flow .txt-1 {
  margin: 0 auto 3%;
  padding: 0 2%;
  text-align: left;
  font-size: 0.9rem;
  line-height: 1.8em;
  letter-spacing: 0.12em;
  color: #292828;
}
#flow .arrow {
  position: absolute;
  bottom: -43px;
  right: 43%;
  transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  top: auto;
}
#flow .list-item:nth-child(3n) {
  margin-right: auto;
}
#flow .inner-box {
  width: 90%;
  margin: 0 auto;
  padding: 5% 0;
  border: 3px solid #d8dee4;
  background-color: #ffffff;
}
#flow .ttl-3 {
  margin-bottom: 5%;
  padding: 0 2%;
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.6em;
  letter-spacing: 0.12em;
  color: #1a0b08;
}
#flow .after-img {
  margin-bottom: 3%;
  text-align: center;
  position: relative;
  top: auto;
  left: auto;
}
#flow .after-txt {
  width: 100%;
  margin: 0 auto 3%;
  padding: 0 5%;
  text-align: left;
  font-size: 0.9rem;
  line-height: 1.8em;
  letter-spacing: 0.12em;
  color: #595757;
}
}

/*-------------------------------------------------

		☆ archive 家づくりお役立ち情報

-------------------------------------------------*/
.blog .blog__wrapper {
  flex-flow: wrap;
  justify-content: space-between;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  margin: 3rem 0 5rem;
}

.blog .blog__wrapper .blog__each {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  width: 49%;
  padding: 1rem;
  margin-top: 2rem;
  background-color: #ffffff;
  border-radius: 1rem;
}

.blog .blog__wrapper .blog__each .blog__thumbnail {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 46%;
  height: auto;
  min-height: 18rem;
  border-radius: 1rem;
}

.blog .blog__wrapper .blog__each .blog__each__desc {
  position: relative;
  width: 65%;
  height: 100%;
  padding-top: 1.5rem;
  padding-bottom: 4rem;
  margin-left: 2rem;
}

.blog .blog__wrapper .blog__each .blog__each__desc time {
  font-size: 1.4rem;
  font-weight: 600;
}

.color__yellow {
  color: #ebb257;
}

.blog .blog__wrapper .blog__each .blog__each__desc .blog__title {
  font-size: 18px;
  font-weight: 600;
}

.blog .blog__wrapper .blog__each .blog__each__desc .more {
  position: absolute;
  right: 1rem;
  bottom: 0rem;
  display: inline-block;
  font-weight: 600;
}

@media only screen and (max-width: 768px) {
.blog .blog__wrapper .blog__each {
  width: 100%;
}
.blog .blog__wrapper .blog__each .blog__each__desc time {
  font-size: 13px;
}
}

/*-------------------------------------------------

		☆ front concept コンセプト

-------------------------------------------------*/
#f_concept {
  position: relative;
  background: #fff;
  top: -2px;
}

@media screen and (min-width: 1024px) {
.f_concept_area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
}

.f_concept_box {
  background-color: #71a8cb;
  background-size: 30px;
}

@media screen and (min-width: 1024px) {
.f_concept_box {
    background-size: 60px;
}
}

#f_concept .one .img {
  overflow: hidden;
  padding-top: 63%;
  position: relative;
}

@media screen and (min-width: 1024px) {
#f_concept .item {
    box-sizing: border-box;
    width: 50%;
}
#f_concept .one .img {
    padding: 0;
    max-height: 614px;
}
}

#f_concept .one .img img {
  left: 50%;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media screen and (min-width: 1024px) {
#f_concept .one .img img {
    position: static;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    width: 100%;
}
}

#f_concept .one .areaTxt {
  color: #fff;
  padding: 92px 20px 26px;
  position: relative;
}

@media screen and (min-width: 1024px) {
#f_concept .one .areaTxt {
    position: relative;
}
}

@media screen and (min-width: 1024px) {
#f_concept .one .areaTxt .areaTxtIn {
    left: 50%;
    padding: 52px 22px 0 0;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 550px;
}
}

#f_concept .one .areaTxt .en {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .15em;
  margin-bottom: 15px;
  text-align: center;
}

@media screen and (min-width: 1024px) {
#f_concept .one .areaTxt .en {
    font-size: 14px;
    margin-bottom: 24px;
}
}

@media screen and (max-width: 1024px) {
#f_concept .one .areaTxt .en {
  font-size: 14px;
}
}

#f_concept .one .areaTxt .en:before {
  background-image: url(../img/concept/icon_hand.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 57px;
  left: 50%;
  margin-left: -23px;
  position: absolute;
  top: 20px;
  width: 45px;
}

@media screen and (min-width: 1024px) {
#f_concept .one .areaTxt .en:before {
    background-image: url(../img/concept/icon_hand.svg);
    height: 57px;
    left: auto;
    margin: 0;
    right: 260px;
    top: -30px;
    width: 45px;
}
}

#f_concept .one .areaTxt .en.two:before {
  background-image: url(../img/concept/icon_people.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 47px;
  left: 50%;
  margin-left: -44px;
  position: absolute;
  top: -70px;
  width: 88px;
}

@media screen and (min-width: 600px) {
#f_concept .one .areaTxt .en.two:before {
  background-image: url(../img/concept/icon_people.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 58px;
  left: 200px;
  margin: 0;
  top: -25px;
  width: 106px;
}
}

@media only screen and (max-width: 1024px) {
#f_concept .one .areaTxt .en.two:before {
  top: 24px;
}
}

#f_concept .one .areaTxt .tit {
  font-size: 15px;
  letter-spacing: .15em;
  line-height: 1.67;
  margin-bottom: 30px;
  position: relative;
  text-align: center;
  font-weight: 700;
  font-style: normal;
}

@media screen and (min-width: 1024px) {
#f_concept .one .areaTxt .tit {
    font-size: 24px;
    line-height: 1.5;
    margin-bottom: 13px;
}
}

@media only screen and (max-width: 1024px) {
#f_concept .one .areaTxt .tit {
  font-size: 18px;
}
}

@media only screen and (max-width: 320px) {
#f_concept .one .areaTxt .tit {
  font-size: 17px;
}
}

#f_concept .one .areaTxt .txt {
  font-size: 13px;
  letter-spacing: .15em;
  line-height: 1.85;
  margin-bottom: 15px;
}

@media screen and (min-width: 1024px) {
#f_concept .one .areaTxt .txt {
    font-size: 15px;
    letter-spacing: .18em;
    line-height: 1.6;
    margin-bottom: 34px;
    padding: 0 20px;
}
}

.f_concept_btn {
  display: table;
  box-sizing: border-box;
  width: 100%;
  border: 2px solid #71a8cb;
  border-radius: 3px;
  background-color: #71a8cb;
  table-layout: fixed;
}

.f_concept_btn.white {
  border: 2px solid #71a8cb;
  border-radius: 4px;
  background-color: #fff;
}

#f_concept .one .areaTxt .btn {
  border-color: #fff;
  margin: 0 auto;
  width: 260px;
  border-radius: 50px;
}

@media screen and (min-width: 1024px) {
#f_concept .one .areaTxt .btn {
    left: -10px;
    position: relative;
}
}

.f_concept_btn > a, .f_concept_btn > span {
  display: table-cell;
  position: relative;
  line-height: 1.21;
  padding: 9px 20px;
  color: #fff;
  font-size: 15px;
  text-decoration: none;
  text-align: center;
  vertical-align: middle;
  letter-spacing: 0.15em;
}

@media screen and (min-width: 1024px) {
.f_concept_btn > a, .f_concept_btn > span {
    padding: 15px 20px;
}
}

.f_concept_btn.white > a, .f_concept_btn.white > span {
  color: #71a8cb;
}

#f_concept .one .areaTxt .btn a {
  font-size: 14px;
  padding: 14px 20px;
  font-weight: bold;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

@media screen and (min-width: 1024px) {
#f_concept .one .areaTxt .btn a {
    font-size: 14px;
    padding: 15px 20px;
    font-weight: bold;
}
}

#f_concept .one .areaTxt .btn a::after {
  content: "";
  position: absolute;
  top: 0;
  right: 16px;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  transform: rotate( -45deg);
  border-right: 2px solid;
  border-bottom: 2px solid;
}

/*-------------------------------------------------

		☆ page concept コンセプト

-------------------------------------------------*/
.p_ttl1 {
  width: 100%;
  height: 460px;
  position: relative;
  background: url(../img/concept/concept_top.jpg) no-repeat center top/cover;
}

.p_ttl1 .box {
  position: absolute;
  z-index: 2;
  width: 350px;
  height: 170px;
  bottom: -89px;
  left: 50%;
  margin-left: -175px;
  background: rgba(113, 168, 203, 0.9);
  color: #fff;
  text-align: center;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 35px;
}

.p_ttl1 .en {
  display: block;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 42px;
}

.p_ttl1 .ja {
  margin-top: 10px;
  display: block;
  font-weight: bold;
  font-size: 16px;
}

.p_ttl1 .box:after {
  display: block;
  content: '';
  width: 65px;
  height: 5px;
  background: #fdd23e;
  margin: 25px auto 0;
}

.s_index {
  padding: 220px 0 90px;
  width: 100%;
  min-width: 960px;
  position: relative;
  overflow: hidden;
  margin-top: 160px;
}

.s_index .s_ttl {
  font-weight: bold;
  font-size: 3em;
  line-height: 1.75;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 1px;
}

.s_index .txt1 {
  margin-top: 60px;
  font-size: 1.6em;
  line-height: 2;
  text-align: center;
}

.s_index .logo {
  display: block;
  margin: 70px auto 0;
  width: 255px;
  height: auto;
}

.s_index .movie {
  display: inline-block;
  margin: 77px auto 14px;
  position: relative;
  width: 480px;
  overflow: hidden;
  border: 10px solid #22b5ae;
}

.s_index .img img, .s_index .img .circle {
  position: absolute;
  left: 50%;
  top: 50%;
  opacity: 0;
}

.s_index .img1 {
  margin-left: 300px;
  margin-top: -243px;
}

.s_index .img2 {
  margin-left: -358px;
  margin-top: -358px;
}

.s_index .img3 {
  margin-left: 402px;
  margin-top: 218px;
}

.s_index .img4 {
  margin-left: -667px;
  margin-top: -105px;
}

.s_index .img5 {
  margin-left: -592px;
  margin-top: 234px;
}

.s_index .img6 {
  margin-left: -344px;
  margin-top: 42px;
}

.s_index .img7 {
  margin-left: 202px;
  margin-top: -352px;
}

.s_index .img8 {
  margin-left: 458px;
  margin-top: -275px;
}

.s_index .img9 {
  margin-left: -421px;
  margin-top: -177px;
}

.s_index .img10 {
  margin-left: 421px;
  margin-top: -59px;
}

.s_index .img11 {
  margin-left: 301px;
  margin-top: 51px;
}

.s_index .img12 {
  margin-left: 520px;
  margin-top: -431px;
}

.s_index .img13 {
  margin-left: -595px;
  margin-top: -294px;
}

.s_index .img14 {
  margin-left: 557px;
  margin-top: -139px;
}

.s_index .img15 {
  margin-left: -491px;
  margin-top: -40px;
}

.s_index .img16 {
  margin-left: -469px;
  margin-top: 131px;
}

.s_index .img17 {
  margin-left: 615px;
  margin-top: 117px;
}

.s_index .img18 {
  margin-left: -416px;
  margin-top: 376px;
}

.s_index .img .circle {
  display: block;
  width: 15px;
  height: 15px;
  border-radius: 50%;
}

.s_index .img .circle.blue {
  background: #4da4c5;
}

.s_index .img .circle.yellow {
  background: #f9f066;
}

.s_index .img .circle.red {
  background: #f78585;
}

.s_index .c1 {
  margin-left: -401px;
  margin-top: -382px;
}
.s_index .c2 {
  margin-left: -88px;
  margin-top: 300px;
}
.s_index .c3 {
  margin-left: 107px;
  margin-top: -393px;
}
.s_index .c4 {
  margin-left: -521px;
  margin-top: -318px;
}
.s_index .c5 {
  margin-left: 642px;
  margin-top: -321px;
}
.s_index .c6 {
  margin-left: 460px;
  margin-top: -145px;
}
.s_index .c7 {
  margin-left: 565px;
  margin-top: 29px;
}
.s_index .c8 {
  margin-left: -535px;
  margin-top: 97px;
}
.s_index .c9 {
  margin-left: 487px;
  margin-top: 152px;
}
.s_index .c10 {
  margin-left: 290px;
  margin-top: 186px;
}
.s_index .c11 {
  margin-left: -652px;
  margin-top: 190px;
}
.s_index .c12 {
  margin-left: -361px;
  margin-top: 241px;
}

@media screen and (max-width: 768px) {
.p_ttl1 {
  background: url(../img/concept/concept_top-sp.jpg) no-repeat center top/cover;
}
.p_ttl1 .box {
  width: 72%;
  height: 120px;
  bottom: -60px;
  left: 14%;
  margin-left: 0;
  padding-top: 25px;
}
.p_ttl1 .en {
  font-size: 27px;
}
.p_ttl1 .ja {
  margin-top: 8px;
  font-size: 14px;
}
.p_ttl1 .box:after {
  height: 4px;
  margin: 15px auto 0;
}
.s_index {
  padding: 120px 0 75px;
  min-width: 100%;
  margin-top: 50px;
}
.s_index .s_ttl {
  font-size: 20px;
}
.s_index .txt1 {
  margin-top: 25px;
  font-size: 14px;
}
.s_index .logo {
  margin: 30px auto 0;
  width: 205px;
}
.s_index .movie {
  display: inline-block;
  margin: 30px auto 14px;
  width: 160px;
  border: 4px solid #22b5ae;
}
.s_index .txt2 {
  font-size: 14px;
}
.s_index .img1, .s_index .img2, .s_index .img3, .s_index .img4 {
  width: 54px;
  height: auto;
}
.s_index .img6, .s_index .img7, .s_index .img9, .s_index .img12, .s_index .img13, .s_index .img14, .s_index .img16 {
  width: 28px;
  height: auto;
}
.s_index .img1 {
  margin-left: 122px;
  margin-top: 187px;
}
.s_index .img2 {
  margin-left: -171px;
  margin-top: 144px;
}
.s_index .img3 {
  margin-left: 121px;
  margin-top: -134px;
}
.s_index .img4 {
  margin-left: -200px;
  margin-top: -61px;
}
.s_index .img6 {
  margin-left: -97px;
  margin-top: -256px;
}
.s_index .img7 {
  margin-left: 128px;
  margin-top: 70px;
}
.s_index .img9 {
  margin-left: -169px;
  margin-top: -145px;
}
.s_index .img12 {
  margin-left: 113px;
  margin-top: -259px;
}
.s_index .img13 {
  margin-left: -188px;
  margin-top: 248px;
}
.s_index .img14 {
  margin-left: 153px;
  margin-top: -49px;
}
.s_index .img16 {
  margin-left: 42px;
  margin-top: 326px;
}
.s_index .img .circle {
  width: 8px;
  height: 8px;
}
.s_index .c1 {
  margin-left: -135px;
  margin-top: 26px;
}
.s_index .c2 {
  margin-left: 68px;
  margin-top: -267px;
}
.s_index .c3 {
  margin-left: -140px;
  margin-top: -233px;
}
.s_index .c4 {
  margin-left: -120px;
  margin-top: -82px;
}
.s_index .c5 {
  margin-left: -160px;
  margin-top: 89px;
}
.s_index .c6 {
  margin-left: 164px;
  margin-top: 292px;
}
.s_index .c7 {
  margin-left: 162px;
  margin-top: 121px;
}
.s_index .c8 {
  margin-left: 127px;
  margin-top: 9px;
}
.s_index .c10 {
  margin-left: -148px;
  margin-top: 234px;
}
.s_index .c11 {
  margin-left: -50px;
  margin-top: 331px;
}
.s_index .c9, .s_index .c12, .s_index .img5, .s_index .img8, .s_index .img10, .s_index .img11, .s_index .img15, .s_index .img17, .s_index .img18 {
  display: none;
}
}


/* concept think */
#concept_think_area {
  box-sizing: border-box;
  width: 100%;
  overflow: hidden;
  background: #fff;
  min-height: 105px;
  padding: 130px 0 105px;
  position: relative;
  color: #000;
  font-style: normal;
  font-weight: 500;
}

#concept_think_area .copy {
  position: absolute;
  top: 185px;
  right: 50%;
  margin-right: 110px;
}

#concept_think_area .copy img {
  width: 360px;
}

#concept_think_area .img img {
  width: 100%;
}

#concept_think_area .img1, #concept_think_area .img2, #concept_think_area .img3, #concept_think_area .img4, #concept_think_area .img5 {
  position: absolute;
  top: 0;
  left: 50%;
}

#concept_think_area .img1 {
  top: 97px;
  margin-left: 325px;
}

#concept_think_area .img2 {
  top: 567px;
  margin-left: 275px;
}

#concept_think_area .img3 {
  top: 408px;
  margin-left: -478px;
}

#concept_think_area .img4 {
  top: 685px;
  margin-left: 10px;
}

#concept_think_area .img5 {
  top: 890px;
  margin-left: 312px;
}

#concept_think_area .txt1, #concept_think_area .txt2, #concept_think_area .txt3, #concept_think_area .txt4 {
  padding-left: 524px;
}

#concept_think_area .txt4.txt {
  margin-bottom: 137px;
  padding-bottom: 100px;
}

#concept_think_area > p {
  width: 1010px;
  margin: 0 auto;
  font-size: 1.6em;
  line-height: 2;
  text-align: left;
  box-sizing: border-box;
  line-height: 1.75;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: normal;
  font-style: normal;
  letter-spacing: 1px;
}

#concept_think_area .txt2, #concept_think_area .txt3, #concept_think_area .txt4 {
  margin-top: 2em;
}

#concept_think_area .txt6, #concept_think_area .txt7 {
  margin-top: 2em;
}

@media screen and (max-width: 768px) {
#concept_think_area {
  min-height: 19px;
  padding: 20px 0 90px;
}
#concept_think_area .copy {
  position: relative;
  top: 0;
  right: auto;
  margin: 0 auto;
}
#concept_think_area .copy img {
  width: 74%;
  height: auto;
}
#concept_think_area > p {
  width: 74%;
  font-size: 15px;
  line-height: 2.28;
}
#concept_think_area .img1, #concept_think_area .img2, #concept_think_area .img3, #concept_think_area .img4, #concept_think_area .img5 {
  position: relative;
  top: 0;
  left: 0;
}
#concept_think_area .img1 {
  top: 0;
  margin: 0 0 0 6.7%;
  text-align: left;
}
#concept_think_area .txt1, #concept_think_area .txt2, #concept_think_area .txt3, #concept_think_area .txt4, #concept_think_area .txt5, #concept_think_area .txt6, #concept_think_area .txt7 {
  padding-left: 0;
}
#concept_think_area .txt1 {
  margin-top: 40px;
}
#concept_think_area .txt2, #concept_think_area .txt4 {
  margin-top: 2.28em;
}
#concept_think_area .img2 {
  top: 0;
  margin: -5px 6.7% 0 0;
  text-align: right;
}
#concept_think_area .txt4.txt {
  margin-bottom: 0;
  padding-bottom: 40px;
}
#concept_think_area .img3 {
  margin-left: auto;
  margin-right: 10px;
  width: 66%;
}
#concept_think_area .txt5.txt {
  padding: 40px 0;
}
#concept_think_area .img4 {
  width: 64%;
}
#concept_think_area .img5 {
  width: 67%;
  margin-left: auto;
}
#concept_think_area .txt6 {
  margin-top: 3em;
}
#concept_think_area .txt7 {
  margin-bottom: 3em;
}
}

/* 5box */
#s_activity {
  width: 100%;
  overflow: hidden;
  background: #fff;
  min-height: 105px;
  position: relative;
  box-sizing: border-box;
  padding: 20px 0 105px 0;
}

.s_ttl1 .en {
  font-family: 'Century Gothic', sans-serif;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 0.05em;
  font-size: 4em;
  display: block;
}

.s_ttl1 .ja {
  font-style: normal;
  font-weight: 700;
  color: #989898;
  font-size: 14px;
}

.s_ttl1 .en:after {
  content: '';
  display: block;
  width: 50px;
  height: 2px;
  background: #71a8cb;
  margin: 15px auto 20px;
}

.s_lead1 {
  margin-top: 70px;
  color: #000;
  font-style: normal;
  font-weight: 700;
  font-size: 1.4em;
  line-height: 2;
  text-align: center;
}

#s_activity .s_lead1 {
  margin-bottom: 95px;
  text-align: center;
}

#s_activity .themes {
  width: 960px;
  margin: 0 auto;
  zoom: 1;
  overflow: hidden;
}

#s_activity .themes:before {
  content: '';
  display: table;
}

#s_activity .theme {
  width: 900px;
  background: #f5f5f5;
  position: relative;
  padding: 0 0 85px;
  clear: both;
  margin: 0 auto 80px auto;
}

#s_activity .theme .img {
  display: block;
  margin-top: -58px;
  position: relative;
  z-index: 2;
  width: 900px;
  height: 425px;
  box-sizing: border-box;
  color: #fff;
  text-align: center;
  padding: 0 0 0 55px;
  text-decoration: none;
}

#s_activity .t_1 .img {
  background: url(../img/concept/concept_5box_1.jpg) no-repeat center top/900px;
}

#s_activity .t_2 .img {
  background: url(../img/concept/concept_5box_2.jpg) no-repeat center top/900px;
}

#s_activity .t_3 .img {
  background: url(../img/concept/concept_5box_3.jpg) no-repeat center top/900px;
}

#s_activity .t_4 .img {
  background: url(../img/concept/concept_5box_4.jpg) no-repeat center top/900px;
}

#s_activity .t_5 .img {
  background: url(../img/concept/concept_5box_5.jpg) no-repeat center top/900px;
}

#s_activity .theme .img:before {
  content: '';
  display: inline-block;
  vertical-align: bottom;
  width: 1px;
  height: 425px;
  margin-left: -1px;
}

#s_activity .theme .img .inr {
  display: inline-block;
  vertical-align: bottom;
  margin-bottom: 95px;
  opacity: 0;
  text-shadow: 0 0 27px rgb(0 0 0 / 20%);
}

#s_activity .theme .img .num {
  display: inline-block;
  font-family: 'Century Gothic', sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0.05em;
  font-style: italic;
  font-size: 1.5em;
  letter-spacing: 0.25em;
  padding-bottom: 10px;
  position: relative;
}

#s_activity .theme .img .num:after {
  content: '';
  width: 84px;
  height: 1px;
  background: #fff;
  position: absolute;
  left: 0;
  bottom: 0;
}

#s_activity .theme .img .ttl {
  margin-top: 15px;
}

#s_activity .theme .img .ttl {
  line-height: 1.75;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 900;
  font-style: normal;
  letter-spacing: 1px;
  font-size: 4em;
  display: block;
}

#s_activity .theme .img .ttl .ja {
  display: block;
  font-style: normal;
  font-weight: 700;
  font-size: 18px;
}

#s_activity .theme .img .copy {
  margin-top: 18px;
  font-style: normal;
  font-weight: 700;
  font-size: 2em;
  letter-spacing: 6px;
  text-align: center;
}

#s_activity .theme .txt {
  margin-top: 25px;
  padding: 0 50px;
  text-align: left;
  line-height: 2;
  color: #000;
  font-family: 'Century Gothic', sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: 1.4em;
}

@media screen and (max-width: 768px) {
#s_activity .s_lead1 {
  margin-top: 50px;
  margin-bottom: 50px;
}
#s_activity .themes {
  width: 325px;
  max-width: 86%;
}
#s_activity .t_1, #s_activity .t_3, #s_activity .t_2, #s_activity .t_4 {
  float: none;
}
#s_activity .theme {
  width: auto;
  padding: 0 0 50px;
  margin-bottom: 20px;
}
#s_activity .theme .img {
  position: relative;
  margin: 0 0 20px;
  width: 100%;
  height: 230px;
  padding: 0 20px;
}
#s_activity .theme .img .inr {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin: 0;
  padding: 0;
  width: 100%;
}
#s_activity .t_1 .img {
  background: url(../img/concept/concept_5box_1-sp.jpg) no-repeat center top/cover;
}
#s_activity .t_2 .img {
  background: url(../img/concept/concept_5box_2-sp.jpg) no-repeat center top/cover;
}
#s_activity .t_3 .img {
  background: url(../img/concept/concept_5box_3-sp.jpg) no-repeat center top/cover;
}
#s_activity .t_4 .img {
  background: url(../img/concept/concept_5box_4-sp.jpg) no-repeat center top/cover;
}
#s_activity .t_5 .img {
  background: url(../img/concept/concept_5box_5-sp.jpg) no-repeat center top/cover;
}
#s_activity .theme .img:before {
  height: 230px;
}
#s_activity .theme .img .num {
  font-size: 1.2em;
  padding-bottom: 8px;
}
#s_activity .theme .img .num:after {
  width: 68px;
}
#s_activity .theme .img .ttl {
  margin-top: 14px;
  font-size: 3em;
}
#s_activity .theme .img .ttl .en {
  font-size: 2.5em;
  margin-right: -20px;
}
#s_activity .theme .img .copy {
  margin-top: 15px;
  font-size: 1.4em;
}
}

@media screen and (max-width: 320px) {
#s_activity .theme .img .ttl {
  font-size: 2em;
}
}

/* コンセプト内 選ばれる理由 強み */
#s_strength .strength_list {
  width: 900px;
  margin: 45px auto 30px;
  zoom: 1;
}

#s_strength .strength_list:before, #s_strength .strength_list:after {
  content: '';
  display: table;
}

#s_strength .strength_list:after {
  content: '';
  display: table;
  clear: both;
}

#s_strength .strength {
  width: 800px;
  height: 330px;
  background: #f5f5f5;
  position: relative;
  padding: 50px 0;
  box-sizing: border-box;
  margin-bottom: 40px;  
}

#s_strength .strength1 {
  float: right;
  padding-right: 400px;
}

#s_strength .strength2 {
  float: left;
  padding-left: 400px;
}

#s_strength .strength3 {
  float: right;
  padding-right: 400px;
}

#s_strength .strength .num {
  position: absolute;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #71a8cb;
  line-height: 44px;
  color: #fff;
  font-weight: 900;
  letter-spacing: 0.05em;
  font-size: 1.8em;
  text-align: center;
}

#s_strength .strength1 .num {
  top: 29px;
  left: -22px;
  text-align: center;
}

#s_strength .strength2 .num {
  top: -22px;
  right: -22px;
}

#s_strength .strength3 .num {
  top: 29px;
  left: -22px;
}

#s_strength .strength .ttl {
  font-size: 18px;
  line-height: 1.75;
}

#s_strength .strength1 .ttl {
  padding-top: 25px;
}

#s_strength .strength2 .ttl {
  padding-top: 25px;
}

#s_strength .strength3 .ttl {
  padding-top: 25px;
}

#s_strength .strength .txt {
  margin-top: 35px;
  font-size: 13px;
  line-height: 1.83;
  color: #333;
  padding: 0 2rem;
}

#s_strength .strength .img {
  position: absolute;
}

#s_strength .strength1 .img {
  right: 0;
  top: 0;
}

#s_strength .strength2 .img {
  left: 0;
  bottom: 0;
}

#s_strength .strength3 .img {
  right: 0;
  top: 0;
}

#s_strength .strength .img img {
  width: 400px;
  height: auto;
}

@media screen and (max-width: 768px) {
#s_strength .strength_list {
  width: 86%;
  margin: 35px auto 26px;
}
#s_strength .strength {
  width: auto;
  height: auto;
  padding: 70px 0 0;
}
#s_strength .strength1 {
  float: none;
  padding-right: 0;
  padding-left: 0;
}
#s_strength .strength:before, #s_strength .strength:after {
  left: 50%;
  margin-left: -258px;
}
#s_strength .strength1 .num {
  top: -5px;
  left: 50%;
  margin-left: -22px;
}
#s_strength .strength1 .ttl {
  padding-top: 0;
}
#s_strength .strength .txt {
  margin-top: 20px;
  line-height: 2;
  text-align: center;
  padding: 0 20px;
}
#s_strength .strength1 .txt {
  margin-bottom: 15px;
}
#s_strength .strength .img {
  position: relative;
}
#s_strength .strength1 .img {
  right: 0;
  top: 0;
}
#s_strength .strength .img img {
  width: 100%;
}
#s_strength .strength2 {
  margin-top: 12px;
  float: none;
  padding-left: 0;
  padding-bottom: 55px;
}
#s_strength .strength2 .num {
  top: -5px;
  right: 50%;
  margin-right: -22px;
}
#s_strength .strength2 .ttl {
  padding-top: 0;
  margin-bottom: 30px;
}
#s_strength .strength2 .img {
  left: 0;
  bottom: 0;
}
#s_strength .strength3 {
  margin-top: 12px;
  float: none;
  padding-right: 0;
  padding-bottom: 55px;
}
#s_strength .strength3 .num {
  top: -5px;
  left: 50%;
  margin-left: -22px;
}
#s_strength .strength3 .ttl {
  padding-top: 0;
  margin-bottom: 30px;
}
#s_strength .strength3 .img {
  right: 0;
  top: 0;
}
#s_strength .strength3 .txt {
  margin-top: 15px;
}

}

/* コンセプト内 お客様の声 */
#concept_voice {
  width: 100%;
  overflow: hidden;
  background: #f5f5f5;
  min-height: 105px;
  position: relative;
  box-sizing: border-box;
  padding: 105px 0;
  margin-top: 80px;
}

#concept_voice .voices {
  width: 1010px;
  margin: 60px auto 24px;
  overflow: hidden;
}

#concept_voice .voices:before, #concept_voice .voices:after {
  content: '';
  display: table;
}

#concept_voice .voice {
  width: 600px;
  background: #fff;
  position: relative;
  padding: 80px 90px 84px;
  box-sizing: border-box;
}

#concept_voice .voice1 {
  float: right;
  margin-right: 50px;
  min-height: 480px;
}

#concept_voice .voice .ttl {
  display: inline-block;
  color: #000;
  font-family: 'Century Gothic', sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 1.6em;
  line-height: 2;
  margin-bottom: 35px;
  position: relative;
}

#concept_voice .voice .ttl:before, #concept_voice .voice .ttl:after {
  position: absolute;
  color: #71a8cb;
  font-family: 'Century Gothic', sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0.05em;
  font-style: italic;
  font-size: 40px;
}

#concept_voice .voice .ttl:before {
  content: '“';
  top: -30px;
  left: -30px;
}

#concept_voice .voice .ttl:after {
  content: '”';
  bottom: -40px;
  right: -30px;
}

#concept_voice .voice .profile {
  position: absolute;
  z-index: 2;
}

#concept_voice .voice1 .profile {
  left: -360px;
  top: 105px;
}

#concept_voice .voice .profile > img {
  width: 400px;
  height: auto;
}

#concept_voice .voice .name {
  color: #000;
  font-family: 'Century Gothic', sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 1.2em;
  padding-top: 15px;
}

#concept_voice .voice .name img {
  display: block;
  margin: 12px auto;
  height: auto;
}

#concept_voice .voice1 .name img {
  width: 119px;
  height: 42px;
}

#concept_voice .voice > p {
  text-align: left;
  font-size: 1.4em;
  line-height: 2;
}

.btn_more_en {
  display: block;
  text-decoration: none;
  color: #000;
  width: 100px;
  line-height: 32px;
  border: 1px solid #000;
  font-family: 'Century Gothic', sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.5em;
  text-align: center;
}

#concept_voice .voice .btn_more_en {
  display: inline-block;
  margin-top: 20px;
}

@media screen and (max-width: 768px) {
#concept_voice .voices, #concept_voice .voice {
  width: 100%;
}
#concept_voice .voice {
  padding: 60px 4% 60px;
}
#concept_voice .voice1 {
  float: none;
  margin-right: 0;
  min-height: inherit;
}
#concept_voice .voice .ttl {
  margin-bottom: 26px;
}
#concept_voice .voice1 .profile {
  left: 0;
  top: auto;
  position: relative;
}
#concept_voice .voice .profile > img {
  width: 100%;
}
#concept_voice .voice .name img {
  margin: 24px auto 15px;
}
#concept_voice .voice > p {
  margin-top: 25px;
  padding: 0 25px;
  font-size: 1.2em;
}
#concept_voice .voice .btn_more_en {
  margin-top: 20px;
}
#concept_voice .voice .name {
  text-align: center;
}
}

/*-------------------------------------------------

		☆ character

-------------------------------------------------*/

#f_character {
  padding-bottom: 12px;
  background: #fff;
  position: relative;
  top: -2px;
  padding-top: 100px;
}

@media screen and (min-width: 1024px) {
#f_character {
    padding-bottom: 5px;
}
}

@media only screen and (max-width: 1024px) {
#f_character {
  padding-top: 40px;
  padding-bottom: 40px;
}
}

@media only screen and (max-width: 1024px) {
#f_character .f_midashi span.f_midashi_ja {
  font-size: 25px;
}
}

#f_character .leadTxt {
  padding: 32px 0 15px;
  text-align: center;
}

@media screen and (min-width: 1024px) {
#f_character .leadTxt {
    padding: 72px 0 32px;
}
}

#f_character .leadTxt .tit {
  color: #666;
  font-size: 21px;
  font-weight: bold;
  letter-spacing: .15em;
  margin-bottom: 12px;
}

@media screen and (min-width: 1024px) {
#f_character .leadTxt .tit {
    font-size: 34px;
    margin-bottom: 16px;
}
}

#f_character .leadTxt .en {
  color: #cc9f6e;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: .15em;
  margin-bottom: 10px;
  margin-top: 0;
}

@media screen and (min-width: 1024px) {
#f_character .leadTxt .en {
    font-weight: 500;
    margin-bottom: 34px;
}
}

#f_character .leadTxt .txt {
  font-size: 15px;
  letter-spacing: .15em;
  line-height: 1.67;
}

@media screen and (min-width: 1024px) {
#f_character .leadTxt .txt {
    font-size: 17px;
    line-height: 1.76;
}
}

#f_character .list {
  padding: 60px 0 10px 0;
}

@media only screen and (max-width: 1024px) {
#f_character .list {
  padding: 20px 0 10px 0;
}
}

#f_character .list .item {
  padding-bottom: 13px;
}

@media screen and (min-width: 1024px) {
#f_character .list .item {
    padding-bottom: 54px;
}
}

@media screen and (min-width: 1024px) {
.f_character_box .item {
    width: 31%;
}
}

#f_character .list .item a {
  display: block;
  -webkit-transition: all .3s ease;
  -moz-transition: all .3s ease;
  -ms-transition: all .3s ease;
  -o-transition: all .3s ease;
  transition: all .3s ease;
  text-decoration: none;
}

#f_character .list .item .img {
  position: relative;
}

#f_character .list .item .img img {
  border-radius: 10px;
}

@media screen and (min-width: 1024px) {
#f_character .list .item .img {
    margin-bottom: 19px;
}
}

#f_character .list .item dt {
  color: #71a8cb;
  font-weight: bold;
  font-size: 15px;
  letter-spacing: .07em;
  line-height: 1.5;
  padding: 53px 0 4px;
  position: relative;
  text-align: center;
  font-weight: 700;
  font-style: normal;
}

@media screen and (min-width: 1024px) {
#f_character .list .item dt {
    font-size: 19px;
    letter-spacing: .07em;
    line-height: 1.4;
    padding: 8px 0 8px 70px;
    text-align: left;
}
}

@media only screen and (max-width: 1024px) {
#f_character .list .item dt {
  font-size: 20px;
  font-weight: bold;
  letter-spacing: .15em;
  line-height: 1.5;
  padding: 53px 0 10px;
  position: relative;
  text-align: center;
}
}

@media only screen and (max-width: 320px) {
#f_character .list .item dt {
  font-size: 18px;
}
}

#f_character .list .item dt:before {
  left: 0;
  top: 50% !important;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

#f_character .list .item:nth-child(1) dt:before {
  background-image: url(../img/chara/01.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 26px;
  position: absolute;
  top: 19px;
  width: 31px;
}

#f_character .list .item:nth-child(2) dt:before {
  background-image: url(../img/chara/02.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 26px;
  position: absolute;
  top: 19px;
  width: 31px;
}

#f_character .list .item:nth-child(3) dt:before {
  background-image: url(../img/chara/03.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 26px;
  position: absolute;
  top: 19px;
  width: 31px;
}

#f_character .list .item:nth-child(4) dt:before {
  background-image: url(../img/chara/04.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 26px;
  position: absolute;
  top: 19px;
  width: 31px;
}

#f_character .list .item:nth-child(5) dt:before {
  background-image: url(../img/chara/05.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 26px;
  position: absolute;
  top: 19px;
  width: 31px;
}

#f_character .list .item:nth-child(6) dt:before {
  background-image: url(../img/chara/06.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 26px;
  position: absolute;
  top: 19px;
  width: 31px;
}

#f_character .list .item:nth-child(1) dt:before {
    height: 35px;
    width: 40px;
}

#f_character .list .item:nth-child(2) dt:before {
  height: 35px;
  width: 49px;
}

#f_character .list .item:nth-child(3) dt:before {
  height: 35px;
  width: 49px;
}

#f_character .list .item:nth-child(4) dt:before {
  height: 35px;
  width: 49px;
}

#f_character .list .item:nth-child(5) dt:before {
  height: 35px;
  width: 48px;
}

#f_character .list .item:nth-child(6) dt:before {
  height: 35px;
  width: 48px;
}

@media only screen and (max-width: 1024px) {
#f_character .list .item dt:before {
  height: 35px;
  width: 31px !important;
  top: 30px !important;
  left: 0;
  right: 0;
  margin: auto;
}
}

#f_character .list .item + .item {
  border-top: 1px dotted #bdbdbd;
  padding: 20px 0 13px;
}

@media screen and (min-width: 1024px) {
#f_character .list .item + .item {
    border: none;
    padding: 0 0 54px;
}
}

@media screen and (min-width: 1024px) {
.f_character_box .item:nth-child(3n+2) {
    margin: 0 3.5%;
}
}

#f_character .list .item dd {
  font-size: 15px;
  line-height: 1.6;
}

@media screen and (min-width: 1024px) {
#f_character .list .item dd {
  color: #666;
  font-size: 13px;
  letter-spacing: .15em;
  line-height: 1.85;
}
}

@media only screen and (max-width: 1024px) {
#f_character .list .item dd {
  color: #666;
  font-size: 14px;
  letter-spacing: .15em;
  line-height: 1.85;
}
}

#f_character .list .item .img .label {
  position: absolute;
  bottom: -21px;
  right: 10px;
  width: 102px;
}


/*-------------------------------------------------

		☆ front voice

-------------------------------------------------*/
#f_voice {
  width: 100%;
  padding: 0;
  background: #fff;
  margin-top: -2px;
}

@media only screen and (max-width: 1024px) {
#f_voice {
  margin: -2px 0 auto;
}
}

#f_voice .ttl {
  text-align: center;
  padding-top: 30px;
  position: relative;
  margin-bottom: 50px;

}

#f_voice>.f-section {
  margin-bottom: 40px;
  position: relative;
  padding-top: 40px;
}

#f_voice>.f-section::after {
  content: "";
  border-top: 3px solid #00a0c2;
  width: 40px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}

#f_voice>.f-section em {
  font-size: 20px;
}

@media only screen and (max-width: 1024px) {
#f_voice>.f-section em {
  font-size: 13px;
}
}

@media only screen and (max-width: 320px) {
#f_voice>.f-section em {
  font-size: 12px;
}
}

#f_voice .rel-box {
  position: relative;
}

#f_voice .rel-box .ttl {
  position: absolute;
  top: -54px;
  left: 21%;
  z-index: 9999;
}

@media only screen and (max-width: 1024px) {
#f_voice .rel-box .ttl {
  width: 38%;
}
}

#f_voice .f_voice_sliderBox {
  overflow: hidden;
  position: relative;
  width: 100%;
  padding-bottom: 100px;
}

@media only screen and (max-width: 1024px) {
#f_voice .f_voice_sliderBox {
  padding-bottom: 60px;
}
}

#f_voice .f_voice_sliderBox .slick-prev, #f_voice .f_voice_sliderBox .slick-next {
  position: absolute;
  top: 40%;
  outline: 0;
  width: 80px;
  height: 80px;
  text-indent: -9999px;
  z-index: 9999;
  background-size: cover;
  cursor: pointer;
}

#f_voice .f_voice_sliderBox .slick-prev {
  left: 760px;
  background-image: url(../img/voice/right_arrow.svg);
  background-position: 0 0;
  left: 290px;
}

#f_voice .f_voice_sliderBox .slick-next {
  right: 760px;
  background-image: url(../img/voice/left_arrow.svg);
  background-position: 0 0;
  right: 290px;
}

@media only screen and (max-width: 1024px) {
#f_voice .f_voice_sliderBox .slick-prev {
  background: url(../img/voice/right_arrow.svg) no-repeat right center/20px;
}
#f_voice .f_voice_sliderBox .slick-next {
  background: url(../img/voice/left_arrow.svg) no-repeat right center/20px;
}
#f_voice .f_voice_sliderBox .slick-prev {
  left: 0;
  margin-left: -50px;
}
#f_voice .f_voice_sliderBox .slick-next {
  right: 0;
  margin-right: 10px;
}
}

#f_voice .f_voice_list .slick-slide img {
  transform: none;
}

#f_voice .f_voice_list li {
  position: relative;
  padding-bottom: 25px;
  margin: 0 40px 20px 40px;
}

#f_voice .f_voice_pic {
  height: 530px;
  overflow: hidden;
}

@media only screen and (max-width: 1024px) {
#f_voice .f_voice_pic {
  min-height: 266px;
  height: auto;
}
}

#f_voice .f_voice_pic img {
  width: 100%;
  height: 530px;
  display: block;
  margin: 0 auto;
  object-fit: cover;
  font-family: "object-fit: cover;";
  border-radius: 10px;
}

@media only screen and (max-width: 1024px) {
#f_voice .f_voice_pic img {
  height: 400px;
}
}

#f_voice .wh-box {
  background-color: #fff;
  padding: 16px;
  width: 320px;
  border-bottom: 1px solid #71a8cb;
  position: absolute;
  bottom: 0px;
  left: -40px;
}

#f_voice .f_voice_ttl_1 {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1.4;
  padding: 0 10px;
  color: #000;
  text-align: left;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

#f_voice .f_voice_customer {
  font-size: 14px;
  padding-bottom: 5px;
  margin-bottom: 10px;
  line-height: 1.4;
  color: #595757;
  float: left;
  width: 70%;
  text-align: left;
}

#f_voice .btn {
  text-align: center;
  float: right;
  width: 50px;
  color: #71a8cb;
  font-size: 10px;
  position: relative;
}

#f_voice .btn::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 5px;
  height: 5px;
  border-top: 2px solid #71a8cb;
  border-right: 2px solid #71a8cb;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.clearfix:after {
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
  line-height: 0;
  content: ".";
}

/*-------------------------------------------------

		☆ page voice お客様の声

-------------------------------------------------*/
.page__voice__impressions {
  width: 100%;
  max-width: 1012px;
  padding-right: 1.6rem;
  padding-left: 1.6rem;
  margin: 0 auto;
  overflow: hidden;
  margin-top: 6rem;
}

.page__voice__impressions__name {
  position: relative;
  width: 100%;
  padding-left: 2.5rem;
  color: #3a3531;
  font-family: "YuGothic";
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 3.5;
  background-color: #f4f0f1;
  border-radius: 1rem;
}

.page__voice__impressions__name:before {
  display: inline-block;
  width: 3rem;
  height: 3rem;
  margin-right: 1rem;
  margin-bottom: -.5rem;
  content: "";
  background-image: url(../../img/voice__icon.png);
  background-repeat: no-repeat;
  background-size: contain;
}

.page__voice__impressions__box {
  padding: 3rem;
  margin: 3rem 0;
  border: 3px dotted #5792b9;
  border-radius: 1rem;
}

.page__voice__impressions__box__digest {
  color: #3a3531;
  font-family: "YuGothic";
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.5;
}

.page__voice__impressions__box__deck {
  flex-flow: wrap;
  justify-content: space-between;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  position: relative;
  margin-top: 2rem;
}

.page__voice__impressions__box__deck__text {
  width: 50%;
}

.page__voice__impressions__box__deck__score {
  width: 50%;
}

.page__voice__impressions__comment {
  padding: 2.5rem 3rem;
  margin-bottom: 3rem;
  border-color: #ebebea;
  border-style: solid;
  border-width: 3px;
  border-radius: 10px;
}

.page__voice__impressions__comment__title {
  margin-bottom: 1rem;
  color: #3a3531;
  font-family: "YuGothic";
  font-size: 1.6rem;
  font-weight: bold;
}

.page__voice__impressions__comment__text {
  color: #3a3531;
  font-family: "YuGothic";
  font-size: 1.6rem;
  text-align: left;
}

.page__voice__impressions__room {
  flex-flow: wrap;
  justify-content: space-between;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}

@media only screen and (min-width: 767px) {
.page__voice__impressions__room {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.page__voice__impressions__room__image:nth-of-type(1) {
  display: block;
  margin-right: 1rem;
}
.page__voice__impressions__room__image:nth-of-type(2) {
  margin-right: 1rem;
}
}

.page__voice__impressions__room__image img {
  width: 100%;
}

/*-------------------------------------------------

		☆ page interview 暮らしのインタビュー

-------------------------------------------------*/
#p_voice .voice_list {
  background: #eeefef;
  padding: 41px 21px 21px;
  margin-bottom: 120px;
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#p_voice .voice_list li {
  line-height: 1.4;
  width: 49%;
  margin-right: 2%;
  background: #fff;
  position: relative;
  margin-bottom: 20px;
  padding: 20px 10px 48px;
}

@media only screen and (max-width: 768px) {
#p_voice .voice_list {
  margin-bottom: 60px;
}
#p_voice .voice_list li {
  width: 100%;
  margin-right: 0;
}
}

#p_voice .voice_list li:nth-child(2n) {
  margin-right: 0;
}

#voice .voice_list li a:hover {
  text-decoration: none;
}

#p_voice .voice_pic {
  width: 100%;
  height: 350px;
  overflow: hidden;
  text-align: center;
  margin-bottom: 15px;
}

#p_voice .voice_pic img {
  width: 100%;
  height: 350px;
}

#p_voice .voice_pic img:hover {
  -ms-filter: "alpha( opacity=80 )";
  filter: alpha(opacity=80);
  opacity: 0.8;
}

#p_voice .voice_name {
  font-size: 13px;
  margin-bottom: 10px;
  line-height: 1.4;
  color: #60a7c5;
}

#p_voice .voice_ttl_1 {
  font-size: 16px;
  margin-bottom: 20px;
  line-height: 1.4;
  font-weight: 500;
  color: #000;
}

#p_voice .voice_list .btn {
  text-align: center;
  background: linear-gradient(to left, #83b7d8, #71a8cb);
  color: #fff;
  font-size: 13px;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 2%;
}

#p_voice .voice_list .btn::after {
  content: ' >';
}


@media only screen and (min-width: 769px) {
.p_voice_movie video {
  padding: 0px 0px 40px 0px;
}
}
  

/*-------------------------------------------------

		☆ single voice お客様の声

-------------------------------------------------*/
#s_voice .s_voice_contents {
  background: #eeefef;
  padding: 40px 20px;
  margin-bottom: 30px;
}

#s_voice .s_voice_contents_in {
  background: #fff;
  padding: 40px 20px;
}

#s_voice .s_voice_date {
  font-size: 0.75em;
  margin-bottom: 10px;
  line-height: 1.4;
}

#s_voice .s_voice_contents .s_voice_date {
  font-size: 15px;
  margin-bottom: 15px;
  display: block;
  color: #60a7c5;
}

#s_voice .s_voice_date::before {
  content: "■";
}

#s_voice .s_voice_contents .s_voice_ttl {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 30px;
  padding-bottom: 25px;
  border-bottom: 1px #ccc solid;
  line-height: 1.4;
}

#s_voice .s_voice_contents .s_voice_pic {
  text-align: center;
  margin-bottom: 20px;
}

#s_voice .s_voice_contents .s_voice_pic img {
  max-width: 100%;
  max-height: 900px;
  width: auto;
}

@media only screen and (max-width: 768px) {
#s_voice .s_voice_contents .s_voice_ttl {
  font-size: 20px;
}
}

.wysiwyg {
  word-wrap: break-word;
  margin-bottom: 30px;
  padding: 20px;
}

@media only screen and (max-width: 768px) {
.wysiwyg {
  padding: 0;
}
}

.wysiwyg p {
  min-height: 15px;
  min-width: 10px;
  line-height: 1.75;
  font-size: 15px;
}

.wysiwyg strong {
  font-weight: bolder;
  padding-bottom: 8px;
  display: block;
  padding-top: 20px;
}

.wysiwyg .voice_tegaki_txt {
  min-height: 15px;
  min-width: 10px;
  line-height: 1.75;
  font-size: 16px;
  padding-top: 20px;
}

.voice_staff_comment {
  margin-top: 60px;
  border-radius: 8px;
  font-size: 16px;
  line-height: 1.75;
}

.voice_tegaki_txt h5, .voice_staff_comment h5 {
  font-weight: bold;
  margin-bottom: 10px;
}

.voice_tegaki_txt h5 span {
  color: #ffab0f;
  padding-right: 5px;
}

.voice_staff_comment h5 span {
  color: #5ca7bf;
  padding-right: 5px;
}

.voice_home_img {
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 2rem;
}

.voice_home_img li {
  padding-right: 20px;
}

.voice_home_img li:last-child {
  padding-right: 0;
}

.voice_home_img li img {
  border-radius: 18px;
}

.s_voice_tegaki {
  margin-bottom: 1rem;
}

.s_voice_text {
  padding: 0 2rem 4rem 2rem;
  font-weight: bold;
}

.s_voice_text span {
  margin-bottom: 20px;
  padding: 10px 0 10px 10px;
  width: 100%;
  font-weight: normal;
  border-left: 10px solid #fdd270;
  display: block;
  background: #f1f1f1;
}

@media only screen and (max-width: 768px) {
.s_voice_text {
  padding: 0 0 2rem 0;
  font-weight: bold;
}
.voice_staff_comment {
  margin-top: 60px;
}
.voice_home_img {
  display: block;
}
.voice_home_img li {
  width: 50%;
  display: inline-block;
}
.voice_home_img li:last-child {
  padding-top: 20px;
  padding-right: 20px;
}
}

/* other voice */
.recomend_ttl {
  font-size: 24px;
  text-align: center;
  margin-top: 64px;
  margin-bottom: 56px;
  font-weight: 700;
}

.voice_other_list {
  background: #eeefef;
  padding: 41px 21px 21px;
  margin-bottom: 120px;
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.voice_other_list li {
  line-height: 1.4;
  width: 23.5%;
  margin-right: 2%;
  background: #fff;
  position: relative;
  margin-bottom: 20px;
  padding: 20px 10px 30px;
}

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

.voice_other_list .voice_pic {
  width: 100%;
  height: 180px;
  overflow: hidden;
  text-align: center;
  margin-bottom: 15px;
}

.voice_other_list .voice_pic img {
  width: 100%;
  height: 180px;
}

.voice_other_list .voice_name {
  font-size: 13px;
  margin-bottom: 10px;
  line-height: 1.4;
  color: #60a7c5;
}

.voice_other_list .voice_ttl_1 {
  font-size: 16px;
  margin-bottom: 20px;
  line-height: 1.4;
}

@media only screen and (max-width: 768px) {
.recomend_ttl {
  font-size: 20px;
  margin: 40px auto 10px auto;
}
.voice_other_list {
  padding: 20px 4%;
  margin-bottom: 40px;
}
.voice_other_list li {
  width: 48%;
  padding: 20px 10px 10px;
}
.voice_other_list li:nth-child(even) {
  margin-right: 0;
}
.voice_other_list .voice_ttl_1 {
  font-size: 14px;
}
.voice_other_list .voice_name {
  font-size: 12px;
}
}

/*-------------------------------------------------

		☆ front staff

-------------------------------------------------*/
section#staff {
  overflow: hidden;
  background: #fff;
}

.f_staff {
  padding: 0 0 75px;
}

@media only screen and (max-width: 1024px) {
.f_staff {
  padding: 0 0 20px;
}
}

.f_staff .f_ttl {
  background: url(../img/cmn/back_grey.jpg) no-repeat top center;
  background-size: cover;
  color: #484848;
  padding: 65px 0;
  position: relative;
}

@media only screen and (max-width: 1024px) {
.f_staff .f_ttl {
  padding: 40px 0 30px 0;
}
}

.f_staff .f_ttl:before {
  content: '';
  width: 140px;
  height: 5px;
  background: #fbf072;
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  margin-left: -70px;
}

.f_ttl .en {
  font-family: 'Century Gothic', sans-serif;
  font-style: normal;
  letter-spacing: .15em;
  font-weight: bold;
  font-size: 16px;
  display: block;
  margin-bottom: 25px;
}

.f_staff .f_ttl .ja {
  font-weight: bold;
  font-size: 30px;
  letter-spacing: .15em;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
.f_staff .f_ttl .ja {
  line-height: 1.4;
  font-size: 24px;
}
}

@media only screen and (max-width: 320px) {
.f_staff .f_ttl .ja {
  font-size: 20px;
}
}

.f_staff .interview_slide {
  width: 100%;
  min-width: 960px;
  background: #f2f2f3;
  padding-bottom: 50px;
  position: relative;
}

.f_staff .slide_box {
  width: 100%;
  height: 574px;
  float: left;
  letter-spacing: -.4em;
  text-align: center;
  position: relative;
  outline: none;
  overflow: hidden;
}

@media only screen and (max-width: 1024px) {
.f_staff .slide_box {
  height: auto;
}
}

.f_staff .slide_box .slick-prev, .f_staff .slide_box .slick-next {
  display: block;
  position: absolute;
  top: 273px;
  width: 18px;
  height: 27px;
  z-index: 11;
  overflow: hidden;
  text-indent: -9999px;
  -webkit-transition-duration: 0.25s;
  transition-duration: 0.25s;
}

.f_staff .slide_box .slick-prev {
  background: url(../img/arr1_wh_prev.svg) no-repeat right center/18px;
  left: 30px;
}

.f_staff .slide_box .slick-list {
  height: 570px;
  overflow: hidden;
}

.f_staff .slide_box .slick-slide {
  width: 100%;
  height: 574px;
  float: left;
  letter-spacing: 0.4em;
  text-align: center;
  position: relative;
  outline: none;
}

.f_staff .slide_box .main_img {
  height: 570px;
}

@media only screen and (max-width: 1024px) {
.f_staff .slide_box .main_img {
  height: auto;
}
}

.f_staff .slide_box .main_img img {
  width: 100%;
}

.f_staff .slide_box .txt {
  display: inline-block;
  vertical-align: middle;
  letter-spacing: normal;
  width: 960px;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  text-align: left;
  position: absolute;
  bottom: 150px;
  left: 260px;
}

@media only screen and (max-width: 1024px) {
.f_staff .slide_box .txt {
  position: absolute;
  left: 6%;
  bottom: 30px;
  display: block;
  width: 80%;
  padding-left: 0 !important;
}
}

.f_staff .slide_box .copy {
  width: 475px;
  color: #fff;
  font-weight: bold;
  font-size: 26px;
  margin-bottom: 30px;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
.f_staff .slide_box .copy {
  font-size: 17px;
  margin-bottom: 0;
}
}

.f_staff .slide_box .copy img {
  width: 100%;
  height: auto;
}

.f_staff .slide_box .role {
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  font-weight: bold;
  font-size: 14px;
  line-height: 1.83;
  padding: 0 8px;
  margin-right: 20px;
}

@media only screen and (max-width: 1024px) {
.f_staff .slide_box .role {
  font-size: 12px;
}
}

.f_staff .slide_box .role.group1 {
  background: #6e97bb;
}

.f_staff .slide_box .name {
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  font-weight: bold;
  font-size: 20px;
}

@media only screen and (max-width: 1024px) {
.f_staff .slide_box .name {
  font-size: 16px;
}
}

.f_staff .slide_box .name img {
  width: auto;
  height: 32px;
  vertical-align: middle;
}

.f_staff .slide_box .btn {
  margin: 30px 0 0;
  display: block;
  width: 200px;
  height: 40px;
  border-radius: 20px;
  text-decoration: none;
  line-height: 40px;
  text-align: center;
  font-weight: bold;
  font-size: 14px;
  background: #fff;
  color: #000;
  outline: none;
  position: relative;
}

@media only screen and (max-width: 1024px) {
.f_staff .slide_box .btn {
  margin: 10px 0 0;
}
}

.f_staff .slide_box .btn::after {
  content: "";
  position: absolute;
  top: 0;
  right: 16px;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  transform: rotate( -45deg);
  border-right: 2px solid #71a8cb;
  border-bottom: 2px solid #71a8cb;
}

.f_staff_slide_sub {
  width: 875px;
  margin: 0 auto;
  position: relative;
  padding-top: 34px;
  padding-bottom: 60px;
  clear: both;
}

@media only screen and (max-width: 1024px) {
.f_staff_slide_sub {
  width: 80%;
  margin: 0 auto 40px auto;
  padding-bottom: 0;
}
}

.slide_sub {
  float: left;
  position: relative;
  outline: none;
  cursor: pointer;
}

.slide_sub>div {
  position: relative;
  outline: none;
  cursor: pointer;
}

.slide_sub>div .img {
  display: block;
  margin: 0 auto;
  position: relative;
  width: 100px;
}

@media only screen and (max-width: 1024px) {
.slide_sub>div .img {
  width: 60px;
}
}

.slide_sub>div .img img {
  width: 100px;
  height: 100px;
  border-radius: 50%;
}

@media only screen and (max-width: 1024px) {
.slide_sub>div .img img {
  width: 60px;
  height: 60px;
}
}

.slide_sub>div .role {
  display: block;
  margin-top: 20px;
  font-size: 12px;
}

@media only screen and (max-width: 1024px) {
.slide_sub>div .role {
  font-size: 10px;
}
}

.slide_sub>div .name {
  display: block;
  margin-top: 14px;
  font-weight: bold;
  font-size: 16px;
}

@media only screen and (max-width: 1024px) {
.slide_sub>div .name {
  font-size: 13px;
}
}

span.img.group2 img {
  transform: none;
}

.f_staff_slide_sub .slick-slide.slick-current .img:before {
  content: '';
  width: 100px;
  height: 100px;
  border-radius: 50%;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  z-index: 2;
  border: 5px solid #67c0e2;
  top: 0;
  left: 0;
}

@media only screen and (max-width: 1024px) {
.f_staff_slide_sub .slick-slide.slick-current .img:before {
  width: 60px;
  height: 60px;
  border: 4px solid #67c0e2;
}
}

/* arrow */
.f_staff_slide_sub .slick-prev, .f_staff_slide_sub .slick-next {
  display: block;
  position: absolute;
  top: 74px;
  width: 20px;
  height: 20px;
  left: 50%;
  z-index: 2;
  text-indent: -9999px;
  overflow: hidden;
  -webkit-transition-duration: 0.25s;
  transition-duration: 0.25s;
  cursor: pointer;
}

.f_staff_slide_sub .slick-prev {
  background: url(../img/staff/staff_slide_arrowR.png) no-repeat right center/20px;
  margin-left: -480px;
}

.f_staff_slide_sub .slick-next {
  background: url(../img/staff/staff_slide_arrowL.png) no-repeat right center/20px;
  margin-left: 460px;
}

@media only screen and (max-width: 1024px) {
.f_staff_slide_sub .slick-prev {
  left: 0;
  margin-left: -20px;
}
.f_staff_slide_sub .slick-next {
  right: 0;
  margin-left: auto;
  margin-right: -20px;
}
}

/*-------------------------------------------------

		☆ page recruit 採用情報

-------------------------------------------------*/
#p_recruit {
  margin-bottom: 80px;
}

#recruit_message .inner .flex_1 {
  margin-bottom: 25px;
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 80px auto 40px auto;
}

#recruit_message .inner .flex_1 .box_l {
  width: 550px;
}

#recruit_message .inner .flex_1 .box_l .ttl {
  margin-bottom: 28px;
}

#recruit_message .inner .flex_1 .wap-box-innner {
  width: 511px;
}

#recruit_message .inner .flex_1 .wap-box-innner .txt_1 {
  color: #221815;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0.9px;
  line-height: 36px;
  font-weight: 700;
  margin-bottom: 32px;
}

#recruit_message .inner .flex_1 .wap-box-innner .txt_box_1 {
  color: #221815;
  font-size: 16px;
  font-weight: 500;
  line-height: 30px;
  letter-spacing: 0.8px;
  line-height: 36px;
}

#recruit_message .inner .flex_1 .box_r {
  width: 530px;
}

#recruit_message .inner .flex_2 {
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

#recruit_message .inner .flex_2 .box_l {
  width: 523px;
}

#recruit_message .inner .flex_2 .box_r {
  width: 505px;
}

#recruit_message .inner .flex_2 .box_r .txt_box_2 {
  padding-top: 32px;
  color: #221815;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.8px;
  line-height: 36px;
}

#recruit_works {
  margin-top: 80px;
  background: #f7f4ed;
  padding: 40px 0 80px 0;
}

#recruit_works .inner .ttl {
  margin-bottom: 25px;
}

#recruit_works .inner .ttl .jp {
  color: #221815;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 1.4px;
  line-height: 49px;
  font-weight: 700;
  display: block;
  padding: 20px 0;
}

#recruit_works .inner .flex_1 {
  margin-bottom: 50px;
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#recruit_works .inner .flex_1 .box_l {
  width: 479px;
}

#recruit_works .inner .flex_1 .box_r {
  width: 550px;
}

#recruit_works .inner .flex_1 .box_r .ttl_2 {
  color: #71a8cb;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 1px;
  line-height: 49px;
}

#recruit_works .inner .flex_1 .box_r .txt_box_1 {
  color: #221815;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.8px;
  line-height: 36px;
}

#recruit_works .inner .flex_2 {
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#recruit_works .inner .flex_2 .box_l {
  width: 538px;
}

#recruit_works .inner .flex_2 .box_l .txt_box_1 {
  color: #221815;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.8px;
  line-height: 36px;
}

#recruit_works .inner .flex_2 .box_r {
  width: 535px;
}

#recruit_works .inner .flex_2 .box_r .flex_in_1 {
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

#recruit_works .inner .flex_2 .box_r .flex_in_1 .box_in_l {
  width: 264px;
}

#recruit_works .inner .flex_2 .box_r .flex_in_1 .box_in_r {
  width: 260px;
}

#p_recruit  h3.rec-ttl {
  margin: 60px auto;
}

#p_recruit .recruit-list .recruit-pic {
  text-align: center;
}

#p_recruit .recruit-list li {
  width: 31%;
  margin-right: 26px;
  border: 2px solid #71a8cb;
  margin-bottom: 60px;
  position: relative;
  padding-top: 20px;
  padding-bottom: 24px;
  text-align: center;
}

#p_recruit .recruit-list li:nth-child(3), #p_recruit .recruit-list li:nth-child(6) {
  margin-right: 0;
}

#p_recruit .recruit-list .recruit_icon {
  border: 1px solid #71A8CB;
  color: #71A8CB;  
  padding: 5px;
  display: block;
  width: 70%;
  margin: 20px auto;
  font-size: 12px;
  font-weight: bold;
  text-align: center;
}

#p_recruit .recruit-list .recruit_ttl {
  font-size: 18px;
  margin-bottom: 20px;
}

#p_recruit .recruit-list .p-box {
  padding: 0 10px;
}

#p_recruit .recruit-list .p-box .come {
  font-size: 15px;
}

#p_recruit .recruit-list .btn {
  background: #71A8CB;
  width: 50%;
  margin: 20px auto 0 auto;
  border-radius: 50px;
  color: #fff;
  padding: 5px 0;
  font-weight: bold;
  font-size: 13px;
  text-align: center;
}

#p_recruit .f_ttl {
  background: #71a8cb;
  color: #fff;
  padding: 65px 0;
  position: relative;
  margin: 80px 0 40px 0;
}

@media only screen and (max-width: 1024px) {
#p_recruit .f_ttl {
  padding: 40px 0 30px 0;
}
}

#p_recruit .f_ttl:before {
  content: '';
  width: 140px;
  height: 5px;
  background: #ffff00;
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  margin-left: -70px;
}

#p_recruit .f_ttl .ja {
  font-weight: bold;
  font-size: 26px;
  letter-spacing: .15em;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
#recruit_message .inner .flex_1 {
  margin: 20px auto 40px auto;
}
#recruit_message .inner .flex_1 .wap-box-innner .txt_1 {
  font-size: 16px;
  margin-bottom: 20px;
}
#recruit_message .inner .flex_1 .box_r {
  margin-top: 20px;
}
#recruit_works {
  margin-top: 40px;
  padding: 0;
}
#recruit_works .inner .ttl .jp {
  font-size: 20px;
  line-height: 1.7;
  display: block;
}
#recruit_works .inner .flex_1 .box_r .ttl_2 {
  font-size: 16px;
  line-height: 1.7;
  margin: 30px 0 20px 0;
}
#recruit_works .inner .flex_2 .box_r {
  -webkit-box-ordinal-group: -1;
  -webkit-flex-order: -1;
  -moz-flex-order: -1;
  -moz-order: -1;
  -ms-flex-order: -1;
  order: -1;
}
#recruit_message .inner .flex_1 .box_l, #recruit_message .inner .flex_1 .box_r,
#recruit_message .inner .flex_2 .box_l, #recruit_message .inner .flex_2 .box_r,
#recruit_message .inner .flex_1 .wap-box-innner,
#p_recruit .recruit-list li {
  width: 100%;
}
#recruit_works .inner .flex_2 .box_r .flex_in_1 .box_in_l {
  width: 49%;
  margin-right: 2%;
}
#recruit_works .inner .flex_2 .box_r .flex_in_1 .box_in_r {
  width: 49%;
}
#recruit_works .inner .flex_1, #recruit_works .inner .flex_2 .box_r .flex_in_1 {
  margin-bottom: 20px;
}
#recruit_works .inner .flex_2 .box_l {
  padding-bottom: 40px;
}
#p_recruit {
  margin-bottom: 0;
}
#p_recruit .f_ttl {
  margin-top: 0;
}
#p_recruit .recruit-list li {
  margin-right: 0;
}
#p_recruit .recruit-list .p-box .come {
  text-align: center;
  font-size: 13px;
}
}

/*-------------------------------------------------

		☆ single recruit 採用情報

-------------------------------------------------*/
#s_recruit .system-contents-inner {
  background: #fff;
  padding: 40px 20px;
}

#s_recruit .recruit-main {
  margin: 0 0 50px 0;
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

#s_recruit .recruit-main-txt {
  width: 550px;
  padding: 0 30px 0px 0;
}

#s_recruit .recruit-main h3 {
  background-color: #71a8cb;
  color: #ffffff;
  font-size: 21px;
  font-weight: 500;
  letter-spacing: 1.05px;
  text-align: center;
  padding: 15px;
  margin-bottom: 30px;
}

#s_recruit .recruit-main h4 {
  color: #221815;
  font-size: 26px;
  font-weight: 700;
  letter-spacing: 1.3px;
  line-height: 36px;
  font-family: "Yu Gothic";
  font-weight: 700;
  text-align: center;
  margin-bottom: 24px;
}

#s_recruit .recruit-main .ttl {
  color: #221815;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.8px;
  line-height: 1.7;
  margin-bottom: 24px;
}

#s_recruit .recruit-main .ttl-02 {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 24px;
}

#s_recruit .recruit-main .txt {
  font-size: 14px;
  line-height: 1.8;
  padding: 16px;
  position: relative;
  word-wrap: break-word;
  margin-bottom: 30px;
}

#s_recruit .recruit-main .txt p {
  min-height: 15px;
  min-width: 10px;
  line-height: 1.6;
}

#s_recruit .recruit-main .txt ul {
  list-style-type: disc;
  line-height: 1.6;
  font-size: 0.875rem;
  margin: 0.5em 0 1em 2em;
}

#s_recruit .recruit-main .txt::after {
  content: "";
  bottom: 0;
  right: 0;
  border-right: 1px solid #8d8d8d;
  border-bottom: 1px solid #8d8d8d;
  width: 16px;
  height: 16px;
  position: absolute;
  background: none;
}

#s_recruit .recruit-main .main-photo {
  width: 840px;
}

#s_recruit .recruit-main .main-photo img {
  width: 100%;
}

.system-inner .recruit-table table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  line-height: 1.8;
}

.system-inner .recruit-table table th {
  border: 1px solid #8d8d8d;
  width: 25%;
  padding: 12px 20px 12px 20px;
  text-align: left;
  background-color: #f4f4f4;
}

.system-inner .recruit-table table td {
  border: 1px solid #8d8d8d;
  padding: 12px 20px 12px 20px;
  text-align: left;
}

/* 流れ FLOW */
#sec_flow {
    padding-top: 70px;
    padding-bottom: 80px;
    background-color: #f1f1f1;
}
.sec_flow_heading-en {
    text-align: center;
    line-height: 0;
    font-size: 18px;
    color: #71A8CB;
    font-weight: bold;
}
.sec_flow_heading {
    margin-top: 30px;
    text-align: center;
    font-size: 32px;
}
.sec_flow_lead {
    margin-top: 19px;
    text-align: center;
    font-size: 16px;
    font-weight: 400;
}
.sec_flow_steps {
    margin-top: 46px;
}
.steps {
    width: 960px;
    margin-right: auto;
    margin-left: auto;
}
.steps .steps_item {
    position: relative;
}
.steps .steps_item+.steps_item {
    margin-top: 27.5px;
}
.steps .steps_item+.steps_item::after {
    display: block;
    position: absolute;
    top: -18px;
    left: 50%;
    width: 27px;
    height: 8px;
    background-image: url(../img/realestate/flow_arrow.png);
    background-repeat: no-repeat;
    background-size: contain;
    content: '';
    -webkit-transform: translate3d(-50%,0,0);
    transform: translate3d(-50%,0,0);
}
.steps .step {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    border-bottom: 1px solid #d8dbde;
}
.steps .step .step_number {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 80px;
    padding-right: 4px;
    background-color: #71A8CB;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    font-size: 26px;
    font-weight: bold;
}
.steps .step .step_body {
    width: 100%;
    background-color: #fff;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -webkit-flex-shrink: 1;
    -ms-flex-negative: 1;
    flex-shrink: 1;
}
.steps .step .body {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    padding: 25.5px 26px;
}
.steps .step .body .body_term {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    color: #71A8CB;
    font-size: 20px;
    font-weight: 600;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    min-width: 238px;
}
.steps .step .body .body_description {
    font-size: 16px;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: left;
}
.btn_big {
    text-align: center;
}

@media only screen and (max-width: 1024px) {
.p-company2 {
  padding: 40px 0 40px;
}
.p-company2--wrapper {
  padding: 34px 21px;
}
.p-company2--block1 {
  padding: 18px 18px 18px;
  border: 1px solid #71A8CB;
  margin: 0 0 25px;
}
}

.p-company2--ttl {
  text-align: center;
  color: #71A8CB;
  font-weight: bold;
  letter-spacing: 1px;
  font-size: 23px;
  line-height: 49px;
}

@media only screen and (max-width: 1024px) {
.p-company2--ttl {
  font-size: 18px;
  line-height: 25px;
}
.p-company2 .table1 {
  margin-top: 15px;
}
}

.p-company2--block1 .p-company2--ttl {
  margin-bottom: 18px;
}

.p-company2 .table1 dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  border-bottom: 1px solid #71A8CB;
  padding: 0 0 2px;
  margin: 0 0 2px;
}

@media only screen and (max-width: 1024px) {
.p-company2 .table1 dl {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-bottom: 0;
}
}

.p-company2 .table1 dt {
  width: 178px;
  text-align: center;
  line-height: 30px;
  background: #71A8CB;
  color: #fff;
  padding: 8px 8px 2px;
  letter-spacing: 1px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media only screen and (max-width: 1024px) {
.p-company2 .table1 dt {
  width: 100%;
  position: relative;
}
.p-company2 .table1 dt:after {
  content: '';
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background: #71A8CB;
  bottom: -3px;
}
}

.p-company2 .table1 dd {
  width: calc(100% - 197px);
  line-height: 30px;
  color: #000;
  padding: 15px 0;
  letter-spacing: .8px;
}

@media only screen and (max-width: 1024px) {
.p-company2 .table1 dd {
  font-size: 14px;
  line-height: 30px;
  color: #000;
  padding: 4% 3% 3%;
  letter-spacing: .8px;
  width: 100%;
}
}

.p-company2 .table1 dl:first-child dd {
  padding: 7px 4px 0;
}

.p-company2 .table1 dl:nth-child(2) dt {
  padding-top: 2px;
}

.p-company2 .table1 dl:nth-child(2) dd {
  padding: 7px 0 12px;
}

.p-company2 .table1--link {
  color: #71a8cb;
}

.p-company2--block2 {
  background: #fff;
  padding: 40px 44px 59px;
  border: 3px solid #71A8CB;
}

@media only screen and (max-width: 1024px) {
.p-company2--block2 {
  padding: 18px 14px 40px 16px;
  border: 1px solid #71A8CB;
}
}

.p-company2--block2 .p-company2--ttl {
  margin: 0 0 32px;
}

@media only screen and (max-width: 1024px) {
.p-company2--block2 .p-company2--ttl {
  font-size: 18px;
  margin: 0 0 20px;
  line-height: 25px;
  text-align: center;
  color: #71A8CB;
  font-weight: bold;
  letter-spacing: 1px;
}
}

.p-company2 .imgtext2--img {
  width: 350px;
}

.p-company2 .imgtext2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-left: 15px;
  margin: 0 0 61px;
}

@media only screen and (max-width: 1024px) {
.p-company2 .imgtext2 {
  display: block;
  padding-left: 0;
  margin: 0 0 20px;
}
}

.p-company2 .imgtext2--txt {
  color: #000;
  width: 566px;
  letter-spacing: .8px;
  padding: 15px 0 0;
  line-height: 30px;
  font-size: 16px;
  font-weight: 500;
}

.p-company2 .imgtext2--img {
  width: 302px;
}

@media only screen and (max-width: 1024px) {
.p-company2 .imgtext2--txt, .p-company2 .imgtext2--img {
  width: 100%;
  margin-bottom: 20px;
}
}

/*-------------------------------------------------

		☆ front magazine

-------------------------------------------------*/
#f_magazine {
  background: #fff;
}

#f_magazine .innerBtm {
  padding-bottom: 90px;
  position: relative;
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
}

@media only screen and (max-width: 1024px) {
#f_magazine .innerBtm {
  padding-bottom: 40px;
}
}

#f_magazine .innerMain {
  background: #f9f9f9;
  padding: 120px 0 70px;
  margin-top: 120px;
  width: calc(100% - 4%);
  margin: 0 auto;
}

@media only screen and (max-width: 1024px) {
#f_magazine .innerMain {
  padding: 40px 0 40px;
}
}

#f_magazine .boxCenter {
  text-align: center;
}

@media only screen and (max-width: 1024px) {
.iconHouse {
  width: 60%;
  margin: 0 auto;
}
}

#f_magazine .tit {
  font-size: 30px;
  letter-spacing: .15em;
  font-weight: 700;
  line-height: 18px;
  color: #101f35;
  padding-top: 43px;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
#f_magazine .tit {
  line-height: 1.4;
  font-size: 26px;
  letter-spacing: .15em;
  padding-top: 20px;
}
}

@media only screen and (max-width: 320px) {
#f_magazine .tit {
  font-size: 23px;
}
}

#f_magazine .txtMain {
  font-weight: normal;
  text-align: center;
  display: block;
  font-size: 18px;
  line-height: 1.76;
  letter-spacing: 1px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-style: normal;
  color: #000000;
  padding-top: 35px;
}

@media only screen and (max-width: 1024px) {
#f_magazine .txtMain {
  padding-top: 20px;
  text-align: center;
  font-size: 15px;
}
}

@media only screen and (max-width: 320px) {
#f_magazine .txtMain {
  font-size: 14px;
}
}

#f_magazine .list {
  display: flex;
  display: -webkit-flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  margin-top: 50px;
  padding-bottom: 60px;
}

@media only screen and (max-width: 1024px) {
#f_magazine .list {
  margin-top: 20px;
  padding-bottom: 20px;
}
}

#f_magazine .box {
  width: 22.657%;
  margin-right: 3.124%;
  background: #fff;
  border-radius: 10px;
}

@media only screen and (max-width: 1024px) {
#f_magazine .box {
  width: 48.4%;
  margin-bottom: 10px;
}
#f_magazine .box:nth-child(even) {
  margin-right: 0;
}
}

#f_magazine .box:nth-child(4n) {
  margin-right: 0;
}

#f_magazine .box:nth-child(n + 5) {
  margin-top: 45px;
}

@media only screen and (max-width: 1024px) {
#f_magazine .box:nth-child(n + 5) {
  margin-top: 0;
}
}

#f_magazine .aBox {
  display: block;
  color: #000;
  text-decoration: none;
  padding: 30px;
}

@media only screen and (max-width: 1024px) {
#f_magazine .aBox {
  padding: 10px;
}
}

#f_magazine .imgBoxIn {
  position: relative;
}

#f_magazine .imgBox {
  width: 100%;
  padding-top: 68.97%;
}

.imgCover2 img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
  font-family: 'object-fit:cover;';
}

#f_magazine .boxTit {
  font-size: 15px;
  line-height: 27px;
  letter-spacing: 0.5px;
  height: 54px;
  max-height: 54px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  margin-top: 20px;
}

@media only screen and (max-width: 1024px) {
#f_magazine .boxTit {
  font-size: 12px;
  line-height: 20px;
  height: 40px;
  max-height: 40px;
  margin-top: 8px;
}
}

#f_magazine .boxTxt {
  font-size: 13px;
  line-height: 23px;
  letter-spacing: 0.5px;
  color: #979797;
  padding-top: 7px;
}

@media only screen and (max-width: 1024px) {
#f_magazine .boxTxt {
  font-size: 11px;
  padding-top: 2px;
}
}

/*-------------------------------------------------

		☆ page,parts flow 家づくりの流れ

-------------------------------------------------*/
.maru {
  height:50px;
  width:50px;
  border-radius:50%;
  line-height:50px;
  text-align:center;
  background: #71A8CB;
  display: inline-block;
}

.maru span {
  color: #fff;
  font-weight: 500;
  font-family: 'Century Gothic', sans-serif;
  text-transform: lowercase;
  font-size: 32px;
}

/*-------------------------------------------------

		☆ front soudankai

-------------------------------------------------*/
#soudankai {
  background-image: url(../img/soudankai/soudankai_bg_1.png);
  background-repeat: no-repeat,no-repeat;
  background-position: center 0, center bottom;
  padding-top: 345px;
  clear: both;
  background-color: #fff;
  margin-top: -2px;
}

@media only screen and (max-width: 1024px) {
  #soudankai {
    background-image: none;
    padding-top: 0;
  }
}

#soudankai .inner {
  background-image: url(../img/soudankai/soudankai_bg_2.png);
  width: 1024px;
  margin: 0 auto;
  padding-bottom: 70px;
}

@media only screen and (max-width: 1024px) {
#soudankai .inner {
  width: 100%;
}
}

#soudankai .inner .box {
  width: 1000px;
  margin: 0 auto;
  position: relative;
  padding-top: 138px;
}

@media only screen and (max-width: 1024px) {
#soudankai .inner .box {
  width: 100%;
  padding-top: 20px;
}
}

#soudankai .inner .ttl {
  top: -104px;
  left: 0;
  position: absolute;
}

@media only screen and (max-width: 1024px) {
#soudankai .inner .ttl {
  position: inherit;
  top: 0;
}
}

#soudankai .inner .txt {
  text-align: center;
}

#soudankai .inner .btn {
  text-align: center;
}

@media only screen and (max-width: 1024px) {
#soudankai .inner .btn {
  width: 89.37%;
  margin: 0 auto;
}
}

/* catalog */
.catalog {
  padding: 50px 0px 60px 0px;
  background: #fff;
}

.calatog_set {
  text-align: center;
  margin-bottom: 40px;
}

@media only screen and (max-width: 1024px) {
.catalog {
  padding: 0 4% 20px 4%;
  max-width: 100%;
}
}

.catalog img {
  margin: 0 auto;
  max-width: 900px;
}

@media only screen and (max-width: 1024px) {
.catalog img {
  max-width: 100%;
}
}

.p-flex-sb {
  -webkit-box-pack: space-between;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: space-between;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

/* catalog LINE */
.register-box {
  margin-top: 45px;
}

.register-box .register-ttl {
  padding: 16px 0;
  font-weight: 700;
  font-size: 20px;
  font-size: 24px;
  line-height: 1.4;
  text-align: center;
  color: #ffffff;
  background-color: #00b900;
}

.register-box .cont {
  display: flex;
  padding: 45px 48px;
  border-right: 1px solid #dddddd;
  border-bottom: 1px solid #dddddd;
  border-left: 1px solid #dddddd;
}

.register-box .cont .txt-area {
  flex: 1;
}

.register-box .cont .txt-area .ttl-box {
  display: flex;
}

.register-box img {
  height: auto;
  max-width: 100%;
  vertical-align: middle;
}

.register-box .cont .txt-area .txt-box {
  margin-left: 20px;
}

.register-box .cont .txt-area .ttl {
  font-weight: 700;
  font-size: 36px;
}

.register-box .cont .txt-area .notice {
  margin-top: 30px;
  color: #6a6a6a;
}

.register-box .cont .img-area {
  width: 26.7%;
  padding-left: 70px;
  border-left: 1px dashed #dddddd;
}

.register-box .cont .img-area .img-box {
  margin-bottom: 10px;
}

.register-box .cont .img-area .btn-green {
  display: inline-block;
  width: 100%;
  padding: 10px 0;
  font-weight: 700;
  font-weight: 700;
  font-size: 20px;
  font-size: 16px;
  text-align: center;
  color: #ffffff !important;
  text-decoration: none;
  background-color: #00b900;
}

@media screen and (max-width: 1120px) {
.register-box .cont {
  flex-wrap: wrap;
  padding: 20px;
}
.register-box .cont .txt-area {
  flex: 1;
}
.register-box .cont .txt-area .ttl-box {
  justify-content: center;
  width: 100%;
}
.register-box .cont .txt-area .notice {
  text-align: center;
}
.register-box .cont .img-area {
  width: 100%;
  margin-top: 30px;
  padding-left: 0;
  text-align: center;
  border-left: none;
}
}

@media screen and (max-width: 640px) {
.register-box .register-ttl {
  font-size: 20px;
}
.register-box .cont .txt-area .ttl-box {
  flex-wrap: wrap;
}
.register-box .cont .txt-area .ttl-box .img-box {
  margin: auto;
}
.register-box .cont .txt-area .txt-box {
  margin-left: 0;
}
.register-box .cont .txt-area .ttl-box .ttl {
  font-size: 24px;
}
.register-box .cont .txt-area .notice {
  margin-top: 15px;
}
.register-box .cont .img-area .img-box {
  display: none;
}
}

/* reform */
#reformbunner {
  background: #fff;
  padding: 20px 0;
}

#reformbunner .f_reformbunner_area a.p-flex-sb {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media only screen and (max-width: 1024px) {
#reformbunner .f_reformbunner_area a.p-flex-sb {
  display: block;
  padding: 40px 30px;
}
}

#reformbunner .f_reformbunner_area a {
  background: url(../img/reform/reform_bnr_bg.jpg) no-repeat 50% 50%;
  background-size: cover;
  color: #fff;
  margin-bottom: 60px;
  padding: 47px 58px 52px;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

@media only screen and (max-width: 1024px) {
#reformbunner .f_reformbunner_area a {
  margin-bottom: 20px;
}
}

#reformbunner .f_reformbunner_area a:hover {
  opacity: 0.85;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

#reformbunner .f_reformbunner_area a h2 {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
}

#reformbunner .f_reformbunner_area a h2 span {
  display: block;
  text-align: center;
}

#reformbunner .f_reformbunner_area a h2 span:first-child {
  margin-bottom: 15px;
}

#reformbunner .f_reformbunner_area a h2 span {
  display: block;
  text-align: center;
}

#reformbunner .f_reformbunner_area a h2 span img {
  max-width: 63%;
}

@media only screen and (max-width: 1024px) {
#reformbunner .f_reformbunner_area a h2 span img {
  max-width: 100%;
}
}

#reformbunner .f_reformbunner_area a p {
  font-size: 13px;
  font-weight: bold;
  line-height: 1.8;
}

#reformbunner .f_reformbunner_area a .f_reformbunner_txt {
  margin-right: 40px;
}

@media only screen and (max-width: 1024px) {
#reformbunner .f_reformbunner_area a .f_reformbunner_txt {
  margin-right: 0;
  font-size: 12px;
  text-align: center;
  padding-top: 10px;
}
}

#reformbunner .f_reformbunner_area .c-btn_box {
  border: 1px solid #fff;
  text-align: center;
  margin-top: 25px;
  padding: 10px 0;
  position: relative;
  width: 160px;
}

@media only screen and (max-width: 1024px) {
#reformbunner .f_reformbunner_area .c-btn_box {
  width: 100%;
}
}

#reformbunner .f_reformbunner_area a:hover .c-btn_box {
  color: #fff;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

#reformbunner .f_reformbunner_area .c-btn_box::after {
  content: "";
  position: absolute;
  top: 0;
  right: 16px;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  transform: rotate( -45deg);
  border-right: 2px solid;
  border-bottom: 2px solid;
}

#reformbunner .f_reformbunner_area .reform_ttl {
  font-size: 24px;
}

/*-------------------------------------------------

		☆ bottom

-------------------------------------------------*/
#f_recruit_bnr {
  background: #f3f3f3;
  padding: 60px 0;
  /* margin-top: -60px; */
}

@media only screen and (max-width: 1024px) {
#f_recruit_bnr {
  padding: 20px 0;
  margin-top: -20px;
}
}

.bottom_bnr {
  padding: 60px 0;
  background: #fff;
}

@media only screen and (max-width: 1024px) {
.bottom_bnr {
  padding: 30px 0 20px 0;
}
}

ul.bottom_bnr_box.flex.f-section {
  justify-content: center;
}

.bottom_bnr_box .border {
  border: 1px solid #6b6b6b;
}

.bottom_bnr_box li {
  margin-right: 26px;
  margin-bottom: 2%;
}

.bottom_bnr_box li:last-child {
  /* margin-right: 0; */
}

@media only screen and (max-width: 1024px) {
.bottom_bnr_box li {
  width: 47%;
  margin-right: 15px;
  margin-bottom: 15px;
  padding-bottom: 2px;
}
.bottom_bnr_box li:nth-child(even) {
  margin-right: 0;
}
}

#bottom_telbox {
  background-image: url(../img/cmn/tel_pic_1.jpg);
  background-repeat: no-repeat;
  background-position: center 0;
  background-color: #71a8cb;
  padding-top: 180px;
  padding-bottom: 20px;
}

@media only screen and (max-width: 1024px) {
#bottom_telbox {
  background-image: none;
  background-color: #71a8cb;
  padding-top: 0;
  margin-top: 0;
}
.sp-mail-cv {
  background-color: #71a8cb;
}
.sp-mail-cv a {
  display: block;
  width: 70%;
  padding: 30px 0 20px 0;
  margin: 0 auto;
}
}

#bottom_telbox .bottom_telbox_in {
  width: 1134px;
  margin: 0 auto;
}

@media only screen and (max-width: 1024px) {
#bottom_telbox .bottom_telbox_in {
  width: 100%;
}
}

#bottom_telbox .bottom_telbox_in .flex-01 {
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#bottom_telbox .bottom_telbox_in .flex-01 .box-l {
  width: 760px;
}
#bottom_telbox .bottom_telbox_in .flex-01 .box-r {
  width: 340px;
}

/* SNS */
.s_link {
  background: #f2f2f3;
  padding: 90px 0 130px 0;
}

@media only screen and (max-width: 1024px) {
.s_link {
  max-width: 100%;
  padding: 30px 6%;
}
}

.s_link .fb {
  display: inline-block;
  vertical-align: top;
  width: 460px;
  padding-right: 60px;
  border-right: 1px solid #dbdbdb;
}

@media only screen and (max-width: 1024px) {
.s_link .fb {
  width: 100%;
  display: block;
  padding: 0;
}
}

.s_link .fb .link_ttl {
  margin-bottom: 25px;
  font-family: 'Century Gothic', sans-serif;
  font-style: normal;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 25px;
  height: 30px;
  line-height: 1.2;
}

.s_link .fb .link_ttl:before {
  content: '';
  width: 24px;
  height: 100%;
  display: inline-block;
  vertical-align: top;
  background: url(../img/cmn/facebook_icon.svg) no-repeat left center/24px 24px;
  margin-right: 14px;
}

.inner {
  background: #fff;
}

.inner .link_ttl {
  margin-bottom: 25px;
  font-family: 'Century Gothic', sans-serif;
  font-style: normal;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 25px;
  height: 30px;
  line-height: 1.2;
  text-align: center;
}

.inner .link_ttl:before {
  content: '';
  width: 24px;
  height: 100%;
  display: inline-block;
  vertical-align: top;
  background: url(../img/cmn/instagram_icon.png) no-repeat left center/24px 24px;
  margin-right: 14px;
}

.instagram__desc {
  display: none;
}

#sb_instagram .sbi_load_btn .sbi_btn_text {
  letter-spacing: 1px;
}

.fb>iframe {
  display: inline-block;
  position: relative;
}

@media only screen and (max-width: 1024px) {
.fb>iframe {
  display: block;
  max-width: 100%;
}
}

.fb>iframe span {
  display: inline-block;
  position: relative;
  text-align: justify;
}

.s_link .pc_r {
  display: inline-block;
  vertical-align: top;
  width: 480px;
  height: 605px;
  position: relative;
  padding-left: 59px;
}

@media only screen and (max-width: 1024px) {
.s_link .pc_r {
  display: block;
  width: 100%;
  height: auto;
  padding-left: 0;
  padding-top: 30px;
}
}

.s_link .in .link_ttl {
  margin-bottom: 25px;
  font-family: 'Century Gothic', sans-serif;
  font-style: normal;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 25px;
  height: 30px;
  line-height: 1.2;
}

.s_link .in .link_ttl:before {
  content: '';
  width: 26px;
  height: 100%;
  display: inline-block;
  vertical-align: top;
  background: url(../img/cmn/instagram_icon.png) no-repeat left center/26px 26px;
  margin-right: 14px;
}

.s_link .in .timeline {
  margin: 0 auto;
  letter-spacing: -.4em;
  text-align: left;
}

.s_link .in .timeline li {
  letter-spacing: normal;
  display: inline-block;
  position: relative;
  width: 140px;
  vertical-align: middle;
  margin-left: 10px;
  margin-bottom: 10px;
}

.s_link .in .timeline li:nth-child(3n-2) {
  margin-left: 0;
}

.s_link .in .timeline li::before {
  content: '';
  display: block;
  padding-top: 100%;
}

.s_link .in .timeline li a {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: auto;
  height: auto;
  display: block;
  -webkit-transition-duration: 0.25s;
  transition-duration: 0.25s;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  outline: none;
  overflow: hidden;
  text-indent: -9999px;
}

.s_link .youtube {
  /* position: absolute; */
  right: 0;
  bottom: 0;
  width: 440px;
}

@media only screen and (max-width: 1024px) {
.s_link .youtube {
  width: 100%;
  position: inherit;
}
}

.s_link .youtube .link_ttl {
  margin-bottom: 25px;
  font-weight: bold;
  font-size: 16px;
}

.s_link .youtube .bnr {
  width: 100%;
  height: auto;
}

@media only screen and (max-width: 768px) {
.s_link .youtube {
  margin-top: 30px;
}
}


/*-------------------------------------------------

		☆ bottom modelhouse

-------------------------------------------------*/
#modelhouse_bottom {
  background-repeat: no-repeat;
  background-position: center 0;
  background-color: #f5f5f5;
  padding-top: 60px;
  padding-bottom: 105px;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom {
  background-repeat: no-repeat;
  background-position: center 0;
  background-size: 100%;
  padding-top: 30px;
  padding-bottom: 40px;
}
}

#modelhouse_bottom .inner {
  background-color: #f5f5f5;
}

#modelhouse_bottom .inner .ttl {
  text-align: center;
  margin-bottom: 54px;
  font-size: 40px;
  line-height: 1.4;
  letter-spacing: .1em;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom .inner .ttl {
  font-size: 29px;
  margin-bottom: 30px;
}
}

#modelhouse_bottom span.mini {
  font-size: 28px;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom span.mini {
  font-size: 20px;
}
}

#modelhouse_bottom .modelhouse_bottom_list {
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-items: center;
  justify-content: center;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom .modelhouse_bottom_list {
  max-width: 100%;
  display: block;
}
}

#modelhouse_bottom .modelhouse_bottom_list li {
  width: 520px;
  margin-right: 20px;
  margin-bottom: 20px;
  padding: 20px 30px;
  background-color: #fff;
  position: relative;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom .modelhouse_bottom_list li {
  max-width: 100%;
  margin-right: 0;
  padding: 20px 0;
}
}

/*
#modelhouse_bottom .modelhouse_bottom_list .flex-01 {
  margin-bottom: 0px;
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom .modelhouse_bottom_list .flex-01 {
  display: block;
}
}

#modelhouse_bottom .modelhouse_bottom_list .box-l {
  width: 180px;
  float: left;
  margin-right: 18px;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom .modelhouse_bottom_list .box-l {
  width: 100%;
  float: none;
  margin-right: 18px;
}
}
*/

#modelhouse_bottom .modelhouse_bottom_list .box-l .pic {
  width: 100%;
  height: auto;
  overflow: hidden;
  text-align: center;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom .modelhouse_bottom_list .box-l .pic {
  height: auto;
}
}

#modelhouse_bottom .modelhouse_bottom_list .box-l .pic img {
  width: 100%;
  height: auto;
  object-fit: cover;
  font-family: "object-fit: cover;";
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom .modelhouse_bottom_list .box-l .pic img {
  height: auto;
}
}

#modelhouse_bottom .modelhouse_bottom_list .box-r {
/*  float: right;
  width: 260px; */
  padding-top: 16px;
  text-align: center;
  color: #221815;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: 0.7px;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom .modelhouse_bottom_list .box-r {
  float: none;
  width: 100%;
}
}

#modelhouse_bottom .modelhouse_bottom_list .box-r .ttl_1 {
  color: #221815;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 1.2px;
  padding-bottom: 9px;
  text-align: center;
}

#modelhouse_bottom .modelhouse_bottom_list .ttl_1 {
  color: #221815;
  font-size: 18px;
  line-height: 1.4;
  letter-spacing: 1.2px;
  text-align: left;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom .modelhouse_bottom_list .ttl_1 {
  font-size: 16px;
}
}

#modelhouse_bottom .modelhouse_bottom_list .box-r address {
  line-height: 1.7;
  border: 1px solid #a2a2a2;
  padding: 10px 0 10px 10px;
  margin-bottom: 20px;
  font-size: 13px;
  text-align: center;
  position: relative;
  width: 80%;
  margin: 0 auto 20px auto;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom .modelhouse_bottom_list .box-r address {
  font-size: 12px;
}
}

@media only screen and (max-width: 768px) {
#modelhouse_bottom .modelhouse_bottom_list .box-r address {
  font-size: 11px;
  width: 90%;
}
}

#modelhouse_bottom .modelhouse_bottom_list .box-r address img {
  width: 18px;
  margin-right: 5px;
  position: absolute;
  left: 13px;
}

@media only screen and (max-width: 768px) {
#modelhouse_bottom .modelhouse_bottom_list .box-r address img {
  width: 15px;
}
}

#modelhouse_bottom .modelhouse_bottom_list .box-r .modelImg {
  width: 300px;
}

#modelhouse_bottom a {
  color: #221815;
  font-weight: bold;
}

#modelhouse_bottom .more_btn_1 {
  display: block;
  width: 80%;
  font-size: 13px;
  margin-bottom: 10px;
  background: #fff;
  border-radius: 50px;
  margin: 0 auto;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom .more_btn_1 {
  text-align: center;
}
}

#modelhouse_bottom .more_btn_1 a {
  background: #88b2d0;
  padding: 10px 0;
  display: block;
  position: relative;
  color: #fff;
  border-radius: 50px;
}

#modelhouse_bottom .reserve_btn_1 {
  display: block;
  width: 100%;
  font-size: 13px;
  background: #F46060;
  border-radius: 50px;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom .reserve_btn_1 {
    text-align: center;
}
}

#modelhouse_bottom .reserve_btn_1 a {
  color: #fff;
  padding: 10px 0;
  display: block;
  position: relative;
}

#modelhouse_bottom .more_btn_1 a::after, #modelhouse_bottom .reserve_btn_1 a::after {
  content: "";
  position: absolute;
  top: 0;
  right: 16px;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  transform: rotate( -45deg);
  border-right: 2px solid;
  border-bottom: 2px solid;
}

/* サンクスページ */
.p-event-form.u-block {
  padding-top: 120px;
}
.form_ok {
  width: 100%;
  text-align: center;
  padding: 20px 20px 70px 20px;
  max-width: 100%;
  box-sizing: border-box;
}

.form_ok h3 {
  font-size: 31px;
  margin-bottom: 25px;
  font-weight: 700;
  line-height: 1.5em;
}

.form_ok h3:before {
  padding-right: 10px;
  color: #ded11a;
}

.form_ok p {
  font-size: 14px;
  font-weight: 500;
  line-height: 2.2;
}

.form_ok strong {
  font-weight: bold;
}

.checkmark {
  text-align: center;
  margin: 40px auto;
}

.checkmark img {
  width: 130px;
}

@media only screen and (max-width: 768px) {
.checkmark {
  margin: 10px auto;
}
.checkmark img {
  width: 70px;
}
}

h3.c-titlejpen {
  text-align: center;
}

.u-section {
  background: #efefef;
  padding: 60px 0;
  margin-bottom: 40px;
}

span.c-titlejpen-jp.u-jp {
  font-size: 40px;
  font-weight: bold;
  margin-top: 30px;
  display: block;
  color: #d2c169;
}

.ichiran-btn {
  text-align: center;
  background: #484848;
  width: 430px;
  margin: 0 auto 100px auto;
}

.ichiran-btn a {
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  padding: 20px 10px;
  display: block;
}

.ichiran-btn a i {
  padding-left: 12px;
}

.ichiran-btn a span {
  font-weight: bold;
}

.ichiran-btn.orange-btn {
  background: #EE9301;
  color: #fff;
  margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
.form_ok {
  padding: 20px 20px 30px 20px;
}
.form_ok h3 {
  font-size: 22px;
}
.form_ok p {
  text-align: left;
}
.u-section {
  padding: 20px 0;
}
.ichiran-btn {
  width: 88%;
  margin-bottom: 30px;
}
.ichiran-btn a {
  padding: 20px 10px;
}
span.c-titlejpen-jp.u-jp {
  margin-top: 10px;
}
}

/* recaptcha ロゴ非表示 */
.grecaptcha-badge { visibility: hidden; }

/*-------------------------------------------------

		☆ footer

-------------------------------------------------*/
footer {
  position: relative;
  background: #fff;
}

@media screen and (max-width: 768px) {
footer {
  padding-bottom: 70px;
}
}

@media screen and (max-width: 320px) {
footer {
  padding-bottom: 60px;
}
}

footer .breadcrumb {
  height: 60px;
  padding: 17px 0;
  background: #e8e8e8;
}

footer .breadcrumb p {
  width: 1080px;
  margin: 0 auto;
  text-align: left;
  letter-spacing: -.4em;
}

footer .breadcrumb p span {
  background: #fdd23e;
  color: #fff;
}

footer .breadcrumb p a, .breadcrumb p span {
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
  font-size: 12px;
  line-height: 26px;
  height: 26px;
  padding: 0 16px;
  font-weight: bold;
  border-radius: 3px;
}

@media only screen and (max-width: 1024px) {
footer .breadcrumb p a, .breadcrumb p span { 
  margin-left: 10px;
}  
}

footer .pagetop {
  position: absolute;
  z-index: 40;
  top: 0;
  right: 0;
  width: 200px;
  height: 60px;
  background: #4f8db5;
  color: #fff;
  font-family: 'Century Gothic', sans-serif;
  font-style: normal;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 16px;
  line-height: 60px;
  text-align: center;
  text-decoration: none;
  -webkit-transition-duration: 0.25s;
  transition-duration: 0.25s;
}

@media only screen and (max-width: 1024px) {
footer .pagetop {
  width: 116px;
  height: 60px;
  font-size: 12px;
  line-height: 60px;
  text-align: right;
  padding: 0 20px;
}
}

footer .pagetop:before {
  content: "";
  position: absolute;
  top: -2px;
  left: 42px;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  transform: rotate( -136deg);
  border-right: 2px solid;
  border-bottom: 2px solid;
}

footer .footer_in_1 {
  background: #f2f2f3;
  padding: 70px 0 50px;
}

@media only screen and (max-width: 1024px) {
footer .footer_in_1 {
  padding: 5px 0 20px;
}
}

footer .footer_navi {
  width: 1080px;
  margin: 0 auto 40px auto;
  text-align: left;
}

@media only screen and (max-width: 1024px) {
footer .footer_navi {
  width: 90%;
}
}

footer .footer_navi li {
  float: left;
}

@media only screen and (max-width: 1024px) {
footer .footer_navi li {
  float: none;
}
}

footer .footer_navi li.footer_navi_list_1 {
  width: 225px;
  margin-right: 60px;
}

@media only screen and (max-width: 1024px) {
footer .footer_navi li.footer_navi_list_1 {
  width: auto;
  margin-right: 0;
}
}

footer .footer_navi li.footer_navi_list_2 {
  width: 210px;
  margin-right: 60px;
}

@media only screen and (max-width: 1024px) {
footer .footer_navi li.footer_navi_list_2 {
  width: auto;
  margin-right: 0;
}
}

footer .footer_navi li.footer_navi_list_3 {
  width: 175px;
  margin-right: 60px;
}

@media only screen and (max-width: 1024px) {
footer .footer_navi li.footer_navi_list_3 {
  width: auto;
  margin-right: 0;
}
}

footer .footer_navi li.footer_navi_list_4 {
  width: 185px;
  overflow: hidden;
}

@media only screen and (max-width: 1024px) {
footer .footer_navi li.footer_navi_list_4 {
  width: auto;
}
}

@media only screen and (max-width: 1024px) {
footer .footer_navi .on {
  border-bottom: 1px solid #dbdbdb;
}
}

footer .footer_navi li > div:first-child {
  margin-top: 0;
}

footer .footer_navi li > div {
  margin-top: 45px;
}

footer .footer_navi .sec {
  padding-bottom: 19px;
  border-bottom: 2px solid #71a8cb;
  margin-bottom: 20px;
  height: 65px;
}

@media only screen and (max-width: 1024px) {
footer .footer_navi .sec {
  padding-bottom: 0;
  border-bottom: 1px solid #dbdbdb;
  margin-bottom: 0;
  position: relative;
  height: 50px;
}
}

footer .footer_navi a {
  display: block;
  text-decoration: none;
  color: #000;
}

footer .footer_navi .sec .en {
  display: block;
  margin-bottom: 14px;
  color: #71a8cb;
  font-family: 'Century Gothic', sans-serif;
  font-style: normal;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 12px;
}

@media only screen and (max-width: 1024px) {
footer .footer_navi .sec .en {
  display: none;
}
}

footer .footer_navi .sec .ja {
  display: inline-block;
  font-weight: bold;
  font-size: 16px;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
footer .footer_navi .sec .ja {
  font-size: 14px;
  line-height: 49px;
}
}

footer .footer_navi .sec .ja:before {
  display: inline-block;
  vertical-align: top;
  content: '';
  background: url(../img/staff/staff_slide_arrowL.png) no-repeat 0 0/contain;
  width: 15px;
  height: 15px;
  margin: 1px 10px 0 0;
}

@media only screen and (max-width: 1024px) {
footer .footer_navi .sec .ja:before {
  vertical-align: middle;
}
}

footer .footer_navi .thi {
  font-size: 14px;
  line-height: 1.43;
  padding-left: 18px;
  margin-bottom: 18px;
  margin-right: -10px;
  position: relative;
}

@media only screen and (max-width: 1024px) {
footer .footer_navi .thi {
  float: none;
  font-size: 14px;
  line-height: 49px;
  padding-left: 22px;
  margin-left: 5px;
  margin-bottom: 0;
  margin-right: 0;
  border-top: 1px solid #dbdbdb;
}
}

footer .footer_navi .thi::before {
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  transform: rotate( -45deg);
  border-right: 2px solid;
  border-bottom: 2px solid;
}

footer .footer_navi li > div a:last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 1024px) {
footer .footer_navi li > div a:last-child  {
  margin-bottom: 0;
}
}

footer .btn_area {
  width: 1080px;
  margin: 0 auto;
  letter-spacing: -.4em;
}

@media only screen and (max-width: 1024px) {
footer .btn_area {
  width: 90%;
  margin: 15px auto 0;
  letter-spacing: -.4em;
  text-align: left;
}
}

footer .btn_area li {
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
  margin-top: -10px;
}

@media only screen and (max-width: 1024px) {
footer .btn_area li {
  width: 50%;
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-top: 0;
}
footer .btn_area li:nth-child(odd) {
  padding: 9px 0 0 5px;
}
footer .btn_area li:first-child {
  width: 100%;
  padding: 0;
}
}

footer .btn_area .btn {
  display: block;
  text-decoration: none;
  width: 200px;
  max-width: 100%;
  height: 50px;
  border-radius: 25px;
  background: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 12px;
  line-height: 50px;
}

@media only screen and (max-width: 1024px) {
footer .btn_area .btn {
  width: 100%;
  max-width: 100%;
  height: 40px;
  border-radius: 20px;
  font-size: 12px;
  line-height: 40px;
}
}

footer .btn_area .btn:before {
  content: '';
  display: inline-block;
  vertical-align: top;
}

footer .btn_area .btn.movie:before {
  background: url(../img/cmn/icon_movie.svg) no-repeat 0 0/contain;
  width: 18px;
  height: 13px;
  margin: 19px 11px 0 0;
}

footer .btn_area .btn .en {
  font-family: 'Century Gothic', sans-serif;
  font-style: normal;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 14px;
  display: inline-block;
  margin-right: 10px;
}

footer .btn_area li + li {
  padding-left: 16px;
}

@media only screen and (max-width: 1024px) {
footer .btn_area li + li {
  padding: 0;
}
footer .btn_area li:nth-child(even) {
  padding: 9px 5px 0 0;
}
}

footer .subnav {
  margin: 35px auto 0;
  width: 910px;
  height: 70px;
  border-radius: 35px;
  background: #fff;
  letter-spacing: -.4em;
}

@media only screen and (max-width: 1024px) {
footer .subnav {
  margin: 0 auto;
  width: 90%;
  height: auto;
  border-radius: 0;
  background: transparent;
  text-align: left;
}
}

footer .subnav li {
  letter-spacing: normal;
  display: inline-block;
  vertical-align: top;
  position: relative;
  padding: 25px 28px;
}

@media only screen and (max-width: 1024px) {
footer .subnav li {
  width: 50%;
  padding: 0;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
}
}

footer .subnav li::before {
  content: '';
  width: 1px;
  height: 10px;
  background: #dbdbdb;
  position: absolute;
  left: 0;
  top: 30px;
}

@media only screen and (max-width: 1024px) {
footer .subnav li::before {
  content: none;
}
}

footer .subnav li:first-child {
  padding: 25px 28px 25px 8px;
}

@media only screen and (max-width: 1024px) {
footer .subnav li:first-child {
  padding: 25px 28px 25px 8px;
}
footer .subnav li:nth-child(odd) {
  padding-right: 5px;
}
footer .subnav li:first-child {
  padding: 0 5px 0 0;
}
}

footer .subnav li:first-child::before, footer .subnav li:last-child::before {
  content: none;
}

footer .subnav a {
  display: block;
  text-decoration: none;
  font-weight: bold;
}

footer .subnav a.contact {
  padding: 0 40px 0 60px;
  height: 40px;
  border-radius: 20px;
  background: #F46060;
  color: #fff;
  font-size: 14px;
  line-height: 40px;
  letter-spacing: 0.075em;
  -webkit-transition-duration: 0.25s;
  transition-duration: 0.25s;
}

@media only screen and (max-width: 1024px) {
footer .subnav a.contact {
  margin-top: 15px;
  width: 100%;
  height: 50px;
  border-radius: 25px;
  font-size: 14px;
  line-height: 50px;
  text-align: center;
}
}

footer .subnav a.contact::before {
  content: "";
  position: absolute;
  top: -2px;
  left: 42px;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  transform: rotate( -45deg);
  border-right: 2px solid;
  border-bottom: 2px solid;
}

@media only screen and (max-width: 1024px) {
footer .subnav a.contact::before {
  top: 11px;
}
}

footer .subnav a:not(.contact) {
  font-size: 14px;
  line-height: 20px;
  color: #000;
}

@media only screen and (max-width: 1024px) {
footer .subnav a:not(.contact) {
  height: 36px;
  font-size: 12px;
  line-height: 36px;
  background: #fff;
  border-radius: 18px;
  margin-top: 9px;
}
}

footer .subnav li:last-child {
  padding: 15px 0 15px 10px;
}

@media only screen and (max-width: 1024px) {
footer .subnav li:last-child {
  padding: 0;
  width: 100%;
}
}

footer .footer_in_2 {
  width: 1080px;
  margin: 0 auto;
  padding: 50px 0 45px;
  display: table;
  background: #fff;
}

@media only screen and (max-width: 1024px) {
footer .footer_in_2 {
  width: 100%;
  margin: 0 auto;
  padding: 35px 0 25px;
  display: block;
}
}

footer .footer_in_2 address {
  display: table-cell;
  vertical-align: top;
  font-size: 14px;
  line-height: 1.75;
  text-align: left;
}

@media only screen and (max-width: 1024px) {
footer .footer_in_2 address {
  display: block;
  text-align: center;
  position: relative;
  padding: 0 6% 50px 6%;
}
}

footer .footer_in_2 address .logo {
  margin-bottom: 25px;
  display: block;
  width: 280px;
}

@media only screen and (max-width: 1024px) {
footer .footer_in_2 address .logo {
  width: 220px;
  margin: 0 auto 20px;
}
footer .footer_in_2 address p {
  text-align: center;
  font-size: 12px;
  font-weight: bold;
}
}

footer .footer_in_2 address a:not(.tel) {
  color: #3d9ed1;
  text-decoration: underline 1px;
}

footer .footer_in_2 address .logo img {
  width: 100%;
  height: auto;
}

footer .footer_in_2 address a.footer_model {
  display: inline-block;
  margin-left: 20px;
}

@media only screen and (max-width: 1024px) {
footer .footer_in_2 address a.footer_model {
  display: block;
  position: absolute;
  width: 160px;
  height: 36px;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 18px;
  border: 1px solid #dbdbdb;
  line-height: 34px;
  text-decoration: none;
  font-size: 0.857em;
  left: 50%;
  margin-left: -80px;
  bottom: 0;
  text-align: center;
  color: #000;
}
}

@media only screen and (max-width: 1024px) {
footer .footer_in_2 address a.footer_model::before {
  display: inline-block;
  vertical-align: middle;
  content: '';
  background: url(../img/staff/staff_slide_arrowL.png) no-repeat 0 0/contain;
  width: 15px;
  height: 15px;
  margin: 1px 10px 0 0;
}
}

footer .footer_in_2 address a.tel {
  text-decoration: none;
  color: #000;
}

footer .footer_in_2 .link {
  display: table-cell;
  vertical-align: top;
  text-align: right;
  letter-spacing: -.4em;
  padding-top: 55px;
}

@media only screen and (max-width: 1024px) {
footer .footer_in_2 .link {
  display: block;
  text-align: center;
  padding-top: 24px;
}
}

footer .footer_in_2 .link .sns {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  padding-right: 18px;
  margin-right: 15px;
}

footer .footer_in_2 .link .sns li {
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
  margin-right: 15px;
}

footer .footer_in_2 .link .sns li:last-child {
  margin-right: 0;
}

footer .footer_in_2 .link .sns a {
  text-align: left;
  display: block;
  text-indent: -9999px;
  overflow: hidden;
  height: 20px;
}

footer .footer_in_2 .link .sns .fb {
  width: 20px;
  background: url(../img/cmn/facebook_icon.svg) no-repeat 0 0/contain;
}

footer .footer_in_2 .link .sns .tw {
  width: 22px;
  background: url(../img/cmn/twitter_icon.svg) no-repeat 0 0/contain;
}

footer .footer_in_2 .link .sns .in {
  width: 20px;
  background: url(../img/cmn/instagram_icon.png) no-repeat 0 0/contain;
}

footer .footer_in_2 .link .sns:after {
  content: '';
  width: 1px;
  height: 14px;
  background: #dbdbdb;
  position: absolute;
  right: 0;
  top: 3px;
}

footer .footer_in_2 .link .yt {
  display: inline-block;
  vertical-align: middle;
  width: 20px;
}

footer .footer_in_3 {
  background: #000;
  padding: 15px 0;
  color: #fff;
}

@media only screen and (max-width: 1024px) {
footer .footer_in_3 {
  padding: 15px 0;
}
}

footer .footer_in_3 p {
  font-size: 14px;
}

@media only screen and (max-width: 1024px) {
footer .footer_in_3 p {
  font-size: 10px;
  line-height: 1.4;
  text-align: center;
}
}


/* 協賛企業一覧 */
.kyousan_ttl {
  background: #71a8cb;
  color: #fff;
  text-align: center;
  font-size: 20px;
  margin-top: 20px;
  margin-bottom: 20px;
  width: 100%;
  font-weight: 700;
}

.kyousan_list {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  margin: 20px 0;
  clear: both;
}

.kyousan_list li {
  background: #fff;
  width: 18%;
  margin: 0 2.5% 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.kyousan_list li a {
  padding: 5px;
  box-sizing: border-box;
  display: block;
  transition: ease 0.4s;
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.kyousan_list li img {
  max-width: 120px;
  height: auto;
  max-height: 40px;
}

.kyousan_list li:nth-of-type(5n) {
  margin-right: 0;
}

.kyousan_list li:nth-of-type(n + 6) {
  margin-top: 10px;
}

@media only screen and (max-width: 1024px) {
  .kyousan_list li img {
    max-width: 100%;
  }
}


/* 不動産売却無料査定バナー */
.realestate {
  background: #fff !important;
  padding: 0 0 60px 0;
}

@media only screen and (max-width: 1024px) {
  .realestate {
    padding: 0 0 60px 0;
    padding-right: 4%;
    padding-left: 4%;
  }
}

/*-------------------------------------------------

		☆ page 固定ページ

-------------------------------------------------*/
.mainTitBox {
  text-align: center;
  color: #272727;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  padding-top: 110px;
  padding-bottom: 60px;
}

@media only screen and (max-width: 1024px) {
.mainTitBox {
  padding-top: 70px;
  padding-bottom: 30px;
}
}

.mainTitBox .titEng {
  font-size: 14px;
  line-height: 20px;
  font-weight: 900;
  letter-spacing: 4px;
  padding-top: 15px;
  color: #2d2d2d;
  font-family: 'Century Gothic', sans-serif;
  text-transform: lowercase;  /* 全体を小文字にリセット */
}

.mainTitBox .titEng::first-letter {
  text-transform: capitalize;  /* 先頭文字だけ大文字化 */
}

.mainTitBox .titEng::before, .mainTitBox .titEng::after {
  content: none;
}

.mainTitBox .topTit {
  font-size: 24px;
  line-height: 20px;
  font-weight: 700;
  padding-top: 10px;
  letter-spacing: 3px;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
.mainTitBox .topTit {
  font-size: 22px;
}
}

@media only screen and (max-width: 320px) {
.mainTitBox .topTit {
  font-size: 20px;
}
}

.mainTitBox .topTit::after {
  content: '';
  display: block;
  margin: 20px auto 0;
  width: 160px;
  height: 1px;
  background: #444444;
}

.header_bottom_txt p {
  text-align: center;
  letter-spacing: 0.05em;
}

h3.sub-title {
  background: linear-gradient(to left, #83b7d8, #71a8cb);
  padding: 15px 20px;
  color: #fff;
  margin-bottom: 30px;
  font-size: 1rem;
  font-weight: bold;
  letter-spacing: 1px;
  max-width: 1080px;
  margin: 10px auto 0 auto;
  text-align: left;
}

@media only screen and (max-width: 1024px) {
h3.sub-title {
  font-size: 16px;
  line-height: 1.4;
}
}

h4.page_sub_ttl {
  font-size: 26px;
  text-align: center;
  padding: 20px 0 0 0;
  margin-bottom: 40px;
  position: relative;
}

h4.page_sub_ttl.ja {
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

h4.page_sub_ttl.en {
  font-family: 'Century Gothic', sans-serif;
  font-weight: 900;
  letter-spacing: 2px;
}

h4.page_sub_ttl::after {
  content: "";
  border-top: 3px solid #00a0c2;
  width: 40px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}

/* パンくず */
.breadcrumbs {
  margin-bottom: 1rem;
  line-height: 1.5;
}


/*-------------------------------------------------

		☆ single staffblog & staffblog

-------------------------------------------------*/
section.secDetails {
  margin-bottom: 100px;
}

@media only screen and (max-width: 1024px) {
section.secDetails {
  padding-top: 20px;
  margin-bottom: 60px;
}
}

.secDetailsTit {
  padding: 40px 0;
  border-bottom: 1px solid #e1e1e1;
  text-align: left;
}

@media only screen and (max-width: 1024px) {
.secDetailsTit {
  padding: 0 0 20px 0;
}
}

.secDetailsTit .tit {
  font-size: 26px;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 2px;
}

@media only screen and (max-width: 1024px) {
.secDetailsTit .tit {
    font-size: 18px;
    line-height: 1.8;
    letter-spacing: 1px;
}
}

.secDetailsTit .subIn {
  font-size: 0;
  padding-top: 13px;
}

@media only screen and (max-width: 1024px) {
.secDetailsTit .subIn {
    padding-top: 0px;
}
}

.secDetailsTit .txtDate {
  font-size: 16px;
  line-height: 23px;
  letter-spacing: 0.5px;
  color: #979797;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-weight: 400;
}

@media only screen and (max-width: 1024px) {
.secDetailsTit .txtDate {
    font-size: 14px;
    line-height: 1.8;
}
}

.secDetailsTit .txtDate, .secDetailsTit .iconList {
  display: inline-block;
  vertical-align: middle;
}

.secDetailsTit .iconList li.new {
  margin: 0 0 0 15px;
  font-size: 12px;
  padding: 2px 8px;
}

.boxArticle.entry p {
  font-size: 17px;
  line-height: 1.8;
  font-weight: 500;
  margin-bottom: 2rem;
}

.magazine.boxArticle.entry p {
  margin-bottom: 0;
}

.boxArticle.entry ul {
  margin-bottom: 2rem;
  color: #555;
}

.boxArticle.entry ul li {
  font-size: 17px;
  list-style-type: initial;
  margin-left: 2.5rem;
  padding-bottom: 0.75rem;
}

@media only screen and (max-width: 1024px) {
.boxArticle.entry p {
  font-size: 15px;
  line-height: 1.8;
}
}

@media only screen and (max-width: 320px) {
  .boxArticle.entry p {
    font-size: 14px;
    line-height: 1.8;
}
}

.boxArticle.entry.staffblog {
  font-weight: 500;
}

.boxArticle.entry picture {
  margin-bottom: 2rem;
  text-align: center;
  margin-top: 2rem;
}

.boxArticle.entry h3 {
  font-size: 18px;
  padding: 0 0 0 10px;
  border-left: 6px solid #ff832e;
  margin: 3rem 0 1.6rem 0;
  line-height: 1.5em;
}

@media only screen and (max-width: 768px) {
.boxArticle.entry h3 {
  font-size: 16px;
}
}

.boxArticle.entry #mokuji {
  background: #f9f9f9;
  border: 1px solid #aaa;
  padding: 10px;
  margin-bottom: 1em;
  margin: 2rem 0;
}

.boxArticle.entry #mokuji ul {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
}

.boxArticle.entry #mokuji .mokuji_icon {
  background-image: url(../img/cmn/list-icon.png);
  display: block;
  width: 100%;
  padding: 16px 16px 16px 40px;
  background-position: left 16px center;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  font-size: 17px;
}

.boxArticle.entry #mokuji ul>li {
  font-weight: bold;
  list-style-type: none;
}

.boxArticle.entry #mokuji ul>li span {
  display: inline-block;
  margin-right: 3px;
}

.boxArticle.entry #mokuji ul>li>ul {
  padding: 0.7em 0 0 2em;
  margin: 0;
}

.boxArticle.entry #mokuji ul>li>ul>li {
  font-weight: normal;
}

.magazine.boxArticle.entry a {
  font-size: 17px;
  text-decoration: underline;
}

.magazine.boxArticle.entry p strong {
  background: linear-gradient(transparent 50%, rgb(255 227 140 / 62%) 50%);
}

.magazine.boxArticle.entry .kome {
  font-size: 12px;
}

.magazine .wp-block-image {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.wp-block-image figcaption {
  margin-top: 0.8em;
  font-size: 13px;
  color: #747474;
}

.magazine.boxArticle.entry p.caution {
  font-size: 13px !important;
  color: #9e9e9e;
  margin-top: 1rem;
}

@media only screen and (max-width: 1024px) {
.boxArticle.entry picture {
  margin-top: 20px;
  margin-bottom: 1.6rem;
}
}

.blog-bottom-link {
  font-size: 17px;
  line-height: 1.65;
  padding: 80px 0;
}

@media only screen and (max-width: 1024px) {
.blog-bottom-link {
  font-size: 15px;
  line-height: 1.8;
}
}
  
@media only screen and (max-width: 320px) {
.blog-bottom-link {
  font-size: 14px;
  line-height: 1.8;
}
}

/*-------------------------------------------------

		☆ page staff

-------------------------------------------------*/
.f_staff.page {
  overflow: hidden;
}

@media only screen and (max-width: 1024px) {
.f_staff.page {
  max-width: 100%;
  padding: 0 4% !important;
}
}

.f_staff.page .other {
  margin: 0 auto;
}

.f_staff.page .other ul {
  margin: 0 auto;
  text-align: center;
}

.f_staff.page .other ul li {
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
  width: 170px;
  text-align: center;
  margin: 48px;
}

@media only screen and (max-width: 1024px) {
.f_staff.page .other ul li {
  width: 39%;
  margin: 5%;
}
}

.f_staff.page .other a {
  display: block;
  text-decoration: none;
  color: inherit;
}

.f_staff.page .other .img {
  display: block;
  position: relative;
  width: 100%;
  margin: 0 auto;
}

.f_staff.page .other .img img, .f_staff.page .other .img:after {
  width: 100%;
  height: auto;
  border-radius: 50%;
}

.f_staff.page .other .img img {
  position: relative;
  z-index: 2;
}

.f_staff.page .other .role {
  margin: 20px auto 12px;
  display: block;
  font-size: 1em;
  -webkit-font-feature-settings: 'palt' 1;
  -moz-font-feature-settings: 'palt' 1;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.05em;
}

.f_staff.page .other .name {
  display: block;
  font-weight: bold;
  font-size: 1.6em;
}

.f_staff.page .staff_card {
  float: left;
  width: 46%;
  margin: 20px;
}

@media only screen and (max-width: 1024px) {
.f_staff.page .staff_card {
  float: none;
  width: 100%;
  margin: 0 0 20px 0;
}
}

/*-------------------------------------------------

		☆ page staffblog & blog

-------------------------------------------------*/
#f_staffblog.page {
  padding-top: 40px;
  padding-bottom: 100px;
}

@media only screen and (max-width: 1024px) {
#f_staffblog.page {
  padding-top: 0;
  padding-bottom: 20px;
}
}

#f_staffblog.page .aBox {
  padding: 30px 0;
}

@media only screen and (max-width: 1024px) {
#f_staffblog.page .aBox {
  padding: 13px 0;
}
}

#f_staffblog.page .boxTit {
  font-size: 18px;
}

@media only screen and (max-width: 1024px) {
#f_staffblog.page .boxTit {
  font-size: 13px;
}
#f_staffblog.page .aBox::after {
  right: 5px;
}
}

/*-------------------------------------------------

		☆ single magazine

-------------------------------------------------*/
.boxArticle.magazine h2 {
  line-height: 1.5;
  border-bottom: 5px solid #e1e1e1;
  padding: 10px;
  margin: 4rem auto 2rem auto;
  font-size: 22px;
  background: #f8f6f6;
}

.boxArticle.entry.magazine ul {
  margin-bottom: 1.5em;
  padding: 1em 1em 1em 1.6em;
  border: solid 2px #e8e8e8;
  border-radius: 3px;
  margin: 1.5rem 0;
  line-height: 1.7;
}

.boxArticle.entry.magazine ul li {
  list-style-type: initial;
  list-style-position: inside;
  padding: 10px 0;
  font-size: 17px;
  font-weight: 500;
  margin-left: 0;
}

.wp-block-image {
  margin-bottom: 1.6rem;
}

@media only screen and (max-width: 1024px) {
.boxArticle.magazine h2 {
  font-size: 18px;
}
}

/*-------------------------------------------------

		☆ single staff

-------------------------------------------------*/
.f_staff.single .txt .ttl {
  font-family: 'Century Gothic', sans-serif;
  font-style: normal;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 18px;
  position: relative;
  margin-bottom: 40px;
  letter-spacing: 2px;
}

@media only screen and (max-width: 1024px) {
.f_staff.single .txt .ttl {
  font-size: 16px;
  margin-bottom: 30px;
}
}

.f_staff.single .txt .ttl:after {
  content: '';
  display: block;
  background: #fff;
  position: absolute;
  height: 1px;
  width: 360px;
  bottom: -10px;
  left: 0;
}

@media only screen and (max-width: 1024px) {
.f_staff.single .txt .ttl:after {
  width: 140px;
}
}

.f_staff.single .slide_box {
  width: 100%;
  min-width: 960px;
  height: 574px;
  background: #f2f2f3;
  margin-bottom: 60px;
  color: #fff;
  letter-spacing: -.4em;
  position: relative;
}

@media only screen and (max-width: 1024px) {
.f_staff.single .slide_box {
  min-width: 100%;
  height: auto;
  margin-bottom: 35px;
  position: relative;
}
}

@media only screen and (max-width: 1024px) {
.f_staff.single .slide_box .txt {
  display: block;
  position: absolute;
  left: 10%;
  bottom: 30px;
  width: 80%;
  padding-left: 0 !important;
}
.f_staff.single .slide_box .txt .ttl {
  font-size: 16px;
  margin-bottom: 30px;
}
.f_staff.single .slide_box .txt .copy {
  margin-bottom: 20px;
  width: 100%;
}
}

.f_staff.single .profile {
  width: 640px;
  margin: 0 auto 45px;
  text-align: left;
}

@media only screen and (max-width: 1024px) {
.f_staff.single .profile {
  width: 100%;
}
}

.f_staff.single .profile .name {
  margin-bottom: 10px;
}

.f_staff.single .profile .name .ja {
  font-weight: bold;
  font-size: 32px;
  display: inline-block;
}

@media only screen and (max-width: 1024px) {
.f_staff.single .profile .name .ja {
  font-size: 22px;
}
}

.f_staff.single .profile .name .en {
  font-family: 'Century Gothic', sans-serif;
  font-style: normal;
  letter-spacing: 0.05em;
  color: #71a8cb;
  font-weight: bold;
  font-size: 16px;
  display: inline-block;
  margin-left: 10px;
}

.f_staff.single .profile .txt {
  color: #878787;
  font-size: 14px;
  line-height: 2;
}

.f_staff.single .profile .txt.pd {
  padding-top: 20px;
}

.f_staff.single .profile .txt span {
  font-family: 'Century Gothic', sans-serif;
  font-style: normal;
  letter-spacing: 0.05em;
  font-weight: bold;
  padding: 0 10px;
  background: #fdd23e;
  border-radius: 3px;
  color: #fff;
  margin-right: 10px;
}

.f_staff.single .content {
  border-top: 1px solid #dbdbdb;
  width: 640px;
  margin: 0 auto;
  text-align: left;
}

@media only screen and (max-width: 1024px) {
.f_staff.single .content {
  width: 100%;
}
}

.f_staff.single .content h3 {
  padding-top: 45px;
  font-weight: bold;
  color: #3f9fdc;
  font-size: 24px;
  line-height: 1.75;
  margin-bottom: 30px;
  letter-spacing: 1px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
.f_staff.single .content h3 {
  font-size: 22px;
}
}

.f_staff.single .content > p:not(.cap) {
  font-size: 16px;
  line-height: 2;
  font-weight: 500;
}

.f_staff.single .content .img {
  margin-top: 40px;
  position: relative;
}

.f_staff.single .content .img img {
  width: 100%;
  height: auto;
}

.f_staff.single .content p.cap {
  margin-top: 8px;
  color: #878787;
  font-size: 12px;
  line-height: 1.5;
}

.f_staff.single .plus_ttl {
  position: relative;
  width: 160px;
  margin: 80px auto 30px;
}

@media only screen and (max-width: 1024px) {
.f_staff.single .plus_ttl {
  margin: 100px auto 30px;
}
}

.f_staff.single .plus_ttl .bal {
  position: absolute;
  z-index: 2;
  width: 200px;
  left: -156px;
  top: -64px;
}

@media only screen and (max-width: 1024px) {
.f_staff.single .plus_ttl .bal {
  left: -73px;
  top: -116px;
}
}

.f_staff.single .plus_ttl .bal img {
  width: 200px;
  height: auto;
}

.f_staff.single .plus_ttl .img {
  width: 160px;
  height: auto;
  border-radius: 50%;
}

.f_staff.single .plus {
  border: 1px solid #dbdbdb;
  border-radius: 5px;
  position: relative;
  padding: 40px 44px;
  margin: 0 auto;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 640px;
  text-align: left;
}

@media only screen and (max-width: 1024px) {
.f_staff.single .plus {
  width: 100%;
}
}

.f_staff.single .plus::before, .f_staff.single .plus::after {
  content: '';
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -6px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 6px 14px 6px;
}

.f_staff.single .plus::before {
  border-color: transparent transparent #dbdbdb transparent;
  z-index: 1;
  top: -14px;
}

.f_staff.single .plus::after {
  border-color: transparent transparent #fff transparent;
  z-index: 2;
  top: -11px;
}

.f_staff.single .plus h4 {
  color: #3f9fdc;
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 10px;
}

.f_staff.single .plus > p {
  font-size: 14px;
  line-height: 1.75;
  margin-bottom: 20px;
}

.f_staff.single .plus picture {
  width: 46%;
  margin: 13px 0 10px 0;
}

@media only screen and (max-width: 768px) {
.f_staff.single .plus picture {
  margin: 13px auto 10px auto;
  width: 90%;
}
}

.f_staff.single .plus picture img {
  width: 100%;
}

.f_staff.single .plus h4:not(:first-child) {
  border-top: 1px solid #dbdbdb;
  padding-top: 25px;
  margin-top: 20px;
}

.f_staff.single .movie {
  position: relative;
  margin: 80px 0;
}

.f_staff.single .movie {
  width: 100%;
}

.f_staff.single .movie_ttl {
  font-size: 26px;
  text-align: center;
  padding: 20px 0 0 0;
  margin-bottom: 40px;
  font-family: 'Century Gothic', sans-serif;
  font-weight: 900;
  letter-spacing: 2px;
}

.f_staff.single .movie_ttl::after {
  content: "";
  border-top: 3px solid #00a0c2;
  width: 40px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}

.movie iframe {
  width: 100%;
}

.f_staff.single .other {
  border-top: 1px solid #f2f2f3;
  margin-top: 75px;
  padding-top: 70px;
}

.f_staff.single .other .s_subttl {
  font-weight: bold;
  font-size: 18px;
  margin: 0 auto 50px;
}

.f_staff.single .other .s_subttl:after {
  display: block;
  margin: 15px auto 0;
  content: '';
  width: 120px;
  height: 3px;
  background: #fdd23e;
}

.f_staff.single .other ul {
  margin: 0 auto;
  width: 850px;
  letter-spacing: -.4em;
}

@media only screen and (max-width: 1024px) {
.f_staff.single .other ul { 
  width: 100%;
}
}

.f_staff.single .other ul li {
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
  width: 170px;
  margin-bottom: 40px;
}

.f_staff.single .other a {
  display: block;
  text-decoration: none;
  color: inherit;
}

.f_staff.single .other .img {
  display: block;
  position: relative;
  width: 100px;
  margin: 0 auto;
}

.f_staff.single .other .img img, .f_staff.single .other .img:after {
  width: 100px;
  height: 100px;
  border-radius: 50%;
}

.f_staff.single .other .img img {
  position: relative;
  z-index: 2;
}

.f_staff.single .other .role {
  margin: 20px auto 12px;
  display: block;
  font-size: 1em;
  -webkit-font-feature-settings: 'palt' 1;
  -moz-font-feature-settings: 'palt' 1;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.05em;
}

.f_staff.single .other .name {
  display: block;
  font-weight: bold;
  font-size: 1.6em;
}

/*-------------------------------------------------

		☆ front page modelhouse

-------------------------------------------------*/
#modelhouse_bottom.frontpage .inner {
  padding: 1rem !important;
  margin-top: 0 !important;
}

#modelhouse_bottom.frontpage .modelhouse_bottom_list li {
  padding: 1rem !important;
}

/*-------------------------------------------------

		☆ page modelhouse

-------------------------------------------------*/
#modelhouse_bottom.page {
  background-color: #fff;
  padding-top: 0;
  padding-bottom: 0;
}

#modelhouse_bottom.page .inner {
  padding: 2rem;
  margin-top: 2rem;
}

#modelhouse_bottom.page .modelhouse_bottom_list li {
  width: 50%;
  margin-right: 0;
  padding: 20px 25px;
  border-radius: 0px;
  position: relative;
}

#modelhouse_bottom.page .modelhouse_bottom_list li:first-child {
  border-right: 1px dotted #cacaca;
}

#modelhouse_bottom.page .modelhouse_bottom_list li:last-child {
  border-right: none;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom.page .modelhouse_bottom_list li {
  width: 100%;
  border-right: none;
  border-bottom: 1px dotted #cacaca;
  padding: 20px 0;
}
}

#modelhouse_bottom.page .modelhouse_bottom_list li .iconList {
  position: absolute;
}

#modelhouse_bottom.page .modelhouse_bottom_list .flex-01 {
  display: block;
}

#modelhouse_bottom.page .modelhouse_bottom_list .box-l {
  width: 100%;
  float: none;
  margin-right: 0;
}

#modelhouse_bottom.page .modelhouse_bottom_list .box-r {
  width: 100%;
  float: none;
}

#modelhouse_bottom.page .modelhouse_bottom_list .box-r .ttl_1 {
  font-size: 16px;
}

#modelhouse_bottom.page .modelhouse_bottom_list .box-r h4 {
  font-size: 12px;
  color: #c0bdba;
  margin-bottom: 1rem;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom.page .modelhouse_bottom_list .box-r .ttl_1 {
  font-size: 15px;
}
#modelhouse_bottom.page .modelhouse_bottom_list .box-r h4 {
  font-size: 10px;
}
}

#modelhouse_bottom.page .more_btn_1 {
  float: none;
  width: 46%;
  margin-top: 0;
  margin-right: auto;
  margin-left: auto;
  border: none;
  border-radius: none;
}

#modelhouse_bottom.page .reserve_btn_1 {
  float: left;
  width: 49%;
}

#modelhouse_bottom.page .more_btn_1 a, #modelhouse_bottom.page .reserve_btn_1 a {
  padding: 10px 0;
  font-size: 14px;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom.page .more_btn_1, #modelhouse_bottom.page .reserve_btn_1 {
  float: none;
  width: 70%;
  margin-left: auto;
  margin-right: auto;
}
#modelhouse_bottom.page .more_btn_1 a, #modelhouse_bottom.page .reserve_btn_1 a {
  padding: 10px 0;
  font-size: 13px;
}
}

#modelhouse_bottom.page .iconList li.new {
  background: #f9ed00;
  color: #000;
  font-size: 11px;
  line-height: 18px;
  font-weight: 700;
  letter-spacing: 0.5px;
  padding: 1px 5px;
  border-radius: 0;
  width: auto;
  margin-bottom: 6px;
}


/*-------------------------------------------------

		☆ single modelhouse

-------------------------------------------------*/
#modelhouse.single .system-contents {
  width: 100%;
  margin: 0 auto;
  background: #f5f5f5;
  padding: 40px 20px 0 20px;
  margin-bottom: 0;
}

@media only screen and (max-width: 1024px) {
#modelhouse.single .system-contents {
  padding: 10px 2%;
}
}

#modelhouse.single .system-contents-inner {
  background: #fff;
  padding: 32px 40px 40px;
  line-height: 1.8;
}

@media only screen and (max-width: 1024px) {
#modelhouse.single .system-contents-inner {
  padding: 20px 6%;
}
}

#modelhouse.single .system-contents .titleArea {
  margin-bottom: 30px;
  border-bottom: dotted 1px #333;
  padding-bottom: 10px;
  margin-bottom: 20px;
  color: #333;
}

.tag_list span {
  font-size: 13px;
  display: inline-block;
  margin-right: 10px;
}

.tag_list span.hash {
  margin-right: 0;
  color: #ffc329;
}

#modelhouse.single .system-contents .system-ttl {
    font-size: 30px;
    font-weight: bold;
    margin-bottom: 20px;
    line-height: 1.4;
    font-weight: 700;
    font-style: normal;
}

@media only screen and (max-width: 1024px) {
#modelhouse.single .system-contents .system-ttl {
  font-size: 22px;
  margin-bottom: 20px;
}
}

ul.lst-bnr {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 1.2em;
}

ul.lst-bnr li {
  -webkit-flex-basis: 50%;
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
  max-width: 50%;
  padding: 0;
}

@media only screen and (max-width: 1024px) {
ul.lst-bnr li {
  flex-basis: 100%;
  max-width: 100%;
  margin-bottom: 20px;
}
}

ul.lst-bnr.gl li {
  -webkit-flex-basis: 50%;
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
  max-width: 50%;
  margin-top: 0px;
  text-align: center;
  padding: 1%;
}

@media only screen and (max-width: 1024px) {
ul.lst-bnr.gl li {
  flex-basis: 100%;
  max-width: 100%;
  margin-top: 0;
}
}

#modelhouse.single .contents_in {
  color: #808b91;
}

#modelhouse.single .contents_in h2 {
  font-size: 26px;
  margin: 40px 0;
  font-weight: normal;
  font-family: fot-tsukuardgothic-std, sans-serif;
}

@media only screen and (max-width: 1024px) {
#modelhouse.single .contents_in h2 {
  font-size: 20px;
  margin: 20px 0;
}
}

#modelhouse.single .contents_in p {
  margin: 40px 0 20px 0;
}

@media only screen and (max-width: 1024px) {
#modelhouse.single .contents_in p {
  margin: 20px 0; 
}
}

#modelhouse.single .contents_in>div {
  font-size: 16px;
  margin-bottom: 40px;
}

#modelhouse.single .system-contents-inner p.tttl {
  margin: 0 0 15px 0;
  font-size: 14px;
  font-weight: bold;
}

.single__schedule {
  padding: 10px 20px;
  margin: 40px 0;
  border: 1px solid #ebebea;
  border-radius: 10px;
}

@media only screen and (max-width: 1024px) {
.single__schedule {
  margin: 20px 0;
}
}

.single__schedule .single__schedule__each {
  flex-flow: wrap;
  justify-content: space-between;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  padding: 15px 20px;
}

@media only screen and (max-width: 1024px) {
.single__schedule .single__schedule__each {
  padding: 8px 0;
}
}

.single__schedule .single__schedule__each + .single__schedule__each {
  border-top: 1px dashed #cac6c3;
}

.single__schedule .single__schedule__each dt {
  padding: 8px 0;
  font-weight: bold;
  width: 25%;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
.single__schedule .single__schedule__each dt {
  width: 100%;
}
}

.single__schedule .single__schedule__each dt, .single__schedule .single__schedule__each dd {
  font-size: 14px;
}

.single__schedule .single__schedule__each dd {
  padding: 8px 0;
  width: 75%;
}

@media only screen and (max-width: 1024px) {
.single__schedule .single__schedule__each dd {
  width: 100%;
}
}

.single__schedule .single__schedule__each dt, .single__schedule .single__schedule__each dd {
  font-size: 14px;
}

.single__map {
  margin-bottom: 60px;
}

.single__map iframe {
  width: 100%;
  margin: 20px 0;
}

.btn_more.reserve_btn {
  background: linear-gradient(to left, #ff5858, #F46060);
  position: relative;
  padding-left: 15px;
  color: #fff !important;
  font-size: 15px;
}

.btn_more.reserve_btn:hover {
  color: #fff !important;
}

.btn_more.reserve_btn::before {
  content: "";
  position: absolute;
  top: -5px;
  left: 25px;
  bottom: 0;
  margin: auto;
  width: 10px;
  height: 10px;
  transform: rotate(45deg);
  border-right: 3px solid #fff;
  border-bottom: 3px solid #fff;
  background: none;
}

.movie {
  width: 58%;
  margin: 80px auto;
}

@media only screen and (max-width: 1024px) {
.movie {
  width: 100%;
  margin: 30px auto 40px auto;
}
}

.map {
  margin: 80px auto;
  text-align: center;
}

.map iframe {
  max-width: 100%;
}

.lp_bnr {
  margin: 0 auto;
  text-align: center;
  background: #fff !important;
  padding-bottom: 80px;
}

@media only screen and (max-width: 768px) {
.lp_bnr {
  padding-bottom: 40px;
}
}

/*-------------------------------------------------

		☆ page event

-------------------------------------------------*/
.f_event_list.page {
  background-color: #f1f1f1;
  padding: 20px;
}

@media only screen and (max-width: 1024px) {
.f_event_list.page {
  padding: 10px;
}
}

.f_event_list.page li {
  width: 32%;
  margin-bottom: 20px;
}

@media only screen and (max-width: 1024px) {
.f_event_list.page li {
  width: 48%;
  margin-bottom: 10px;
}
}

.f_event_list.page li:nth-child(n+3) {
  margin-right: 0;
}

@media only screen and (max-width: 1024px) {
.f_event_list.page li:nth-child(n+3) {
  margin-right: 4%;
}
.f_event_list.page li:nth-child(odd) {
  margin-right: 4%;
}
.f_event_list.page li:nth-child(even) {
  margin-right: 0%;
}
}

/*-------------------------------------------------

		☆ single event

-------------------------------------------------*/
.p-event_postTitle {
  font-size: 32px;
  margin-bottom: 10px;
  line-height: 1.5;
}

.p-event_postInfoItem .title, .p-event_postInfoItem .txt {
  display: inline-block;
  vertical-align: middle;
}

.p-event_postInfoItem .title {
  width: 80px;
  line-height: 38px;
  background-color: #f1efe8;
  font-size: 16px;
  text-align: center;
  margin-right: 10px;
  font-weight: bold;
}

.p-event_postInfoItem .txt {
  font-size: 16px;
}

.p-event_postInfoItem:not(:first-child) {
  margin-top: 4px;
}

.p-event_postMainimg {
  margin-top: 60px;
  position: relative;
}

.p-event_postMainimg .img {
  position: relative;
  z-index: 0;
}

.p-event_postMainimg .cat {
  display: inline-block;
  width: 87px;
  line-height: 33px;
  font-size: 16px;
  text-align: center;
  position: absolute;
  top: -33px;
  left: 0;
  color: #fff;
  font-weight: bold;
}

.p-event_postMainimg .cat.is-kaisai {
  background-color: #F55353;
}

.p-event_postMainimg .cat.is-uketsuke {
  background-color: #FFD506;
}

.p-event_postMainimg .cat.is-syuryo {
  background-color: #f1f1f1;
}

.p-event_postJoin {
  margin: 30px 0 25px;
  text-align: center;
}

.p-event_postContent h1 {
  font-size: 22px;
  font-weight: 700;
  letter-spacing: .06em;
  margin-bottom: 8px;
  line-height: 1.4;
}

.p-event_postContent h2 {
  font-size: 20px;
}

.p-event_postContent h3 {
  font-size: 30px;
  margin-bottom: 10px;
}

.p-event_postContent h4 {
  font-size: 18px;
  font-weight: bold;
  padding: 10px;
  background: #f1f1f1;
  margin-bottom: 10px;
}

.p-event_postContent img {
  display: block;
  margin: 22px 0;
}

.p-event_postContent a, .p-event_postInfo a {
  text-decoration: underline;
}

.c-btn {
  width: 450px;
  display: inline-block;
  position: relative;
  text-align: center;
  border-radius: 40px;
  background-color: #f5f4f4;
  color: #000 !important;
  font-weight: bold;
  border: 2px solid #e86500;
}

.c-btn_txt {
  display: block;
  font-size: 18px;
  line-height: 64px;
}

.c-btn::before {
  content: "";
  position: absolute;
  top: -4px;
  right: 40px;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  transform: rotate(45deg);
  border-right: 2px solid;
  border-bottom: 2px solid;
  color: #d84e19;
}

.p-event_postContent {
  padding-top: 30px;
  font-size: 16px;
  line-height: 1.9;
}

@media only screen and (max-width: 768px) {
.p-event_postTitle {
  font-size: 20px;
  margin-bottom: 16px;
}
li.p-event_postInfoItem {
  font-size: 16px;
  line-height: 1.5;
}
.c-btn {
  width: 92%;
}
.c-btn_txt {
  font-size: 16px;
}
.p-event_postContent h2 {
  font-size: 18px;
  line-height: 1.4;
  margin-bottom: 10px;
}
}

/*-------------------------------------------------

		☆ page after 安心保証・アフターサービス

-------------------------------------------------*/
.p_after {
  padding: 85px 0;
  background: #f9f9f9;
}

@media only screen and (max-width: 1024px) {
.p_after {
  padding: 40px 0;
}
}

.p_after_main_ttl {
  text-align: center;
  font-size: 30px;
  line-height: 1.65;
}

@media only screen and (max-width: 1024px) {
.p_after_main_ttl {
  font-size: 22px;
}
}

@media only screen and (max-width: 320px) {
.p_after_main_ttl {
    font-size: 20px;
}
}

.p_after_main_txt {
  font-size: 16px;
  text-align: center;
  margin: 20px 0 20px;
}

@media only screen and (max-width: 1024px) {
.p_after_main_txt {
  margin: 20px 0 0;
}
}

.p_after_3box {
  padding: 30px 0;
  border-radius: 10px;
}

.p_after_3box p.icon {
  width: 26%;
  text-align: center;
  margin: 0 auto 20px auto;
}

.p_after_3box p.icon img {
  max-width: 100%;
}

.p_after_3box .after_box_content {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 40px;
}

.p_after_3box .after_box_content_area {
  background-color: #fff;
  padding: 20px;
  width: 30%;
  border: 4px solid #57a4c5;
  border-radius: 10px;
}

@media only screen and (max-width: 1024px) {
.p_after_3box .after_box_content_area {
  width: 100%;
}
}

.p_after_3box .after_box_content_area_title {
  font-size: 19px;
  font-weight: 700;
  text-align: center;
  color: #57a4c5;
}

.p_after_3box .after_box_content_area p {
  font-size: 12px;
  margin-top: 16px;
  color: #367894;
  line-height: 1.85;
  text-align: center;
}

.p_after_3box .after_box_content_sub {
  width: 5%;
  text-align: center;
  align-self: center;
  font-size: 24px;
  color: #57a4c5;
}

@media only screen and (max-width: 1024px) {
.p_after_3box .after_box_content_sub {
  width: 100%;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  padding: 10px;
}
}

.p_after_3box span.mini {
  font-size: 11px;
  font-weight: 500;
}

.p_after_box_btn {
  margin-top: 40px;
}

.btn_more.white {
  border: 1px solid #71a8cb;
  background: #fff;
  color: #71a8cd !important;
  position: relative;
}

.btn_more.white::before {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 30px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 8px;
  height: 8px;
  border-top: 2px solid #71a8cb;
  border-right: 2px solid #71a8cb;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  background: none;
}

.btn_more.white:hover {
  color: #fff !important;
  background: #71a8cd;
}

.btn_more.white:hover::before {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

.p_after_block {
  background-color: #fff;
  position: relative;
  padding: 52px 0 70px;
  margin-bottom: 40px;
}

@media only screen and (max-width: 1024px) {
.p_after_block {
  padding: 52px 0 20px;
}
}

.p_after_block:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  width: 90px;
  height: 6px;
  background-color: #71A8CB;
  margin-left: -45px;
}

.p_after_block_ttl {
  margin-bottom: 20px;
  text-align: center;
  font-size: 30px;
  font-weight: bold;
}

.p_after_block_txt {
  text-align: center;
  font-weight: 500;
  width: 70%;
  margin: 0 auto;
}

@media only screen and (max-width: 1024px) {
.p_after_block_txt {
  width: 80%;
}
}

.p_after_block_txt p.left {
  text-align: left;
}

span.blue_back {
  background: #71A8CB;
  color: #fff;
  padding: 3px 10px;
  border-radius: 10px;
  font-size: 15px;
  margin-bottom: 10px;
  display: inline-block;
  font-weight: bold;
  font-size: 16px;
}

.p_after_block_txt p:not(:first-child) {
  margin-top: 30px;
}

.p_after_block_ttl .txt.blue_bg {
  padding: 5px 0 9px;
}

.p_after_block_ttl .txt {
  display: inline-block;
  line-height: 1;
  font-size: 42px;
  color: #499bc7;
}

@media only screen and (max-width: 1024px) {
.p_after_block_ttl .txt {
  font-size: 26px;
}
}

.p_after_block .after_img {
  width: 70%;
  margin: 40px auto;
  overflow: hidden;
}

@media only screen and (max-width: 1024px) {
.p_after_block .after_img {
  margin: 40px auto 0 auto;
  width: 90%;
}
}

.p_after_block .after_img .list {
  float: left;
  width: 47.12%;
  text-align: center;
  margin: 0 auto;
}

@media only screen and (max-width: 1024px) {
.p_after_block .after_img .list {
  float: none;
  width: 100%;
}
}

.p_after_block .after_img .list.full {
  width: 80%;
  margin-left: auto;
  margin-right: auto !important;
  float: none;
}

@media only screen and (max-width: 1024px) {
.p_after_block .after_img .list.full {
  width: 100%;
}
}

.p_after_block .after_img .list.full:first-child {
  margin-bottom: 20px;
}

.p_after_block .after_img .list:first-child {
  margin-right: 20px;
}

@media only screen and (max-width: 1024px) {
.p_after_block .after_img .list:first-child {
  margin-right: 0;
  margin-bottom: 20px;
}
}

.p_after_block .after_img picture {
  height: auto;
  overflow: hidden;
}

.p_after_block .after_img p {
  text-align: left;
  font-size: 13px;
  padding-top: 5px;
}

.p_after_box_txt {
  font-size: 17px;
  line-height: 1.8;
}

.p_after_box {
  border: 8px solid #dfeaf3;
  margin: 20px auto 0;
  width: 962px;
  text-align: left;
  padding: 23px 27px;
}

@media only screen and (max-width: 1024px) {
.p_after_box {
  width: 100%;
}
}

.p_after_box_ttl {
  font-size: 26px;
  line-height: 1;
  margin-bottom: 15px;
}

@media only screen and (max-width: 1024px) {
.p_after_box_ttl {
  font-size: 20px;
}
}

.p_after_box_txt {
  font-size: 16px;
  line-height: 1.8;
}

.after_circle {
  text-align: center;
  margin: 0 auto;
}

.after_block h4 {
  background: #efe9e1;
  font-size: 18px;
  padding: 20px;
  margin-bottom: 10px;
}

/*-------------------------------------------------

		☆ page company 会社情報

-------------------------------------------------*/
.p-company1 {
  margin: 6px 0 62px;
}

@media only screen and (max-width: 1024px) {
.p-company1 {
  margin: 0 0 40px;
} 
}

.table1 {
  font-size: 16px;
  font-weight: 500;
}

.p-company1 .imgtext1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 0 67px;
}

@media only screen and (max-width: 1024px) {
.p-company1 .imgtext1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 26px 0 52px;
}
}

.p-company1 .imgtext1--txt {
  padding-right: 40px;
}

@media only screen and (max-width: 1024px) {
.p-company1 .imgtext1--txt {
  padding: 0 43px;
  position: relative;
  left: 3px;
  margin: 0 0 18px;
}
.p-company1 .imgtext1--img {
  padding: 20px 0 0 0;
}
.p-company1 .group-txt {
  padding: 0 14px;
}
}

.p-company1 .group-txt--ttl {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  color: #fff;
  position: relative;
  background: #71A8CB;
  line-height: 49px;
  padding: 7px 0px 8px;
  margin: 0 0 32px;
}

@media only screen and (max-width: 1024px) {
.p-company1 .group-txt--ttl {
  line-height: 25px;
  padding: 13px 0 12px;
  margin: 0 0 16px;
  letter-spacing: 1px;
  padding-left: 10px;
}
}

.p-company1 .group-txt--txt {
  color: #333;
  text-align: center;
  letter-spacing: .8px;
  line-height: 35px;
  margin: 0 0 72px;
}

@media only screen and (max-width: 1024px) {
.p-company1 .group-txt--txt {
  font-size: 14px;
  line-height: 25px;
  text-align: left;
  padding: 0 20px 0 23px;
  letter-spacing: .7px;
  margin: 0 0 19px;
}
.p-company1 .group-txt {
  padding: 0 14px;
}
.p-company1 .group-txt:last-child .group-txt--txt {
  margin: 0;
  padding: 5px 20px 0 19px;
}
}

.p-company1 .group-txt:last-child .group-txt--txt {
  margin: 0;
}

.p-company2 {
  background: #f9f9f9;
  padding: 56px 0 88px;
}

.p-company2--block1 {
  background: #fff;
  border: 3px solid #71A8CB;
  padding: 28px 44px 44px;
  margin: 0 0 44px;
}

@media only screen and (max-width: 1024px) {
.p-company2 {
  padding: 40px 0 40px;
}
.p-company2--wrapper {
  padding: 34px 21px;
}
.p-company2--block1 {
  padding: 18px 18px 18px;
  border: 1px solid #71A8CB;
  margin: 0 0 25px;
}
}

.p-company2--ttl {
  text-align: center;
  color: #71A8CB;
  font-weight: bold;
  letter-spacing: 1px;
  font-size: 23px;
  line-height: 49px;
}

@media only screen and (max-width: 1024px) {
.p-company2--ttl {
  font-size: 18px;
  line-height: 25px;
}
.p-company2 .table1 {
  margin-top: 15px;
}
}

.p-company2--block1 .p-company2--ttl {
  margin-bottom: 18px;
}

.p-company2 .table1 dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  border-bottom: 1px solid #71A8CB;
  padding: 0 0 2px;
  margin: 0 0 2px;
}

@media only screen and (max-width: 1024px) {
.p-company2 .table1 dl {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-bottom: 0;
}
}

.p-company2 .table1 dt {
  width: 178px;
  text-align: center;
  line-height: 30px;
  background: #71A8CB;
  color: #fff;
  padding: 8px 8px 2px;
  letter-spacing: 1px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media only screen and (max-width: 1024px) {
.p-company2 .table1 dt {
  width: 100%;
  position: relative;
}
.p-company2 .table1 dt:after {
  content: '';
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background: #71A8CB;
  bottom: -3px;
}
}

.p-company2 .table1 dd {
  width: calc(100% - 197px);
  line-height: 30px;
  color: #000;
  padding: 15px 0;
  letter-spacing: .8px;
}

@media only screen and (max-width: 1024px) {
.p-company2 .table1 dd {
  font-size: 14px;
  line-height: 30px;
  color: #000;
  padding: 4% 3% 3%;
  letter-spacing: .8px;
  width: 100%;
}
}

.p-company2 .table1 dl:first-child dd {
  padding: 7px 4px 0;
}

.p-company2 .table1 dl:nth-child(2) dt {
  padding-top: 2px;
}

.p-company2 .table1 dl:nth-child(2) dd {
  padding: 7px 0 12px;
}

.p-company2 .table1--link {
  color: #71a8cb;
}

.p-company2--block2 {
  background: #fff;
  padding: 40px 44px 59px;
  border: 3px solid #71A8CB;
}

@media only screen and (max-width: 1024px) {
.p-company2--block2 {
  padding: 18px 14px 40px 16px;
  border: 1px solid #71A8CB;
}
}

.p-company2--block2 .p-company2--ttl {
  margin: 0 0 32px;
}

@media only screen and (max-width: 1024px) {
.p-company2--block2 .p-company2--ttl {
  font-size: 18px;
  margin: 0 0 20px;
  line-height: 25px;
  text-align: center;
  color: #71A8CB;
  font-weight: bold;
  letter-spacing: 1px;
}
}

.p-company2 .imgtext2--img {
  width: 350px;
}

.p-company2 .imgtext2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-left: 15px;
  margin: 0 0 61px;
}

@media only screen and (max-width: 1024px) {
.p-company2 .imgtext2 {
  display: block;
  padding-left: 0;
  margin: 0 0 20px;
}
}

.p-company2 .imgtext2--txt {
  color: #000;
  width: 566px;
  letter-spacing: .8px;
  padding: 15px 0 0;
  line-height: 30px;
  font-size: 16px;
  font-weight: 500;
}

.p-company2 .imgtext2--img {
  width: 302px;
}

@media only screen and (max-width: 1024px) {
.p-company2 .imgtext2--txt, .p-company2 .imgtext2--img {
  width: 100%;
  margin-bottom: 20px;
}
}

.p-company3 {
  padding: 66px 0 0;
}

.p-company3 .ttl {
  position: relative;
  text-align: center;
  margin: 0 0 54px;
}

@media only screen and (max-width: 1024px) {
.p-company3 .ttl {
  margin: 0 0 40px;
}
}

.p-company3 .ttl:before {
  content: '';
  position: absolute;
  left: 0;
  width: 100%;
  background: #71A8CB;
  top: 18px;
  height: 3px;
}

.p-company3 .ttl--wrapper {
  display: inline-block;
  background: #fff;
  position: relative;
  padding: 0 69px;
}

.p-company3 .ttl--txt1 {
  display: block;
  font-weight: 500;
  color: #71A8CB;
  padding-left: 4px;
  letter-spacing: 4px;
  font-size: 26px;
  line-height: 49px;
  margin: 0 0 -5px;
  font-family: 'Century Gothic', sans-serif;
  font-weight: bold;
}

.p-company3 .ttl--txt2 {
  font-weight: bold;
  font-size: 17px;
}

.p-company3--col2 {
  margin: 0 0 77px;
}

.p-company3--col2 .card {
  width: 100%;
}

.p-company3--col2 .card--imgtext {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 0 40px;
}

@media only screen and (max-width: 1024px) {
.p-company3--col2 .card--imgtext {
  display: block;
}
.card--img {
  margin-top: 20px;
}
}

.p-company3--col2 .card--ttl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 0 8px;
}

.p-company3--col2 .card--address {
  color: #000;
  letter-spacing: .8px;
  line-height: 23px;
  padding-top: 20px;
}

.p-company3--col2 .card--map {
  margin: 0 0 9px;
}

.p-company3--col2 .card--map iframe {
  width: 100%;
}

.sign {
  text-align: right;
}

.sign p {
  text-align: right;
}

.sign img {
  width: 180px;
}

@media only screen and (max-width: 1024px) {
.sign img {
  width: 140px;
}
}

span.card--txt1 {
  padding-left: 10px;
  font-weight: bold;
  font-size: 20px;
  color: #5a95bb;
}

.p-company3--col2 .card--address a {
  display: block;
  padding-top: 20px;
}

/*-------------------------------------------------

		☆ showroom ショールームページ

-------------------------------------------------*/
.p-company2.showroom {
  margin: 40px auto;
  padding: 40px;
  background: none;
}

#lineup.showroom {
  margin-top: 60px;
}

#lineup.showroom .ttl-2 {
  font-size: 26px;
  font-weight: 500;
  background: #fff;
  line-height: 1.7;
}

#planmain.showroom .txt {
  bottom: 28px;
}

#planmain.showroom .house {
  bottom: 28px;
}

.map.showroom {
  margin: 0px auto 120px auto;
}

.map.showroom iframe {
   width: 100%;
}

.p-design1--check.showroom {
   margin: 60px auto 60px;
}

.p-design1--check.showroom .img {
  top: 140px;
}

@media only screen and (max-width: 768px) {
  #planmain.showroom .house {
    display: none;
  }
  #planmain.showroom .txt {
    display: none; 
  }
  .p-company2.showroom {
    margin: 20px auto;
    padding: 0 2%;
  }
  .map.showroom {
    margin: 0px auto 80px auto;
  }
  #lineup.showroom .list {
    padding: 0 2%;
  }
  #lineup.showroom .list-item:nth-child(even) {
    margin-right: 0;
  }
  #lineup.showroom .list-txt {
    line-height: 1.4em;
  }
  #lineup.showroom .ttl-2 {
    font-size: 20px;
    font-weight: bold;
    padding: 0 2%;
  }
  .p-design1--check.showroom {
    margin: 30px auto;
    width: 94%;
  }
  .p-design1--check.showroom .note {
    font-size: 17px;
  }
  .p-design1--check.showroom .tit {
    font-size: 23px;
    margin: 15px 0 12px;
    line-height: 1.6;
  }
  .p-design1--check.showroom .img {
    top: 0;
  }
}

/*-------------------------------------------------

		☆ event モデルハウス販売ページ

-------------------------------------------------*/
.containersm .info {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 57px;
}

.containersm .info__more {
  width: calc(100% - 240px);
  padding-right: 35px;
}

.containersm .info__more .row {
  border-bottom: 1px solid #C1C1C1;
  font-size: 15px;
  line-height: 24px;
  letter-spacing: .06em;
  padding: 8px 0;
}

.containersm .info__more .row span {
  float: left;
  min-width: 84px;
}

.containersm .info__price {
  width: 240px;
  padding-top: 8px;
}

.containersm .info__price .label {
  font-size: 15px;
  line-height: 28px;
  letter-spacing: .06em;
  font-weight: bold;
  display: block;
  margin-bottom: 5px;
}

.containersm .info__price .pri {
  font-size: 16px;
  line-height: 48px;
  letter-spacing: .06em;
  font-weight: bold;
  display: inline-block;
  color: #ED1A21;
}

.containersm .info__price .pri em {
  font-size: 44px;
  line-height: 48px;
  letter-spacing: 0em;
  font-weight: bold;
  font-family: 'Barlow', sans-serif;
  font-style: normal;
  color: #ED1A21;
  display: inline-block;
}

.containersm .gr-btn {
  padding: 0 30px;
  margin-bottom: 60px;
}

.normal-btn-color--yellow:before {
  background-color: #FCDE77;
}

.normal-btn-color--yellow .txt {
  color: #151515;
}

.containersm .gr-btn ul {
  display: flex;
  flex-wrap: wrap;
  width: calc(100% + 50px);
  margin-left: -25px;
}

.containersm .gr-btn ul li {
  width: 50%;
  padding: 0 25px;
}

.containersm .gr-btn .normal-btn-color {
  max-width: 100%;
  padding: 24px 10px 23px;
  font-size: 18px;
  line-height: 27px;
  letter-spacing: .06em;
  font-weight: bold;
  text-decoration: none;
  color: #000;
  display: block;
  text-align: center;
}

.normal-btn-color--yellow .txt {
  color: #151515;
}

.normal-btn-color .icon {
  position: absolute;
  content: '';
  width: 32px;
  height: 5px;
  top: calc(50% - 4px);
  right: -18px;
  overflow: hidden;
}

.containersm h3 {
  font-size: 18px;
  line-height: 36px;
  letter-spacing: .06em;
  font-weight: bold;
  background-color: #5ca5c7;
  padding: 10px 24px;
  margin: 0px 0 28px;
  color: #fff;
}

.containersm iframe {
  width: 100%;
  max-width: 100%;
  min-height: 600px;
  margin-bottom: 40px;
}

.tbl {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

.tbl tr th, .tbl tr td {
  border: 1px solid #C1C1C1;
  padding: 6px 10px;
  font-size: 14px;
  line-height: 24px;
  letter-spacing: .1em;
  font-weight: normal;
}

.tbl--col2 tr th, .tbl--col2 tr td {
  vertical-align: middle;
}

.tbl--col3 tr td {
  width: 33.33333%;
}

.tbl tr th {
  background: #F2F2F2;
  text-align: left;
  width: 130px;
}

.btn_yellow {
  background-color: #ffdb3a;
}

.btn_red {
  background-color: #fb403a;
  color: #fff !important;
}

@media only screen and (max-width: 767px) {
.containersm .info {
  flex-direction: column;
  margin-bottom: 17px;
}
.containersm .info__more {
  width: 100%;
  padding-right: 0;
}
.containersm .info__price {
  width: 100%;
  padding-top: 4px;
}
.containersm .info__price .pri {
  font-size: 16px;
  line-height: 48px;
  letter-spacing: 0em;
  font-weight: bold;
}
.containersm .info__price .pri em {
  font-size: 34px;
  line-height: 48px;
  letter-spacing: 0em;
  font-weight: bold;
}
.containersm .gr-btn {
  padding: 0 10px;
  margin-bottom: 45px;
}
.containersm .gr-btn ul {
  width: calc(100% + 24px);
  margin-left: -22px;
}
.containersm .gr-btn ul li {
  padding: 0 12px;
}
.containersm .gr-btn .normal-btn-color {
  font-size: 15px;
  line-height: 20px;
  height: 58px;
  display: inline-flex;
  padding: 0px 5px;
  justify-content: center;
  align-items: center;
  width: 100%;
}

}

/*-------------------------------------------------

		☆ page reserve モデルハウス見学予約

-------------------------------------------------*/
/*
#p_reserve .f_ttl {
  background: #71a8cb;
  color: #fff;
  padding: 154px 0 65px 0;
  position: relative;
}

@media only screen and (max-width: 1024px) {
#p_reserve .f_ttl {
  padding: 40px 0 30px 0;
}
}

#p_reserve .f_ttl:before {
  content: '';
  width: 140px;
  height: 5px;
  background: #ffff00;
  position: absolute;
  top: 89px;
  left: 50%;
  display: block;
  margin-left: -70px;
}

#p_reserve .en {
  font-family: 'brandon-grotesque',sans-serif;
  font-style: normal;
  letter-spacing: .15em;
  font-weight: bold;
  font-size: 20px;
  display: block;
  margin-bottom: 25px;
}

#p_reserve .f_ttl .ja {
  font-weight: bold;
  font-size: 26px;
  letter-spacing: .15em;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
#p_reserve .f_ttl .ja {
  line-height: 1.4;
}
}

#p_reserve .intro p {
  margin: 40px auto;
  font-size: 18px;
  letter-spacing: 1px;
  font-weight: bold;
}

@media only screen and (max-width: 1024px) {
#p_reserve .intro p {
  margin: 10px auto;
  font-size: 18px;
  line-height: 1.4;
  padding: 0 6%;
  text-align: center;
}
}

#p_reserve .main-content .fukidashi {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 646px;
  min-height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 40px auto;
  background-color: #fff675;
  border-radius: 100px;
  text-align: center;
  font-size: 18px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
#p_reserve .main-content .fukidashi {
  margin: 30px auto 20px auto;
  max-width: 92%;
}
}

#p_reserve .main-content .fukidashi:after {
  position: absolute;
  bottom: -20px;
  left: 50%;
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-top: 10px solid #fff675;
  transform: translateX(-50%);
  transform-origin: center center;
}

.width646 {
  width: 100%;
  max-width: 646px;
  margin-left: auto;
  margin-right: auto;
}

p.end-form {
  margin-bottom: 40px;
  font-weight: bold;
}

@media only screen and (max-width: 1024px) {
p.end-form {
  margin-bottom: 30px;
  padding: 0 4%;
}
}

@media only screen and (max-width: 1024px) {
#p_reserve .miryoku {
  padding: 0 4%;
}
}

#p_reserve .miryoku .flex {
  justify-content: flex-start;
  flex-wrap: nowrap;
  align-items: center;
  margin-bottom: 40px;
}

@media only screen and (max-width: 1024px) {
#p_reserve .miryoku .flex {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
}

#p_reserve .miryoku .flex img {
  width: 100%;
  max-width: 146px;
  margin-right: 20px;
}

@media only screen and (max-width: 1024px) {
#p_reserve .miryoku .flex img {
  margin: 0 0 20px;
}
}

#p_reserve .miryoku .flex p {
  position: relative;
  padding-left: 60px;
  font-size: 16px;
}

#p_reserve .miryoku .flex p .num {
  position: absolute;
  top: -.25em;
  left: 0;
  width: 40px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff675;
  font-family: 'brandon-grotesque',sans-serif;
  font-style: italic;
  font-size: 24px;
  font-weight: 600;
  border-radius: 100px;
}

.marker {
  background: linear-gradient(transparent 40%, #fdf8ab 40%);
}

#p_reserve .miryoku .flex {
  justify-content: flex-start;
  flex-wrap: nowrap;
  align-items: center;
  margin-bottom: 40px;
}

#modelhouse_bottom.reserve {
  background-color: #f3f3f3;
  padding-top: 20px;
  padding-bottom: 10px;
}

@media only screen and (max-width: 1024px) {
#modelhouse_bottom.reserve {
  margin-bottom: 20px;
}
}

#modelhouse_bottom.reserve .reserve_btn_1 a::after {
  transform: rotate( 45deg);
}

.reservePage .mainTitBox.lazyloaded {
  background: #71a8cb;
}

.reservePage .mainTitBox, .reservePage .mainTitBox .titEng {
  color: #ffffff;
}

.reservePage .mainTitBox .topTit::after {
  background: #f9e10c;
}
*/

.cm-hsmall {
  background-color: #fff;
  width: 100%;
  height: 90px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.p-form {
  background-color: #f5f5f5;
  padding: 58px 0 62px;
}

.p-form-body {
  padding: 0;
}

.p-form__title {
  text-align: center;
}

.p-form__titleJp, .p-form__titleEn {
  display: block;
  line-height: 1;
}

.p-form__titleJp {
  font-size: 42px !important;
  letter-spacing: .08em;
  text-indent: .08em;
}

.p-form__titleEn {
  font-size: 16px;
  letter-spacing: .1em;
  text-indent: .1em;
  margin-top: 15px;
}

.p-form__tel {
    margin-top: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 10px;
}

p.cau {
  text-align: center;
  padding: 20px;
}

.p-form__telTxt {
  text-align: right;
}

.p-form__telTxt .txt {
  display: block;
  font-size: 14px;
}

.p-form__telTxt .txt:first-child {
  margin-bottom: 4px;
  font-size: 16px;
}

.p-form__telTxt .txt {
  display: block;
  font-size: 14px;
}

.p-form__telNum {
  margin-left: 20px;
  position: relative;
}

.pm-form__titleJp, .pm-form__titleEn {
  display: block;
  line-height: 1;
}

.p-form__merit {
  background-color: #f14040;
  padding: 55px 0;
  margin-top: 50px;
}

.pm-form__title {
  text-align: center;
}

.pm-form__titleEn {
  margin-top: 17px;
}

.p-form__merit .pm-form__titleJp, .p-form__merit .pm-form__titleEn {
  color: #fff;
}

.pm-form__titleJpTxt, .pm-form__titleEnTxt {
  display: inline-block;
}

.pm-form__titleJpTxt {
  font-size: 38px;
  letter-spacing: .02em;
  text-indent: .02em;
}

.pm-form__titleEnTxt {
  font-size: 17px;
  letter-spacing: .08em;
  text-indent: .08em;
}

.pm-form__section {
  max-width: 920px;
  width: 100%;
  margin: 0 auto;
}

.p-form__meritList {
  display: flex;
  justify-content: space-between;
  margin-top: 37px;
}

.p-form__meritListItem {
  width: 280px;
  background-color: #fff;
  padding-bottom: 25px;
}

.p-form__meritListItem .block__body {
  margin-top: 19px;
}

.p-form__meritListItem .block__bodyTitleEn, .p-form__meritListItem .block__bodyTitleJp {
  display: block;
  text-align: center;
}

.p-form__meritListItem .block__bodyTitleJp {
  font-size: 22px;
  line-height: 1.4;
  margin-top: 6px;
}

.p-form__meritListItem .block__bodyTxt {
  font-size: 14px;
  line-height: 1.6;
  padding: 0 15px;
  margin-top: 15px;
  text-align: justify;
  text-justify: inter-ideograph;
}

.rsv_area {
  margin: 0 0 -66px;
  padding: 60px 0;
  background: #f5f5f5;
}

div.form-headline {
  margin: 25px 0 0 0;
}

div.form-headline h2 {
  font-size: 27px;
  display: none;
}

div.form-description {
  font-size: 14px;
  line-height: 1.75;
}

.cm-fsmall {
  background-color: #222526;
  width: 100%;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 0;
}

.cm-fsmall__copy {
  font-size: 12px;
  color: #fff;
}

@media only screen and (max-width: 768px) {
.p-form {
  padding: 40px 0;
}
.p-form__meritList {
  margin-top: calc(40/590*100%);
  margin-top: calc(40/var(--v-contentsW)*100%);
}
.p-form__meritListItem .block {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.p-form__meritList {
  display: block;
  justify-content: space-between;
  padding: 4%;
}
.p-form__meritListItem .block__body {
  width: calc(355/590*100%);
  width: calc(355/var(--v-contentsW)*100%);
  font-size: calc(25/640*100vw);
  font-size: calc(25/var(--v-deviceW)*100vw);
  margin-bottom: 20px;
  margin-left: 20px;
}
.p-form__meritListItem {
  width: 100%;
  padding: 0 4%;
}
.p-form__meritListItem img {
  width: 40%;
}
.p-form__merit {
  padding: 40px 0;
}
.p-form__meritListItem .block__bodyTitleJp {
  font-size: 16px;
  text-align: left;
}
.p-form__meritListItem .block__bodyTxt {
  display: none;
}
.pm-form__titleJpTxt {
  font-size: 23px;
}
.pm-form__titleEn {
  margin: 20px 0;
}
.rsv_area{
  padding: 20px 4% 60px 4%;
}
.p-form__titleJp {
  font-size: 26px !important;
}
.p-form__tel {
  display: block;
  margin-top: 20px;
  margin-bottom: 0;
}
.p-form__telTxt {
  text-align: center;
}
.p-form__telTxt .txt:first-child {
  margin-bottom: 0;
  font-size: 14px;
}
.p-form__telNum {
  margin: 20px auto 0 auto;
  text-align: center;
  width: 88%;
  border-radius: 50px;
  background: #fff;
}
.p-form__telNum::after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 19px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 8px;
  height: 8px;
  border-top: 2px solid #f14040;
  border-right: 2px solid #f14040;
  -webkit-transform: rotate( 
45deg);
  transform: rotate( 
45deg);
}
.p-form__telNum a {
  display: block;
  padding: 20px 40px;
  border-radius: 50px;
}
.p-form__telNum .c-btn {
  width: calc(500/590*100%);
  width: calc(500/var(--v-contentsW)*100%);
  border-radius: calc(50/640*100vw);
  border-radius: calc(50/var(--v-deviceW)*100vw);
}
.p-form__telNum .c-btn__txt {
  width: calc(349/500*100%);
  padding: calc(22/500*100%) 0 calc(22/500*100%) calc(54/500*100%);
}
}

@media only screen and (max-width: 320px) {
.p-form__titleJp {
  font-size: 24px !important;
}
}

/* ページごとのフォーム */
.underForm {
  padding: 85px 0;
  background: #f5f5f5;
}

@media only screen and (max-width: 768px) {
.underForm {
  padding: 40px 0;
}
}

/*-------------------------------------------------

		☆ page catalog カタログ請求

-------------------------------------------------*/
#p_catalog .f_ttl {
  background: #71a8cb;
  color: #fff;
  padding: 154px 0 65px 0;
  position: relative;
}

@media only screen and (max-width: 1024px) {
#p_catalog .f_ttl {
  padding: 40px 0 30px 0;
}
}

#p_catalog .f_ttl:before {
  content: '';
  width: 140px;
  height: 5px;
  background: #ffff00;
  position: absolute;
  top: 89px;
  left: 50%;
  display: block;
  margin-left: -70px;
}

#p_catalog .en {
  font-family: 'Century Gothic', sans-serif;
  font-style: normal;
  letter-spacing: .15em;
  font-weight: bold;
  font-size: 20px;
  display: block;
  margin-bottom: 25px;
}

#p_catalog .f_ttl .ja {
  font-weight: bold;
  font-size: 26px;
  letter-spacing: .15em;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
#p_catalog .f_ttl .ja {
  line-height: 1.4;
}
}

#p_catalog .mainTitBox.lazyloaded {
  background: #71a8cb;
}

#p_catalog .mainTitBox, #p_catalog .mainTitBox .titEng {
  color: #ffffff;
}

#p_catalog .mainTitBox .topTit::after {
  background: #f9e10c;
}

#p_catalog .intro p {
  margin: 40px auto;
  font-size: 18px;
  letter-spacing: 1px;
  font-weight: bold;
}

@media only screen and (max-width: 1024px) {
#p_catalog .intro p {
  margin: 10px auto;
  font-size: 13px;
  line-height: 1.4;
  padding: 0 6%;
  text-align: center;
}
}

#p_catalog .main-content .flex {
  justify-content: center;
  margin-bottom: 40px;
}

#p_catalog .main-content .flex img {
  width: 18.7%;
  box-shadow: 0px 2px 4px rgb(0 0 0 / 40%);
  margin: 0 7px 20px;
}

#p_catalog .main-content .flex img.yoko {
  width: 30%;
  margin: 0 auto;
}

#p_catalog .main-content .fukidashi {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 646px;
  min-height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 40px auto;
  background-color: #fff675;
  border-radius: 100px;
  text-align: center;
  font-size: 18px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
#p_catalog .main-content .fukidashi {
  margin: 30px auto 20px auto;
  max-width: 92%;
}
}

@media only screen and (max-width: 320px) {
#p_catalog .main-content .fukidashi {
  font-size: 16px;
}
}

#p_catalog .main-content .fukidashi:after {
  position: absolute;
  bottom: -20px;
  left: 50%;
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-top: 10px solid #fff675;
  transform: translateX(-50%);
  transform-origin: center center;
}

.titleBorder {
  text-align: center;
  padding-bottom: 30px;
}

@media only screen and (max-width: 1024px) {
.titleBorder {
  padding-bottom: 10px;
}
}

.titleBorder p {
  color: #4da4c5;
  font-size: 20px;
  line-height: 35px;
  display: inline-block;
  position: relative;
  letter-spacing: 2px;
  font-weight: bold;
}

@media only screen and (max-width: 1024px) {
.titleBorder p {
  font-size: 14px;
}
}

.titleBorder p::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: -90px;
  background: #4da4c5;
  width: 80px;
  height: 1px;
}

.titleBorder p::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: -90px;
  background: #4da4c5;
  width: 80px;
  height: 1px;
}

/*-------------------------------------------------

		☆ page contact お問い合わせ

-------------------------------------------------*/
.p_contact p.end-form{
  margin-top: 40px;
}

.p_contact p.end-form span.blk {
  display: block;
  padding: 20px;
  background-color: #f7f4ed;
}

/*-------------------------------------------------

		☆ contact form7

-------------------------------------------------*/
fieldset {
  padding: 0;
  margin: 0;
  border: 0;
  min-width: 0;
  background-color: #f5f5f5;
}

@media only screen and (max-width: 768px) {
fieldset {
  padding: 0 4%;
}
}

div.control-group {
  padding: 15px 0;
  border-bottom: 1px solid #e34f1a;
  margin-bottom: 0 !important;
  margin: auto 0 20px;
}

div.control-group:first-child {
  border-top: 1px solid #e34f1a;
}

#K3_control_btn.control-group {
  border: none;
}

.form_kakunin {
  text-align: center;
  font-size: 18px;
  margin: 40px auto;
}

label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: bold;
}

label.control-label {
  padding-bottom: 10px !important;
  font-family: YakuHanJP, YuGothic, "Yu Gothic", Meiryo, sans-serif;
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 4px;
  margin-right: 10px;
  display: block;
}

.label-fit {
  padding: 0 !important;
  font-weight: bold !important;
  font-family: YakuHanJP, YuGothic, "Yu Gothic", Meiryo, sans-serif;
  width: 51px !important;
  line-height: 28px !important;
  text-align: center !important;
  display: inline-block !important;
  font-size: 14px !important;
  border-radius: 15px !important;
  color: #fff;
  margin-right: 0.6em;
  white-space: nowrap;
}

.label-danger {
  background-color: #ec3131 !important;
}

.label-warning {
  background-color: #7d7d7d !important;
}

.text-bold {
  font-weight: bold;
}

.text-top {
  vertical-align: text-top;
  line-height: 1.4;
}

.help-block {
  display: block;
  margin: 5px 0 9px;
  margin-bottom: 16px;
  color: #737373;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 500;
}

.help-block.mb1 {
  margin-bottom: 0;
}

.chuui {
  font-size: 12px;
  line-height: 1.8;
  margin-top: 10px;
}

.radio, .checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
}

div.radio {
  font-size: 15px;
  margin-top: 0 !important;
  margin-bottom: 1px !important;
  margin-right: 10px !important;
  /* vertical-align: middle; */
  vertical-align: baseline;
}

div.control-group div.radio, div.control-group div.checkbox {
  display: inline-block;
  margin-bottom: 13px !important;
  font-size: 16px !important;
  font-weight: 500;
}

.radio label, .checkbox label {
  min-height: 18px;
  margin-bottom: 0;
  font-weight: normal;
  cursor: pointer;
  font-weight: 600;
}

.form-control {
  height: 45px;
  display: block;
  width: 100%;
  font-size: 15px;
  padding: 0;
  line-height: 1.42857143;
  color: #555555;
  background-color: #ffffff;
  background-image: none;
  border: 1px solid #e0e0e0;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%);
  box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%);
  -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}

.checkbox .form-control {
  background: #f5f5f5;
  border: none;
  box-shadow: none;
}

input[type="checkbox"], input[type="radio"] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
  margin-right: 0.4em !important;
}

.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgb(0 0 0 / 5%);
  box-shadow: inset 0 1px 1px rgb(0 0 0 / 5%);
  margin-top: 35px;
  border: 1px solid #e0e0e0;
  border-radius: 2px;
  background-color: #fcfcfc;
}

div.privacy_policy {
  max-height: 20em;
  overflow: auto;
}

.privacy_policy span {
  color: #d21b1b;
}

.well .note {
  font-size: 12px;
  line-height: 1.8;
}

.control-group .btn {
  display: block !important;
  margin-left: auto !important;
  margin-right: auto !important;
  line-height: 68px;
  font-size: 18px !important;
  transition: background-color .3s;
  border-radius: 40px !important;
  background-color: #f12424 !important;
  border: none !important;
  width: 450px;
  padding: 0 !important;
  font-weight: bold !important;
  color: #fff;
  letter-spacing: 3px;
}

button, html input[type="button"], input[type="reset"], input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

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

.wpcf7-list-item-label {
  font-weight: 600;
}

@media only screen and (max-width: 768px) {
label.control-label {
  display: flex !important;
  align-items: center;
}
div.control-group:first-child {
  border-top: none;
}
div.control-group {
  border-bottom: none;
}
.control-group .btn {
  width: 80%;
}
.form_kakunin {
  text-align: center;
  font-size: 18px;
  margin: 30px auto 0px auto;
}
.well {
  margin-top: 10px;
}
}

/* datepicker css */
.ui-datepicker {
  font-size: 192% !important;
}

/* old style
.form {
  border: 1px solid;
  padding: 50px;
  max-width: 1080px;
  margin: 0 auto;
  text-align: left;
}

@media only screen and (max-width: 1024px) {
.form {
  max-width: 92%;
  padding: 20px 4%;
}
}

.wpcf7 .head p {
  font-size: 12px;
  color: #808080;
  margin: 0 0 40px;
  font-weight: 500;
}

@media only screen and (max-width: 1024px) {
.wpcf7 .head p {
  font-size: 10px;
  margin: 0 0 20px;
}
}

.wpcf7 .red {
  color: #C00100;
}

.wpcf7 .head {
  width: 100%;
  max-width: 646px;
  margin: 0 auto;
}

.wpcf7 .head h4 {
  text-align: center;
  margin: 0 0 40px;
  font-size: 26px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
.wpcf7 .head h4 {
  font-size: 24px;
  line-height: 1.4;
  margin: 0 0 20px;
}
}

@media only screen and (max-width: 1024px) {
.wpcf7 .head h4:before {
  display: block;
}
}

.wpcf7 table {
  width: 100%;
  font-size: 14px;
  table-layout: fixed;
  word-break: break-all;
  word-wrap: break-all;
  border-collapse: collapse;
  border-spacing: 0;
}

.wpcf7 table tbody tr {
  display: flex;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-top: 1px solid #ccc;
}

@media only screen and (max-width: 1024px) {
.wpcf7 table tbody tr {
  display: block;
}
}

.wpcf7 table tbody tr:first-child {
  border-top: 1px solid #333;
}

.wpcf7 th {
  text-align: start;
}

.wpcf7 table tbody th, .wpcf7 table tbody td {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  max-width: 100%;
  border: none;
  padding: 15px 20px;
}

.wpcf7 table tbody th {
  width: 100%;
  max-width: 274px;
  background-color: #f2f2f2;
  padding-left: 6em;
  letter-spacing: 0.1em;
}

@media screen and (max-width: 1024px) {
.wpcf7 table tbody th {
  max-width: 100%;
}
}

.wpcf7 table tbody td {
  flex: 1;
}

@media screen and (max-width: 480px) {
.wpcf7 table tbody td {
    padding: 10px 0;
}
}

.wpcf7 .require th, .wpcf7 tr:not(.require) th {
  position: relative;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
}

.wpcf7 .require th:before {
  content: "必須";
  display: inline-block;
  padding: .25em .5em;
  color: #C00100;
  border: 2px solid #C00100;
  border-radius: 4px;
  position: absolute;
  left: 20px;
}

.wpcf7 tr:not(.require) th:before {
  content: "任意";
  display: inline-block;
  padding: .25em .5em;
  color: #949494;
  border: 2px solid #949494;
  border-radius: 4px;
  position: absolute;
  left: 20px;
}

.wpcf7 .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

select {
  padding: 8px;
  width: 100%;
  background-color: #fff;
  background-image: url(lib/images/select-arrow.png);
  background-repeat: no-repeat;
  background-position: 98% center;
  border: solid 1px #e2e5e8;
  border-radius: 1px;
  font-size: 16px;
  font-size: 1.6rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.wpcf7 input, .wpcf7 select {
  font-size: 14px;
  line-height: 1.6;
}

.wpcf7 .date td span:first-child {
  margin-right: 10px;
}

.wpcf7 input[type="date"] {
  min-height: 40px;
}

.wpcf7 .center {
  text-align: center;
}

.wpcf7 tr.accept {
  font-weight: 700;
  padding: 1em;
}

.wpcf7 table tbody tr:last-child {
  border-bottom: 1px solid #ccc;
}

.wpcf7 .wpcf7-list-item {
  display: block;
  width: 100%;
  margin-left: 0;
}

.wpcf7-list-item-label::before, .wpcf7-list-item-label::after {
  content: " ";
}

.wpcf7 .notes {
  background-color: #fbf9f6;
  padding: 20px;
}

.wpcf7 .notes p {
  width: 100%;
  max-width: 696px;
  margin: 0 auto;
  font-size: 12px;
  color: #333;
}

.flex-col {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.wpcf7 input[type="submit"] {
  width: 100%;
  max-width: 314px;
  background-color: #f95252;
  border: none;
  border-radius: 0;
  min-height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  letter-spacing: .3em;
  font-size: 20px;
  color: #fff;
}

.wpcf7-submit {
  display: block;
  margin: 16px auto;
}

.wpcf7 .wpcf7-submit:disabled {
  cursor: not-allowed;
}

.wpcf7 form .wpcf7-response-output {
  padding: 1em 2em;
  margin: 0 0 20px;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 700;
}
*/



/*-------------------------------------------------

		☆ works (page)

-------------------------------------------------*/
.page_taxonomy .taxonomy_post_wrapper {
  flex-flow: wrap;
  justify-content: space-between;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  margin: 3rem 0 0;
}

.page_taxonomy .taxonomy_post_wrapper .taxonomy_post_each {
  flex-flow: wrap;
  justify-content: space-between;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  width: 100%;
  padding: 2rem;
  margin-bottom: 3.5rem;
  border: 1px solid #cd7764;
  border-radius: 1rem;
}

.page_taxonomy .taxonomy_post_wrapper .taxonomy_post_each:last-child {
  margin-bottom: 0;
  }
  @media only screen and (max-width: 480px) {
    .page__taxonomy .taxonomy__post__wrapper .taxonomy__post__each {
        padding: 1rem;
  }
}

.page_taxonomy .taxonomy_post_wrapper .taxonomy_post_each .taxonomy_post_thumbnail {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 40%;
  height: 100%;
  max-height: 26.764rem;
  min-height: 26.764rem;
  background-color: gray;
  border-radius: 1rem;
  }
  @media only screen and (max-width: 1024px) {
    .page__taxonomy .taxonomy__post__wrapper .taxonomy__post__each .taxonomy__post__thumbnail {
        width: 100%;
        height: 30rem;
    }
}

.page_taxonomy .taxonomy_post_wrapper .taxonomy_post_each .taxonomy_post_desc {
  position: relative;
  width: 58%;
  height: 100%;
  padding-bottom: 4rem;
}
@media only screen and (max-width: 1024px) {
  .page_taxonomy .taxonomy_post_wrapper .taxonomy_post_each .taxonomy_post_desc {
    width: 100%;
    height: auto;
  }
}

.page_taxonomy .taxonomy_post_wrapper .taxonomy_post_each .taxonomy_post_cat_wrapper {
  background-color: #f2eae8;
}

.page_taxonomy .taxonomy_post_wrapper .taxonomy_post_each .taxonomy_post_content {
  margin-top: 2rem;
}

.page_taxonomy .taxonomy_post_wrapper .taxonomy_post_each .more {
  position: absolute;
  right: 1rem;
  bottom: 0rem;
  display: inline-block;
}


/*-------------------------------------------------

		☆ works (single)

-------------------------------------------------*/
.taxonomy_post_cat_wrapper {
    flex-flow: wrap;
    justify-content: space-between;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    padding: 1rem;
    border-radius: 1rem;
    -webkit-box-pack: start;
  }
  @media only screen and (max-width: 1024px) {
    .taxonomy_post_cat_wrapper {
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-pack: justify;
  }
}

.taxonomy_post_cat_wrapper li {
    display: none;
    position: relative;
    margin-right: 2rem;
    margin-left: 2rem;
    font-weight: 600;
  }
  @media only screen and (max-width: 1024px) {
    .taxonomy_post_cat_wrapper li {
      width: 45%;
      margin: 0;
      margin-bottom: 1rem;
      margin-left: 5%;
  }
  .taxonomy_post_cat_wrapper li:nth-child(n + 3) {
      margin-bottom: 0;
  }
}

@media only screen and (max-width: 480px) {
    .taxonomy_post_cat_wrapper li {
      font-size: 1.1rem;
    }
}

.taxonomy_post_cat_wrapper li:before {
    font-weight: 400;
    position: absolute;
    top: 50%;
    right: 100%;
    display: inline-block;
    height: 3.5rem;
    margin-right: .3rem;
    color: #cd7764;
    font-size: 1.6rem;
    font-weight: 900;
    transform: translateY(-36%);
}

.taxonomy_post_cat_wrapper .family, .taxonomy_post_cat_wrapper .price, .taxonomy_post_cat_wrapper .location, .taxonomy_post_cat_wrapper .area {
    display: list-item;
}

/* works category icons */
.taxonomy_post_cat_wrapper .family:before {
    content: "\f007";
}
.taxonomy_post_cat_wrapper .price:before {
    content: "\f157";
}
.taxonomy_post_cat_wrapper .location:before {
    content: "\f3c5";
}
.taxonomy_post_cat_wrapper .area:before {
    content: "\e00d";
}

.taxonomy_post_title_wrapper {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    position: relative;
    align-items: center;
    -ms-flex-align: center;
    padding-left: 10rem;
    margin: 1.5rem 0 2.5rem;
    -webkit-box-align: center;
  }
  @media only screen and (max-width: 1024px) {
    .taxonomy_post_title_wrapper {
      padding: 0;
      padding-top: 3rem;
      margin: 1rem 0;
      font-size: 1.8rem;
  }
}

.taxonomy_post_title_wrapper .taxonomy_post_title {
    font-size: 2.4rem;
    font-weight: 600;
  }
  @media only screen and (max-width: 1024px) {
    .taxonomy_post_title_wrapper .taxonomy_post_title {
      font-size: 1.8rem;
  }
}

.taxonomy_post_title_wrapper .taxonomy_post_title .plan_name {
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    justify-content: center;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-box-pack: center;
    position: absolute;
    top: 50%;
    left: 0;
    width: 8rem;
    height: 7rem;
    margin-right: 1.6rem;
    color: #ffffff;
    font-size: 1.4rem;
    text-align: center;
    background-color: #cd7764;
    border-radius: .5rem;
    transform: translateY(-50%);
  }
  @media only screen and (max-width: 1024px) {
    .taxonomy_post_title_wrapper .taxonomy_post_title .plan_name {
      margin-right: 0;
      white-space: nowrap;
      border-radius: .3rem;
      height: auto;
      width: auto;
      top: 0;
      padding: 1px 5px;
      transform: translate(0);
  }
}

.taxonomy_post_title_wrapper .taxonomy_post_title .single_works_name {
    font-size: 1.4rem;
    font-weight: 400;
}

.single_works .single_works_gallery .single_works_gallery_columns {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
    -webkit-column-fill: auto;
    -moz-column-fill: auto;
    column-fill: auto;
    -webkit-column-gap: 2rem;
    -moz-column-gap: 2rem;
    column-gap: 2rem;
  }
  @media only screen and (max-width: 1024px) {
    .single_works .single_works_gallery .single_works_gallery_columns {
      -webkit-column-count: 2;
      -moz-column-count: 2;
      column-count: 2;
  }
}

.single_works .gallery_img_text {
    display: inline-block;
    width: 100%;
    height: auto;
    margin-bottom: 2rem;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
}

.single_works .gallery_img_text figure, .single_works .gallery_img_text figure img {
    width: 100%;
    border-radius: 1rem;
}

.single_works .gallery_img_text p {
    margin-top: 1re;
    font-size: 1.2rem;
}

/*-------------------------------------------------

		☆ top FAQ よくあるご質問

-------------------------------------------------*/
#faq .f_ttl {
  color: #484848;
  padding: 65px 0;
  position: relative;
  text-align: center;
}

@media only screen and (max-width: 1024px) {
#faq .f_ttl {
  padding: 40px 0 30px 0;
}
}

#faq .f_ttl:before {
  content: '';
  width: 140px;
  height: 5px;
  background: #00a0c2;
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  margin-left: -70px;
}

#faq .en {
  font-family: 'Century Gothic', sans-serif;
  font-style: normal;
  letter-spacing: .15em;
  font-weight: bold;
  font-size: 16px;
  display: block;
  margin-bottom: 25px;
}

#faq .f_ttl .ja {
  font-weight: bold;
  font-size: 30px;
  letter-spacing: .15em;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 1024px) {
#faq .f_ttl .ja {
  line-height: 1.4;
  font-size: 24px;
}
}

@media only screen and (max-width: 320px) {
#faq .f_ttl .ja {
  font-size: 20px;
}
}
/*=========
accordion
=========*/
.accordion_area .accordion_one .ac_header {
  background-color: #ffffff;
  padding: 1.5rem 4rem 1.5rem 2rem;
  position: relative;
  z-index: +1;
  cursor: pointer;
  transition: .2s;
  margin: 0 0 20px;
}
.accordion_area .accordion_one .ac_header.open {
  margin: 0;
}

.accordion_area .accordion_one .ac_header:not(.open):hover {
  background-color: #f1f8ff;
}
.accordion_area .accordion_one:nth-child(odd) .ac_header:not(.open):hover {
  background-color: #f1f8ff;
}
.accordion_area .accordion_one .ac_header .i_box {
  position: absolute;
  top: 50%;
  right: 2rem;
  width: 20px;
  height: 20px;
  margin-top: -10px;
}
.accordion_area .accordion_one .ac_header .i_box:before, .accordion_area .accordion_one .ac_header .i_box:after {
  position: absolute;
  content: "";
  margin: auto;
  box-sizing: border-box;
  vertical-align: middle;
}
.accordion_area .accordion_one .ac_header .i_box:before {
  border-top: 2px solid #014897;
  width: 20px;
  height: 0;
  top: 0;
  bottom: 0;
  right: 0;
}
.accordion_area .accordion_one .ac_header .i_box:after {
  border-left: 2px solid #014897;
  width: 0;
  height: 20px;
  top: 0;
  bottom: 0;
  right: 9px;
  transition: .3s;
}
.accordion_area .accordion_one .ac_header.open .i_box:after {
  height: 0;
}
.accordion_area .accordion_one .ac_inner {
  display: none;
  padding: 0 2rem 1.5rem 2rem;
  box-sizing: border-box;
  background: #fff;
  margin-bottom: 20px;
}
.accordion_wrap {
  display: none;
  padding: 0 2rem 1.5rem 2rem;
  box-sizing: border-box;
  background: #fff;
  margin-bottom: 20px;
}

.accordion_box {
  background: #fff;
  padding: 2rem;
  text-align: center;
  position: relative;
}

.accordion_box_headinner {

}

.accordion_box_txt {
  font-weight: bold;
}

/*-------------------------------------------------
.accordion_box .i_box {
  position: absolute;
  top: 50%;
  right: 2rem;
  width: 20px;
  height: 20px;
  margin-top: -10px;
}
.accordion_box .i_box:before, .accordion_box .i_box:after {
  position: absolute;
  content: "";
  margin: auto;
  box-sizing: border-box;
  vertical-align: middle;
}
.accordion_box .i_box:before {
  border-top: 2px solid #014897;
  width: 20px;
  height: 0;
  top: 0;
  bottom: 0;
  right: 0;
}
.accordion_box .i_box:after {
  border-left: 2px solid #014897;
  width: 0;
  height: 20px;
  top: 0;
  bottom: 0;
  right: 9px;
  transition: .3s;
}
.accordion_box.open .i_box:after {
  height: 0;
}
------------------------------------------------ */

@media screen and (max-width: 736px) {
  .accordion_area .accordion_one .ac_header {
    padding: 1.5rem 2rem 1.5rem 1.0rem;
  }
  .accordion_area .accordion_one .ac_header .i_box {
    right: 0.8rem;
    width: 15px;
    height: 15px;
    margin-top: -7px;
  }
  .accordion_area .accordion_one .ac_header .i_box:before {
    width: 15px;
  }
  .accordion_area .accordion_one .ac_header .i_box:after {
    height: 15px;
    right: 7px;
  }
  .accordion_area .accordion_one .ac_inner {
    padding: 1.5rem 1.5rem 1.5rem 1.5rem;
  }
}

/*=========
faq
=========*/
section#faq {
  background: #fff;
}

section#faq .in {
  background: #f9f9f9;
  padding: 0 0 40px;
  margin-top: 120px;
  margin: 0 auto;
}
.p-faq__headinner {
  display: block;
  padding-left: 35px;
  position: relative;
  line-height: 1.5;
}
.p-faq__headinner::before {
  position: absolute;
  left: 0;
  content: "Q．";
  color: #21adde;
  font-size: 20px;
  font-weight: bold;
}
.p-faq__headinner p.p-faq__q-txt {
  font-size: 16px;
  font-weight: 700;
}
@media screen and (max-width: 736px) {
  .p-faq__headinner {
    padding-left: 25px;
  }
  .p-faq__headinner::before {
    font-size: 16px;
  }
  .p-faq__headinner p.p-faq__q-txt {
    font-size: 16px;
  }
}
.p-faq__bodyinner {
  display: block;
  padding-left: 35px;
  position: relative;
  line-height: 1.5;
}
.p-faq__bodyinner::before {
  position: absolute;
  left: 0;
  content: "A．";
  color: #c9d0d2;
  font-size: 20px;
  font-weight: bold;
}
.p-faq__bodyinner p.p-faq__a-txt {
  font-size: 16px;
}
@media screen and (max-width: 736px) {
  .p-faq__bodyinner {
    padding-left: 25px;
  }
  .p-faq__bodyinner::before {
    font-size: 16px;
  }
  .p-faq__bodyinner p.p-faq__a-txt {
    font-size: 16px;
  }
}

/* FAQページ：親アコーディオンは初期オープン */
#faq .accordion_wrap {
  display: block;
}

#faq .accordion_box {
  pointer-events: none; /* 親を開閉させたくない場合 */
}

#faq .accordion_box.open {
  pointer-events: none;
}



/*=========
 kengakucloud カレンダースタイル調整
=========*/
.kc-reservation-iframe {
	text-align: center;
	background: #fff;
	height: 730px;
	max-width: 820px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 0;
	margin-bottom: 12em;
	padding-top: 40px;
}
.kc-reservation-iframe iframe {
	padding: 0 24px;
}
@media screen and (max-width: 1000px) {
	.kc-reservation-iframe {
		height: 850px;
	}
	.kc-reservation-iframe iframe {
		width: 100%;
		max-width: 800px;
	}
}
@media screen and (max-width: 768px) {
	.kc-reservation-iframe {
		height: 750px;
		padding-left: 16px;
		padding-right: 16px;
		padding-top: 0;
		margin-left: 16px;
		margin-right: 16px;
		margin-top: 16px;
    overflow:auto; 
    -webkit-overflow-scrolling:touch;
	}
	.kc-reservation-iframe iframe {
		height: 750px;
		padding: 0;
	}
}


