/*
    set break point
*/
/*
    Width / Height Settings
*/
/*
    SP Liquid Value
*/
/*
    PC Liquid Value
*/
/*------------------------------------------------------------------------------------------
*
*
    home_sp.css
*
*
------------------------------------------------------------------------------------------ */
@media screen and (max-width: 750px) {
  /*------------------------------------------------------------------------------------------
  *
  *
      max-width : 750px
  *
  *
  ------------------------------------------------------------------------------------------ */
  /* --------------------------------------------------
  *
      #kv
  *
  -------------------------------------------------- */
  #kv {
    margin-bottom: 9.3333333333vw;
    line-height: 0;
  }

  #kv img {
    width: 100%;
  }

  #kv .pic {
    position: relative;
  }

  #kv_copy {
    width: 40.6666666667vw;
    height: 28.5333333333vw;
    position: absolute;
    top: 50%;
    left: 4.6666666667vw;
    transform: translateY(-50%);
  }

  #kv_copy p {
    width: 40.6666666667vw;
    height: 28.5333333333vw;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
  }

  #kv_copy p img {
    width: auto;
    height: 100%;
    line-height: 0;
  }

  #kv_copy span.b {
    width: 100%;
    height: 100%;
    display: block;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: left center;
    z-index: 1;
  }

  #kv_copy span.c {
    width: 0;
    height: 100%;
    display: block;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: left center;
    z-index: 2;
  }

  #kv_copy span img {
    width: auto;
    height: 100%;
  }

  /* on */
  #kv_copy .on span.c {
    width: 100%;
    transition: width;
    transition-duration: 0.6s;
    transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
    transition-delay: 0.25s;
  }

  #kv_copy .on span.b {
    width: 0;
    opacity: 0;
    transition: width 0s ease 0.85s, opacity 0.35s ease 0.5s;
  }

  /* out */
  #kv_copy .out span.c {
    width: 100%;
  }

  #kv_copy .out span.b {
    width: 100%;
    transition: width;
    transition-duration: 0.5s;
    transition-timing-function: cubic-bezier(0.895, 0.03, 0.685, 0.22);
    z-index: 2;
  }

  #kv_copy .out span.c {
    width: 0;
    opacity: 0;
    transition: width 0s ease 0.85s, opacity 0.25s ease 0.4s;
  }

  /* --------------------------------------------------
  *
      #home_nav
  *
  -------------------------------------------------- */
  #home_nav {
    display: none !important;
  }

  /*
  #home_nav > ul{
      display: flex;
      flex-wrap: wrap;
      position: relative;
  }

  #home_nav > ul:before{
      content: '';
      display: block;
      width: 1px;
      height: 100%;
      background-color: rgba(255, 255, 255, .4);
      position: absolute;
      top: 0;
      left: calc(50% - 1px);
  }

  #home_nav > ul:after{
      content: '';
      display: block;
      width: 100%;
      height: 1px;
      background-color: rgba(255, 255, 255, .4);
      position: absolute;
      top: 50%;
      left: left;
  }

  #home_nav > ul > li{
      width: 50%;
      height: vs(104);
      background-color: #e60012;
  }

  #home_nav > ul > li a{
      height: vs(104);
      display: flex;
      justify-content: center;
      align-items: center;
      letter-spacing: .16em;
      color: #fff;
  }

  #home_nav .parents p a{
      padding-left: vs(34);
      position: relative;
  }

  #home_nav .parents p a:before{
      content: '';
      display: block;
      width: vs(14);
      height: vs(12);
      background-image: url(../images/parts_arrow_btm.svg);
      background-repeat: no-repeat;
      background-size: vs(14);
      background-position: left center;
      position: absolute;
      left: vs(104);
      top: 50%;
      transform: translateY(-50%);
  }


  #home_nav .sub{
      width: 100%;
      height: vs(104);
      display: flex;
      flex-wrap: wrap;
      position: absolute;
      top: vs(104);
      left: 0;
      z-index: 2;
      transform: transform3d(0, 0, 0) !important;
  }

  #home_nav .sub:before{
      content: '';
      width: 50%;
      height: vs(104);
      display: block;
      background-color: rgba(0, 0, 0, .2);
      position: absolute;
      top: vs(-104);
      left: 50%;
      z-index: -1;
  }

  #home_nav .sub li{
      width: 50%;
      background-color: #e60012;
      border-top: 1px dashed rgba(255, 255, 255, .4);
      position: relative;
  }

  #home_nav .sub li:nth-child(2){
      border-style: solid;
  }

  #home_nav .sub li a{
      width: 100%;
      height: vs(104);
      display: flex;
      justify-content: center;
      align-items: center;
      letter-spacing: .16em;
      background-color: #e60012;
      position: relative
  }

  #home_nav .sub li a:after{
      content: '';
      display: block;
      width: 1px;
      height: 100%;
      border-right: 1px dashed rgba(255, 255, 255, .4);
      position: absolute;
      top: 0;
      right: 0;
  }

  #home_nav .sub li:nth-child(2) a:after,
  #home_nav .sub li:nth-child(4) a:after{ display: none;}

  #home_nav a{
      transition: background .1s ease;
  }

  .is_pc #home_nav li a:hover,
  .is_sp #home_nav li a.touch{
      background-color: #b8000e;
  }

  #home_nav li .disabled a{
      background-color: inherit !important;
  }
  */
  /* --------------------------------------------------
  *
      #our_mission
  *
  -------------------------------------------------- */
  #our_mission {
    margin-bottom: 9.3333333333vw;
    position: relative;
    box-sizing: border-box;
  }

  #our_mission .pic {
    line-height: 0;
  }

  #our_mission .pic img {
    width: 100%;
  }

  #our_mission .desc {
    margin: 0 4vw;
    margin-top: -5.3333333333vw;
    padding: 9.3333333333vw 7.4666666667vw 8vw 7.4666666667vw;
    background-color: rgba(255, 255, 255, 0.9);
    box-sizing: border-box;
    z-index: 1;
    position: relative;
  }

  #our_mission h2 {
    letter-spacing: 0.04em;
    margin-bottom: 3.3333333333vw;
  }

  #our_mission h3 {
    margin-bottom: 5.3333333333vw;
    letter-spacing: 0.02em;
    line-height: 1.1379em;
    white-space: nowrap;
  }

  #our_mission .txt {
    letter-spacing: 0.16em;
    line-height: 1.666em;
    opacity: 0.8;
  }

  /* --------------------------------------------------
  *
      #initiatives_partner
  *
  -------------------------------------------------- */
  #initiatives_partner .bg img {
    width: 100%;
  }

  #initiatives_partner .col {
    margin-bottom: 9.3333333333vw;
  }

  #initiatives_partner .inner {
    margin: 0 4vw;
    margin-top: -5.3333333333vw;
    padding: 9.3333333333vw 7.4666666667vw 5.3333333333vw 7.4666666667vw;
    background-color: rgba(255, 255, 255, 0.9);
    box-sizing: border-box;
    z-index: 1;
    position: relative;
  }

  #initiatives_partner h2 {
    letter-spacing: 0.04em;
    margin-bottom: 3.3333333333vw;
  }

  #initiatives_partner h3 {
    margin-bottom: 5.3333333333vw;
    letter-spacing: 0.04em;
    line-height: 1.1379em;
  }

  #initiatives_partner .txt {
    margin-bottom: 8vw;
    letter-spacing: 0.16em;
    line-height: 1.666em;
  }

  #initiatives_partner .btm_nav li {
    margin-bottom: 3.7333333333vw;
  }

  /* --------------------------------------------------
  *
      .project_list
  *
  -------------------------------------------------- */
  .project_list {
    position: relative;
  }

  .project_list h2 {
    width: 100%;
    color: #fff;
    text-align: center;
    letter-spacing: 0.08em;
    position: absolute;
    top: 10.6666666667vw;
    left: 0;
  }

  .project_list .bg {
    margin-bottom: -22.6666666667vw;
    line-height: 0;
  }

  .project_list .bg img {
    width: 100%;
  }

  .project_list .bg .bg_inner {
    filter: blur(8px);
    transform: scale(1.2);
  }

  .project_list .bg .bg-blur {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
  }

  .project_list article {
    margin: 0 4vw;
    margin-bottom: 6.6666666667vw;
    background-color: white;
    overflow: hidden;
    position: relative;
    z-index: 2;
  }

  .project_list .pic {
    position: relative;
  }

  .project_list .img {
    height: 41.6vw;
  }

  .project_list .tag_list {
    margin-bottom: -3.7333333333vw;
    position: absolute;
    bottom: 0;
    left: 6vw;
  }

  article .tag_list ul {
    flex-wrap: wrap;
    display: flex;
  }

  article .tag_list li {
    margin-top: 0.8vw;
    margin-bottom: 0.8vw;
    margin-right: 1.6vw;
    white-space: nowrap;
  }

  .project_list .tag_list a {
    padding: 1.6vw 2.6666666667vw;
    background-color: #e60012;
    display: block;
    overflow: hidden;
    border-radius: 13.3333333333vw;
    color: #fff;
    letter-spacing: 0.08em;
  }

  .project_list article .info {
    padding: 12vw 7.4666666667vw 0 7.4666666667vw;
  }

  .project_list article .title {
    letter-spacing: 0.04em;
    margin-bottom: 2.9333333333vw;
  }

  .project_list article h3 {
    letter-spacing: 0.06em;
    line-height: 1.295em;
    margin-bottom: 4.6666666667vw;
  }

  .project_list article .col_l .txt {
    letter-spacing: 0.16em;
    margin-bottom: 8vw;
    line-height: 1.666em;
  }

  .project_list .partner_list {
    margin-bottom: 4vw;
    display: table;
  }

  .project_list .partner_list h5 {
    letter-spacing: 0.04em;
    padding-right: 2.6666666667vw;
    display: table-cell;
    line-height: 1.3em;
    white-space: nowrap;
  }

  .project_list .partner_list ul {
    display: table-cell;
  }

  .project_list .partner_list li {
    letter-spacing: 0.08em;
    display: inline-block;
    margin-right: 0.5em;
    line-height: 1.3em;
  }

  .project_list .partner_list li:after {
    content: ",";
  }

  .project_list .partner_list li:last-child:after {
    display: none;
  }

  .project_list article .recommend {
    margin-bottom: 6vw;
    padding: 4.6666666667vw 4vw 4vw 4vw;
    border: 0.5333333333vw solid #fabe00;
    box-sizing: border-box;
  }

  .project_list article .recommend h4 {
    letter-spacing: 0.04em;
    margin-bottom: 2.6666666667vw;
  }

  .project_list article .recommend .txt {
    letter-spacing: 0.08em;
    line-height: 1.666em;
  }

  .project_list .status {
    width: 46vw;
    height: 13.8666666667vw;
    margin-left: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    background-image: url(../images/parts_arrow_right.svg);
    background-position: 2.6666666667vw center;
    background-repeat: no-repeat;
    background-size: 1.8666666667vw;
    color: #fff;
    background-color: #e60012;
    text-align: center;
    transition: background;
    transition-duration: 0.15s;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
  }

  .project_list .status p {
    letter-spacing: 0.08em;
  }

  .project_list .status.due {
    background-color: #aba816;
  }

  .project_list .status.end {
    background-color: #888;
    background-image: none !important;
  }

  /*
  .is_pc .project_list article:hover .status,
  .is_sp .project_list article.touch .status{
      background-position: vs(30) center;
  }
  */
  /* --------------------------------------------------
  *
      #project_schedule
  *
  -------------------------------------------------- */
  #project_schedule .g_calender {
    padding: 0 4vw;
    margin: 0 auto;
    margin-bottom: 6.6666666667vw;
    box-sizing: border-box;
  }

  #project_schedule .btn_accordion {
    width: 100%;
    height: 17.8666666667vw;
    letter-spacing: 0.06em;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #fff;
    cursor: pointer;
    transition: background, color;
    transition-duration: 0.15s;
  }

  .is_pc #project_schedule .btn_accordion:hover,
