@charset "UTF-8";
/*
@mixin mPc { 
	@media screen and (min-width: 961px) and (max-width: 1280px){
		@content;
	}	
}
*/
#lead {
  text-align: center; }
  #lead h3.name {
    max-width: 500px;
    margin: 0px auto;
    font-weight: bold;
    margin-bottom: 8%; }
    @media screen and (max-width: 767px) {
      #lead h3.name {
        width: 60%; } }
    #lead h3.name .logo {
      margin-bottom: 15px; }
  #lead .catch {
    font-size: clamp(2rem, 5vw, 4.5rem);
    font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif;
    font-weight: bold;
    margin-bottom: 8%; }
  #lead .text {
    font-size: clamp(1.6rem, 1.2vw, 2.2rem);
    line-height: 2.0; }

/*************************************
#vision_sanbrain
*************************************/
#vision_sanbrain {
  background-image: linear-gradient(90deg, #0bb8de, #0b5fb3);
  background-size: cover;
  text-align: center; }
  #vision_sanbrain h3, #vision_sanbrain div, #vision_sanbrain p, #vision_sanbrain span {
    color: #ffffff; }
  #vision_sanbrain .ol {
    margin-bottom: 10%; }
    @media screen and (max-width: 480px) {
      #vision_sanbrain .ol {
        margin-bottom: 60px; } }
  #vision_sanbrain h3 {
    font-size: clamp(1.6rem, 0.82vw, 2rem);
    line-height: 1.0;
    font-weight: 500;
    margin-bottom: 5%; }
    @media screen and (max-width: 480px) {
      #vision_sanbrain h3 {
        margin-bottom: 30px; } }
    #vision_sanbrain h3 span.en {
      font-family: "Jost", sans-serif;
      font-style: italic;
      font-size: clamp(5rem, 11.11vw, 10rem);
      display: inline-block;
      width: 100%;
      line-height: 1.0; }
  #vision_sanbrain .catch {
    font-size: clamp(2.8rem, 2.4vw, 4rem);
    font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif;
    margin-bottom: 4%; }
    @media screen and (max-width: 480px) {
      #vision_sanbrain .catch {
        margin-bottom: 30px; } }
  #vision_sanbrain p {
    font-size: clamp(1.6rem, 1.2vw, 2.2rem); }

/*************************************
#about_sanbrain
*************************************/
#about_sanbrain .inner {
  text-align: center; }
#about_sanbrain h2.Title {
  font-weight: 600;
  font-family: "Jost", sans-serif;
  font-style: italic;
  color: #005fb7;
  line-height: 1.3;
  font-size: clamp(3.5rem, 9vw, 8rem);
  text-align: center;
  margin-bottom: 5%; }
  #about_sanbrain h2.Title span {
    font-size: clamp(3.5rem, 9vw, 8rem);
    font-weight: 300;
    font-family: "Jost", sans-serif; }
  #about_sanbrain h2.Title span.jp {
    font-size: clamp(2rem, 5vw, 4.5rem);
    font-weight: 400;
    font-family: "Jost", sans-serif; }
#about_sanbrain .origin_ol {
  text-align: center;
  margin-bottom: 8%;
  display: flex;
  justify-content: space-between; }
  #about_sanbrain .origin_ol .name_ol {
    background: #f7f7f7;
    padding: 20px 30px;
    width: 48%; }
    @media screen and (max-width: 480px) {
      #about_sanbrain .origin_ol .name_ol {
        padding: 15px 15px; } }
    #about_sanbrain .origin_ol .name_ol .name {
      font-size: clamp(3rem, 2vw, 4rem);
      font-weight: 500;
      font-family: "Jost", sans-serif;
      font-style: italic; }
#about_sanbrain p.result {
  font-size: clamp(2rem, 2vw, 3rem);
  margin-bottom: 8%; }
  #about_sanbrain p.result strong {
    font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif;
    display: inline-block;
    width: 100%;
    font-size: clamp(3rem, 2vw, 4rem);
    color: #005fb7; }
#about_sanbrain p.achievements {
  font-size: clamp(1.6rem, 1.2vw, 2.2rem);
  margin-bottom: 50px; }
  @media screen and (min-width: 961px) {
    #about_sanbrain p.achievements {
      margin-bottom: 80px; } }

