@charset "UTF-8";
/*
Theme Name: MY-THEME
*/
/*@import "style-visual.css";*/

/* Webフォント読込サンプル */
/*
@font-face {
  font-family: "Font-Family-NAME";
  src: url(css/fonts/font-file.woff2) format("woff2"),
  url(css/fonts/font-file.woff) format("woff"),
  url(css/fonts/font-file.eot) format("eot");
  font-weight: 400;
  font-style: normal;
}
*/

/* ==========================================================================
  サイト毎の独自のスタイル
   ========================================================================== */

/* 基本フォント: ゴシック */
body {
  font-family: 'Noto Sans JP', "游明朝体", "Yu Mincho", YuMincho, "メイリオ",
    Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 16px;
  line-height: 1.666;
  color: #383838;
}

a {
  transition: 0.3s;
}

a:hover {
  text-decoration: none;
}

/* 基本フォント: 明朝 */
/**/
body {
  /* 游明朝体 */
  /*font-family: "游明朝体", "Yu Mincho", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
  /* ヒラギノ明朝 */
  /*font-family: 'Hiragino Mincho Pro', 'ヒラギノ明朝 Pro', 'Yu Mincho', '游明朝', 'MS Mincho', 'MS明朝', serif;*/
}

/* admin-barの高さ分の padding 設定 */
body.admin-bar {
  padding-top: 32px;
}

@media (max-width: 782px) {  
  body{    
    padding-top: 70px;
  }
  body.admin-bar {
    padding-top: 46px;
  }
}

.gothic {
  font-family: "游ゴシック体", "Yu Gothic", "YuGothic", "メイリオ", Meiryo, Osaka,
    "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.mincho {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝",
    "ＭＳ 明朝", serif;
}

.kiwi {
  font-family: "Kiwi Maru", serif;
}

.outfit {
  font-family: "Outfit", sans-serif;
}

.new_order {
  font-family: "new-order", sans-serif;
}

.noto_sans {
  font-family: "Noto Sans JP", sans-serif;
}

a {
  color: inherit;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
  opacity: 0.8;
}

img {
  max-width: 100%;
}

a:hover img {
  opacity: 0.8;
}

img[class*="wp-image-"],
img[class*="attachment-"] {
  max-width: 100%;
  height: auto;
}

i,
em {
  font-style: normal;
}

/* 動画埋め込みのレスポンシブ対応 */
iframe {
  max-width: 100%;
}

.responsive_video {
  position: relative;
}

.responsive_video:before {
  content: "";
  display: block;
  padding-top: 56.25%;
}

.responsive_video video,
.responsive_video iframe,
.responsive_video object,
.responsive_video embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* テーブル */
table {
  width: 100%;
  table-layout: fixed;
}

table th,
table td {
  padding: 10px 10px;
}

/* テーブル 汎用class */
.tbl {}

.tbl th,
.tbl td {
  border: 1px solid #b2b2b2;
}

.tbl th {}

.tbl td {}

/* スクロール テーブル */
.js-scrollable {
  overflow-x: auto;
}

.js-scrollable table {
  min-width: 748px;
}