.is_sp #project_schedule .btn_accordion.touch {
    background-color: #e60012;
    color: #fff;
  }

  #project_schedule .btn_accordion span {
    padding-left: 5.3333333333vw;
    display: inline-block;
    position: relative;
  }

  #project_schedule .btn_accordion span:before,
#project_schedule .btn_accordion span:after {
    content: "";
    width: 2.1333333333vw;
    height: 2.1333333333vw;
    display: block;
    background-image: url(../images/parts_arrow_btm_blk.svg);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 2.1333333333vw;
    position: absolute;
    top: 0.6666666667vw;
    left: 0;
    transition: transform 0.1s ease, opacity 0.1s ease;
  }

  #project_schedule .btn_accordion span:after {
    opacity: 0;
    background-image: url(../images/parts_arrow_btm_blk_on.svg);
  }

  .is_pc #project_schedule .btn_accordion:hover span:before,
.is_sp #project_schedule .btn_accordion.touch span:before {
    opacity: 0;
  }

  .is_pc #project_schedule .btn_accordion:hover span:after,
.is_sp #project_schedule .btn_accordion.touch span:after {
    opacity: 1;
  }

  #project_schedule .btn_accordion.on span:before,
#project_schedule .btn_accordion.on span:after {
    transform: rotate(-180deg) translateY(0.2666666667vw);
  }

  #project_schedule .g_calender .inner {
    width: 100%;
    display: none;
    overflow-y: hidden;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    background-color: #fff;
    /*    padding-top: vs(6); */
    transform: translate3d(0, 0, 0);
  }

  #project_schedule .g_calender iframe {
    width: 100% !important;
    height: 65vh !important;
  }

  #project_schedule .btn_detail {
    width: 100%;
    margin-bottom: 9.3333333333vw;
    padding: 0 4vw;
    box-sizing: border-box;
  }

  #project_schedule .btn_detail a {
    width: 100%;
    height: 17.8666666667vw;
    letter-spacing: 0.06em;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    letter-spacing: 0.08em;
    background-color: #e60012;
    background-image: url(../images/parts_arrow_right.svg);
    background-position: 5.3333333333vw center;
    background-size: 2.1333333333vw;
    background-repeat: no-repeat;
    text-align: center;
  }

  #project_schedule .btn_detail a:before {
    background-position: 5.3333333333vw center !important;
    background-size: 2.1333333333vw !important;
  }

  /* --------------------------------------------------
  *
      #news
  *
  -------------------------------------------------- */
  #news {
    margin-bottom: 9.3333333333vw;
    position: relative;
  }

  #news h2 {
    width: 100%;
    color: #fff;
    text-align: center;
    letter-spacing: 0.04em;
    position: absolute;
    top: 12vw;
    left: 0;
  }

  #news .bg {
    margin-bottom: -22.6666666667vw;
    line-height: 0;
  }

  #news .bg img {
    width: 100%;
  }

  #news .news_list {
    padding: 9.3333333333vw 4.4vw 0 4.4vw;
    margin: 0 4vw;
    background-color: rgba(255, 255, 255, 0.9);
    overflow: hidden;
    box-sizing: border-box;
    position: relative;
    z-index: 2;
  }

  #news .news_slider {
    margin-bottom: 17.3333333333vw;
  }

  #news .slick-slide {
    width: 35.3333333333vw;
    padding: 0 3.0666666667vw;
  }

  #news .pic {
    height: 28vw;
    margin-bottom: 6vw;
  }

  #news .cat {
    margin-bottom: 3.3333333333vw;
    padding: 1.6vw;
    border: 0.5333333333vw solid #fabe00;
    display: inline-block;
    box-sizing: border-box;
    letter-spacing: 0.04em;
  }

  #news .date {
    margin-bottom: 2.6666666667vw;
    letter-spacing: 0.08em;
  }

  #news .desc {
    letter-spacing: 0.16em;
    line-height: 1.666em;
  }

  #news .btn_detail {
    margin-left: auto;
    text-align: right;
    position: relative;
    right: -4vw;
  }

  #news .btn_detail a {
    width: 46vw;
    height: 13.8666666667vw;
    margin-left: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    background-image: url(../images/parts_arrow_right.svg);
    letter-spacing: 0.08em;
    background-position: 2.6666666667vw center;
    background-repeat: no-repeat;
    background-size: 1.8666666667vw;
    color: #fff;
    background-color: #e60012;
    text-align: center;
  }

  /* --------------------------------------------------
  *
      #join_us
  *
  -------------------------------------------------- */
  #join_us {
    margin: 0 auto;
    margin-bottom: 9.3333333333vw;
    padding: 0 4vw;
    position: relative;
    box-sizing: border-box;
  }

  #join_us .inner {
    min-height: 92vw;
    padding: 9.3333333333vw 7.4666666667vw;
    background-image: url(../images/home/pic_join_us_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    box-sizing: border-box;
  }

  #join_us h2 {
    letter-spacing: 0.04em;
    margin-bottom: 4vw;
  }

  #join_us h3 {
    letter-spacing: 0.08em;
    margin-bottom: 5.3333333333vw;
  }

  #join_us .join_wrap {
    position: relative;
  }

  #join_us .bg {
    width: 84.5833333333vw !important;
    max-width: 1218px !important;
    height: 30.3472222222vw !important;
    max-height: 437px !important;
  }

  #join_us .desc {
    margin-bottom: 6.6666666667vw;
    letter-spacing: 0.08em;
    line-height: 1.666em;
  }

  /* --------------------------------------------------
  *
      #btm_banner
  *
  -------------------------------------------------- */
  #btm_banner {
    margin: 0 auto;
    margin-bottom: 16vw;
    padding: 0 4vw;
    box-sizing: border-box;
    position: relative;
  }

  #btm_banner .slider_wrap {
    padding: 0 10vw;
    overflow: hidden;
  }

  #btm_banner .img_slider {
    position: relative;
  }

  #btm_banner .img_slider .pic {
    height: 28vw;
  }

  #btm_banner .btn {
    width: 5.7333333333vw;
    height: 28vw;
    background-color: #e60012;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 1.7333333333vw;
    cursor: pointer;
    position: absolute;
    top: 0;
  }

  #btm_banner .btn.prev {
    left: 4vw;
    background-image: url(../images/parts_arrow_slider_left.svg);
  }

  #btm_banner .btn.next {
    right: 4vw;
    background-image: url(../images/parts_arrow_slider_right.svg);
  }

  #btm_banner .btn:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    opacity: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 1.7333333333vw;
    position: absolute;
    top: 0;
    left: 0;
  }

  #btm_banner .btn.prev:after {
    background-image: url(../images/parts_arrow_slider_left_on.svg);
  }

  #btm_banner .btn.next:after {
    background-image: url(../images/parts_arrow_slider_right_on.svg);
  }

  /* --------------------------------------------------
  *
      #gcal
  *
  -------------------------------------------------- */
  .fc-day-header {
    padding: 2.1333333333vw 0 !important;
    background-color: #dcdcdc;
    font-weight: 400 !important;
    font-size: 2.6666666667vw;
    color: #000 !important;
  }

  .fc-past,
