@charset "UTF-8";
html {
    font-size: 62.5%;
    font-family: 'メイリオ', 'Meiryo','ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
}
main {
    display: block;
    background: #E4EAEF 0% 0% no-repeat padding-box;
}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, p, th, td, figure, figcaption {
    margin: 0;
    padding: 0;
}
h1 a, footer p, h2, .mainText p {
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
} 
body {
    font-size: 1.6rem;
}
ul {
    list-style: none;
}
section {
    margin-bottom: 30px;
    background: #fff;
}
h3 {
    color: #025EA8;
}
p {
    line-height: 2.0;
    margin-bottom: 40px;
}
a {
    text-decoration: none;
    color: #025EA8;
}
a:hover {
    opacity: .8;
}
time {
    color: #999999;
    font-size: 1.4rem;
    display: block;
}
img {
    max-width: 100%;
    object-fit: cover;
    font-family: 'object-fit: cover';
    margin: 0 auto;
}

/* PC非表示 */
.pc_none {
    display: none;
}
/* ヘッダーロゴ */
h1 {
    display: flex;
}
h1 a {
    font-size: 2.6rem;
    color: #fff;
}
/* パンくず */
.breadclumb {
    padding: 20px 0 20px 40px;
    margin: 0 auto;
    max-width: 1160px;
}
.breadclumb ul {
    display: none;
}
.breadclumb ul li {
    margin-right: 20px;
    position: relative;
}
.breadclumb ul li:after {
    content: '>';
    position: absolute;
    right: -16px;
}
.breadclumb ul li:last-child:after {
    content: none;
}
.breadclumb ul li a:hover {
    text-decoration: underline;
}
/* テキスト中央寄せ */
.t_center {
    text-align: center;
}
/* Concept 見出し */
.title_concept {
    color: #222222;
    font-size: 3.0rem;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
    margin-bottom: 50px;
}
/* 文字色 */
.font_blue {
    color: #005EAC;
}
.font_red {
    color: #E50020;
}
/* 見出しサブ */
.subtitle {
    margin-bottom: 4px;
    color: #61656B;
    letter-spacing: 4.8px;
    font-size: 2.0rem;
    padding-left: 20px;
}
/* 黒字見出し */
.title_black {
    font-size: 3.4rem;
    color: #202020;
    margin-bottom: 40px;
}
/* 下線付き見出し */
.title_underline {
    position: relative;
    z-index: 1;
    display: inline-block;
    padding-left: 20px;
    margin-bottom: 52px;
}
.title_underline:after {
    content: '';
    width: 114%;
    height: 20px;
    background: #C4D9E9;
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 0;
}
/* マージンボトム0 */
.margin_btm0 {
    margin-bottom: 0;
}
/* マージンボトム10 */
.margin_btm10 {
    margin-bottom: 10px;
}
/* マージンボトム20 */
.margin_btm20 {
    margin-bottom: 20px;
}
/* マージンボトム30 */
.margin_btm30 {
    margin-bottom: 30px;
}
/* マージンボトム50 */
.margin_btm50 {
    margin-bottom: 50px;
}
/* ヘッダー */
.header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #003B6E;
    padding: 0 40px;
}
.header .logo a {
    padding: 17px 0 13px;
}
.header .burger_nav {
    width: 65%;
}
nav a {
    padding: 25px 30px;
}
/* 非表示 */
.display_none {
    display: none !important;
}
/* ヘッダーナビ */
.gnav {
    display: flex;
    height: 7rem;
    margin: 0 auto;
    justify-content: flex-end;
}
.gnav li {
    position: relative;
    z-index: 1;
}
.gnav > li {
    max-width: 35%;
}
.gnav li a {
    display: block;
    color: #fff;
    font-size: 1.8rem;
    text-decoration: none;
    height: 2rem;
    line-height: 2rem;
    /* width: 100%; */
    text-align: center;
}
.gnav > li > a{
    display: inline-block;
}
.gnav li a.tbc {
    line-height: 0.5rem;
    pointer-events: none;
}
.gnav li a.tbc:after {
    content: '(工事中)';
    position: absolute;
    color: #fff;
    font-size: 1.3rem;
    width: 60px;
    height: 10px;
    left: 50%;
    bottom: 10px;
    margin-left: -30px;
}
@media (min-width: 1025px) {
    .gnav li ul {
        position: absolute;
    }
    .gnav li li {
        width: 248px;
        height: 64px;
        display: none;
        overflow: hidden;
        background: #2F70A8;
        opacity: .9;
        font-family: 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
    }
    .gnav li li a {
        border-top: 1px solid #fff;
        text-align: left;
        font-size: 1.8rem;
        padding: 22px 25px;
    }
    .gnav li:hover > ul > li {
        display: block;
        overflow: visible;
    }
}
.gnav > li a:hover {
    background-color: #1d5586;
}