/* 指定デバイスのみで表示するclass */
@media (min-width: 1024px) {
  .tb:not(.pc) {
    display: none;
  }

  .sp:not(.pc) {
    display: none;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .pc:not(.tb) {
    display: none;
  }

  .sp:not(.tb) {
    display: none;
  }
}

@media (max-width: 767px) {
  .pc:not(.sp) {
    display: none;
  }

  .tb:not(.sp) {
    display: none;
  }
}

.txt_ellipsis_line1,
.txt_ellipsis_line2,
.txt_ellipsis_line3,
.txt_ellipsis_line4,
.txt_ellipsis_line5,
.txt_ellipsis_line6,
.txt_ellipsis_line7,
.txt_ellipsis_line8,
.txt_ellipsis_line9,
.txt_ellipsis_line10 {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
}

.txt_ellipsis_line1 {
  -webkit-line-clamp: 1;
}

.txt_ellipsis_line2 {
  -webkit-line-clamp: 2;
}

.txt_ellipsis_line3 {
  -webkit-line-clamp: 3;
}

.txt_ellipsis_line4 {
  -webkit-line-clamp: 4;
}

.txt_ellipsis_line5 {
  -webkit-line-clamp: 5;
}

.form_fix{
  position: fixed;
  right: 0;
  top: 100px;
  z-index: 3;
}



/* **********************************
 *  コンテナ
 * ********************************* */
.wrapper {
  overflow-x: hidden;
}

/* .container {
  width: 1920px;
  max-width: 100%;
  padding: 0 10px;
  margin: 0 auto;
} */

.container {
  max-width: 1458px;
  width: auto;
  margin: 0 auto;
  padding: 0 15px;
}

.container-w {
  max-width: 1570px;
  width: auto;
  margin: 0 auto;
  padding: 0 15px;
}

.section {
  width: 100%;
  /*margin-bottom: 50px;*/
  /*padding: 30px 0;*/
  margin-top: 60px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.pg_header {
  /*padding: 15px 0;*/
  background-color: #ccc;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.pg_header .container {
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  height: 330px;
}

/* 共通のfloat ボックスとして定義しておく */
.box_l {
  float: left;
}

.box_r {
  float: right;
}

.breadcrumb_bg .breadcrumb {
  font-size: 13px;
  letter-spacing: 0.075em;
  font-weight: 500;
  font-family: "Kiwi Maru", serif;
  margin-bottom: 0;
}

.breadcrumb_bg .breadcrumb li a:after {
  font-size: 10px;
}

/* ▼サンプル▼ 利用箇所毎に幅指定だけで済むように */
/*
                                                                          .post_list .post_box .box_l {
                                                                              width: 70%;
                                                                              }
                                                                              .post_list .post_box .box_r {
                                                                                  width: 25%;
                                                                                  }
*/

/* ▼サンプル▼ リストなどでアイキャッチがない場合のclass */
/*
                                                                                  .post_list .post_box .box_w{
                                                                                    width: 100%;
                                                                                    }
*/

/*
                                                                                     * 共通クラスとして定義しておく
                                                                                      * リスト組みのテンプレート
                                                                                       * 
                                                                                        */

.listbox {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

.listbox .item {
  display: block;
  width: 100%;
}

.listbox .item .img {
  position: relative;
  display: block;
  overflow: hidden;
}

.listbox .item .img:before {
  content: "";
  display: block;
  padding-top: 100%;
}

.listbox .item .img.img2x1:before {
  padding-top: 50%;
}

.listbox .item .img.img1x2:before {
  padding-top: 200%;
}

.listbox .item .img.img2x3:before {
  padding-top: 150%;
}

.listbox .item .img.img3x2:before {
  padding-top: 66.666666%;
}

.listbox .item .img.img3x4:before {
  padding-top: 133.333333%;
}

.listbox .item .img.img4x3:before {
  padding-top: 75%;
}

.listbox .item .img.img16x9:before {
  padding-top: 56.25%;
}

.listbox .item .img img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.listbox .item .title {}

.listbox .item .date {}

.listbox .item .txt {}


.container {
  max-width: 1458px;
  width: auto;
  margin: 0 auto;
  padding: 0 15px;
}

.container-w {
  max-width: 1570px;
  width: auto;
  margin: 0 auto;
  padding: 0 15px;
}

.section {
  width: 100%;
  /*margin-bottom: 50px;*/
  /*padding: 30px 0;*/
  margin-top: 60px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.pg_header {
  /*padding: 15px 0;*/
  background-color: #ccc;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.pg_header .container {
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  height: 330px;
}

/* 共通のfloat ボックスとして定義しておく */
.box_l {
  float: left;
}

.box_r {
  float: right;
}

.breadcrumb_bg .breadcrumb {
  font-size: 13px;
  letter-spacing: 0.075em;
  font-weight: 500;
  font-family: "Kiwi Maru", serif;
  margin-bottom: 0;
}

.breadcrumb_bg .breadcrumb li a:after {
  font-size: 10px;
}

/* ▼サンプル▼ 利用箇所毎に幅指定だけで済むように */
/*
.post_list .post_box .box_l {
    width: 70%;
}
.post_list .post_box .box_r {
    width: 25%;
}
*/

/* ▼サンプル▼ リストなどでアイキャッチがない場合のclass */
/*
.post_list .post_box .box_w{
  width: 100%;
}
*/

/*
 * 共通クラスとして定義しておく
 * リスト組みのテンプレート
 * 
 */

.listbox {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

.listbox .item {
  display: block;
  width: 100%;
}

.listbox .item .img {
  position: relative;
  display: block;
  overflow: hidden;
}

.listbox .item .img:before {
  content: "";
  display: block;
  padding-top: 100%;
}

.listbox .item .img.img2x1:before {
  padding-top: 50%;
}

.listbox .item .img.img1x2:before {
  padding-top: 200%;
}

.listbox .item .img.img2x3:before {
  padding-top: 150%;
}

.listbox .item .img.img3x2:before {
  padding-top: 66.666666%;
}

.listbox .item .img.img3x4:before {
  padding-top: 133.333333%;
}

.listbox .item .img.img4x3:before {
  padding-top: 75%;
}

.listbox .item .img.img16x9:before {
  padding-top: 56.25%;
}

.listbox .item .img img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.listbox .item .title {}

.listbox .item .date {}

.listbox .item .txt {}

/* ▼サンプル▼ 利用箇所ごとにマージンなど設定 */
/*
.post_content .col1,
.post_content .col2,
.post_content .col3{
  margin-bottom: 20px;
}
*/

/*******************************
*　header
********************************/
header {
  padding: 10px 15px;
  width: 100%;
  background-color: #fff;
  box-sizing: border-box;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 6;
}
header .container {
  padding: 0;
}

.hdr {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.hdr_logo {
  width: 200px;
  line-height: 1;
}

.hdr_right {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
}

/*gnav*/
.gnav {
  width: 434px;
  box-sizing: border-box;
}
.gnav_inner > ul {
  box-sizing: border-box;
}
.gnav ul li a {
  /* color: #172133; */
  font-size: 17px;
  font-weight: bold;
  letter-spacing: 0.075em;
  white-space: nowrap;
}
.gnav>ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  text-align: center;
  /*font-size: 18px;*/
}

.gnav_inner > ul > li {
  padding: 10px 0;
  width: auto;
  position: relative;
}
.gnav ul > li.menu-item-has-children {
  position: relative;
}
/*.gnav ul > li.menu-item-has-children:after {
  content: "\f0d7";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #172133;
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.gnav ul > li.menu-item-has-children .sub-menu ul li a {
  position: relative;
}*/
.gnav li a {
  display: block;
  width: 100%;
  height: 100%;
}

.gnav li a:hover {
  /*background: #333;*/
  /*color: #FFF;*/
}




.gnav li:hover > .children,
.gnav li:hover > .sub-menu {
  display: block;
}
.gnav .contact a {
  color: #fff;
  width: 160px;
}


.fix_menu {
  position: fixed;
  right: 20px;
  bottom: 60px;
  z-index: 5;
}
.insta_fix img,
.pagetop img{
  width: 60px;
}
.pagetop{
  margin-top: 5px;
}

@media (max-width:767px){
  header .hdr1 .hdr_logo .logo {
    width: 25%;
    margin: 0 auto;
  }

  .hdr_tel,
  .hdr_recruit{
    display: none;
  }

  header .gnav_open{
    width: 50px;
    height: 50px;
    background: #172133;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 5;
  }
  .gnav_open:hover{
    opacity: 1;
  }
  .gnav_open img{
    width: 30px;
  }


  /* スマホ用 */
  .gnav{
    display:block !important;
    width: 80%;
    position: fixed;
    top: 0;
    bottom: 0;
    /*left: 0;*/
    right: 0;
    background: rgba(255,255,255,0.8);
    z-index: 4;
    overflow-y: scroll;

    /*transition: all 0.2s;*/
    transform: translateX(100%);
    padding: 55px 15px 15px;
    display: block;
  }
  .gnav.active{
    transform: translateX(0%);
  }
  .gnav .gnav_item{
    width: 100%;
    padding: 15px 0;
    border: 0;
    border-bottom: 1px dashed #CCC;
    color: inherit;
    justify-content: center;
    display: block;
    text-align: left;
  }
  .gnav_item:before{
    display: none;
  }
  .gnav .gnav_item + .gnav_item,
  .gnav .gnav_item:first-child,
  .gnav .gnav_item:last-child{
    border-left: 0;
    border-right: 0;
  }
  .gnav_item:nth-child(n+5){
    margin-top: 0;
  }
  .gnav_bg{
    padding: 0;
    background: inherit;
  }

  .gnav_item .gnav_item_sub{
    display: block;
    position: static;
    width: 100%;
    background: aliceblue;
    padding: 15px;
    margin-top: 20px;
  }
  .gnav .gnav_item:hover{
    color: #000000;
  }
  .gnav .sub-menu {
    margin-top: 15px;
  }
  .gnav .children li,
  .gnav .sub-menu li {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background: #172133;
    border-bottom: 1px solid #fff;
    text-align: center;
    min-width: 135px;
    padding: 0px 10px;
    transition: 0.3s;
    box-sizing: border-box;
  }
  .gnav .sub-menu li a{
    font-size: 16px;
    padding: 8px 0;
    box-sizing: border-box;
  }

}
@media (min-width:768px){  
  body{
    padding-top: 76px;
  }

  header {
    width: 100%;
    padding: 0;
    padding-left: 10px;
    background-color: #fff;
  }
  header .container {
    padding: 0;
  }
  .hdr {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .hdr_logo {
    width: 240px;
    padding-top: 0;
    margin-top: 0;
  }
  .hdr_right {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-wrap: nowrap;
    width: auto;
    gap: 0;
  }
  .gnav {
    width: 335px;
    margin: 0px;
  }
  .gnav_inner > ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    /* gap: 60px; */
    width: 547px;
    gap: 10px;
    width: auto;
  }
  .gnav_inner > ul > li {
    padding: 8px 0;
  }
  .gnav ul li a {
    /* color: #172133; */
    font-size: 15px;
    font-weight: bold;
    letter-spacing: 0.075em;
    white-space: nowrap;
  }.gnav .children,
  .gnav .sub-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
  }
  .gnav .children li,
  .gnav .sub-menu li {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background: #172133;
    border-bottom: 1px solid #fff;
    text-align: center;
    min-width: 135px;
    padding: 0px 10px;
    transition: 0.3s;
    box-sizing: border-box;
  }
  .gnav .children li:last-child,
  .gnav .sub-menu li:last-child {
    border-bottom: none;
  }
  .gnav .sub-menu li a{
    padding: 11px 0;
  }
  .gnav .sub-menu li a {
    font-size: 13px;
  }
  .hdr_tel {
    color: #172133;
    font-size: 18px;
    letter-spacing: 0.075em;
    white-space: nowrap;
    font-weight: 700;
    line-height: 1;
  }
  .hdr_tel img{
    height: 18px;
  }
  .hdr_recruit {
    width: 150px;
    height: 76px;
    margin-left: 20px;
    background-color: #172133;
  }
  .hdr_recruit a {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 0px 16px;
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    line-height: calc(75 / 20);
    letter-spacing: 0.075em;
  }
  .hdr_recruit a::before {
    content: "";
    display: inline-block;
    width: 35px;
    height: 31px;
    margin-right: 14px;
    background-image: url(img/recruit_icon.png);
    background-size: contain;
    background-repeat: no-repeat;
  }
  .hdr_contact {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }
  .hdr_contact .gnav{
    order: 2;
  }
  .hdr_contact .hdr_tel{
    order: 1;
  }

  .gnav_open{
    display: none;
  }

  .form_fix{
    top: 140px;
  }

  .fix_menu {
    right: 60px;
    bottom: 40px;
  }
  .insta_fix img,
  .pagetop img{
    width: 80px;
  }
  .pagetop{
    margin-top: 8px;
  }
}
@media (min-width:1024px){
  body{
    padding-top: 96px;
  }
  header {
    padding-left: 20px;
  }
  .hdr_logo {
    width: 330px;
  }
  .gnav {
    width: 375px;
  }
  .gnav_inner > ul > li {
    padding: 10px 0 15px;
  }
  .gnav ul li a {
    font-size: 16px;
  }
  .gnav .sub-menu li a {
    font-size: 15px;
  }
  .hdr_recruit {
    width: 220px;
    height: 96px;
    margin-left: 20px;
  }
  .hdr_recruit a {
    padding: 0px 16px;
    font-size: 18px;
  }
  .hdr_recruit a::before {
    width: 55px;
    height: 31px;
  }
}
@media (min-width:1200px){
  .hdr_logo {
    width: 26vw;
    padding-top: 0;
    margin-top: -10px;
  }
  .gnav {
    width: 375px;
    margin: 0px;
    margin-right: 20px;
  }
  .hdr_contact {
    flex-direction: row;
    align-items: center;
  }
  .hdr_contact .gnav{
    order: 1;
  }
  .hdr_contact .hdr_tel{
    order: 2;
  }
}

@media (min-width: 1500px) {
  .hdr_logo {
    width: 380px;
    padding-top: 0;
    margin-top: -10px;
  }
  .gnav {
    width: 415px;
    margin: 0px;
    margin-right: 40px;
  }
  .gnav_inner > ul {
    width: 425px;
  }
  .gnav ul li a {
    font-size: 18px;
  }
  .gnav .sub-menu li{
    min-width: 175px;
  }
  .gnav .sub-menu li a {
    font-size: 17px;
  }
  .hdr_tel {
    font-size: 20px;
  }
  .hdr_recruit {
    width: 292px;
    margin-left: 40px;
  }
  .hdr_recruit a {
    padding: 0px 36px;
    font-size: 20px;
  }
  .hdr_recruit a::before {
    width: 75px;
    height: 51px;
    margin-right: 44px;
  }
  .hdr_tel img {
    height: auto;
  }
  .insta_fix img,
  .pagetop img{
    width: auto;
  }
}

@media (min-width: 1750px) {
  .hdr_logo {
    width: auto;
    margin-top: -15px;
  }
  .gnav {
    width: 545px;
    margin: 0px;
    margin-right: 90px;
  }
  .gnav_inner > ul {
    width: 547px;
  }
  .gnav ul li a {
    font-size: 19px;
  }
}

.mv {
  position: relative;
}

.mv:before {
  content: "";
  display: block;
  width: 1920px;
  height: 380px;
  width: 536px;
  height: 909px;

  background-image: url(img/mv_bg.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}

.slide-items {
  width: 90%;
  height: 100%;
}

.slide-items img {
  width: 100%;
  height: 75vh;
  object-fit: cover;
}

.mv .mv_box .txt {
  font-size: 32px;
}

.mv_txt {
  position: absolute;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}

/* .mv_txt:before {
  content: "";
  display: block;
  width: 563px;
  height: 535px;
  background-image: url(img/mv_en.svg);
  background-size: 100% 100%;
  ;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  bottom: -24px;
  ;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
} */

.mv_txt .ja {
  width: fit-content;
  font-size: 16px;
  font-weight: bold;
  padding: 15px;
  margin: 20px 0px 13px;
  margin-left: 0px;
  background: #fff;
  border: 2px solid #7b89a2;
  font-family: "Noto Sans JP", sans-serif;
}

.mv_txt .en {
  font-size: 50px;
  font-weight: 600;
  line-height: 0.9;
  letter-spacing: 0.01em;
}

.mv_txt .en::first-letter {
  color: #30ad6b;
}

.mv_txt .inner {
  display: flex;
  justify-content: center;
  align-items: flex-end;
}

.mv_single.img_fit {
  position: relative;
}

.mv_single.img_fit:before {
  content: "";
  display: block;
  padding-top: calc(100vh - 66px - 49px);
}


.instagram_box1 #sb_instagram_icon a {
  display: flex;
  gap: 27px;
}
.instagram_box1 #sb_instagram_icon a img {
  width: 90px;
  height: 90px;
}
.instagram_box1 #sb_instagram_icon a span {
  font-size: 25.65px;
  line-height: 80px;
}

.instagram_box2 {
  display: flex;
  gap: 22px;
  width: 100%;
  margin-top: 22px;
}
.instagram_box3 {
  text-align: center;
}
#sbi_load {
  margin-top: 23px;
}
.sbi_load_btn{
  display: inline-block;
  vertical-align: top;
  zoom: 1;
  padding: 7px 14px;
  margin: 5px auto 0 auto;
  background: #333;
  border: none;
  color: #fff;
  text-decoration: none;
  font-size: 13px;
  line-height: 1.5;
  border-radius: 4px;
}
.sbi_follow_btn {
  display: inline-block;
  vertical-align: top;
  zoom: 1;
  text-align: center;
  margin-left: 5px;
}
.sbi_follow_btn a {
  display: inline-block;
  vertical-align: top;
  zoom: 1;
  padding: 7px 14px;
  margin: 5px auto 0 auto;
  background: #333;
  border: none;
  color: #fff;
  background: #408bd1;
  text-decoration: none;
  font-size: 12px;
  line-height: 1.5;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.sbi_follow_btn a svg {
  box-sizing: unset;
  color: #fff;
  width: 1em;
  height: 1em;
  display: inline-block;
  vertical-align: -0.125em;
  margin-bottom: -1px;
  margin-right: 7px;
  font-size: 15px;
}

.movie_box1 {
  width: 100%;
  text-align: center;
  margin: 50px auto 30px;
}
.movie_box1 video {
  width: 100%;
  max-width: 1050px;
}

.img_fit img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover";
  position: absolute;
  left: 0;
  top: 0;
}

/* コピー用 */
@media (max-width: 374px) {}

@media (min-width: 375px) {}

@media (max-width: 767px) {

  .mv_txt:before {
    width: 130px;
    height: 120px;
  }

  .mv:before {
    background-image: url(img/mv_bg.jpg);
    background-position: right top;
    width: 45%;
    height: 65vh;
    left: 0;
    bottom: -30px;
    transform: none;
    z-index: -1;
  }
  .mv_txt .box1 {
    width: 8%;
  }
  .mv_txt .middle {
    width: 10%;
  }
  .mv_txt .box2 {
    width: 8%;
  }
  .mv_txt {
    bottom: 70px;
  }
  .mv_txt:before {
    bottom: 0;
  }
  .mv_txt .en {
    padding-left: 20px;
  }
  .mv_txt .ja {
    margin-left: -50px;
    width: fit-content;
    font-size: 15px;
    font-weight: bold;
    padding: 12px 7px;
    margin: 20px 0px 13px;
    margin: 10px -20px 0;
    background: #fff;
    border: 1px solid #7b89a2;
    font-family: "Noto Sans JP", sans-serif;
  }
}

@media (min-width: 768px) {

  .mv:before {
    width: 1024px;
    height: 300px;
  }

  .mv_txt {
    bottom: 56px;
  }
  .mv_txt:before {
    width: 231px;
    height: 220px;
  }

  .mv_txt .box1 {
    width: 20%;
  }

  .mv_txt .middle {
    width: 16%;
  }

  .mv_txt .box2 {
    width: 20%;
    margin-left: 32px;
  }

  .mv_single.img_fit:before {
    padding-top: 780px;
  }

}

@media (min-width: 1024px) {

  .mv_txt .box1 .txt1 {
    font-size: 60px;
  }

  .mv_txt .box1 .txt1 strong {}

  .mv_txt .box1 .txt2 {
    font-size: 26px;
  }


  .mv_txt .middle {
    width: 24%;
  }

  .mv:before {
    width: 1200px;
    height: 300px;
  }

  .mv_txt:before {
    width: 400px;
    height: 380px;
  }

  .mv_txt .box1 {
    width: auto;
  }

  .mv_txt .box2 {
    width: auto;
    margin-left: 0;
  }

  .mv_single.img_fit:before {
    padding-top: 780px;
  }

}

@media (min-width: 1200px) {
  .mv_txt:before {
    width: 563px;
    height: 535px;
  }

  .mv_txt .middle {
    width: auto;
  }

  .mv_txt .inner {
    justify-content: space-between;
  }

  .mv:before {
    position: absolute;
    width: 536px;
    height: 909px;
    left: 10%;
    top: 45px;
    z-index: 0;
  }
}


/* **********************************
 *  フッター 
 * ********************************* */
footer {
  background-image: url(img/footer_bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  color: #FFF;
  padding: 20px 0 30px;
  margin-top: 150px;
}
footer .ftr1 {
  margin: 30px;
}

footer .box1 {
  width: 100%;
  text-align: center;
}

footer .box2 {
  width: 100%;
}

.ftr_youtube {
  margin-top: 16px;
}

footer .ftr_logo {
  margin-bottom: 10px;
}

footer .ftr_addr {
  width: 100%;
  font-size: 15px;
  font-weight: normal;
  letter-spacing: 0.075em;
  line-height: 1.666em;
  color: #181818;
}

footer .ftr_contact {
  background: #FFF;
  color: #111;
  padding: 5px;
}

footer .ftr_contact .inner {
  border: 2px solid #84ccad;
  padding: 10px;
  font-weight: 500;
  text-align: center;
}

footer .ftr_contact .title {

  letter-spacing: 0.05em;
}

footer .ftr_contact .title span {
  display: inline-block;
  padding: 5px 30px;
  border-bottom: 1px solid;
}

footer .ftr_contact .btn1 {
  letter-spacing: 0.05em;
}

footer .ftr_contact .btn1 span {
  display: inline-block;
  font-size: 31px;
}

footer .ftr_contact .btn1 span:first-letter {
  font-size: 38px;
}

footer .ftr_contact .btn1 a {
  font-size: 36px;
}

footer .ftr_contact .btn2 {
  margin-top: 6px;
}

footer .ftr_contact .btn2 a {
  display: inline-block;
  width: 220px;
  max-width: 100%;
  background: #f29b76;
  padding: 5px;
}

footer .ftr_contact .btn2 i {
  margin-right: 5px;
}

footer .ftr_links {
  display: flex;
  justify-content: center;
  flex-direction: column;
  /* margin-top: 15px; */
}

footer .ftr_links li {
  padding: 8px 0 8px 30px;
  line-height: 1.1;
  position: relative;
  font-size: 17px;
  font-weight: normal;
  letter-spacing: 0.075em;
}
footer .ftr_links li a {
  color: #172133;
}
footer .ftr_links li a::before {
  position: absolute;
  content: "";
  width: 13px;
  height: 1px;
  background: #30ad6b;
  top: 50%;
  left: 5px;
}

footer .ftr_links li+li {}

footer .sub-menu {
  margin-top: 7px;
  display: flex;
  flex-direction: column;
}

footer .ftr_link {
  font-size: 21px;
  /* line-height: 16.48; */
}

footer .copy {
  color: #040404;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  padding: 10px 0;
  margin-bottom: 30px;
}

footer .copy a {
  /*color: #111;*/
}


.footer_fix {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  /* background: #fbca07; */
  z-index: 10;
}

.footer_fix ul {
  /*display: table;*/
  width: 100%;
  font-size: 14px;

  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

.footer_fix ul li {
  /*display: table-cell;*/
  text-align: center;
  /*vertical-align: middle;*/
}

.footer_fix ul li.btn1 {
  width: 50%;
  background: #30ad6b;
}
.footer_fix ul li.btn1 a:before{
  content: "";
  width: 15px;
  height: 26px;
  background: url(img/ftr_fix_i1.png) no-repeat center / contain;
  margin-right: 10px;
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
}
.footer_fix ul li.btn2 {
  width: 50%;
  background: #172133;
}
.footer_fix ul li.btn2 a:before{
  content: "";
  width: 38px;
  height: 26px;
  background: url(img/ftr_fix_i2.png) no-repeat center / contain;
  margin-right: 10px;
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
}

.footer_fix ul li a {
  display: block;
  padding: 12px;
  color: #FFF;
  text-decoration: none;
  letter-spacing: 0.075em;
}

/* footer .ftr_links:before {
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  background: #fff;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  z-index: 0;
  position: absolute;
  top: 0;
} */

footer .ftr_links {
  position: relative;
  flex-wrap: wrap;
  color: #181818;
  text-align: left;
}


@media (min-width:375px) {
  .tel_popup {
    /* display: none; */
  }
}

@media (max-width:767px) {
  footer{
    margin-top: 100px;
  }
  footer .ftr_links + .ftr_links{
    margin-top: 20px;
  }
  footer .ftr_link + .ftr_link{
    margin-top: 10px;
  }

  .footer_fix{
    display: flex;
  }
  .footer_fix_tel {
    text-align: center;
    padding: 16px;
    background: #f0f0f0;
  }

  .footer_fix_tel_name {
    width: 100%;
    line-height: 1.2;
    margin-bottom: 8px;
    font-size: 18px;
    font-family: "Noto Serif JP", serif;
  }

  .footer_fix_tel_link {
    font-size: 16px;
    margin-top: 5px;
    background: #000000;
    color: #ffffff;
    display: block;
    padding: 8px;
    font-family: "Noto Serif JP", serif;
  }

  .footer_fix_tel:nth-child(n+2) {
    margin-top: 16px;
  }

  .footer_fix_tel p {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.075em;
    margin-bottom: 10px;
  }

  footer .box1 {
    max-width: 200px;
    width: 100%;
    margin: 0 auto;
  }
}

@media (min-width:768px) {
  footer{
    margin-top: 225px;
  }
  footer .ftr1 {
    margin: 50px;
  }
  footer .ftr_links li {
    font-size: 14px;
    padding: 8px 18px;
  }
  .ftr_links {
    padding: 10px 0;
  }
  .ftr_links:nth-child(1){
    width: 26%;
  }
  .ftr_links:nth-child(2){
    width: 29%;
  }
  .ftr_links:nth-child(3){
    width: 28.5%;
  }
  .ftr_links:nth-child(4){
    width: 22.5%;
  }
  footer .ftr_link {
    font-size: 16px;
  }
  .ftr_link + .ftr_link{
    margin-top: 18px;
  }
  footer .copy {
    margin-bottom: 60px;
  }
  footer .box1 {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;

  }
}

@media (min-width:1024px) {
  footer{
    margin-top: 325px;
  }
  footer .ftr1 {
    margin: 230px auto 235px;
    max-width: 1032px;
  }
  footer .ftr_links li {
    font-size: 17px;
    padding: 8px 18px;
  }

  .ftr_links {
    padding: 0;
  }
  footer .ftr_link {
    font-size: 21px;
  }

  .ftr_links:nth-child(4) {
    width: 19.5%;
  }
  footer .copy {
    margin-bottom: 140px;
  }
}

@media (min-width:1200px) {
  footer{
    margin-top: 425px;
  }
  footer .ftr_links li {
    padding: 10px 0 10px 30px;
  }
  .ftr_links:nth-child(4){
    width: 16.5%;
  }

}

/* 検索フォーム */
.pg_404 {
  text-align: center;
}

.pg_404 {}

.search-form {
  padding: 20px 0;
}

.search-form .search-field {
  padding: 5px;
}

.search-form .search-submit {
  padding: 5px 10px;
}

.pg_image {}

.pg_image .attachment {
  padding: 20px;
  background-color: #ececec;
  text-align: center;
}

/* 記事リスト */
.post_items {
  padding: 0 0;
}

.post_items .item {
  /*background: #f0f0f0;*/
  padding: 10px;
  border-top: 1px solid #ccc;
  display: flex;
  align-items: center;
  position: relative;
}

.post_items .item:last-child {
  border-bottom: 1px solid #ccc;
}

.post_items .item .img {}

.post_items .item .date {
  width: 130px;
  font-size: 15px;
  color: #5a5a5a;
}

.post_items .item .category {
  width: 150px;
  padding: 0 10px;
}

.post_items .item .category span {
  display: block;
  background: #e5e5e5;
  color: #6c6969;
  padding: 3px;
  margin: 2px;
  text-align: center;
}

.post_items .item .title {
  font-weight: 500;
  width: calc(100% - 130px - 150px);
  /*width: -moz-available;
  width: -webkit-fill-available;
  width: available;*/
}

.post_items .item .title a {
  display: block;
  position: relative;
  padding-right: 1em;
}

.post_items .item:after {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  right: 5px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.post_items .item.single_item {
  display: flex;
  flex-wrap: wrap;
  border-top: 15px solid #d3d3d3;
  border-bottom: 1px solid #d3d3d3;
  border-left: 1px solid #d3d3d3;
  border-right: 1px solid #d3d3d3;
}

.post_items .item.single_item:after {
  display: none;
}

.post_items .item.single_item .meta {
  display: flex;
  align-items: center;
  width: 100%;
}

.post_items .item.single_item .title {
  width: 100%;
  font-size: 24px;
  padding-bottom: 20px;
  border-bottom: 1px solid #ccc;
}

.post_items .item.single_item .content {
  width: 100%;
  margin-top: 20px;
  padding-bottom: 20px;
}

.post_items .item.single_item .content * {
  margin-bottom: 1em;
}

.post_items .item.single_item .content h1,
.post_items .item.single_item .content h2,
.post_items .item.single_item .content h3,
.post_items .item.single_item .content h4,
.post_items .item.single_item .content h5,
.post_items .item.single_item .content h6 {
  margin-bottom: 0.5em;
}

.post_items .item.single_item .content a {
  color: #2196f3;
}

.post_items .post_content {
  margin-top: 30px;
}

/* ページ送り(一覧) */
.pagination {
  text-align: center;
  margin-top: 30px;
}

.pagination .nav-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.pagination .page-numbers {
  align-self: stretch;
  border: 1px solid #c0c0c0;
  padding: 5px 10px;
  margin: 4px 4px;
  color: #1e1e1e;
  text-decoration: none;
}

.pagination .page-numbers.current,
.pagination .page-numbers:hover {
  background: #e5e5e5;
}

.pagination .page-numbers.next:after {
  content: "\f101";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-left: 10px;
}

.pagination .page-numbers.prev:before {
  content: "\f100";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: 10px;
}

/* ページ送り(詳細) */
.pagination .nav-posts {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.pagination .nav-posts .page-next,
.pagination .nav-posts .page-prev {
  min-width: 200px;
}

.pagination .nav-posts .page-next a,
.pagination .nav-posts .page-prev a {
  display: block;
  border: 1px solid #c0c0c0;
  padding: 10px 50px;
  position: relative;
}

.pagination .nav-posts .page-next a:before,
.pagination .nav-posts .page-prev a:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.pagination .nav-posts .page-next a:before {
  content: "\f053";
  left: 10px;
}

.pagination .nav-posts .page-prev a:after {
  content: "\f054";
  right: 10px;
}

.pagination .nav-posts .page-archive a {
  display: block;
  background: #bcbcbc;
  color: #ffffff;
  padding: 10px 100px;
}

/* 検索 */
.search_list {
  background: #eee;
  padding: 15px;
}

.search_list .item {}

.search_list .item+.item {}

/* ページTOPに戻る
.pagetop {
  display: none;
  position: fixed;
  right: 10px;
  bottom: 60px;
}

.pagetop a {
  display: block;
  font-size: 0;
  width: 42px;
  height: 42px;
  text-align: center;
}

.pagetop a i {
  font-size: 40px;
} */

.breadcrumb {
  display: flex;
  list-style: none;
  margin-bottom: 20px;
  font-size: 14px;
  overflow-x: auto;
  overflow-y: hidden;
}

.breadcrumb li {
  display: inline;
  white-space: nowrap;
}

.breadcrumb li+li {
  margin-left: 10px;
}

.breadcrumb li:last-child {
  font-weight: 500;
}

.breadcrumb li a {
  position: relative;
  padding-right: 15px;
}

.breadcrumb li a:after {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 12px;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

/*.breadcrumb li:first-child a{
  padding-left: 15px;
}
.breadcrumb li:first-child a:before{
  content: "\f015";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 12px;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}*/

/* **********************************
 *  メイン
 * ********************************* */
.main {
  padding: 0 0 50px;
}

body.home .main {
  padding-top: 0;
}

.tt1 {
  font-size: 32px;
  font-weight: bold;
  line-height: 1.4;
}

.tt1 span {
  display: block;
  text-align: center;
  font-size: 14px;
}

.tt2 {
  display: inline-block;
  position: relative;
  font-size: 170px;
  font-weight: 600;
  line-height: 217.52px;
  line-height: 1.2;
  font-family: "new-order", sans-serif;
  margin-bottom: 120px;
  margin-left: 6px;
}

.tt2 span {
  position: absolute;
  display: block;
  font-size: 28px;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
}

.tt2::first-letter {
  color: #30ad6b;
}

.tt2 span::before {
  display: block;
  position: absolute;
  content: "";
  width: 125px;
  height: 8.55px;
  top: -20px;
  left: 0;
  background-color: #ffbe33;
}

.tt2::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 153px;
  height: 82px;
  transform: translate(120%, -40%);
  background-image: url(img/tt2_arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
}

.tt3 {
  display: inline-block;
  color: #fff;
  font-size: 26px;
  line-height: 55px;
  font-family: "Noto Sans JP", sans-serif;
  background-color: #172133;
  padding: 0px 26px 0px 10px;
  margin-bottom: 6px;
}

.tt3 span {}

.tt4 {}

.tt4 span {}

.tt5 {}

.tt5 span {}

.text {
  font-family: "Noto Sans JP", sans-serif;
}

/* 詳しく見る サンプル */
.view_more {
  position: relative;
  width: 198px;
  height: 41.45px;
  border: 2px solid #172133;
  border-radius: 20.73px;
}

.view_more::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 44px;
  /* right: 30px; */
  transform: translateY(-50%);
  width: 11.34px;
  width: 9.34px;
  height: 6.13px;
  height: 16.13px;
  background: url(img/arrow-right.png);
  background-repeat: no-repeat;
  background-size: contain;
}

.view_more a {
  display: block;
  width: 100%;
  height: 100%;
  /* padding: 15px 58px 14px 43px; */
  padding: 6px 54px 10px 30px;
}

.read_more a {
  display: block;
  width: 256px;
  max-width: 100%;
  margin: 0 auto;
  padding: 9px 0;
  border-radius: 23.5px;
  background: #fbca07;
  color: #181818;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.075em;
  text-align: center;
  position: relative;
  font-family: "Kiwi Maru", serif;
}

.read_more a:after {
  /*content: "\f054";*/
  content: "\f105";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 15px;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

/* **********************************
 *  Home
 * ********************************* */
.pg_home {}

.pg_home .section#sec1 {
  margin-top: 80px;
}

.pg_home .section#sec2 {
  margin-top: 80px;
}

.pg_home .section#sec3 {
  margin-top: 80px;
}

.pg_home .section#sec4 {
  background: #f1f4f5;
  margin-top: 80px;
  padding: 40px 0;
}

.home_about_wrap .title {
  display: flex;
  justify-content: center;
  align-items: center;
}

.home_about_wrap .title::before,
.home_about_wrap .title::after {
  content: "";
  display: block;
  background-color: #ffa626;
  height: 3px;
  width: 50px;
  border-radius: 4px;
}

.home_about_wrap .title::before {
  margin-right: 5px;
  transform: rotate(60deg);
}

.home_about_wrap .title::after {
  margin-left: 5px;
  transform: rotate(-60deg);
}

.home_about_wrap .title .txt {
  font-size: 36px;
  letter-spacing: 0.075em;
  line-height: 1.38em;
  font-family: "Kiwi Maru";
  text-align: center;
}

.home_about_wrap .txt .txtred {
  color: #f25757;
}

.home_about_wrap .txt .txtgreen {
  color: #a7d135;
}

.home_about_wrap .txt .txtblue {
  color: #6b8cf1;
}

.home_about_wrap .txt .txtpurple {
  color: #d673e8;
}

.home_about_wrap .text {
  text-align: justify;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.075em;
  line-height: 2.25em;
  margin-top: 20px;
}
.tt2 {
  font-size: 60px;
  margin-bottom: 50px;
  margin-left: 6px;
  position: relative;
  z-index: 1;
}
.tt2::after {
  width: 53px;
  height: 32px;
  transform: translate(120%, -100%);
}
.tt2 span {
  font-size: 20px;
  position: inherit;
}
.tt2 span::before{
  width: 55px;
  height: 8.55px;
  margin: 0 5px 5px;
  position: inherit;
  top: 0;
  left: 0;
}
.tt3{
  font-size: 22px;
  font-weight: 700;
  line-height: 50px;
  margin-bottom: 5px;
}
.section_inner{
  background-color: #faf7f2;
  border: 1px solid #216843;
  padding: 33px 15px;
  position: relative;
}
#sb_instagram_icon{
  padding-left: 10px;
}
.pg_top .section#sec1{
  padding-top: 20px;
  overflow: hidden;
}
.pg_top .section#sec1 .about_box2 p{
  margin: 23px 0 40px;
}
.pg_top .section#sec1::before{
  width: 150px;
}
.img1_2 .en{
  font-size: 48px;
  font-family: "new-order", sans-serif;
  font-weight: 600;
  color: #30ad6b;
  text-align: center;
}
.pg_top .section#sec1 .about_box2{
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.pg_top .section#sec1 .about_box2 p{
  text-align: justify;
}
.view_more {
  font-size: 17px;
  background: #ffffff;
  font-weight: 600;
}
.view_more a{
  padding: 6px 16px 6px 0;
  text-align: center;
}
.view_more::after {
  right: 42px;
  width: 6px;
  height: 11px;
}