/*************************************
#groupe_nobase
*************************************/
#groupe_nobase {
  background: #dde7e9;
  background-size: cover; }
  #groupe_nobase h2 {
    font-weight: 500;
    font-size: clamp(1.6rem, 0.82vw, 2rem);
    margin-bottom: 30px;
    text-align: center; }
    #groupe_nobase h2 span.en {
      display: inline-block;
      font-size: clamp(3.5rem, 6vw, 6.5rem);
      font-family: "Jost", sans-serif;
      font-style: italic;
      color: #00233f;
      line-height: 1.0;
      margin-bottom: 10px;
      width: 100%; }
  #groupe_nobase h3.name {
    font-weight: bold;
    text-align: center;
    margin-bottom: 8%; }
    @media screen and (max-width: 767px) {
      #groupe_nobase h3.name {
        margin-bottom: 40px; } }
    #groupe_nobase h3.name .logo {
      max-width: 200px;
      margin: 0px auto;
      margin-bottom: 15px;
      display: inline-block;
      padding-top: 25px; }
      @media screen and (min-width: 961px) {
        #groupe_nobase h3.name .logo {
          max-width: 300px; } }
  #groupe_nobase .about_nobase {
    font-size: clamp(1.8rem, 0.4vw, 2rem);
    margin-bottom: 8%;
    text-align: center; }
    #groupe_nobase .about_nobase span {
      font-weight: bold;
      font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif;
      font-size: clamp(2rem, 2vw, 3rem);
      display: inline-block;
      width: 100%;
      margin-bottom: 3%; }
  #groupe_nobase .text {
    font-size: clamp(1.6rem, 1.2vw, 2.2rem);
    line-height: 2.0; }
  #groupe_nobase .ol {
    margin-bottom: 8%;
    padding-top: 8%;
    border-top: 1px solid #00233f; }
    @media screen and (min-width: 768px) {
      #groupe_nobase .ol {
        display: flex;
        justify-content: space-between; } }
    @media screen and (min-width: 768px) {
      #groupe_nobase .ol .titArea {
        width: 250px; } }
    @media screen and (min-width: 768px) {
      #groupe_nobase .ol .textArea {
        width: -webkit-calc(100% -300px);
        width: calc(100% - 300px); } }
  #groupe_nobase h3 {
    font-size: clamp(1.6rem, 0.82vw, 2rem);
    line-height: 1.0;
    font-weight: 500;
    margin-bottom: 3%; }
    #groupe_nobase h3 span.en {
      font-family: "Jost", sans-serif;
      font-style: italic;
      font-size: clamp(4rem, 8vw, 8rem);
      display: inline-block;
      width: 100%;
      line-height: 1.0;
      color: #00233f; }
  #groupe_nobase .catch {
    font-size: clamp(2.5rem, 1vw, 3rem);
    font-weight: 400;
    margin-bottom: 3%; }
  #groupe_nobase p {
    font-size: clamp(1.6rem, 0.8vw, 2rem); }

#about_sanbrain .overview, #groupe_nobase .overview {
  padding: 20px 20px; }
  @media screen and (min-width: 768px) {
    #about_sanbrain .overview, #groupe_nobase .overview {
      padding: 30px 80px; } }
  #about_sanbrain .overview h4.overview_tit, #groupe_nobase .overview h4.overview_tit {
    font-weight: 500;
    font-size: clamp(1.6rem, 0.82vw, 2rem);
    margin-bottom: 30px;
    text-align: center; }
    #about_sanbrain .overview h4.overview_tit span.en, #groupe_nobase .overview h4.overview_tit span.en {
      display: inline-block;
      font-size: clamp(3.5rem, 6vw, 6.5rem);
      font-family: "Jost", sans-serif;
      font-style: italic;
      line-height: 1.0;
      margin-bottom: 10px;
      width: 100%; }
  #about_sanbrain .overview .table_overview, #groupe_nobase .overview .table_overview {
    border-collapse: collapse;
    table-layout: fixed;
    width: 100%;
    /* table幅を100%に指定 */
    border: none; }
  #about_sanbrain .overview .table_overview th,
  #about_sanbrain .overview .table_overview td, #groupe_nobase .overview .table_overview th,
  #groupe_nobase .overview .table_overview td {
    display: block;
    /* セルをブロック要素に指定 */
    width: 100%;
    /* セルを親要素いっぱいの幅に指定 */
    border: none;
    padding: 15px 10px;
    vertical-align: top;
    text-align: left;
    box-sizing: border-box; }
  #about_sanbrain .overview .table_overview th, #groupe_nobase .overview .table_overview th {
    font-weight: 700;
    color: #fff; }
    @media screen and (max-width: 767px) {
      #about_sanbrain .overview .table_overview th, #groupe_nobase .overview .table_overview th {
        background: #00233f; } }
  @media screen and (min-width: 768px) {
    #about_sanbrain .overview .table_overview th,
    #about_sanbrain .overview .table_overview td, #groupe_nobase .overview .table_overview th,
    #groupe_nobase .overview .table_overview td {
      display: table-cell;
      /* デフォルト値に指定 */
      border-bottom: 1px solid #ccc;
      color: #000;
      padding: 25px 10px;
      font-size: 1.8rem; }
      #about_sanbrain .overview .table_overview th:nth-of-type(6),
      #about_sanbrain .overview .table_overview td:nth-of-type(6), #groupe_nobase .overview .table_overview th:nth-of-type(6),
      #groupe_nobase .overview .table_overview td:nth-of-type(6) {
        border-bottom: none; }
    #about_sanbrain .overview .table_overview th, #groupe_nobase .overview .table_overview th {
      color: #00233f; }
    #about_sanbrain .overview .table_overview tr th:first-child, #groupe_nobase .overview .table_overview tr th:first-child {
      width: 150px;
      /* thの固定幅 */ }
    #about_sanbrain .overview tbody, #groupe_nobase .overview tbody {
      border-top: 1px solid #cccccc; } }