/* ハンバーガーメニュー */
.burger_icon {
    display: none;
}
.burger_nav .close {
    display: none;
}
@media (max-width: 1680px) {
    nav a {
        padding: 25px 15px;
    }
}
@media (max-width: 1024px) {
    .burger_icon {
        display: block;
        width: 20px;
        height: 20px;
        cursor: pointer;
        position: relative;
        top: 0;
        right: -25px;
        z-index: 1;
        padding: 0;
    }
    .burger_icon span {
        position: absolute;
        left: 0;
        width: 20px;
        height: 20px;
        background-image: url(/toyosu/common/images/burger_icon.svg);
    }

      .burger_icon.is-burger-nav-open span {
        background-image: url(/toyosu/common/images/close_icon.svg);
      }

      .burger_nav {
          display: none;
      }
      .burger_nav.open {
        display: block;
        font-size: 1.8rem;
        line-height: 1.6;
        color: #fff;
        position: fixed;
        right: 0;
        top: 57px;
        bottom: 0;
        overflow-y: auto;
        z-index: 10;
        background-color: rgba(0, 0, 0, 0.8);
        width: 100%;
        height: auto;
      }
      .burger_nav.open nav {
        text-align: left;
        width: 100%;
      }
      .burger_nav.open nav ul.gnav {
        display: block;
        margin-bottom: 40px;
        padding-right: 0;
      }
      .burger_nav.open nav ul.gnav > li {
        width: 100%;
        border-bottom: 1px solid #fff;
        max-width: 100%;
        text-align: center;
        position: relative;
      }
      .burger_nav.open nav ul.gnav > li.close {
        display: block;
        border-bottom: none;
      }
      .burger_nav.open nav ul.gnav > li.close .burger_icon {
        right: 0;
        width: auto;
        padding-left: 25px;
        display: inline-block;
        position: relative;
      }
      .burger_nav.open nav ul.gnav li a:hover {
        background: transparent;
      }
      .burger_nav.open nav ul.gnav > li.close .burger_icon:before {
        content: '';
        position: absolute;
        left: 0;
        top: 19px;
        width: 20px;
        height: 20px;
        background-image: url(/toyosu/common/images/close_icon.svg);
      }
      .burger_nav.open nav ul.gnav li.parent {
          padding-bottom: 10px;
      }
      .burger_nav.open nav ul.gnav li.parent:before {
        content: '';
        position: absolute;
        top: 50px;
        right: 50%;
        width: 5px;
        height: 5px;
        -ms-transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        border-right: solid 1px #fff;
        border-bottom: solid 1px #fff;
      }
      .burger_nav.open nav ul.gnav li a {
        padding: 20px 0;
        display: block;
      }
      /*.burger_nav.open nav ul.gnav li li {
        width: 100%;
        height: 0;
        transition: .5s;
        overflow: hidden;
        background: transparent;
      }
      .burger_nav.open nav ul.gnav li:hover > ul > li {
        height: 5.5rem;
        overflow: visible;
      }*/
      .burger_nav.open nav ul.gnav li li a {
        border-top: none;
        text-align: center;
        font-size: 2rem;
        padding: 15px 0;
      }
      .gnav li a.tbc {
        line-height: 2rem;
      }
      .gnav li a.tbc:after {
        font-size: 2rem;
        width: 80px;
        position: static;
        margin-left: 10px;
      }
}
/* バーガーメニュー表示時 スクロール阻止 */
.scroll_prevent {
    position: fixed;
    z-index: -1;
    width: 100%;
    height: 100%;
  }
  

.logo {
    width: 35%;
}
.Enlogo{
width:100%;
}

.mainContainer {
    margin-bottom: 30px;
    position: relative;
    overflow: hidden;
}

.mainText {
    max-width: 1200px;
    position: absolute;
    margin-top: 40px;
    padding: 30px 0;
    top: 0;
    left: calc((100% - 1200px) / 2);
    color: #fff;
    background: transparent linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(0, 0, 0, 0.35) 49%, rgba(255, 255, 255, 0) 100%) 0% 0% no-repeat padding-box;
}
@media (max-width: 1200px) {
    .mainText {
        left: 0;
    }
}
.mainText h2 {
    padding-left: 40px;
    font-size: 4.0rem;
}
.mainText p {
    padding-left: 40px;
    font-size: 2.4rem;
    font-weight: bold;
}
.mainText.white {
    color: #202020;
    height: 208px;
    background: transparent linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.35) 20%, rgba(255, 255, 255, 0) 100%) 0% 0% no-repeat padding-box;
    /* background: transparent linear-gradient(90deg, #FFFFFF00 0%, rgba(255, 255, 255, 35%) 20%, #FFFFFF00 100%) 0% 0% no-repeat padding-box; */
}