/*イメージ*/
.home_about_items {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 20px;
  position: relative;
}

.home_about_items:before {
  content: "";
  display: block;
  width: 100vw;
  height: 260px;
  background: #ffeaac;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  position: absolute;
  top: 80px;
  z-index: -1;
}

.home_about_items .item {
  width: 100%;
}

.home_about_items .item img {
  border-radius: 10px;
}

/*商品*/
.home_product_wrap .title {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 100px;
}

.home_product_wrap .title::before,
.home_product_wrap .title::after {
  content: "";
  display: block;
  height: 14px;
  width: 58.333%;
  background: url(/img/yellow_line.png);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.home_product_wrap .title::before {
  margin-right: 1rem;
}

.home_product_wrap .title::after {
  margin-left: 1rem;
}

.home_product_wrap .txt {
  display: flex;
  align-items: center;
  font-size: 36px;
  font-family: "Kiwi Maru";
  text-align: center;
  width: 16.666%;
}

.home_product_items {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 36px;
}

.home_product_items .item img {
  padding: 30px;
  display: block;
  margin: 0 auto;
}

.home_product_items .item {
  width: 30%;
  height: 236px;
  border-radius: 20px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

.home_product_items .item.bg1 {
  background: url(/img/blue_box.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

.home_product_items .item.bg2 {
  background: url(/img/green_box.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

.home_product_items .item.bg3 {
  background: url(/img/orange_box.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

.home_product_items .item.bg4 {
  background: url(/img/red_box.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

.home_product_items .item.bg5 {
  background: url(/img/skyblue_box.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

.home_product_items .item.bg6 {
  background: url(/img/purple_box.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

.home_product_items .item p {
  color: #fff;
  font-size: 20px;
  font-family: "Kiwi Maru";
  text-align: center;
}

/*広場*/
.home_hiroba_wrap {}

.home_hiroba_items {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.home_hiroba_items:after {
  content: "";
  display: block;
  background: #ffeaac;
  height: 100%;
  width: 100%;
  border-radius: 20px;
  z-index: -1;
}

.home_hiroba_items .box1 {
  width: 100%;
  padding: 16px;
}

.home_hiroba_items .box1 .title {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: -0.1em;
  font-family: "Kiwi Maru";
}

.home_hiroba_items .box1 .title:after {
  content: "";
  display: block;
  background: url(/img/home/hiroba_title_bg.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  width: 100%;
  height: 10px;
  margin-top: 10px;
}

.home_hiroba_items .box1 .content {
  font-size: 16px;
  font-weight: 500;
  text-align: justify;
  letter-spacing: 0.075em;
  line-height: 2.25em;
  margin-top: 20px;
}

.home_hiroba_items .box2 {
  width: 100%;
}

.home_hiroba_items .box2 .img {}

.home_hiroba_items .box2 .img img {
  border-radius: 20px;
}

.home_hiroba_items .read_more a {}

/*お知らせ*/
.home_news_box {
  padding: 20px;
  background: #fff;
  border-radius: 20px;
}

.news_title {
  font-size: 32px;
  font-weight: 500;
  letter-spacing: 0.075em;
  text-align: center;
  border-bottom: 2px solid #ffa626;
  padding-bottom: 5px;
}

.home_news_items {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 20px;
}

.home_news_items .item {
  width: 24.13%;
  background: #fcf7f0;
  border-radius: 10px;
  position: relative;
}

.home_news_items .item:after {
  content: "";
  display: block;
  content: "\f138";
  font-size: 20px;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  bottom: 10px;
  right: 8px;
}

.home_news_items .item .img:before {
  content: "";
  display: block;
  padding-top: 78.57%;
}

.home_news_items .item .img {
  border-radius: 10px 10px 0 0;
}

.home_news_items .meta {
  display: flex;
}

.home_news_items .category {
  width: 165px;
  text-align: center;
  background: #f3fafd;
  font-size: 13px;
  font-weight: 500;
  padding: 4px;
  letter-spacing: 0.075em;
}

.home_news_items .date {
  width: 120px;
  background: #fd6f31;
  color: #fff;
  text-align: center;
  font-size: 13px;
  padding: 4px;
  font-weight: 500;
  letter-spacing: 0.075em;
}

.home_news_items .title {
  font-size: 16px;
  font-weight: normal;
  letter-spacing: 0.075em;
  line-height: 1.875em;
  background: #fcf7f0;
  padding: 16px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  min-height: 142px;
  padding: 10px;
}

@media (max-width: 374px) {}

@media (min-width: 375px) {}

@media (max-width: 767px) {
  .home_about_wrap .title {
    position: relative;
  }

  .home_about_wrap .title .txt {
    font-size: 26px;
  }

  .home_about_items .item:nth-child(n + 2) {
    margin-top: 0;
  }

  .home_about_items:before {
    height: 95%;
  }

  .home_about_wrap .title::before {
    position: absolute;
    width: 48px;
    height: 3px;
    bottom: 24px;
    left: 0;
  }

  .home_about_wrap .title::after {
    position: absolute;
    width: 48px;
    height: 3px;
    bottom: 24px;
    right: 0;
  }

  .home_about_wrap .home_about_wrapper {
    position: relative;
  }

  .home_about_wrap .home_about_wrapper:after {
    content: "";
    display: block;
    width: 100vw;
    height: 150px;
    background: #ffeaac;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    position: absolute;
    top: 40px;
    z-index: -1;
  }

  .home_about_items .slick-slide {
    margin-right: 2vw !important;
    margin-left: 2vw !important;
  }

  .tt3{
    padding: 5px 15px;
    line-height: 1.5;
  }
  .about_imgs1 {
    margin-top: 30px;
  }
  .about_imgs1 .img1_2 {
    margin-top: 15px;
  }
  .about_imgs2{
    margin-top: 30px;
    padding-top: 30px;
    position: relative;
    z-index: 0;
  }
  .about_imgs2:after {
    content: "";
    max-width: 664px;
    width: 100%;
    height: 90%;
    background: url(img/about_bg1.jpg) no-repeat center / cover;
    position: absolute;
    right: -10%;
    top: 0;
    z-index: -1;
  }
  .about_imgs2 .img2_2 {
    width: auto;
    margin-top: -30px;
    margin-right: -30px;
    text-align: right;
  }
  .about_imgs2 .img2_2 img{
    width: 50%;
  }

  /*商品*/
  .home_product_wrap .title::before,
  .home_product_wrap .title::after {
    width: 29%;
  }

  .home_product_wrap .txt {
    font-size: 28px;
    justify-content: center;
    width: 36%;
  }

  .home_product_items .item {
    width: 48%;
  }

  .home_product_items .item:nth-child(n + 3) {
    margin-top: 16px;
  }

  /*広場*/
  .home_hiroba_items {}

  .home_hiroba_items .box1 {
    order: 2;
    margin-top: 0;
    padding: 16px 16px 36px 16px;
  }

  .home_hiroba_items .box2 {
    width: 90%;
    order: 1;
  }

  .home_hiroba_items .box1 .title {
    font-size: 28px;
    padding-left: 46px;
  }

  .home_hiroba_items .box1 .content {
    padding-left: 46px;
  }

  .home_hiroba_items {
    position: relative;
  }

  .home_hiroba_items .read_more a {
    margin-top: 20px;
    width: 200px;
    padding: 5px 0;
  }

  .home_hiroba_items:after {
    position: absolute;
    top: auto;
    height: 530px;
    left: auto;
    right: 0;
    bottom: 0;
    width: 90%;
  }

  /*お知らせ*/
  .home_news_items {
    flex-wrap: wrap;
  }

  .home_news_items .item {
    width: 47.82%;
  }

  .home_news_items .item:nth-child(n + 3) {
    margin-top: 16px;
  }

  .home_news_box {
    padding: 10px 10px 30px;
  }

  .home_news_items .meta {
    flex-wrap: wrap;
  }

  .home_news_items .date {
    width: 100%;
    text-align: left;
  }

  .home_news_items .category {
    width: 100%;
    text-align: left;
  }

  .home_news_box .read_more a {
    width: 200px;
    margin-top: 32px;
  }

  .home_news_box .read_more a.pc {
    display: none;
  }
}

@media (min-width: 768px) {
  .pg_home {}

  .pg_home .section#sec1 {
    margin-top: 100px;
  }

  .pg_home .section#sec2 {
    margin-top: 100px;
  }

  .pg_home .section#sec3 {
    margin-top: 110px;
  }

  .pg_home .section#sec4 {
    margin-top: 150px;
    padding: 50px 0;
  }

  .home_about_wrap .title .txt {
    font-size: 26px;
  }

  /*イメージ*/
  .home_about_items {
    display: flex;
    flex-wrap: wrap;
    margin-top: 30px;
  }

  .home_about_items:before {
    height: 150px;
    top: 50px;
  }

  .home_about_wrap .sp-slide {
    position: static;
  }

  /*商品*/
  .home_product_wrap .txt {
    font-size: 30px;
  }

  .home_product_wrap .title::before,
  .home_product_wrap .title::after {
    width: 40%;
  }

  .home_about_items .item {
    width: 30.25%;
  }

  .home_product_items .item {
    width: 32%;
  }

  .home_product_items .item:nth-child(n + 4) {
    margin-top: 20px;
  } 
  .tt2 {
    font-size: 100px;
    margin-bottom: 80px;
  }
  .tt2::after {
    width: 123px;
    height: 72px;
    transform: translate(128%, -65%);
  }
  .tt2 span {
    font-size: 28px;
  }
  .tt2 span::before{
    width: 125px;
  }
  .tt3{
    font-size: 26px;
  }
  .pg_top .section#sec1{
    padding-top: 50px;
    margin-top: 100px;
  }
  .pg_top .section#sec1::before{
    width: 200px;
  }
  .section_inner {
    padding: 33px 55px;
  }
  .about_imgs1 {
    margin: 0 -80px;
    display: flex;
    align-items: flex-start;
    position: relative;
    z-index: 1;
  }
  .about_imgs1 .img1_1 {
    padding: 0 10px;
    padding-top: 20px;
  }
  .about_imgs1 .img1_2 {
    padding: 0 10px;
    text-align: center;
  }
  .about_imgs1 .img1_2 .en{
    font-size: 52px;
  }

  .about_imgs2 {
    max-width: 740px;
    padding-top: 60px;
    position: relative;
    z-index: 0;
  }
  .about_imgs2:after {
    content: "";
    max-width: 664px;
    width: 80%;
    height: 90%;
    background: url(img/about_bg1.jpg) no-repeat center / cover;
    position: absolute;
    right: -10%;
    top: 0;
    z-index: -1;
  }
  .about_imgs2 .img2_2 {
    width: fit-content;
    margin: -50px -80px 0 auto;
  }
  .about_imgs2 .img2_2 img{
    width: 80%;
  }
  .about_imgs2 .img2_1 {
    width: 80%;
  }
  .pg_top .section#sec1 .about_box2 p{
    width: 100%;
  }

  /*広場*/
  .home_hiroba_wrap {}

  .home_hiroba_items {
    position: relative;
  }

  .home_hiroba_items .box1 {
    width: 37.91%;
    padding: 14px 0px 14px 18px;
  }

  .home_hiroba_items .box1 .title {
    font-size: 36px;
  }

  .home_hiroba_items .box1 .content {
    margin-top: 20px;
  }

  .home_hiroba_items .box2 {
    width: 54.3333%;
    margin-top: -40px;
  }

  .home_hiroba_items .box2 .img {}

  .home_hiroba_items:after {
    position: absolute;
    top: 0;
    height: 450px;
    left: 0;
    width: 96.6666%;
  }

  .read_more a {
    margin-top: 50px;
  }

  .home_hiroba_items .read_more a {
    margin-left: 0;
    margin-right: auto;
  }

  /*お知らせ*/
  .news_title {
    font-size: 36px;
  }

  .home_news_wrap .read_more .pc {
    display: block;
    margin-top: 28px;
  }

  .mv:before {
    position: absolute;
    width: 536px;
    height: 499px;
    left: 10%;
    top: 45px;
    z-index: 0;
  }
  .slide-items{
    width: 92%;
  }
  .slide-items img{
    height: 500px;
  }
  .mv_txt .en {
    font-size: 100px;
  }
  .mv_txt .ja {
    font-size: 25px;
    padding: 20px 15px;
    margin: 40px 0px 13px;
    width: auto;
    height: auto;
  }
}

@media (min-width: 1024px) {
  .pg_home {}

  .pg_home .section#sec1 {
    margin-top: 120px;
  }

  .pg_home .section#sec2 {
    margin-top: 165px;
  }

  .pg_home .section#sec3 {
    margin-top: 190px;
  }

  .pg_home .section#sec4 {
    padding: 80px 0;
    margin-top: 220px;
  }

  .home_about_wrap .text {
    font-size: 15px;
    text-align: center;
    margin-top: 30px;
  }

  .home_about_wrap .title .txt {
    font-size: 36px;
  }

  /*イメージ*/
  .home_about_items {
    margin-top: 40px;
  }

  .home_about_items:before {
    height: 260px;
    top: 80px;
  }

  .home_product_wrap .title::before,
  .home_product_wrap .title::after {
    width: 58.333%;
  }
  .tt2 {
    font-size: 120px;
  }
  .tt2::after {
    width: 153px;
    height: 82px;
  }
  .tt2 span::before{
    margin-top: -12px;
    margin-bottom: 15px;
  }
  .pg_top .section#sec1::before{
    width: 376px;
  }
  .about_imgs1 .img1_1 {
    padding-top: 40px;
  }
  .about_imgs2 {
    width: 50%;
    position: absolute;
    right: 0;
    top: 80px;
    z-index: 0;
  }
  .about_imgs1 {
    width: 90%;
  }
  .about_imgs1 .img1_2 .en {
    font-size: 52px;
  }
  .pg_top .section#sec1 .about_box2 p{
    width: 565px;
  }

  /*商品*/
  .home_product_wrap .txt {
    font-size: 30px;
  }

  .home_product_items .item {
    width: 15.83%;
  }

  .home_product_items .item:nth-child(n + 4) {
    margin-top: 0;
  }

  /*お知らせ*/
  .home_news_box {}

  .home_news_box .title {}

  .home_news_items {
    margin-top: 34px;
  }

  .home_news_items .item {}

  .home_news_items .item:after {}

  .home_news_items .item .img:before {}

  .home_news_items .item .img {
    border-radius: 10px 10px 0 0;
  }

  .home_news_items .meta {}

  .home_news_items .category {}

  .home_news_items .date {}

  .home_news_items .title {}


  .mv:before {
    position: absolute;
    width: 40%;
    height: 540px;
    left: 10%;
    top: 45px;
    z-index: 0;
  }
  .slide-items {
    width: 87%;
  }
  .slide-items img{
    height: 550px;
  }
  .mv_txt .en {
    font-size: 120px;
  }
  .mv_txt .ja {
    font-size: 32px;
    padding: 30px 15px;
    margin: 40px 0px 13px;
    width: fit-content;
    height: 125px;
  }
}

@media (min-width: 1200px) {
  .home_about_wrap .text {
    font-size: 16px;
  }
  .tt2 {
    font-size: 170px;
  }
  .section_inner {
    padding: 48px 35px 50px;
  }
  .about_imgs2 {
    width: 50%;
    position: absolute;
    right: -78px;
    top: 230px;
  }
  .about_imgs1 {
    margin: 0;
    margin-left: -145px;
  }
  .about_imgs1 .img1_1 {
    padding: 48px 15px 0;
  }
  .about_imgs1 .img1_2 {
    padding: 0 15px;
  }
  .about_imgs2:after {
    width: 100%;
    height: calc(100% + 45px);
    right: -16%;
    top: -19%;
  }
  .about_imgs2 .img2_1 {
    width: 100%;
  }
  .about_imgs2 .img2_2 {
    margin: -55px 0px 0 auto;
  }
  .about_imgs2 .img2_2 img {
    width: 100%;
  }
  .about_imgs1 .img1_2 .en {
    font-size: 56px;
    letter-spacing: 0.04em;
  }

  /*商品*/
  .home_product_wrap .txt {
    font-size: 32px;
  }


  .mv:before {
    width: 536px;
    height: 909px;
    left: 8%;
  }
  .slide-items {
    width: 87%;
  }
  .slide-items img{
    height: 910px;
  }
  .mv_txt .en {
    font-size: 130px;
  }
  .mv_txt .ja {
    font-size: 32px;
    padding: 30px 35px;
    margin: 40px 0px 13px;
    width: fit-content;
  }
}

@media (min-width: 1400px) {
  .home_product_wrap .txt {
    font-size: 36px;
  }
}
@media (min-width:1500px){
  .about_imgs2 {
    width: 100%;
  }
  .about_imgs1 .img1_2 .en {
    font-size: 76px;
  }

  .mv_txt .en {
    font-size: 170px;
  }
  .mv_txt .ja {
    font-size: 42px;
    padding: 30px 25px;
    width: 1000px;
  }
}
@media (min-width:1700px){
  .mv_txt .en {
    font-size: 210px;
  }

}


/*******************************
*　楽々や広場
********************************/
.pg_community {}

.pg_community .section.sec1 {
  padding-top: 0;
  padding-bottom: 0;
}

.pg_community .section#sec2 {
  margin-top: 20px;
  padding-top: 20px;
}

.pg_community .section.sec3 {
  padding-top: 0;
  padding-bottom: 0;
}

/*イベント一覧*/
.community_event_wrap {
  position: relative;
  padding-bottom: 40px;
}

.community_event_wrap:after {
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  background: #ffeaac;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  position: absolute;
  bottom: 0;
  z-index: -1;
}

.community_event_items {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 30px;
}

.community_event_items .item {
  width: 48.75%;
  border-radius: 10px;
  background: #fff;
}

.community_event_items .img {
  position: relative;
}

.community_event_items .img.blue {
  border-bottom: 2px solid #0081bf;
}

.community_event_items .img.orange {
  border-bottom: 2px solid #f56800;
}

.community_event_items .img.red {
  border-bottom: 2px solid #e7161d;
}

.community_event_items .img.green {
  border-bottom: 2px solid #019a93;
}

.community_event_items .img.skyblue {
  border-bottom: 2px solid #1face0;
}

.community_event_items .img.purple {
  border-bottom: 2px solid #b539a8;
}

.community_event_items .img img {
  border-radius: 10px 10px 0 0;
}

.community_event_items .img:before {
  content: "";
  display: block;
  padding-top: 42.73%;
}

.community_event_items .title {
  text-align: center;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0.075em;
  border-bottom: 1px dashed #cdcdcd;
  padding: 12px 0;
}

.community_event_items .desc {
  font-size: 16px;
  font-weight: normal;
  letter-spacing: 0.075em;
  line-height: 1.875em;
  padding: 10px 26px 16px;
}

/* コピー用 */
@media (max-width: 374px) {}

@media (min-width: 375px) {}

@media (max-width: 767px) {
  .community_event_items .item:nth-child(n + 2) {
    margin-top: 20px;
  }

  .community_event_items .item {
    width: 100%;
  }

  .community_event_wrap .read_more a {
    margin-top: 30px;
  }

  .community_event_wrap:after {
    height: 95%;
  }
}

@media (min-width: 768px) {
  .pg_community {}

  .pg_community .section.sec1 {
    padding-top: 0;
    padding-bottom: 0;
  }

  .pg_community .section#sec2 {
    margin-top: 40px;
    padding-top: 30px;
  }

  .pg_community .section.sec3 {
    padding-top: 0;
    padding-bottom: 0;
  }

  /*イベント一覧*/
  community_event_wrap {
    padding-bottom: 60px;
  }

  .community_event_items {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 40px;
  }

  .community_event_items .item {
    margin-top: 30px;
  }

  .community_event_wrap .read_more a {
    width: 300px;
    margin-top: 75px;
  }

  .community_event_items .content {
    min-height: 340px;
  }
}

@media (min-width: 1024px) {
  .pg_community {}

  .pg_community .section.sec1 {
    padding-top: 0;
    padding-bottom: 0;
  }

  .pg_community .section#sec2 {
    margin-top: 55px;
    padding-top: 40px;
  }

  .pg_community .section.sec3 {
    padding-top: 0;
    padding-bottom: 0;
  }

  /*イベント一覧*/
  .community_event_wrap {
    padding-bottom: 80px;
  }

  .community_event_wrap:after {
    height: 86%;
  }

  .community_event_items {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 50px;
  }

  .community_event_items .item:nth-child(n + 3) {
    margin-top: 45px;
  }
}

