@media (max-width: 768px) {
  /* reset
---------------------------------------------------------------------------- */
  html,
  body,
  div,
  span,
  applet,
  object,
  iframe,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  blockquote,
  pre,
  a,
  abbr,
  acronym,
  address,
  big,
  cite,
  code,
  del,
  dfn,
  em,
  font,
  img,
  ins,
  kbd,
  q,
  s,
  samp,
  small,
  strike,
  strong,
  sub,
  sup,
  tt,
  var,
  b,
  u,
  i,
  center,
  dl,
  dt,
  dd,
  ol,
  ul,
  li,
  fieldset,
  form,
  label,
  legend,
  table,
  caption,
  tbody,
  tfoot,
  thead,
  tr,
  th,
  td {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
  }
  html body {
    font-size: 14px;
    /*padding-top: 115px;*/
  }
  img {
    max-width: 100%;
    width: auto;
    display: block;
    margin: auto;
    height: auto;
  }
  .pc {
    display: none !important;
  }
  .sp {
    display: block;
  }
  .inner {
    width: 100%;
  }
  .inner-new {
    flex-direction: column;
    width: 100%;
    margin: 0 auto 40px;
    padding: 0 4vw;
  }
  .inner-new > aside {
    width: 80%;
    order: 1;
    margin: 0 auto 50px;
    border: none;
    border-radius: 22px;
    padding: 16px 10px;
    background: #efe1cd;
    box-sizing: border-box;
    text-align: center;
  }
  .inner-new > aside > h2 {
    background: none;
    color: #144878;
    font-weight: bold;
    font-size: 20px;
    text-align: center;
    padding: 0;
    margin: 0 0 12px 0;
  }
  .inner-new > aside > h2 a {
    color: inherit;
    text-decoration: underline;
  }
  .inner-new > aside nav {
    margin: 0;
  }
  .inner-new > aside nav ul {
    margin: 0;
    padding: 0;
    border: none;
  }
  .inner-new > aside nav ul li {
    margin: 0 0 10px 0;
    padding: 0;
    list-style: none;
    border: none;
  }
  .inner-new > aside nav ul li a {
    display: block;
    font-size: 16px;
    color: #333;
    text-decoration: underline;
    line-height: 1.2;
    padding: 0;
  }
  .inner-new > aside nav ul li a br {
    display: none;
  }
  .inner-new > aside nav ul li a:after {
    content: none !important;
  }
  .inner-new > aside nav ul li a:hover {
    text-decoration: underline;
    background: none;
  }
  .inner-new > aside nav ul li strong {
    display: block;
    /* a と同じに変更 */
    font-size: 16px;
    /* a と同じサイズ */
    color: #333;
    /* a と同じカラー */
    text-decoration: underline;
    line-height: 1.2;
    font-weight: bold;
    /* 強調 */
    padding: 0;
    background: none;
    /* PC用背景を解除 */
    white-space: normal;
    word-break: break-word;
  }
  .inner-new > aside nav ul li strong:after {
    display: none;
  }
  .inner-new > aside nav ul li:last-child {
    margin-bottom: 0;
  }
  .inner-new > aside section {
    display: none;
  }
  .inner-new > main {
    flex: 1 1 auto;
    width: 100%;
    order: 2;
  }
  .inner-new > main h2 {
    font-size: 5.6vw;
    line-height: 1.3;
    margin: 0 0 6px 0;
    font-weight: bold;
    text-align: center;
  }
  .inner-new > main .sub {
    font-size: 3.3vw;
    text-align: center;
    font-weight: normal;
    margin-bottom: 30px;
  }
  .inner-new > main p {
    font-size: 18px;
  }
  .fix_btn {
    display: none !important;
  }
  .center_txt {
    text-align: left;
  }
  .sp_mb0 {
    margin-bottom: 0 !important;
  }
  .sp_mb5 {
    margin-bottom: 5px !important;
  }
  .sp_mb10 {
    margin-bottom: 10px !important;
  }
  .sp_mb15 {
    margin-bottom: 15px !important;
  }
  .sp_mb20 {
    margin-bottom: 20px !important;
  }
  .sp_mb25 {
    margin-bottom: 25px !important;
  }
  .sp_mb30 {
    margin-bottom: 30px !important;
  }
  .sp_mb35 {
    margin-bottom: 35px !important;
  }
  .sp_mb40 {
    margin-bottom: 40px !important;
  }
  .sp_mb45 {
    margin-bottom: 45px !important;
  }
  .sp_mb50 {
    margin-bottom: 50px !important;
  }
  .sp_mb55 {
    margin-bottom: 55px !important;
  }
  .sp_mb60 {
    margin-bottom: 60px !important;
  }
  .sp_mb65 {
    margin-bottom: 65px !important;
  }
  .sp_mb70 {
    margin-bottom: 70px !important;
  }
  .img_w80 {
    width: 80%;
  }
  .header .gnavi07 .gnavi_tel a:after {
    content: " ";
  }
  /******************************************************

  header

  ******************************************************/
  .header {
    padding: 3.2vw 3.2vw;
  }
  .header .header-inner {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    max-width: 100%;
    margin: 0;
    padding: 0;
  }
  .header .header-inner .logo {
    flex: 0 0 auto;
  }
  .header .header-inner .logo img {
    width: 38vw;
    max-width: 200px;
    height: auto;
  }
  .header .header-inner .header-info {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 3.2vw;
  }
  .header .header-inner .header-info .tel-box {
    display: none;
  }
  .header .header-inner .header-info .contact {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 8px;
  }
  .header .header-inner .header-info .contact .links {
    text-align: right;
  }
  .header .header-inner .header-info .contact .links a {
    font-size: 3.2vw;
    color: #144878;
    margin: 0 0 0 1.6vw;
    text-decoration: underline;
  }
  .header .header-inner .header-info .contact .links a:hover {
    text-decoration: none;
  }
  .header .header-inner .header-info .contact .btn {
    max-width: 44vw;
    width: 100%;
    height: 40px;
    white-space: nowrap;
    border: 2px solid #144878;
    background: #fff;
    color: #144878;
    font-weight: bold;
    border-radius: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 3.5vw;
    line-height: 1;
    box-sizing: border-box;
    padding: 0.8em 0;
  }
  .header .header-inner .header-info .contact .btn:hover {
    background: #0070d2;
    color: #fff;
    opacity: 1;
  }
  .gnav {
    margin: 20px 0 0 0;
  }
  .gnav ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    background: #fff;
    padding: 0;
    margin: 0;
    list-style: none;
  }
  .gnav li {
    background: #144878;
    height: 44px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  .gnav li:hover {
    background: #0070d2;
  }
  .gnav li a {
    color: #fff !important;
    font-size: 16px;
    text-decoration: none;
    line-height: 1.2;
  }
  .gnav li strong {
    color: #efdd00 !important;
    font-size: 16px;
    text-decoration: none;
    line-height: 1.2;
  }
  .gnav li.with-sub .sub {
    font-size: 10px;
    color: #fff !important;
    line-height: 1.2;
    margin: 0 0 2px;
  }
  .gnav li.with-sub .sub-st {
    color: #efdd00 !important;
    font-weight: 700;
  }
  .gnav li.with-sub a {
    margin: 0;
  }
  .inner_sp {
    width: 100%;
    padding: 10px 0;
  }
  .sp_btn_box {
    float: right;
  }
  .sp_btn_box p {
    float: left;
  }
  .sp_btn_hedaer_tel img,
  .sp_btn_hedaer_mail img {
    max-width: 61px;
    height: auto;
  }
  .menu-trigger,
  .menu-trigger span {
    display: inline-block;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
    -o-transition: all 0.4s;
    transition: all 0.4s;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .menu-trigger {
    position: relative;
    width: 70px;
    height: 50px;
    float: right;
    background: #134879;
  }
  .menu-trigger span {
    position: absolute;
    left: 0;
    margin: auto;
    right: 0;
    width: 50%;
    height: 3px;
    background-color: #fff;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 0;
  }
  .menu-trigger span:nth-of-type(1) {
    top: 8px;
  }
  .menu-trigger span:nth-of-type(2) {
    top: 14px;
  }
  .menu-trigger span:nth-of-type(3) {
    top: 20px;
  }
  .menu-trigger.active span:nth-of-type(1) {
    top: 6px;
  }
  .menu-trigger.active span:nth-of-type(3) {
    top: 26px;
  }
  .menu-trigger span:nth-of-type(4) {
    bottom: 2px;
    height: auto;
    font-size: 11px;
    font-weight: 700;
    text-align: center;
    background-color: initial;
    color: #fff;
    width: 70%;
    top: 26px;
  }
  .menu-trigger.active span:nth-of-type(1) {
    width: 40%;
    -webkit-transform: translateY(8px) rotate(-45deg);
    -moz-transform: translateY(8px) rotate(-45deg);
    -ms-transform: translateY(8px) rotate(-45deg);
    -o-transform: translateY(8px) rotate(-45deg);
    transform: translateY(8px) rotate(-45deg);
  }
  .menu-trigger.active span:nth-of-type(2) {
    opacity: 0;
  }
  .menu-trigger.active span:nth-of-type(3) {
    width: 40%;
    -webkit-transform: translateY(-12px) rotate(45deg);
    -moz-transform: translateY(-12px) rotate(45deg);
    -ms-transform: translateY(-12px) rotate(45deg);
    -o-transform: translateY(-12px) rotate(45deg);
    transform: translateY(-12px) rotate(45deg);
  }
  .ac_con {
    background: #FFFFFF;
    text-align: left;
    display: none;
    position: fixed;
    width: 100%;
    z-index: 9999;
    top: 115px;
    bottom: 0;
    overflow: auto;
  }
  .header_nav .gnavi01 {
    display: none;
  }
  /* -------------------------------------------------
  メニュー内アコーディオンメニュー*/
  .header_nav .gnavi07,
  .header_nav .gnavi06,
  .header_nav .gnavi05,
  .header_nav .gnavi04,
  .header_nav .gnavi03,
  .header_nav .gnavi02 {
    width: 100%;
    overflow: hidden;
    height: auto;
    border-bottom: 1px solid #fff;
  }
  /*クローズ状態*/
  .header_nav .gnavi02 p + ul.gnav_dorpmenu,
  .header_nav .gnavi03 p + ul.gnav_dorpmenu,
  .header_nav .gnavi04 p + ul.gnav_dorpmenu,
  .header_nav .gnavi05 p + ul.gnav_dorpmenu,
  .header_nav .gnavi06 p + ul.gnav_dorpmenu,
  .header_nav .gnavi07 p + ul.gnav_dorpmenu {
    overflow: hidden;
    opacity: 0;
    max-height: 0;
    line-height: 0;
    transition: 0.1s;
  }
  /*オープン状態*/
  .header_nav .gnavi02 p.js-menu-accordion + ul.gnav_dorpmenu,
  .header_nav .gnavi03 p.js-menu-accordion + ul.gnav_dorpmenu,
  .header_nav .gnavi04 p.js-menu-accordion + ul.gnav_dorpmenu,
  .header_nav .gnavi05 p.js-menu-accordion + ul.gnav_dorpmenu,
  .header_nav .gnavi06 p.js-menu-accordion + ul.gnav_dorpmenu,
  .header_nav .gnavi07 p.js-menu-accordion + ul.gnav_dorpmenu {
    overflow: hidden;
    opacity: 1;
    max-height: 9999px;
    line-height: 1.5;
    height: auto;
    transition: 0.2s;
  }
  .header_nav .gnavi02 p,
  .header_nav .gnavi03 p,
  .header_nav .gnavi04 p,
  .header_nav .gnavi05 p,
  .header_nav .gnavi06 p,
  .header_nav .gnavi07 p {
    position: relative;
  }
  .header_nav .gnavi02 p:after,
  .header_nav .gnavi03 p:after,
  .header_nav .gnavi04 p:after,
  .header_nav .gnavi05 p:after,
  .header_nav .gnavi06 p:after {
    position: absolute;
    background: none;
    content: "＋";
    color: #fff;
    font-weight: bold;
    top: 10px;
    right: 15px;
  }
  .header_nav .gnavi02 p.js-menu-accordion:after,
  .header_nav .gnavi03 p.js-menu-accordion:after,
  .header_nav .gnavi04 p.js-menu-accordion:after,
  .header_nav .gnavi05 p.js-menu-accordion:after,
  .header_nav .gnavi06 p.js-menu-accordion:after,
  .header_nav .gnavi07 p.js-menu-accordion:after {
    content: "−";
    color: #fff;
  }
  .gnavi06 .gnav_dorpmenu .sp_only {
    display: block;
  }
  .header_nav li {
    float: none;
    height: auto;
  }
  .header_nav .gnav_dorpmenu li {
    float: none;
  }
  .header_nav .gnavi03 a,
  .header_nav li a {
    padding: 11px 15px;
  }
  .header_nav li a,
  .header_nav .gnavi04 a {
    font-size: 14px;
    display: block;
    color: #134879;
    padding: 11px 15px;
    width: 100%;
    text-align: left;
  }
  .gnav_dorpmenu {
    width: 100%;
    display: block;
    position: initial;
    padding-left: 0;
    transform: none;
  }
  .header_nav .gnav_menu {
    background: #134879;
  }
  .header_nav .gnav_menu a {
    color: #fff;
  }
  .gnav_dorpmenu li:nth-child(2n) {
    float: none;
  }
  .gnav_dorpmenu li a {
    padding: 11px 15px;
    /*font-size: 14px;*/
    text-align: left;
  }
  .gnav_dorpmenu li a span {
    display: block;
    padding: 0;
    text-align: left;
    min-height: auto;
  }
  .gnav_dorpmenu li a span.double {
    display: block;
  }
  .gnav_dorpmenu li a span:before {
    content: "";
    display: none;
    background: none !important;
  }
  .gnav_dorpmenu li {
    width: 100%;
    margin: 0;
    border-right: 1px solid #ffffff;
    border-bottom: 1px solid #ffffff;
    height: auto;
    display: table;
  }
  .gnav_menu span {
    font-size: 11px;
    display: inline-block;
    letter-spacing: 0;
    margin-right: 5px;
    color: #fff;
  }
  .header_nav .gnavi05 {
    background-color: #134879;
  }
  .header_nav .gnavi07 a,
  .header_nav .gnavi05 a {
    text-align: left;
    padding: 11px 15px;
  }
  .gnav_dorpmenu li a br {
    display: none;
    padding-right: 15px;
  }
  .gnav_dorpmenu li:after {
    display: none;
  }
  .gnavi_tel img {
    max-width: 100%;
    width: auto;
    margin: 0;
  }
  .gnavi07 .gnav_menu a:after {
    background: none;
    content: ">";
    color: #134879;
    font-weight: bold;
    float: right;
  }
  .gnavi07 .gnavi_contact,
  .gnavi08 .gnavi_contact,
  .gnavi07 .gnavi_contact:hover,
  .gnavi08 .gnavi_contact:hover {
    background-color: #f6ea83;
  }
  .gnavi07 .gnavi_after,
  .gnavi08 .gnavi_after,
  .gnavi07 .gnavi_after:hover,
  .gnavi08 .gnavi_after:hover {
    background-color: #1aafbe;
  }
  .gnavi08 .gnavi_contact a {
    display: block;
    width: 100%;
    background: url(../images/icon_gnavi_contact.png) 15px center no-repeat;
    padding-left: 37px;
  }
  .gnavi08 .gnavi_contact a:after {
    background: none;
    content: ">";
    color: #134879;
    font-weight: bold;
    float: right;
  }
  .gnavi08 .gnavi_after a {
    display: block;
    width: 100%;
    background: url(../images/icon_gnavi_after.png) 18px center no-repeat;
    padding-left: 37px;
    color: #fff;
  }
  .gnavi02 .bg_1aafbe {
    background-color: #1aafbe;
  }
  .gnavi02 .bg_1aafbe a,
  .header_nav .gnavi05 a {
    display: block;
    width: 100%;
    color: #fff;
  }
  .gnavi02 .bg_1aafbe a:after,
  .header_nav .gnavi05 a:after {
    background: none;
    content: ">";
    color: #fff;
    font-weight: bold;
    float: right;
  }
  .gnavi08 .gnavi_after a:after {
    background: none;
    content: ">";
    color: #fff;
    font-weight: bold;
    float: right;
  }
  .sp_btn {
    background: #eee;
  }
  .sp_btn a:after {
    background: #eee;
    content: ">";
    color: #134879;
    font-weight: bold;
    float: right;
  }
  .gnav_dorpmenu a span:after {
    background: #eee;
    content: ">";
    color: #134879;
    font-weight: bold;
    float: right;
  }
  /* sp_fixnav*/
  .sp_fixnav {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 44px;
    padding: 0;
    background: #fff;
    z-index: 9999;
  }
  .wrapper .inner {
    padding: 0 10px;
  }
  .facebook iframe {
    width: 100%;
  }
  /* フッター全体 */
  footer {
    background: #144878;
    color: #fff;
    padding: 8vw 5.333vw;
    font-family: sans-serif;
    font-size: 3.8vw;
  }
  footer > nav > ul {
    float: none;
    width: auto;
    margin: 0 auto 5.333vw;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    max-width: 1200px;
  }
  footer > nav > ul > li {
    float: none;
    width: auto;
    flex: 1 1 100%;
    padding: 0;
    border-left: none;
    box-sizing: border-box;
    margin-bottom: 4.267vw;
  }
  footer > nav > ul > li:first-child {
    border-left: none;
  }
  footer > nav > ul > li > h2 {
    font-size: 4.7vw;
    font-weight: bold;
    margin: 0 0 1vw;
  }
  footer > nav > ul > li > h2 a {
    color: #fff;
  }
  footer > nav > ul > li > ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  footer > nav > ul > li > ul > li {
    float: none;
    width: auto;
    border: 0;
    margin: 0 0 0.5vw;
    padding-left: 4.8vw;
    text-indent: -3.733vw;
    font-size: 3.8vw;
  }
  footer > nav > ul > li > ul > li:before {
    content: "・";
  }
  footer > nav > ul > li > ul > li > a {
    color: #fff;
    text-decoration: none;
  }
  footer > nav > ul > li > ul > li > a:hover {
    text-decoration: underline;
  }
  footer > small {
    display: block;
    text-align: center;
    font-size: 3.2vw;
    color: #ccc;
  }
  .wrapper {
    min-width: 100%;
  }
  .h2_box {
    height: auto;
    padding: 18px 10px 18px 10px;
    min-height: 100px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    background: url(../images/about_bg_h2-sp.jpg) -70px -4px no-repeat;
  }
  .breadcrumb {
    display: none;
  }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-weight: 700;
    line-height: 1.5;
  }
  .under_h2 {
    margin-bottom: 8px;
    font-size: 6vw;
  }
  .h2_box .inner {
    padding: 0;
    display: inline-block;
    width: auto;
  }
  .h2_box .inner span {
    font-size: 4vw;
    display: block;
    margin-bottom: 4px;
  }
  .h2_box .inner br {
    display: none;
  }
  .under_page h3 {
    font-size: 18px;
    margin-bottom: 20px;
  }
  .under_page h4 {
    font-size: 23px;
    text-align: center;
    margin-bottom: 20px;
    padding-bottom: 30px;
    background-size: 40px;
  }
  h4.blog_cate_heading {
    padding-bottom: 10px;
    background: none;
  }
  .under_page h5 {
    font-size: 21px;
    margin-bottom: 20px;
    padding-top: 6%;
    background-size: 40%;
  }
  .under_page h6 {
    font-size: 16px;
  }
  .cococi-style h5 {
    padding: 30px 0 15px;
    background-position: center top;
  }
  .under_page h4 span {
    text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
    z-index: 1;
    position: relative;
  }
  .under_page h4 span:before,
  .under_page h4 span:after {
    display: none;
  }
  .section_outer_box {
    padding: 20px 0;
  }
  .section_img_left,
  .section_img_right,
  .device_box .float_l,
  .device_box .float_r {
    float: none;
    margin: 0 0 15px;
    width: auto;
  }
  .under_page .btn_default,
  .under_btn {
    width: auto;
    min-width: inherit;
  }
  .under_page .shadow_next,
  .h4_section_box {
    padding-top: 30px;
  }
  /* .under_shadow {
  background: none;
  padding: 20px 0;
  -webkit-box-shadow: 0 9px 10px #f4f2f3;
  -moz-box-shadow: 0 9px 10px #f4f2f3;
  box-shadow: 0 9px 10px #f4f2f3;
}*/
  .under_shadow {
    background: url(../images/under_bg_shadow.jpg) center bottom no-repeat;
    background-size: contain;
    padding-bottom: 40px;
  }
  .btn_center_box {
    margin: 20px auto;
    width: 95%;
  }
  .btn_default a {
    /*padding: 10px 20px 10px 100px;*/
    font-size: inherit;
  }
  .under_page .btn_default {
    display: block;
    margin-bottom: 10px;
  }
  .btn_center_box {
    text-align: center;
    margin-bottom: 100px;
  }
  .btn_center_box .btn_default a {
    width: 100%;
    margin: 0 auto;
    display: block;
    padding: 20px 10px;
    color: #134879;
    font-size: 19px;
    border: 1px solid #134879;
    box-sizing: border-box;
    border-radius: 8px;
    position: relative;
  }
  .btn_center_box .btn_default a:hover {
    background: #134879;
    color: #fff;
    text-decoration: none;
  }
  .btn_bgimg a {
    background: url("../images/btn_bgimg.png") no-repeat 5px center;
    background-size: 100px 72px;
  }
  .btn_bgimg a:hover {
    background: url("../images/btn_bgimg.png") no-repeat 5px center #134879;
    background-size: 100px 72px;
  }
  .under_page .main_section {
    padding-bottom: 40px;
  }
  .under_page .main_section p {
    font-size: 18px;
    line-height: 1.7;
  }
  .page_caption {
    margin-bottom: 5px;
    font-size: 14px;
  }
  .h5_section_box {
    padding: 20px 0 0;
    width: auto !important;
  }
  .merit_txt {
    font-size: 18px;
  }
  .loans .h5_check_icon {
    padding: 10px 15px 10px 50px;
    margin-bottom: 10px;
    background-size: 20px;
    background-position-y: 8px;
  }
  table.table_default,
  table {
    width: 100%;
    margin: 0 auto 20px;
  }
  table.table_default th,
  th,
  td,
  table.table_default td {
    padding: 10px;
    display: block;
    width: 100% !important;
  }
  .decobox_default {
    padding: 20px 10px;
    width: auto;
    margin: 0 auto 30px;
  }
  ul.mb0.list_inner_style {
    margin-bottom: 20px !important;
  }
  .list_inner_style li:before {
    top: 9px;
  }
  .graph_set,
  .elem_list li,
  .pickup_inner_left {
    width: auto;
    float: none;
  }
  .graph_box .float_l,
  .graph_box .float_r {
    float: none;
    border: none;
    padding: 0 0 15px;
  }
  .graph_box .float_l {
    border-bottom: 1px solid #b3b3b3;
  }
  .pickup_box:after {
    position: absolute;
    left: 10px;
    right: 10px;
    margin-left: 0;
    width: auto;
    bottom: 20px;
  }
  .pickup_box {
    padding: 20px 10px 60px;
    background: #fdfcef;
    position: relative;
  }
  .elem_list li {
    min-height: inherit;
    margin-bottom: 30px !important;
  }
  .elem_list li:nth-of-type(odd) {
    margin-right: 0;
  }
  .elem_box {
    margin: 15px 0 0;
  }
  .elem_set dt {
    padding: 20px 0 10px;
  }
  .elem_set dt img {
    display: initial;
    max-height: 30px;
  }
  .graph_box {
    margin-bottom: 30px;
  }
  .graph_set dt {
    font-size: 18px;
    margin-bottom: 10px;
    font-weight: 700;
    margin-top: 25px;
  }
  .pickup_inner_right {
    float: none;
    margin: 10px 0;
  }
  .inspection_list li {
    margin-bottom: 40px;
  }
  .inspection_list li:last-child {
    margin-bottom: 0;
  }
  .inspection_lsit_set table ul li {
    margin-bottom: 5px;
    list-style-type: disc;
    margin-left: 20px;
  }
  .inspection_list_set table th {
    margin: 0 0 10px 0;
  }
  .flow_txt {
    width: 100%;
    float: none;
    padding: 10px;
    border-bottom: 1px solid #eaeaea;
  }
  .flow_txt dt {
    font-weight: 700;
    font-size: 18px;
    margin-bottom: 15px;
    padding-bottom: 10px;
  }
  .flow_img {
    width: 100%;
    float: none;
  }
  .flow_set {
    margin-bottom: 60px;
  }
  .flow_set:before {
    border-top: 40px solid #134879;
    bottom: -40px;
  }
  dl.merit_set dt img {
    display: inline;
  }
  * + dl.merit_set {
    margin-top: 20px;
  }
  nav.footer_nav_box br {
    display: none;
  }
  .list_default {
    padding: 10px;
    width: auto;
    margin: 0 auto 30px;
  }
  .list_default li:before {
    top: 9px;
  }
  .inner .section_caption {
    text-align: left;
  }
  .story_box .section_caption {
    margin-bottom: 20px;
  }
  .table_report .float_box {
    float: none;
    margin-bottom: 15px;
  }
  .box_logo_01 {
    width: 100%;
    left: 0;
    top: 0;
    position: relative;
    margin-bottom: 30px;
  }
  /* ------------------------------------------
  Cococi+styleの高い性能基準 アコーディオン*/
  .accordion-wrapper {
    overflow: hidden;
    opacity: 0;
    max-height: 0;
    transition: 0.2s;
    margin-bottom: 10px;
  }
  .accordion-wrapper.js-action {
    overflow: hidden;
    opacity: 1;
    max-height: 9999px;
    height: auto;
    transition: 0.2s;
  }
  .accordion-btn {
    margin-bottom: 10px;
    width: 100%;
    font-size: 14px;
    line-height: 1;
    padding: 10px;
    text-align: center;
    color: #002060;
    border: 2px solid #002060;
    cursor: pointer;
  }
  /* ------------------------------------------ */
  #performance_iframe {
    max-height: calc((100vw - 20px) / 560 * 315);
  }
  .bg_lightyellow ul li:not(:last-child) {
    margin-bottom: 0.3em;
  }
}
@media screen and (max-width: 640px) {
  .btn_bgimg a {
    padding: 20px 35px 20px 120px;
  }
  .bg_lightyellow {
    padding: 15px;
  }
  .custom_flow .flow_set {
    padding: 20px 15px;
  }
  .custom_flow .flow_set .number {
    width: 40px;
    font-size: 40px;
    margin-right: 15px;
  }
}
@media screen and (max-width: 414px) {
  .sp_brk {
    display: block;
  }
}
@media screen and (max-width: 400px) {
  .btn_bgimg a {
    background: url("../images/btn_bgimg.png") no-repeat 5px center;
    background-size: auto;
    background-size: 80px 57px;
  }
  .btn_bgimg a:hover {
    background: url("../images/btn_bgimg.png") no-repeat 5px center #134879;
    background-size: contain;
    background-size: 80px 57px;
  }
  .btn_bgimg a {
    padding: 20px 35px 20px 100px;
  }
}
@media screen and (max-width: 768px) {
  .content-block {
    margin: 0 auto 60px;
  }
  .content-block h2 {
    font-size: 20px;
    margin-bottom: 20px;
  }
  .content-block .feed {
    width: 100%;
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }
  .content-block .feed li {
    width: 90%;
  }
  .content-block .button-blue a {
    width: 90%;
    height: 70px;
    line-height: 70px;
    font-size: 18px;
  }
  .content-block .greeting .greeting-ttl {
    font-size: 22px;
    margin-bottom: 16px;
  }
  .content-block .greeting .greeting-text {
    width: 90%;
    font-size: 15px;
    line-height: 2;
  }
  .content-block .greeting .ceo-name {
    text-align: center;
    margin: 20px auto;
  }
  .content-block .greeting .ceo-name img {
    width: 60%;
    max-width: 220px;
  }
  .content-block .greeting .greeting-photo {
    margin: 40px auto 0;
  }
  .content-block .greeting .greeting-photo img {
    width: 100%;
  }
  .content-block .news {
    width: 90%;
    margin: 0 auto 60px;
  }
  .content-block .news h3 {
    font-size: 18px;
  }
  .content-block .news .list-news-posts li a {
    flex-direction: column;
    align-items: flex-start;
  }
  .content-block .news .list-news-posts li a .date {
    margin: 0 0 4px 0;
    font-size: 15px;
  }
  .content-block .news .list-news-posts li a .ttl {
    font-size: 15px;
  }
  .content-block .cococi {
    padding: 40px 0 120px;
    background-size: 1000px auto;
  }
  .content-block .cococi .inner {
    width: 90%;
  }
  .content-block .cococi .lead {
    font-size: 15px;
  }
  .content-block .cococi .btns {
    width: 90%;
  }
  .content-block .cococi .btns a {
    height: 52px;
    line-height: 50px;
    font-size: 16px;
  }
  .content-block .sns {
    flex-direction: column;
    width: 90%;
    align-items: center;
    gap: 40px;
  }
  .content-block .sns .instagram,
  .content-block .sns .facebook {
    width: 100%;
  }
  .content-block .sns .instagram h3,
  .content-block .sns .facebook h3 {
    font-size: 22px;
    padding-top: 80px;
  }
  .content-block .sns .instagram h3:before,
  .content-block .sns .facebook h3:before {
    width: 64px;
    height: 64px;
  }
}
@media screen and (max-width: 768px) {
  #home .contents {
    width: 92%;
    margin: 0 auto;
  }
  #home .icatch {
    margin-bottom: 20px;
  }
  #home .icatch h1 {
    font-size: 23px;
    margin-bottom: 16px;
    font-weight: bold;
  }
  #home .icatch h1 br {
    display: block;
  }
  #home .icatch a {
    width: 90%;
    height: 64px;
    font-size: 18px;
    border-radius: 40px;
    padding: 0 1.2em;
  }
  #home .icatch a::before {
    width: 28px;
    height: 36px;
    margin-right: 8px;
  }
  #home .banner {
    max-width: 100%;
    margin: 0 auto 40px;
  }
  #home .banner a {
    width: 90%;
  }
  #home .banner img {
    border-radius: 0;
  }
  #home .read {
    font-size: 15px;
    margin-bottom: 30px;
  }
  #home .content-block {
    margin: 0 auto 60px;
  }
  #home .content-block h2 {
    font-size: 20px;
    padding-bottom: 12px;
    margin-bottom: 16px;
  }
  #home .content-block .feed {
    width: 100%;
    margin: 0 auto 30px;
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }
  #home .content-block .feed li {
    width: 100%;
  }
  #home .content-block .feed a img {
    width: 100%;
  }
  #home .content-block .feed a p {
    font-size: 14px;
  }
  #home .content-block .button-blue {
    margin: 10px 0 0;
  }
  #home .content-block .button-blue a {
    width: 92%;
    height: 64px;
    line-height: 64px;
    font-size: 18px;
    border-radius: 8px;
  }
  #home .content-block .greeting .greeting-ttl {
    font-size: 22px;
    margin-bottom: 12px;
    line-height: 1.6;
  }
  #home .content-block .greeting .greeting-text {
    width: 92%;
    margin: 0 auto 24px;
    font-size: 15px;
    line-height: 2;
  }
  #home .content-block .greeting .ceo-name {
    text-align: center;
    margin: 12px auto 0;
  }
  #home .content-block .greeting .ceo-name img {
    width: 60%;
    max-width: 220px;
  }
  #home .content-block .greeting .greeting-photo {
    margin: 32px auto 0;
  }
  #home .content-block .greeting .greeting-photo img {
    width: 100%;
  }
  #home .content-block .news {
    width: 92%;
    margin: 0 auto 60px;
  }
  #home .content-block .news h3 {
    font-size: 18px;
    padding-bottom: 8px;
    margin-bottom: 16px;
  }
  #home .content-block .news .list-news-posts {
    margin-bottom: 30px;
  }
  #home .content-block .news .list-news-posts li {
    margin-bottom: 12px;
  }
  #home .content-block .news .list-news-posts li a {
    flex-direction: column;
    align-items: flex-start;
    padding: 6px 0;
    font-size: 16px;
  }
  #home .content-block .news .list-news-posts li a .date {
    font-size: 14px;
    margin: 0 0 4px 0;
  }
  #home .content-block .news .list-news-posts li a .ttl {
    font-size: 16px;
  }
  #home .content-block .cococi {
    padding: 40px 0 120px;
    background-size: 900px auto;
  }
  #home .content-block .cococi .inner {
    width: 92%;
  }
  #home .content-block .cococi .lead {
    font-size: 15px;
    margin-bottom: 18px;
  }
  #home .content-block .cococi .btns {
    width: 92%;
  }
  #home .content-block .cococi .btns a {
    height: 52px;
    line-height: 50px;
    font-size: 16px;
    border-radius: 8px;
  }
  #home .content-block .sns {
    width: 92%;
    margin: 0 auto 40px;
    flex-direction: column;
    align-items: center;
    gap: 30px;
  }
  #home .content-block .sns .instagram,
  #home .content-block .sns .facebook {
    width: 100%;
  }
  #home .content-block .sns .instagram h3,
  #home .content-block .sns .facebook h3 {
    font-size: 20px;
    padding-top: 80px;
    margin-bottom: 14px;
  }
  #home .content-block .sns .instagram h3:before,
  #home .content-block .sns .facebook h3:before {
    width: 64px;
    height: 64px;
  }
  #home .content-block .sns .instagram img,
  #home .content-block .sns .facebook img {
    border-width: 1px;
  }
  .inner .button-blue a {
    display: block;
    width: 100%;
    height: auto;
    padding: 26px 10px;
    font-size: 19px;
    line-height: 1.5;
  }
  .list-section {
    width: auto;
    margin: 20px 0 0;
    padding: 20px;
  }
  .list-section li {
    margin-bottom: 20px;
  }
  .list-section li div {
    font-size: 16px;
  }
  .list-section li div .page_caption {
    font-size: 18px;
  }
  .list-section li p {
    font-size: 14px;
    padding-left: 0;
  }
  .subsidy-table table tr th,
  .subsidy-table table tr td {
    display: block;
    width: 100%;
    box-sizing: border-box;
    padding: 10px;
    font-size: 17px;
    text-align: left;
  }
  .subsidy-table table tr td {
    border-top: none;
  }
  .guide-page .feature-list .feature-item {
    margin-bottom: 60px;
  }
  .guide-page .feature-list .feature-item h3 {
    font-size: 24px;
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
  .guide-page .feature-list .feature-item .content-wrapper {
    flex-direction: column;
    margin-top: 20px;
  }
  .guide-page .feature-list .feature-item .content-wrapper .text-area {
    margin-right: 0;
    margin-bottom: 20px;
  }
  .guide-page .feature-list .feature-item .content-wrapper .text-area p {
    font-size: 16px;
  }
  .guide-page .feature-list .feature-item .content-wrapper .image-area {
    flex-basis: 100%;
  }
  .guide-page .bottom-nav {
    flex-direction: column;
    gap: 15px;
  }
  .guide-page .bottom-nav .nav-item {
    padding: 30px 15px;
    min-height: auto;
  }
  .guide-page .bottom-nav .nav-item img {
    height: 80px;
    width: 80px;
    margin-bottom: 10px;
  }
  .guide-page .bottom-nav .nav-item span {
    font-size: 28px;
  }
  #gx-page-content h3 {
    font-size: 18px;
    padding: 10px;
  }
  #gx-page-content .gx-section {
    margin-bottom: 50px;
  }
  #gx-page-content .gx-section .content-wrapper {
    flex-direction: column;
    margin-top: 20px;
    gap: 20px;
  }
  #gx-page-content .gx-section .content-wrapper .text-area p {
    font-size: 18px;
  }
  #gx-page-content .gx-section .content-wrapper .text-area .note {
    font-size: 14px;
  }
  #gx-page-content .gx-section .content-wrapper .text-area .large-text {
    font-size: 18px;
  }
  #gx-page-content .gx-section .content-wrapper .image-area {
    flex-basis: 100%;
  }
  #gx-page-content .gx-section .content-wrapper .image-area img {
    width: 100%;
    height: auto;
  }
  #gx-page-content .gx-section .detail-list {
    margin-top: 20px;
    padding: 20px;
  }
  #gx-page-content .gx-section .detail-list p {
    font-size: 16px;
  }
  #gx-page-content .gx-section .detail-list ol {
    font-size: 14px;
    padding-left: 30px;
  }
  #gx-page-content .gx-section .detail-list ol li {
    margin-bottom: 5px;
  }
  #gx-page-content .gx-section .detail-list .note {
    font-size: 14px;
    margin-bottom: 20px;
    padding-left: 0;
  }
  .modelhouse-features .feature-section {
    margin-bottom: 30px;
  }
  .modelhouse-features .feature-section h3 {
    font-size: 18px;
    padding: 15px 10px;
  }
  .modelhouse-features .feature-section .content-area {
    margin-top: 20px;
  }
  .modelhouse-features .feature-section .content-area .feature-item {
    flex-basis: 100%;
    margin-bottom: 30px;
  }
  .modelhouse-features .feature-section .content-area .feature-item h4 {
    font-size: 20px;
    margin-top: 10px;
    margin-bottom: 0!important;
    padding-bottom: 0;
  }
  .modelhouse-features .feature-section .content-area .feature-item p {
    font-size: 17px;
  }
  .modelhouse-features .feature-section.dining-kitchen-section {
    margin-bottom: 50px;
  }
  .contact-new {
    margin-bottom: 40px;
  }
  .contact-new p {
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 15px;
  }
  .contact-new a {
    width: 80%;
    padding: 18px 10px;
    font-size: 18px;
  }
  .mainvisual {
    width: 100%;
    aspect-ratio: 1400 / 750;
  }
}
/*# sourceMappingURL=sp_common.css.map */