.flex {
    display: flex;
}
.flex.between {
    justify-content: space-between;
}
.flex.img_2 img {
    width: calc((100% - 40px) / 2);
}
.flex.img_2 img:nth-child(odd) {
    margin-right: 40px;
}

.button {
    margin-bottom: 20px;
}
.button a {
    display: block;
    position: relative;
    width: 177px;
    height: 50px;
    line-height: 5.0rem;
    background: transparent linear-gradient(217deg, #003B6E 0%, #0063B8 100%) 0% 0% no-repeat padding-box;
    border-radius: 60px;
    color: #fff;
    text-decoration: none;
    text-align: center;
    padding-left: 20px;
    box-sizing: border-box;
    transition: all .2s;
}
.button a.Enbutton{
background:transparent!important;
}
.mail_icon {
    color: #fff;
    position: absolute;
    left: 25px;
    top: 19px;
    width: 15px;
    height: 10px;
    border-radius: 1px;
    border: solid 1px #fff; 
}
.mail_icon:before {
content: '';
  position: absolute;
  left: 7px;
  top: -4px;
  width: 1px;
  height: 10px;
  background-color: currentColor;
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
  -webkit-transform: rotate(-54deg);
          transform: rotate(-54deg);
}
.mail_icon:after {
content: '';
  position: absolute;
  left: 7px;
  top: -4px;
  width: 1px;
  height: 10px;
  background-color: currentColor;
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
  -webkit-transform: rotate(54deg);
          transform: rotate(54deg);
}

/* Concept リンク */

.concept section {
    width: calc((100% - 58px) / 3);
    margin-right: 29px;
    padding-bottom: 20px;
}
.concept section:last-child {
    margin-right: 0;
}
.concept_img {
    max-width: 100%;
    margin-bottom: 28px;
    position: relative;
}
.thumbnail {
    max-width: 100%;
    height: 220px;
}
.concept section a {
    text-align: center;
}
.concept section a:hover > div {
    opacity: .8;
}
.concept section a:hover > h3 {
    opacity: .8;
}
.concept section a:hover > p {
    text-decoration: underline;
}
.concept_no {
    width: 18%;
    position: absolute;
    bottom: -12%;
    left: 50%;
    margin-left: -9%;
}
.concept section h3 {
    font-size: 2.1rem;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}
.concept section p {
    position: relative;
    padding-right: 15px;
    line-height: 2.4rem;
    color: #222222;
}
.concept section p:after {
    content: '';
    position: absolute;
    top: 3px;
    width: 16px;
    height: 16px;
    margin-left: 5px;
    background-image: url(/toyosu/common/images/right_icon.svg);
}
.Enconcept section a:hover > div
opacity: 1;
}

/* フッター */
footer {
    background: #fff;
    padding: 30px 0;
}
footer p {
    font-size: 1.5rem;
}

/* レスポンシブ(タブレット・スマホ) */
@media (max-width: 1024px) {
    p {
        margin-bottom: 30px;
    }
    .pc_none {
        display: block;
    }
   .sp_none {
       display: none;
   }
   .logo {
       width: 85%;
   }
    .slick-slide img {
    width: 100%;
    }
    .header {
        padding-left: 20px;
    }
    .header a {
        font-size: 1.8rem;
    }
    .mainText {
        padding: 0;
        margin-top: 0;
    }
    .mainText.white {
        height: 95px;
    }
    .mainText h2 {
        margin-top: 10px;
        font-size: 2.0rem;
        padding-left: 10px;
    }
    .mainText p {
        font-size: 1.3rem;
        padding-left: 10px;
        margin-bottom: 10px;
    }
    .thumbnail {
        margin-right: 0;
        width: 100%;
        height: auto;
    }
    .title_black {
        font-size: 2.0rem;
        margin-bottom: 20px;
    }
.button a.Enbutton{
height:0px;
}
}

@media (max-width: 768px) {
    .flex {
        display: block;
    }
    .title_underline:after {
        max-width: 105%;
    }
    .flex.img_2 img {
        width: 100%;
    }
    .concept {
        display: block;
    }
    .concept section {
        width: 100%;
        text-align: center;
        padding-bottom: 15px;
        margin-bottom: 10px;
    }
    .concept_img {
        margin: 0 0 27px; 
    }
    .concept_no {
        width: 52px;
        height: 90px;
　　　　　bottom: -10%;
        margin-left: -26px;
    }
    .concept section a h3 {
        margin-bottom:15px;
    }
    footer {
        padding: 15px 0;
    }
 }