@media (min-width: 1200px) {}

/* **********************************
 *  アクセス
 * ********************************* */
.pg_access {}

.pg_access .section#sec1 {
  padding-top: 0;
  padding-bottom: 0;
}

.pg_access .section#sec2 {
  margin-top: 20px;
  padding-top: 25px;
}

.pg_access .section.sec3 {
  padding-top: 0;
  padding-bottom: 0;
}

/*テーブル*/
.access_tbl {
  max-width: 1110px;
  width: 100%;
  border: 1px solid #b2b2b2;
  margin: 0 auto;
}

.access_tbl tr {
  border-bottom: 1px solid #b2b2b2;
}

.access_tbl tr:last-child {
  border-bottom: none;
}

.access_tbl th,
.access_tbl td {
  font-size: 16px;
  font-weight: normal;
  letter-spacing: 0.08em;
  padding: 10px;
}

.access_tbl th {
  background: #f0f0f0;
  width: 100px;
  text-align: left;
}

.access_tbl td {}

/*地図*/
.gmap {
  max-width: 1110px;
  width: 100%;
  margin: 30px auto 0;
}

.gmap iframe {
  height: 250px;
  width: 100%;
}

@media (max-width: 374px) {}

@media (min-width: 375px) {}

@media (max-width: 767px) {}