.fc-day-number {
    font-size: 2.9333333333vw !important;
    color: #757575 !important;
  }

  .fc td, .fc th {
    border-width: 2px !important;
    border-color: #dcdcdc !important;
  }

  .fc-today {
    background-color: #eeeeee !important;
  }

  .fc-day-grid-event {
    padding: 1px 5px !important;
  }

  .fc-toolbar h2 {
    font-size: 3.7333333333vw !important;
    margin-left: 1.3333333333vw !important;
    font-weight: 400 !important;
    display: inline-block !important;
  }

  .fc button,
.fc-state-default {
    box-shadow: none !important;
    text-shadow: none !important;
    background: none !important;
    border-radius: 0;
    -webkit-box-sizing: content-box !important;
    -webkit-appearance: button !important;
    -moz-appearance: button !important;
         appearance: button !important;
    border: none !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
  }

  .fc button.fc-prev-button,
.fc button.fc-next-button,
.fc button.fc-today-button {
    width: 8vw !important;
    height: 5.3333333333vw !important;
    margin: 0 0.5333333333vw;
    margin-top: 0.5333333333vw;
    margin-bottom: 1.3333333333vw;
    border-radius: 3px;
    display: inline-block;
    padding: 0 !important;
    font-size: 2.9333333333vw;
    color: #fff !important;
    background-color: #6688ee !important;
    transition: background, color;
    transition-duration: 0.1s;
  }

  .is_pc .fc button.fc-prev-button:hover,