#about_sanbrain .overview {
  background: #f7f7f7; }
#about_sanbrain h4 span.en {
  color: #005fb7; }

#groupe_nobase .overview {
  background: #ffffff; }
#groupe_nobase h4 span.en {
  color: #00233f; }

#profile h2 {
  font-weight: 500;
  font-size: clamp(1.6rem, 0.82vw, 2rem);
  margin-bottom: 8%; }
  #profile h2 span.en {
    display: inline-block;
    font-size: clamp(3.8rem, 5.54vw, 6.5rem);
    font-family: "Jost", sans-serif;
    font-style: italic;
    color: #005fb7;
    line-height: 1.0; }
    @media screen and (max-width: 960px) {
      #profile h2 span.en {
        padding-right: 15px; } }
    @media screen and (min-width: 961px) {
      #profile h2 span.en {
        width: 100%; } }
#profile .profile_ol {
  margin-bottom: 8%; }
  @media screen and (min-width: 961px) {
    #profile .profile_ol {
      display: flex;
      justify-content: space-between; } }
  @media screen and (min-width: 961px) {
    #profile .profile_ol .profArea {
      width: -webkit-calc(100% -480px);
      width: calc(100% - 480px); } }
  @media screen and (min-width: 961px) {
    #profile .profile_ol .photoArea {
      width: 450px; } }
#profile .todoketai {
  font-size: clamp(1.8rem, 0.4vw, 2rem);
  font-weight: bold;
  margin-bottom: 5px; }
#profile .point {
  font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif;
  font-size: clamp(2.2rem, 3.2vw, 3.8rem);
  margin-bottom: 8%; }
#profile .representative p {
  margin-bottom: 0px; }
#profile .representative .tit {
  margin-bottom: 10px; }
#profile .representative .zeirishi {
  font-size: 1.8rem;
  font-weight: bold; }
#profile .representative .name span {
  font-size: 3.0rem;
  font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif;
  font-weight: bold; }
#profile .messageArea {
  background-image: linear-gradient(90deg, #0bb8de, #0b5fb3);
  text-align: center;
  padding: 30px 30px; }
  #profile .messageArea h3 {
    font-weight: 500;
    color: #00233f;
    font-size: clamp(1.6rem, 0.82vw, 2rem);
    margin-bottom: 6%; }
    @media screen and (max-width: 960px) {
      #profile .messageArea h3 {
        text-align: center; } }
    #profile .messageArea h3 span.en {
      display: inline-block;
      width: 100%;
      color: #00233f;
      font-weight: 500;
      font-size: clamp(3.5rem, 5vw, 6rem);
      font-family: "Jost", sans-serif;
      font-style: italic;
      line-height: 1.0; }
  #profile .messageArea p, #profile .messageArea span, #profile .messageArea strong {
    font-size: clamp(1.4rem, 1.2vw, 2rem);
    line-height: 2.2;
    color: #ffffff;
    font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif; }
  @media screen and (min-width: 961px) {
    #profile .messageArea {
      padding: 50px 30px; } }
  #profile .messageArea p {
    margin-bottom: 5%; }
  #profile .messageArea strong {
    font-weight: bold; }