@media (min-width: 768px) {
  .pg_access {}

  .pg_access .section#sec1 {
    padding-top: 0;
    padding-bottom: 0;
  }

  .pg_access .section#sec2 {
    margin-top: 50px;
    padding-top: 35px;
  }

  .pg_access .section.sec3 {
    padding-top: 0;
    padding-bottom: 0;
  }

  /*テーブル*/
  .access_tbl {
    margin-top: 40px;
  }

  .access_tbl th,
  .access_tbl td {
    padding: 16px 24px;
  }

  .access_tbl th {
    width: 200px;
  }

  .access_tbl td {}

  /*地図*/
  .gmap {
    max-width: 1110px;
    width: 100%;
    margin: 50px auto 0;
  }

  .gmap iframe {
    height: 350px;
  }
}

@media (min-width: 1024px) {
  .pg_access {}

  .pg_access .section#sec1 {
    padding-top: 0;
    padding-bottom: 0;
  }

  .pg_access .section#sec2 {
    margin-top: 60px;
    padding-top: 45px;
  }

  .pg_access .section.sec3 {
    padding-top: 0;
    padding-bottom: 0;
  }

  /*テーブル*/
  .access_tbl {}

  .access_tbl th,
  .access_tbl td {}

  .access_tbl th {
    width: 311px;
  }

  .access_tbl td {}

  /*地図*/
  .gmap {
    max-width: 1110px;
    width: 100%;
    margin: 70px auto 0;
  }

  .gmap iframe {
    height: 450px;
  }
}