.is_pc .fc button.fc-next-button:hover,
.is_sp .fc button.fc-prev-button.touch,
.is_sp .fc button.fc-next-button.touch {
    background-color: #fff !important;
    color: #6688ee !important;
  }

  .fc-state-disabled {
    opacity: 1 !important;
  }

  .fc button.fc-today-button {
    font-size: 2.9333333333vw !important;
    color: #111 !important;
    background-color: #eeeeee !important;
    transition: background;
    transition-duration: 0.1s;
  }

  .is_pc .fc button.fc-today-button:hover,
.is_sp .fc button.fc-today-button.touch {
    background-color: #fff !important;
  }

  .fc-toolbar.fc-header-toolbar {
    margin: 0 !important;
    position: relative;
  }

  .fc-toolbar.fc-header-toolbar .fc-right {
    position: absolute;
    right: 0;
    bottom: 0;
  }

  .fc button.fc-month-button,
.fc button.fc-listYear-button {
    font-size: 3.4666666667vw !important;
    margin-left: 1.3333333333vw;
    color: #666 !important;
    position: relative;
    border-radius: 3px 3px 0 0 !important;
    transition: background, color;
    transition-duration: 0.1s;
  }

  .fc button.fc-month-button:hover,
.fc button.fc-listYear-button:hover,
.fc button.fc-month-button.touch,
.fc button.fc-listYear-button.touch,
.fc button.fc-month-button.fc-state-active,
.fc button.fc-listYear-button.fc-state-active {
    color: #111 !important;
    background-color: #dcdcdc !important;
  }

  .fc-listYear-view {
    font-weight: 400 !important;
    font-size: 2.9333333333vw !important;
  }

  .fc-list-item-marker {
    padding-right: 15px !important;
  }

  .fc-content {
    font-size: 2.9333333333vw !important;
  }

  .fc-list-item-title {
    line-height: 1.3em !important;
  }
}
/* -------------------------------------------------- */