@media (min-width: 1200px) {}

/* **********************************
 *  会社概要
 * ********************************* */
.pg_company {}

.pg_company .section#sec1 {}

.pg_company .section#sec2 {}

.pg_company .section#sec3 {}

/* **********************************
 *  お問い合わせ
 * ********************************* */
.pg_contact {}

.pg_contact .section#sec1 {}

.pg_contact .section#sec2 {}

.pg_contact .section#sec3 {}

.contact_tt {
  text-align: center;
  font-weight: bold;
  font-size: 23px;
  letter-spacing: 0.2em;
  margin-bottom: 30px;
}

.info_item {
  max-width: 1110px;
  width: 100%;
  margin: 0 auto;
}

.info_item:nth-child(n + 2) {
  margin-top: 40px;
}

.info_item:nth-child(n + 2) .contact_info .box2 {
  padding: 15px 5px;
}

.contact_info .box2 {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
}

/* 連絡先 */
.contact_info {
  background: #fd6f31;
  text-align: center;
  padding: 28px 25px 25px;
  margin-bottom: 65px;
  margin-top: 38px;
}

.contact_info .box1 {
  font-size: 20px;
  font-weight: 900;
  letter-spacing: 0.14em;
  color: #fff;
}

.contact_info .box2 {
  margin-top: 20px;
  background: #ffffff;
  padding: 22px 5px;
  line-height: 1;
}

.contact_info .box2 .icon {
  display: inline-block;
  font-size: 25px;
  font-weight: 900;
  background: #fd6f31;
  color: #ffffff;
  padding: 5px 18px;
  margin-right: 10px;
  vertical-align: middle;
  border-radius: 5px;
  letter-spacing: 0.08em;
}

.contact_info .box2 .tel {
  display: inline-block;
  font-size: 44px;
  font-weight: 300;
  vertical-align: middle;
  margin-left: 10px;
}

.contact_info .box2 .tel a {
  display: block;
  font-weight: 300;
  letter-spacing: 0.05em;
}

.contact_info .box2 .txt {
  display: inline-block;
  max-width: 100%;
  text-align: center;
  width: 100%;
  vertical-align: bottom;
  font-weight: 700;
  letter-spacing: 0.16em;
  padding-left: 25px;
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.875em;
}

/* コンタクトフォーム */
.contact_form {
  width: 100%;
  border: 1px solid #b2b2b2;
}

.contact_form tr {
  border-bottom: 1px solid #b2b2b2;
}

.contact_form th,
.contact_form td {
  padding: 11px 10px 11px 24px;
  font-weight: normal;
  text-align: left;
}

.contact_form th {
  background: #f0f0f0;
  width: 310px;
  letter-spacing: 0.08em;
}

.contact_form td {
  font-size: 15px;
  letter-spacing: 0.16em;
}

.contact_form th.vtop {
  vertical-align: top;
}

.contact_form th .require {
  display: inline-block;
  padding: 2px 10px;
  color: #fff;
  background: #b80000;
  font-size: 14px;
  font-weight: normal;
  float: right;
}

.contact_info .box2 .info_inner {
  max-width: 100%;
  width: 100%;
  text-align: center;
}

/* MW WP Formの規定クラス */
/* checkbox, radio */
.mwform_check_box_wrap {
  padding: 6px 0;
}

.mw_wp_form .mwform-radio-field.horizontal-item,
.mw_wp_form .mwform-checkbox-field.horizontal-item {
  display: inline-block;
  margin-left: 0;
  margin-right: 10px;
}

/**/
.mw_wp_form_confirm .addr_auto {
  display: none;
}

.mw_wp_form_confirm .addr_auto_box .zipcode i {
  background: none;
  padding: 0;
  font-size: inherit;
}

.contact_form dl {
  width: 100%;
  display: flex;
  align-items: center;
}

.contact_form dl+dl {
  margin-top: 10px;
}

.contact_form dl dt,
.contact_form dl dd {}

.contact_form dl+p {
  margin-top: 5px;
  margin-bottom: 5px;
}

.contact_form dl.addr dt {
  width: 90px;
}

.contact_form dl.addr dd {
  width: calc(100% - 90px);
}

.contact_form dl.date {
  align-items: flex-start;
}

.contact_form dl.date dt {
  width: 90px;
}

.contact_form dl.date dt+dt {
  margin-left: 5px;
}

.contact_form dl.date dt select {
  width: 100%;
}

.contact_form dl.date dt.wide {
  width: 200px;
}

.contact_form dl.date dt.m,
.contact_form dl.date dt.d {
  width: 120px;
}

.contact_form dl.date dt.m select,
.contact_form dl.date dt.d select {
  width: calc(100% - 2em);
}

.contact_form dl.date dt.t {
  width: 150px;
}

.contact_form dl.date dt.t select {
  width: calc(100% - 5em);
}

.contact_form dl.addr dd {}

.contact_form_addr {
  display: flex;
  align-items: center;
  margin: 0;
}

.contact_form_addr+.contact_form_addr {
  margin-top: 8px;
}

.contact_form_addr dt,
.contact_form_addr dd {
  margin: 0;
}

.contact_form_addr dt {
  width: 80px;
}

.contact_form_addr dd {
  width: calc(100% - 80px);
}

.contact_form_addr dd [name$="zipcode"] {
  width: 210px;
}

.contact_form_addr dd [name$="addr1"] {
  width: 210px;
}

.addr_auto_box {
  display: flex;
  align-items: center;
}

.addr_auto_box .zipcode {
  display: flex;
  flex-wrap: wrap;
}

.addr_auto_box .zipcode i {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 15px;
  background: #cccccc;
  padding: 0 5px;
}

.addr_auto_box .zipcode input {}

.addr_auto_box button {
  margin-left: 20px;
}

.contact_form td input,
.contact_form td textarea,
.contact_form td select {
  padding: 7px 10px;
  max-width: 100%;
  font-size: 15px;
  letter-spacing: 0.16em;
  border: 1px solid #d6d8d8;
  border-radius: 0;
}

.contact_form td textarea {
  height: 280px;
}

.contact_form td [name$="_zipcode"],
.contact_form td [name="zipcode"],
.contact_form td [name="addr1"] {
  width: 160px;
}

.contact_form td [name="addr1"] .contact_form td [name="addr1"] {
  width: 220px;
}

.contact_form td .addr_auto {
  background: #f0f0f0;
  border: 1px solid #d6d8d8;
  margin-left: 10px;
  padding: 5px 13px;
}

.contact_form_msg {
  margin-top: 10px;
  margin-bottom: 10px;
}

/* 確認画面用 */

.contact_form_acceptance {
  font-size: 17px;
  letter-spacing: 0.08em;
  text-align: center;
  margin-top: 40px;
}

.contact_form_acceptance a {
  color: #1a3e9b;
}

.contact_form_acceptance .mwform-checkbox-field.horizontal-item {
  margin-right: 0;
}

/* コンタクトフォーム - ボタン */
.contact_form_btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
  padding: 35px 0;
}

.contact_form_btns input[type="submit"],
.contact_form_btns input[type="button"],
.contact_form_btns button {
  display: block;
  width: 256px;
  max-width: 100%;
  margin: 0 auto;
  padding: 9px 0;
  border-radius: 23.5px;
  background: #fbca07;
  color: #181818;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.075em;
  border: none;
  text-align: center;
  position: relative;
  font-family: "Kiwi Maru", serif;
}

.contact_form_btns input[type="submit"]:after,
.contact_form_btns input[type="button"]:after,
.contact_form_btns button:after {
  /* content: "\f054"; */
  content: "\f105";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 15px;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.contact_form_btns input[type="submit"][disabled],
.contact_form_btns input[type="button"][disabled] {
  background: #ccc;
}

.contact_form_btns button[type="reset"] {
  background: #ccc;
}

.contact_form_btns .ajax-loader {
  order: 10;
  width: 100% !important;
  margin-top: 10px !important;
  background-repeat: no-repeat;
  background-position: center;
}

/* **********************************
 *  プライバシーポリシー
 * ********************************* */
.pg_contact .privacy {
  margin-top: 105px;
}

.privacy_tt {
  text-align: center;
  margin-bottom: 55px;
}

.privacy_tt h3 {
  font-size: 23px;
  font-weight: 700;
  letter-spacing: 0.2em;
}

.privacy_tt br {
  display: none;
}

.privacy_tt .dots {
  display: flex;
  justify-content: center;
  margin-top: 10px;
}

.privacy_tt .dots i {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #c1c1c1;
  margin: 0 8px;
}

.privacy_items {}

.privacy_items .item {
  line-height: 1.6;
  letter-spacing: 0.04em;
}

.privacy_items .item+.item {
  margin-top: 16px;
}

.privacy_items .item h4 {
  font-size: 18px;
  font-weight: 500;
  border-left: 6px solid #fd6f31;
  padding-left: 14px;
  margin-bottom: 10px;
  line-height: 2.33;
}

.privacy_items .item .txt {
  line-height: 1.875;
  text-align: justify;
}

.privacy_items .item ul {
  list-style: disc;
  margin-left: 0;
  margin-top: 0;
}

.privacy_items .item ul.latin {
  list-style: lower-latin;
}

.privacy_items .item ul li {
  list-style: none;
}

.privacy_items .item ol {
  margin-left: 2em;
  margin-top: 10px;
}

/*******************************
*　
********************************/
.pg_top {}

.pg_top .section#sec1 {
  position: relative;
}

.pg_top .section#sec1::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 376px;
  height: 522px;
  background: url(img/dot_bg.png);
  background-repeat: no-repeat;
  background-size: contain;
  z-index: -1;
}

.pg_top .section#sec2 {
  padding-top: 0;
  padding-bottom: 0;
}

.pg_top .section#sec3{
  margin-top: 120px;
}

.privacy_items .item .txt:nth-child(n + 2) {
  margin-top: 20px;
}

.about_box1 .img img {
  border-radius: 10px;
}



/*事業内容*/
.pg_top .section#sec4{
  padding: 50px 25px;
  overflow: hidden;
  position: relative;
  background: url(img/recruit_bg1.png) no-repeat left 39% / 150px auto;
}
.pg_top .section#sec4:after{
  content: "";
  width: 100%;
  height: 30%;
  margin: 0 auto;
  z-index: -1;
  background: #30ad6b;
  position: absolute;
  left: 0;
  bottom: 0;
}
.home_business {
  max-width: 1478px;
  margin: 0 auto;
  padding: 20px;
  background: #faf8f2;
  border: 1px solid #216843;
}
.home_business .list{
  margin: 0 -8px;
  display: flex;
  flex-wrap: wrap;
}
.home_business .item{
  width: 50%;
  padding: 0 8px;
  transition: 0.2s;
  display: block;
}
.home_business .item:hover{
  opacity: 0.7;
}
.home_business .ttl{
  font-size: 16px;
  font-weight: 700;
  margin-top: 10px;
  text-align: center;
}
.home_business .ttl:after{
  content: "";
  width: 7px;
  height: 12px;
  margin-left: 10px;
  background: url(img/business_arrow1.png) no-repeat center / contain;
  display: inline-block;
}

/*NEWS*/
.pg_top .section#sec5 {
  padding-top: 40px;
  padding-bottom: 40px;
  background: url(img/recruit_bg1.png) no-repeat right 0 / 150px auto;
}
.home_news {
  padding: 30px;
  border: 1px solid #216843;
  background: #f4f4f4;
}
.home_news_en{
  margin-bottom: 30px;
  text-align: center;
  font-family: "new-order", sans-serif;
  font-weight: 600;
  letter-spacing: 0.05em;
}
.home_news_en:after{
  content: "";
  width: 85px;
  height: 8px;
  margin: -10px auto 0;
  background: #ffbe33;
  display: block;
}
.home_news_en img{
  height: 40px;
}
.home_news_list .meta{
  margin-top: 10px;
}
.home_news_list {
  padding: 20px;
  border: 1px solid #216843;
  background: #ffffff;
}
.home_news_list .item + .item{
  margin-top: 50px;
}
.home_news_list .item a{
  display: block;
}
.home_news_list .date,
.home_news_list .title{
  font-size: 20px;
  font-weight: 500;
}
.home_news_list .content{
  font-size: 16px;
  margin-top: 15px;
  line-height: 1.44;
  text-align: justify;
}

/*採用情報*/
.pg_top .section#sec6 {
  padding-bottom: 105px;
  margin-bottom: -100px;
  overflow: hidden;
  background: url(img/recruit_bg1.png) no-repeat right 8% / 150px auto,
    url(img/recruit_bg1.png) no-repeat left bottom / 150px auto;
}
.pg_top .section#sec6 .tt2::after {
  width: 53px;
  height: 32px;
  transform: translate(120%, -100%);
}
.home_recruit_img {
  width: 94%;  
  margin-top: 50px;
  padding-top: 35px;
  padding-right: 40px;
  max-width: 1664px;
  position: relative;
  z-index: 0;
}
.home_recruit_img:before{
  content: "";
  width: 100%;
  height: 40%;
  background: #30ad6b;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
}
.home_recruit_catch {
  max-width: 737px;
  font-size: 20px;
  margin: -30px 10px -20px;
  padding: 31px 0 31px 30px;
  font-weight: 700;
  background: #ffffff;
  border: 2px solid #216843;
  position: relative;
  z-index: 2;
}
.home_recruit_bg{
  max-width: 1115px;
  padding: 40px 30px;
  background: #30ad6b;
  position: relative;
  z-index: 1;
}
.home_recruit_bg:after{
  content: "";
  width: 132px;
  height: 62px;
  background: url(img/recruit_arrow1.png) no-repeat center / contain;
  position: absolute;
  bottom: -31px;
  left: 18%;
}
.home_recruit_bg .text{
  max-width: 748px;
  font-size: 18px;
  color: #ffffff;
  line-height: 1.88;
  text-align: justify;
}
.home_recruit_bg .link{
  max-width: 300px;
  font-size: 19px;
  margin-top: 40px;
  margin-left: 8px;
  padding: 19px 40px;
  border: 2px solid #172133;
  display: block;
  background: #ffffff;
  font-weight: 500;
  color: #172133;
  border-radius: 34px;
  position: relative;
}
.home_recruit_bg .link:after{
  content: "";
  width: 9px;
  height: 17px;
  background: url(img/recruit_link_i.svg) no-repeat center / contain;
  position: absolute;
  right: 35px;
  top: 50%;
  transform: translateY(-50%);
}
.home_recruit_bg .en{
  font-size: 20px;
  margin-top: 30px;
  text-align: right;
  color: #e4b170;
  font-weight: 600;
  letter-spacing: -0.01em;
}

/* コピー用 */
@media (max-width: 374px) {}

@media (min-width: 375px) {}

@media (max-width: 767px) {
  .contact_form td .addr_auto {
    padding: 5px;
  }

  .home_business .item:nth-child(n+3){
    margin-top: 30px;
  }
}

@media (min-width: 768px) {

  .contact_info .box2 .txt {
    font-size: 15px;
  }

  .privacy_items .item .txt:nth-child(n + 2) {
    margin-top: 30px;
  }

  .pg_top .section#sec4{
    margin-top: 70px;
    padding: 50px 80px 100px;
    overflow: hidden;
    position: relative;
    background-size: 200px auto;
  }
  .pg_top .section#sec4:after {
    width: calc(100% - 80px);
    height: 35.5%;
    left: 40px;
  }
  .home_business {
    padding: 40px;
    margin-top: 20px;
  }
  .home_business .list {
    margin: 0 -15px;
  }
  .home_business .item {
    width: 33.33%;
    padding: 0 15px;
  }
  .home_business .item:nth-child(n+4){
    margin-top: 30px;
  }


  .pg_top .section#sec5{
    padding-top: 110px;
    padding-bottom: 80px;
    background-size: 200px auto;
  }
  .home_news_en {
    margin-bottom: 50px;
  }
  .home_news_en img {
    height: 50px;
  }
  .home_news {
    padding: 40px 50px 50px;
  }  
  .home_news_list {
    padding: 50px;
  }
  .home_news_list .date, 
  .home_news_list .title {
    font-size: 22px;
  }
  .home_news_list .content{
    font-size: 18px;
  }

  .pg_top .section#sec6 {
    padding-bottom: 125px;
    margin-bottom: -225px;
    background-size: 200px auto, 200px auto;
  }
  .pg_top .section#sec6 .tt2::after {
    width: 203px;
    height: 108px;
    transform: translate(125%, -62%);
  }
  .home_recruit_img {
    max-width: 1665px;
    padding-right: 90px;
    margin-top: 25px;
    padding-top: 75px;
  }
  .home_recruit_img:before {
    height: 256px;
  }
  .home_recruit_catch {
    max-width: 467px;
    font-size: 26px;
    margin: -120px 50px -50px;
  }
  .home_recruit_bg {
    width: 100%;
    padding: 93px 65px 68px;
  }
  .home_recruit_bg .en{
    font-size: 50px;
  }
  .home_recruit_bg .en img{
    width: 380px;
  }
  .home_recruit_bg .link {
    margin-top: 50px;
  }
  .home_recruit_bg:after{
    width: 192px;
    height: 102px;
    bottom: -51px;
    left: 28%;
  }
}

@media (min-width: 1024px) {
  .contact_info .box2 {
    flex-wrap: nowrap;
  }

  .contact_form {
    max-width: 1110px;
    width: 100%;
    margin: 0 auto;
  }

  .contact_info .box2 .info_inner {
    max-width: 562px;
    text-align: right;
  }

  .contact_info .box2 .txt {
    max-width: 502px;
    text-align: left;
  }

  .info_item:nth-child(n + 2) {
    margin-top: 87px;
  }

  .contact_form td [name$="your_name"],
  .contact_form td [name$="your_kana"],
  .contact_form td [name$="your_tel"],
  .contact_form td [name$="your_email"] {
    max-width: 460px;
    width: 100%;
  }

  .contact_form td [name="addr2"] {
    max-width: 425px;
    width: 100%;
  }

  .contact_form td .addr_auto .pc {
    display: block;
  }

  .privacy_items {
    max-width: 1110px;
    width: 100%;
    margin: 0 auto;
  }


  .pg_top .section#sec4 {
    padding: 50px 100px 100px;
    background-size: auto;
  }
  .pg_top .section#sec4:after {
    width: calc(100% - 120px);
    left: 60px;
  }
  .home_business {
    padding: 80px 72px 60px;
  }
  .home_business .item:nth-child(n+4) {
    margin-top: 40px;
  }
  .home_business .ttl {
    font-size: 23px;
    margin-top: 20px;
  }
  .home_business .ttl:after {
    width: 12px;
    height: 21px;
    margin-left: 30px;
  }

  .pg_top .section#sec5{
    background-size: auto;
  }
  .home_news {
    padding: 20px 68px 80px;
  }
  .home_news_en {
    font-size: 96px;
    margin-bottom: 72px;
  }
  .home_news_list .meta{
    margin-top: 0;
  }
  .home_news_list {
    padding: 90px 30px 68px;
  }
  .home_news_list .item{
    max-width: 970px;
    margin: 0 auto;
  }
  .home_news_list .item + .item {
    margin-top: 100px;
  }
  .home_news_list .item a{
    display: flex;
  }
  .home_news_list .date{
    width: 32.5%;
  }
  .home_news_list .meta{
    width: 67.5%;
  }

  .pg_top .section#sec6 {
    padding-bottom: 225px;
    margin-bottom: -325px;
    background-size: auto, auto;
  }
  .home_recruit_img:before {
    height: 356px;
  }
  .home_recruit_catch {
    margin: -158px 98px -62px;
  }
  .home_recruit_bg {
    padding: 123px 60px 78px;
  }
  .home_recruit_bg .en {
    font-size: 70px;
    position: absolute;
    width: 480px;
    right: 0;
    bottom: 21%;
  }
  .home_recruit_bg .en img{
    width: auto;
  }
  .home_recruit_bg .link{
    margin-top: 70px;
  }
}

@media (min-width: 1200px) {
  .contact_info .box2 .txt {
    font-size: 16px;
  }

  .home_news_list .item + .item {
    margin-top: 130px;
  }

  .pg_top .section#sec6 {
    padding-bottom: 325px;
    margin-bottom: -425px;
  }
  .home_recruit_bg {
    padding: 123px 135px 88px;
  }
  .home_recruit_bg .en {
    width: auto;
    right: -24.5%;
  }
  .home_recruit_catch {
    max-width: 737px;
    margin: -258px 98px -62px;
  }
}



/*******************************
*　TOP
********************************/
.sbi_follow_btn.sbi_custom span{
  font-size: 12px!important;

}
.sbi_follow_btn.sbi_custom a{
  padding: 5px 5px!important;
}
.instagram_box3 .sbi_load_btn{
  padding: 5px 7px;
}

.tt2 {
  font-size: 60px;
  margin-bottom: 50px;
  position: relative;
  z-index: 1;
}
.tt2::after {
  width: 53px;
  height: 32px;
  transform: translate(120%, -100%);
}
.tt2 span {
  font-size: 20px;
  position: inherit;
  padding-left: 5px;
}
.tt2 span::before{
  width: 55px;
  height: 8.55px;
  margin: 0 5px 5px;
  position: inherit;
  top: 0;
  left: 0;
}
.tt3{
  font-size: 22px;
  font-weight: 700;
  line-height: 50px;
  margin-bottom: 5px;
}
.section_inner{
  background-color: #faf7f2;
  border: 1px solid #216843;
  padding: 33px 15px;
  position: relative;
}
.pg_top .section#sec1{
  /*overflow: hidden;*/
}
.pg_top .section#sec1 .about_box2 p{
  margin: 23px 0 40px;
}
.pg_top .section#sec1::before{
  width: 150px;
}
.img1_2 .en{
  font-size: 48px;
  font-family: "new-order", sans-serif;
  font-weight: 600;
  color: #30ad6b;
  text-align: center;
}
.pg_top .section#sec1 .about_box2{
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.pg_top .section#sec1 .about_box2 p{
  text-align: justify;
  font-size: 16px;
  line-height: 1.888em;
}
.view_more {
  font-size: 17px;
  background: #ffffff;
  font-weight: 600;
}
.view_more a{
  padding: 6px 16px 6px 0;
  text-align: center;
}
.view_more::after {
  right: 42px;
  width: 6px;
  height: 11px;
}

/*事業内容*/
.pg_top .section#sec4{
  padding: 50px 25px;
  overflow: hidden;
  position: relative;
  background: url(img/recruit_bg1.png) no-repeat left 39% / 150px auto;
}
.pg_top .section#sec4:after{
  content: "";
  width: 100%;
  height: 30%;
  margin: 0 auto;
  z-index: -1;
  background: #30ad6b;
  position: absolute;
  left: 0;
  bottom: 0;
}
.home_business {
  max-width: 1478px;
  margin: 0 auto;
  padding: 20px;
  background: #faf8f2;
  border: 1px solid #216843;
}
.home_business .list{
  margin: 0 -8px;
  display: flex;
  flex-wrap: wrap;
}
.home_business .item{
  width: 50%;
  padding: 0 8px;
  transition: 0.2s;
  display: block;
}
.home_business .item:hover{
  opacity: 0.7;
}
.home_business .ttl{
  font-size: 16px;
  font-weight: 700;
  margin-top: 10px;
  text-align: center;
}
.home_business .ttl:after{
  content: "";
  width: 7px;
  height: 12px;
  margin-left: 10px;
  background: url(img/business_arrow1.png) no-repeat center / contain;
  display: inline-block;
}

/*NEWS*/
.pg_top .section#sec5 {
  padding-top: 40px;
  padding-bottom: 40px;
  background: url(img/recruit_bg1.png) no-repeat right 0 / 150px auto;
}
.home_news {
  padding: 30px;
  border: 1px solid #216843;
  background: #f4f4f4;
}
.home_news_en{
  margin-bottom: 30px;
  text-align: center;
  font-family: "new-order", sans-serif;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1;
}
.home_news_en:after{
  content: "";
  width: 85px;
  height: 8px;
  margin: 0 auto;
  background: #ffbe33;
  display: block;
  margin-top: 14px;
}
.home_news_en img{
  height: 40px;
}
.home_news_list .meta{
  margin-top: 10px;
}
.home_news_list {
  padding: 20px;
  border: 1px solid #216843;
  background: #ffffff;
}
.home_news_list .item + .item{
  margin-top: 50px;
}
.home_news_list .item a{
  display: block;
}
.home_news_list .date,
.home_news_list .title{
  font-size: 20px;
  font-weight: 500;
}
.home_news_list .content{
  font-size: 16px;
  margin-top: 11px;
  line-height: 1.44;
  text-align: justify;
}

/*採用情報*/
.pg_top .section#sec6 {
  padding-bottom: 105px;
  margin-bottom: -100px;
  overflow: hidden;
  background: url(img/recruit_bg1.png) no-repeat right 8% / 150px auto,
    url(img/recruit_bg1.png) no-repeat left bottom / 150px auto;
}
.home_recruit_img {
  width: 94%;  
  margin-top: 50px;
  padding-top: 35px;
  padding-right: 40px;
  max-width: 1664px;
  position: relative;
  z-index: 0;
}
.home_recruit_img:before{
  content: "";
  width: 100%;
  height: 40%;
  background: #30ad6b;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
}
.home_recruit_catch {
  max-width: 737px;
  font-size: 20px;
  margin: -30px 10px -20px;
  padding: 31px 0 31px 30px;
  font-weight: 700;
  background: #ffffff;
  border: 2px solid #216843;
  position: relative;
  z-index: 2;
}
.home_recruit_bg{
  max-width: 1115px;
  padding: 40px 30px;
  background: #30ad6b;
  position: relative;
  z-index: 1;
}
.home_recruit_bg:after{
  content: "";
  width: 132px;
  height: 62px;
  background: url(img/recruit_arrow1.png) no-repeat center / contain;
  position: absolute;
  bottom: -31px;
  left: 18%;
}
.home_recruit_bg .text{
  max-width: 748px;
  font-size: 18px;
  color: #ffffff;
  line-height: 1.88;
  text-align: justify;
}
.home_recruit_bg .link{
  max-width: 300px;
  font-size: 19px;
  margin-top: 40px;
  margin-left: 8px;
  padding: 19px 40px;
  border: 2px solid #172133;
  display: block;
  background: #ffffff;
  font-weight: 500;
  color: #172133;
  border-radius: 34px;
  position: relative;
}
.home_recruit_bg .link:after{
  content: "";
  width: 9px;
  height: 17px;
  background: url(img/recruit_link_i.svg) no-repeat center / contain;
  position: absolute;
  right: 35px;
  top: 50%;
  transform: translateY(-50%);
}
.home_recruit_bg .en{
  font-size: 20px;
  margin-top: 30px;
  text-align: right;
  color: #e4b170;
  font-weight: 600;
  letter-spacing: -0.01em;
}

.home_recruit_bg .link{
  margin-left: auto;
  margin-right: auto;
}
/* コピー用 */
@media (max-width:767px){

  .tt3{
    padding: 5px 15px;
    line-height: 1.5;
  }
  .about_imgs1 {
    margin-top: 30px;
  }
  .about_imgs1 .img1_2 {
    margin-top: 15px;
  }
  .about_imgs2{
    margin-top: 30px;
    padding-top: 30px;
    position: relative;
    z-index: 0;
  }
  .about_imgs2:after {
    content: "";
    max-width: 664px;
    width: 100%;
    height: 90%;
    background: url(img/about_bg1.jpg) no-repeat center / cover;
    position: absolute;
    right: -10%;
    top: 0;
    z-index: -1;
  }
  .about_imgs2 .img2_2 {
    width: auto;
    margin-top: -30px;
    margin-right: -30px;
    text-align: right;
  }
  .about_imgs2 .img2_2 img{
    width: 50%;
  }

  .home_business .item:nth-child(n+3){
    margin-top: 30px;
  }

  .instagram_box1 #sb_instagram_icon a img{
    width: 50px;
    height: 50px;
  }
  .instagram_box1 #sb_instagram_icon a{
    gap: 5px;
    align-items: center;
    justify-content: flex-start;
  }
  .instagram_box1 #sb_instagram_icon a span {
    line-height: 1;
    font-size: 20px;
  }
  .instagram_box2{
    gap:0;
    flex-wrap: wrap; 
    justify-content: space-between;
  }
  #sb_instagram{
    width: 48%;
  }
  #sb_instagram:nth-child(n+3){
    margin-top: 16px;
  }
  #sbi_load{
    display: flex;
    flex-direction: column;
    margin-bottom: 30px;
  }
  #sbi_images{
    margin-top: 20px;
  }
  .sbi_follow_btn.sbi_custom{
    margin-top: 10px;
  }
  .movie_title{
    position: relative;
  }
  .instagram_title{
    position: relative;
  }
  .tt2{
    margin-bottom: 30px;
  }
  .about_box1{
    position: relative;
  }
  .pg_top .section#sec4 .container {
    position: relative;
    padding: 0;
  }
  .pg_top .section#sec6 .container{
    position: relative;
  }
  /*.pg_top .section#sec4 .tt2,
  .pg_top .section#sec6 .tt2{
    position: static;
  }
  .about_box1 .tt2{
    position: static;
  }
  .instagram_title .tt2,
  .movie_title .tt2{
    position: static;
  }*/
  .pg_top .section#sec6 .tt2:after,
  .pg_top .section#sec4 .tt2:after,
  .about_box1 .tt2:after,
  .instagram_title .tt2:after,
  .movie_title .tt2:after{
    /*transform: rotate(90deg);
    top: 35px;
    bottom: 0;
    right:0;*/
  }
  .instagram_title .tt2::after{
    right: 0;
  }
  .home_news{
    padding: 30px 16px;
  }
  .home_news_en{
    font-size: 42px;
  }
  .home_news_list{
    padding: 40px 10px;
  }
  .home_recruit_catch{
    padding: 5px 0 5px 30px;
  }
  .home_news_list .date, .home_news_list .title{
    font-size: 18px;
  }
  .section_inner{
    padding: 0px 15px;
  }
  .movie_box1{
    margin: 10px auto 5px;
  }
}
@media (min-width:768px){  
  .tt2 {
    font-size: 100px;
    margin-bottom: 80px;
  }
  .tt2::after {
    width: 123px;
    height: 72px;
    transform: translate(128%, -65%);
  }
  .tt2 span {
    font-size: 28px;
  }
  .tt2 span::before{
    width: 125px;
  }
  .tt3{
    font-size: 26px;
  }

  .mv .mv_txt {
    bottom: 30px;
  }

  .pg_top .section#sec1::before{
    width: 200px;
  }
  .section_inner {
    padding: 33px 55px;
  }
  .about_imgs1 {
    margin: 40px -45px 0;
    display: flex;
    align-items: flex-start;
    position: relative;
    z-index: 1;
  }
  .about_imgs1 .img1_1 {
    padding: 0 10px;
    padding-top: 20px;
  }
  .about_imgs1 .img1_2 {
    padding: 0 10px;
    text-align: center;
  }
  .about_imgs1 .img1_2 .en{
    font-size: 52px;
  }

  .about_imgs2 {
    max-width: 740px;
    padding-top: 60px;
    position: relative;
    z-index: 0;
  }
  .about_imgs2:after {
    content: "";
    max-width: 664px;
    width: 80%;
    height: 90%;
    background: url(img/about_bg1.jpg) no-repeat center / cover;
    position: absolute;
    right: -10%;
    top: 0;
    z-index: -1;
  }
  .about_imgs2 .img2_2 {
    width: fit-content;
    margin: -50px -80px 0 auto;
  }
  .about_imgs2 .img2_2 img{
    width: 80%;
  }
  .about_imgs2 .img2_1 {
    width: 80%;
  }
  .pg_top .section#sec1 .about_box2 p{
    width: 100%;
  }

  .pg_top .section#sec4{
    padding: 50px 80px 100px;
    overflow: hidden;
    position: relative;
    background-size: 200px auto;
  }
  .pg_top .section#sec4:after {
    width: calc(100% - 80px);
    height: 34%;
    left: 40px;
  }
  .home_business {
    padding: 40px;
    margin-top: 20px;
  }
  .home_business .list {
    margin: 0 -15px;
  }
  .home_business .item {
    width: 33.33%;
    padding: 0 15px;
  }
  .home_business .item:nth-child(n+4){
    margin-top: 30px;
  }


  .pg_top .section#sec5{
    padding-top: 80px;
    padding-bottom: 80px;
    background-size: 200px auto;
  }
  .home_news_en {
    font-size: 80px;
    margin-bottom: 50px;
  }
  .home_news_en img {
    height: 50px;
  }
  .home_news {
    padding: 40px 50px 50px;
  }  
  .home_news_list {
    padding: 50px;
  }
  .home_news_list .date, 
  .home_news_list .title {
    font-size: 22px;
  }
  .home_news_list .content{
    font-size: 18px;
  }

  .pg_top .section#sec6 {
    padding-bottom: 125px;
    margin-bottom: -225px;
    background-size: 200px auto, 200px auto;
  }
  .home_recruit_img {
    max-width: 1665px;
    padding-right: 90px;
    margin-top: 25px;
    padding-top: 75px;
  }
  .home_recruit_img:before {
    height: 256px;
  }
  .home_recruit_catch {
    max-width: 467px;
    font-size: 26px;
    margin: -120px 50px -50px;
  }
  .home_recruit_bg {
    width: 100%;
    padding: 93px 65px 68px;
  }
  .home_recruit_bg .en{
    font-size: 50px;
  }
  .home_recruit_bg .en img{
    width: 380px;
  }
  .home_recruit_bg .link {
    margin-top: 50px;
  }
  .home_recruit_bg:after{
    width: 192px;
    height: 102px;
    bottom: -51px;
    left: 28%;
  }

}
@media (min-width:1024px){
  .pg_top .section#sec3{
    margin-top: 120px;
  }
  .pg_top .section#sec2{
    margin-top: 120px;
  }

  .pg_top .tt2:after{
    right: 16px;
    top: 48%;
  }


  .section_inner .tt2 {
    font-size: 120px;
    margin-bottom: 170px;
  }
  .tt2::after {
    width: 153px;
    height: 82px;
  }
  .tt2 span::before{
    margin-top: -18px;
    margin-bottom: 20px;
  }
  .pg_top .section#sec1::before{
    width: 376px;
  }
  .about_imgs1 .img1_1 {
    padding-top: 40px;
  }
  .about_imgs2 {
    width: 50%;
    position: absolute;
    right: 0;
    top: 110px;
    z-index: 0;
  }
  .about_imgs1 {
    width: 90%;
    margin: 0 -80px;
  }
  .about_imgs1 .img1_2 .en {
    font-size: 52px;
  }
  .pg_top .section#sec1 .about_box2 p{
    width: 565px;
    font-size: 18px;
  }

  .pg_top .section#sec4 {
    padding: 50px 100px 100px;
    background-size: auto;
  }
  .pg_top .section#sec4:after {
    width: calc(100% - 120px);
    left: 60px;
  }
  .home_business {
    padding: 80px 72px 60px;
  }
  .home_business .item:nth-child(n+4) {
    margin-top: 40px;
  }
  .home_business .ttl {
    font-size: 23px;
    margin-top: 20px;
  }
  .home_business .ttl:after {
    width: 12px;
    height: 21px;
    margin-left: 30px;
  }

  .pg_top .section#sec5{
    background-size: auto;
    margin-top: 95px;
  }
  .pg_top .section#sec5 .home_news {
    padding: 64px 68px 80px;
  }
  .home_news_en {
    font-size: 96px;
    margin-bottom: 72px;
  }
  .home_news_list .meta{
    margin-top: 0;
  }
  .home_news_list {
    padding: 90px 30px 68px;
  }
  .home_news_list .item{
    max-width: 970px;
    margin: 0 auto;
  }
  .home_news_list .item + .item {
    margin-top: 100px;
  }
  .home_news_list .item a{
    display: flex;
  }
  .home_news_list .date{
    width: 32.5%;
  }
  .home_news_list .meta{
    width: 67.5%;
  }

  .pg_top .section#sec6 {
    padding-bottom: 225px;
    margin-bottom: -325px;
    background-size: auto, auto;
  }
  .home_recruit_img:before {
    height: 356px;
  }
  .home_recruit_catch {
    margin: -158px 98px -62px;
  }
  .home_recruit_bg {
    padding: 123px 60px 78px;
  }
  .home_recruit_bg .en {
    font-size: 70px;
    position: absolute;
    width: 480px;
    right: 20px;;
    bottom: 23%;
  }
  .home_recruit_bg .en img{
    width: auto;
  }
  .home_recruit_bg .link{
    margin-top: 70px;
    margin-left: 8px;
    margin-right: auto;
  }
  .pg_top .section#sec1 .about_box2{
    align-items: flex-start;
  }
  .tt2{
    font-size: 170px;
  }

}
@media (min-width:1200px){
  .section_inner .tt2 {
    font-size: 170px; 
    margin-bottom: 85px;
  } 
  .section_inner {
    padding: 50px 70px 30px;
  }
  .about_imgs2 {
    width: 50%;
    position: absolute;
    right: -78px;
    top: 230px;
  }
  .about_imgs1 {
    margin: 0;
    margin-left: -145px;
  }
  .about_imgs1 .img1_1 {
    padding: 48px 15px 0;
  }
  .about_imgs1 .img1_2 {
    padding: 0 15px;
  }
  .about_imgs2:after {
    width: 100%;
    height: calc(100% + 45px);
    right: -16%;
    top: -19%;
  }
  .about_imgs2 .img2_1 {
    width: 100%;
  }
  .about_imgs2 .img2_2 {
    margin: -55px 0px 0 auto;
  }
  .about_imgs2 .img2_2 img {
    width: 100%;
  }
  .about_imgs1 .img1_2 .en {
    font-size: 56px;
    letter-spacing: 0.04em;
  }

  .home_news_list .item + .item {
    margin-top: 130px;
  }

  .pg_top .section#sec6 {
    padding-bottom: 325px;
    margin-bottom: -425px;
  }
  .home_recruit_bg {
    padding: 123px 135px 88px;
  }
  .home_recruit_bg .en {
    width: auto;
    right: -24%;
  }
  .home_recruit_catch {
    max-width: 737px;
    margin: -258px 98px -62px;
  }
  .mv .mv_txt .ja{
    margin-top: 30px;
  }
  .about_imgs2{
    top: 240px;
  }
  .home_recruit_bg .en{

  }

}
@media (min-width:1500px){
  .about_imgs2 {
    width: 100%;
  }
  .about_imgs1 .img1_2 .en {
    font-size: 76px;
  }
}
