@charset "UTF-8";
/*===============================================================
	読み込み
===============================================================*/
/*===============================================================
	変数
===============================================================*/
/*　画面左右のマージン　*/
/*　幅　*/
/*	グリッド幅  */
/*	セクション、コンテンツ間のマージン　*/
:root {
  /*

  .hoge {
  	transition: all 1s var(--ease-elastic-out);
  	opacity: 1;
  }

  */
  /* Sine（もっとも弱い） */
  --ease-sine-in: cubic-bezier(0.47, 0, 0.745, 0.715);
  --ease-sine-out: cubic-bezier(0.39, 0.575, 0.565, 1);
  --ease-sine-inout: cubic-bezier(0.445, 0.05, 0.55, 0.95);
  /* Quad（弱め。Sineより強く、Cubicより弱い） */
  --ease-quad-in: cubic-bezier(0.55, 0.085, 0.68, 0.53);
  --ease-quad-out: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --ease-quad-inout: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  /* Cubic（Quadより強く、Quartより弱い） */
  --ease-cubic-in: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  --ease-cubic-out: cubic-bezier(0.215, 0.61, 0.355, 1);
  --ease-cubic-inout: cubic-bezier(0.645, 0.045, 0.355, 1);
  /* Quart（Cubicより強く、Quintより弱い） */
  --ease-quart-in: cubic-bezier(0.895, 0.03, 0.685, 0.22);
  --ease-quart-out: cubic-bezier(0.165, 0.84, 0.44, 1);
  --ease-quart-inout: cubic-bezier(0.77, 0, 0.175, 1);
  /* Quint（Quartより強く、Expoより弱い） */
  --ease-quint-in: cubic-bezier(0.755, 0.05, 0.855, 0.06);
  --ease-quint-out: cubic-bezier(0.23, 1, 0.32, 1);
  --ease-quint-inout: cubic-bezier(0.86, 0, 0.07, 1);
  /* Expo（もっとも強い） */
  --ease-expo-in: cubic-bezier(0.95, 0.05, 0.795, 0.035);
  --ease-expo-out: cubic-bezier(0.19, 1, 0.22, 1);
  --ease-expo-inout: cubic-bezier(1, 0, 0, 1);
  /* Circ（Expoのような強さを持つが、加速や減速の時間がよりゆるやか。） */
  --ease-circ-in: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  --ease-circ-out: cubic-bezier(0.075, 0.82, 0.165, 1);
  --ease-circ-inout: cubic-bezier(0.785, 0.135, 0.15, 0.86);
  /* Back（少し行き過ぎてから戻ってくるような動き） */
  --ease-back-in: cubic-bezier(0.6, -0.28, 0.735, 0.045);
  --ease-back-out: cubic-bezier(0.175, 0.885, 0.32, 1.275);
  --ease-back-inout: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  /* ぼよんぼよんする動き */
  --ease-elastic-out: linear(0, 0.2178 2.1%, 1.1144 8.49%, 1.2959 10.7%, 1.3463 11.81%, 1.3705 12.94%, 1.3726, 1.3643 14.48%, 1.3151 16.2%, 1.0317 21.81%, 0.941 24.01%, 0.8912 25.91%, 0.8694 27.84%, 0.8698 29.21%, 0.8824 30.71%, 1.0122 38.33%, 1.0357, 1.046 42.71%, 1.0416 45.7%, 0.9961 53.26%, 0.9839 57.54%, 0.9853 60.71%, 1.0012 68.14%, 1.0056 72.24%, 0.9981 86.66%, 1);
  /* バウンス */
  --ease-bounce-out: linear(0, 0.004, 0.016, 0.035, 0.063 9.1%, 0.141, 0.25, 0.391, 0.563, 0.765, 1, 0.891, 0.813 45.5%, 0.785, 0.766, 0.754, 0.75, 0.754, 0.766, 0.785, 0.813 63.6%, 0.891, 1 72.7%, 0.973, 0.953, 0.941, 0.938, 0.941, 0.953, 0.973, 1, 0.988, 0.984, 0.988, 1);
}

/*===============================================================
	色 _color.scss
===============================================================*/
.color_main {
  color: #333;
}

.color_main_hover {
  color: #252525;
}

.color_sub {
  color: #ccc;
}

.color_sub_hover {
  color: #ddd;
}

.color_red {
  color: #CD7B77;
}

.color_red_hover {
  color: #da645e;
}

.color_brown {
  color: #847865;
}

.color_brown_hover {
  color: #6d614e;
}

.color_light_brown {
  color: #F1EDE7;
}

.color_light_brown_hover {
  color: #dcd6ce;
}

.color_blue {
  color: #0083CE;
}

.color_blue_hover {
  color: #0a658f;
}

.color_light_blue {
  color: #ECF5F7;
}

.color_green {
  color: #7DD090;
}

.color_light_green {
  color: #D6F0DC;
}

.color_orange {
  color: #E69901;
}

.color_purple {
  color: #c001e6;
}

.color_yellow {
  color: #fc0;
}

.color_light_yellow {
  color: #FFF5E0;
}

.color_beige {
  color: #F4F3E9;
}

.color_beige_dark {
  color: #e0decf;
}

.color_pink {
  color: #FD004E;
}

.color_light_pink {
  color: #FCEFF2;
}

.color_gray {
  color: #666;
}

.color_white {
  color: #fff;
}

.color_light_gray {
  color: #8F8F8F;
}

.color_key {
  color: #5987EF;
}

/*===============================================================
	_mixin.scss
===============================================================*/
/*===============================================================
	ボタン
	@include btn_base(#c00,#000,#fff,#fff,auto);
===============================================================*/
/*===============================================================
	矢印
	@include mx_arw();	
===============================================================*/
/*===============================================================
	三角
	@include mx_sankaku(幅,高さ,色,色hover,向き);	
===============================================================*/
/*===============================================================
	センタリング
	@include mx_margin_center();	
===============================================================*/
/*===============================================================
	斜線の背景
	@include mx_slash($color1,$color2,$width);	
===============================================================*/
/*===============================================================
	グラデーション
	@include mx_grade(色1,色2,向き（横:h / 縦:v）)
===============================================================*/
/*===============================================================

	_utils.scss 2021/9/24

===============================================================*/
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.align_center {
  text-align: center !important;
}

.align_right {
  text-align: right !important;
}

.align_left {
  text-align: left !important;
}

@media only screen and (max-width: 767px) {
  .sp_align_center {
    text-align: center !important;
  }
  .sp_align_right {
    text-align: right !important;
  }
  .sp_align_left {
    text-align: left !important;
  }
}
/* for SP  */
.video iframe {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  border: 0;
}

/*===============================================================

	フロート関係

===============================================================*/
.clear {
  width: 100%;
  overflow: hidden;
}

.clearboth {
  clear: both;
}

.cf:before,
.cf:after {
  content: " ";
  display: table;
}

.cf:after {
  clear: both;
}

.cf {
  *zoom: 1;
}

.flol {
  float: left;
}

.flor {
  float: right;
}

/*===============================================================

	PC/SP/TABLET

===============================================================*/
.sp {
  display: none;
}

.tablet {
  display: none;
}

.sp {
  display: none;
}

.sp_tablet {
  display: none;
}

.none {
  display: none !important;
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .pc {
    display: none;
  }
  .tablet,
  .pc_tablet,
  .sp_tablet {
    display: block;
  }
}
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 767px) {
  .sp {
    display: block;
  }
  .pc_tablet,
  .tablet {
    display: none;
  }
}
/* for SP max-width: 800px */
/*-------------------------------------------------------------
	font	
-------------------------------------------------------------*/
.font_en {
  font-family: "Roboto", sans-serif;
}

.font_ss {
  font-size: smaller;
  font-size: 70%;
}

.font_s {
  font-size: small;
  font-size: 80%;
}

.font_m {
  font-size: medium;
  font-size: 90%;
}

.font_l {
  font-size: large;
  font-size: 120%;
}

.font_xl {
  font-size: larger;
  font-size: 140%;
}

/*===============================================================

	img fig

===============================================================*/
.fig img,
.fitimg img,
.photo img {
  width: 100%;
  height: auto;
}

.video_container {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.video_container iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～800px */
/* for SP max-width: 800px */
/*===============================================================
js_multilinkarea js_linkarea
===============================================================*/
.js_linkarea,
.js_multilinkarea {
  cursor: pointer;
}

/*===============================================================
    js_scroll
===============================================================*/
.js_scroll {
  -webkit-transition: all 1s;
  transition: all 1s;
  /* タブレット */
}
.js_scroll {
  /* for TABLET */
  /* SP */
}
.js_scroll {
  /* for SP */
}

/*===============================================================
    js_fadein
===============================================================*/
.js_fadein {
  opacity: 0;
}
.js_fadein.is_active {
  opacity: 1;
}
.js_fadein {
  /* タブレット */
}
.js_fadein {
  /* SP */
}
/*===============================================================
    js_fadein_up
===============================================================*/
.js_fadein_up {
  opacity: 0;
  -webkit-transform: translateY(3vw);
          transform: translateY(3vw);
}
.js_fadein_up.is_active {
  opacity: 1;
  -webkit-transform: translateY(0vw);
          transform: translateY(0vw);
}

/*===============================================================
    js_fadein_down
===============================================================*/
.js_fadein_down {
  opacity: 0;
  -webkit-transform: translateY(-3vw);
          transform: translateY(-3vw);
}
.js_fadein_down.is_active {
  opacity: 1;
  -webkit-transform: translateY(0vw);
          transform: translateY(0vw);
}

/*===============================================================
    js_fadein_left
===============================================================*/
.js_fadein_left {
  opacity: 0;
  -webkit-transform: translateX(-3vw);
          transform: translateX(-3vw);
}
.js_fadein_left.is_active {
  opacity: 1;
  -webkit-transform: translateX(0vw);
          transform: translateX(0vw);
}

/*===============================================================
    js_fadein_right
===============================================================*/
.js_fadein_right {
  opacity: 0;
  -webkit-transform: translateX(3vw);
          transform: translateX(3vw);
}
.js_fadein_right.is_active {
  opacity: 1;
  -webkit-transform: translateX(0vw);
          transform: translateX(0vw);
}

/*===============================================================
    js_fadein_photo
===============================================================*/
.js_fadein_photo {
  overflow: hidden;
}
.js_fadein_photo img {
  -webkit-transition: all 1s;
  transition: all 1s;
  opacity: 0;
  -webkit-transform: scale(1);
          transform: scale(1);
}
.js_fadein_photo.is_active img {
  opacity: 1;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

/*===============================================================
	js_gsap_parallax_photo
===============================================================*/
.js_gsap_parallax_photo_reverse,
.js_gsap_parallax_photo {
  background-color: #000;
  overflow: hidden;
}

/*===============================================================
	js_2step
===============================================================*/
.js_2step, .js_2step_down, .js_2step_up {
  display: inline-block;
  position: relative;
  z-index: 1;
  overflow: hidden;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.js_2step::before, .js_2step_down::before, .js_2step_up::before, .js_2step::after, .js_2step_down::after, .js_2step_up::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  background-color: #eee;
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  -webkit-transition: all 0.5s cubic-bezier(0.51, -0.01, 0.21, 1.01);
  transition: all 0.5s cubic-bezier(0.51, -0.01, 0.21, 1.01);
  z-index: 2;
}
.js_2step::after, .js_2step_down::after, .js_2step_up::after {
  background-color: #fff;
}
.js_2step.is_active::before, .is_active.js_2step_down::before, .is_active.js_2step_up::before, .js_2step.is_active::after, .is_active.js_2step_down::after, .is_active.js_2step_up::after {
  -webkit-transform-origin: 0 right;
          transform-origin: 0 right;
}
.js_2step.is_active::after, .is_active.js_2step_down::after, .is_active.js_2step_up::after {
  left: auto;
  right: 0;
  width: 0%;
}
.js_2step.is_active::before, .is_active.js_2step_down::before, .is_active.js_2step_up::before {
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  left: auto;
  right: 0;
  width: 0%;
}

/*===============================================================
	js_2step_up
===============================================================*/
.js_2step_up.is_active::before, .js_2step_up.is_active::after {
  -webkit-transform-origin: top 0;
          transform-origin: top 0;
  top: 0;
  bottom: auto;
  left: auto;
  right: auto;
  width: 100%;
  height: 0%;
}

/*===============================================================
	js_2step_down
===============================================================*/
.js_2step_down.is_active::before, .js_2step_down.is_active::after {
  -webkit-transform-origin: bottom 0;
          transform-origin: bottom 0;
  top: auto;
  bottom: 0;
  left: auto;
  right: auto;
  width: 100%;
  height: 0%;
}

/*===============================================================

	マージン

===============================================================*/
.mt0 {
  margin-top: 0px !important;
}

.mt05 {
  margin-top: 0.5rem !important;
}

.mt10 {
  margin-top: 1rem !important;
}

.mt15 {
  margin-top: 1.5rem !important;
}

.mt20 {
  margin-top: 2rem !important;
}

.mt25 {
  margin-top: 2.5rem !important;
}

.mt30 {
  margin-top: 3rem !important;
}

.mt40 {
  margin-top: 4rem !important;
}

.mt50 {
  margin-top: 5rem !important;
}

.mt60 {
  margin-top: 6rem !important;
}

.mt70 {
  margin-top: 7rem !important;
}

.mt80 {
  margin-top: 8rem !important;
}

.mt90 {
  margin-top: 9rem !important;
}

.mt100 {
  margin-top: 10rem !important;
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .mt0 {
    margin-top: 0px !important;
  }
  .mt05 {
    margin-top: 0.47vw !important;
  }
  .mt10 {
    margin-top: 0.93vw !important;
  }
  .mt15 {
    margin-top: 1.4vw !important;
  }
  .mt20 {
    margin-top: 1.87vw !important;
  }
  .mt25 {
    margin-top: 2.34vw !important;
  }
  .mt30 {
    margin-top: 2.8vw !important;
  }
  .mt40 {
    margin-top: 3.74vw !important;
  }
  .mt50 {
    margin-top: 4.67vw !important;
  }
  .mt60 {
    margin-top: 5.61vw !important;
  }
  .mt70 {
    margin-top: 6.54vw !important;
  }
  .mt80 {
    margin-top: 7.48vw !important;
  }
  .mt90 {
    margin-top: 8.41vw !important;
  }
  .mt100 {
    margin-top: 9.35vw !important;
  }
  .mb05 {
    margin-bottom: 0.47vw !important;
  }
  .mb10 {
    margin-bottom: 0.93vw !important;
  }
  .mb15 {
    margin-bottom: 1.4vw !important;
  }
  .mb20 {
    margin-bottom: 1.87vw !important;
  }
  .mb25 {
    margin-bottom: 2.34vw !important;
  }
  .mb30 {
    margin-bottom: 2.8vw !important;
  }
  .mt05 {
    margin-top: 0.47vw !important;
  }
  .mt10 {
    margin-top: 0.93vw !important;
  }
  .mt15 {
    margin-top: 1.4vw !important;
  }
  .mt20 {
    margin-top: 1.87vw !important;
  }
  .mt25 {
    margin-top: 2.34vw !important;
  }
  .mt30 {
    margin-top: 2.8vw !important;
  }
  .mt40 {
    margin-top: 3.74vw !important;
  }
  .mt50 {
    margin-top: 4.67vw !important;
  }
  .mt60 {
    margin-top: 5.61vw !important;
  }
  .mt70 {
    margin-top: 6.54vw !important;
  }
  .mt80 {
    margin-top: 7.48vw !important;
  }
  .mt90 {
    margin-top: 8.41vw !important;
  }
  .mt100 {
    margin-top: 9.35vw !important;
  }
  .mb05 {
    margin-bottom: 0.47vw !important;
  }
  .mb10 {
    margin-bottom: 0.93vw !important;
  }
  .mb15 {
    margin-bottom: 1.4vw !important;
  }
  .mb20 {
    margin-bottom: 1.87vw !important;
  }
  .mb25 {
    margin-bottom: 2.34vw !important;
  }
  .mb30 {
    margin-bottom: 2.8vw !important;
  }
  .mb40 {
    margin-bottom: 3.74vw !important;
  }
  .mb50 {
    margin-bottom: 4.67vw !important;
  }
  .mb60 {
    margin-bottom: 5.61vw !important;
  }
  .mb70 {
    margin-bottom: 6.54vw !important;
  }
  .mb80 {
    margin-bottom: 7.48vw !important;
  }
  .mb90 {
    margin-bottom: 8.41vw !important;
  }
  .mb100 {
    margin-bottom: 9.35vw !important;
  }
}
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～800px */
@media screen and (max-width: 767px) {
  .mt05 {
    margin-top: 0.63vw !important;
  }
  .mt10 {
    margin-top: 1.25vw !important;
  }
  .mt15 {
    margin-top: 1.88vw !important;
  }
  .mt20 {
    margin-top: 2.5vw !important;
  }
  .mt25 {
    margin-top: 3.13vw !important;
  }
  .mt30 {
    margin-top: 3.75vw !important;
  }
  .mt40 {
    margin-top: 5vw !important;
  }
  .mt50 {
    margin-top: 6.25vw !important;
  }
  .mt60 {
    margin-top: 7.5vw !important;
  }
  .mt70 {
    margin-top: 8.75vw !important;
  }
  .mt80 {
    margin-top: 10vw !important;
  }
  .mt90 {
    margin-top: 11.25vw !important;
  }
  .mt100 {
    margin-top: 12.5vw !important;
  }
  .mt0_sp {
    margin-top: 0 !important;
  }
  .mt05_sp {
    margin-top: 0.63vw !important;
  }
  .mt10_sp {
    margin-top: 1.25vw !important;
  }
  .mt15_sp {
    margin-top: 1.88vw !important;
  }
  .mt20_sp {
    margin-top: 2.5vw !important;
  }
  .mt25_sp {
    margin-top: 3.13vw !important;
  }
  .mt30_sp {
    margin-top: 3.75vw !important;
  }
  .mt40_sp {
    margin-top: 5vw !important;
  }
  .mt50_sp {
    margin-top: 6.25vw !important;
  }
  .mt60_sp {
    margin-top: 7.5vw !important;
  }
  .mt70_sp {
    margin-top: 8.75vw !important;
  }
  .mt80_sp {
    margin-top: 10vw !important;
  }
  .mt90_sp {
    margin-top: 11.25vw !important;
  }
  .mt100_sp {
    margin-top: 12.5vw !important;
  }
  .mb05_sp {
    margin-bottom: 0.63vw !important;
  }
  .mb10_sp {
    margin-bottom: 1.25vw !important;
  }
  .mb15_sp {
    margin-bottom: 1.88vw !important;
  }
  .mb20_sp {
    margin-bottom: 2.5vw !important;
  }
  .mb25_sp {
    margin-bottom: 3.13vw !important;
  }
  .mb30_sp {
    margin-bottom: 3.75vw !important;
  }
  .mb40_sp {
    margin-bottom: 5vw !important;
  }
  .mb50_sp {
    margin-bottom: 6.25vw !important;
  }
  .mb60_sp {
    margin-bottom: 7.5vw !important;
  }
  .mb70_sp {
    margin-bottom: 8.75vw !important;
  }
  .mb80_sp {
    margin-bottom: 10vw !important;
  }
  .mb90_sp {
    margin-bottom: 11.25vw !important;
  }
  .mb100_sp {
    margin-bottom: 12.5vw !important;
  }
}
/* for SP max-width: 800px */
/*-------------------------------------------------------------
 margin-bottom
-------------------------------------------------------------*/
.mb0 {
  margin-bottom: 0rem !important;
}

.mb05 {
  margin-bottom: 0.5rem !important;
}

.mb10 {
  margin-bottom: 1rem !important;
}

.mb15 {
  margin-bottom: 1.5rem !important;
}

.mb20 {
  margin-bottom: 2rem !important;
}

.mb25 {
  margin-bottom: 2.5rem !important;
}

.mb30 {
  margin-bottom: 3rem !important;
}

.mb40 {
  margin-bottom: 4rem !important;
}

.mb50 {
  margin-bottom: 5rem !important;
}

.mb60 {
  margin-bottom: 6rem !important;
}

.mb70 {
  margin-bottom: 7rem !important;
}

.mb80 {
  margin-bottom: 8rem !important;
}

.mb90 {
  margin-bottom: 9rem !important;
}

.mb100 {
  margin-bottom: 10rem !important;
}

@media screen and (max-width: 767px) {
  .mb05 {
    margin-bottom: 0.63vw !important;
  }
  .mb10 {
    margin-bottom: 1.25vw !important;
  }
  .mb15 {
    margin-bottom: 1.88vw !important;
  }
  .mb20 {
    margin-bottom: 2.5vw !important;
  }
  .mb25 {
    margin-bottom: 3.13vw !important;
  }
  .mb30 {
    margin-bottom: 3.75vw !important;
  }
  .mb40 {
    margin-bottom: 5vw !important;
  }
  .mb50 {
    margin-bottom: 6.25vw !important;
  }
  .mb60 {
    margin-bottom: 7.5vw !important;
  }
  .mb70 {
    margin-bottom: 8.75vw !important;
  }
  .mb80 {
    margin-bottom: 10vw !important;
  }
  .mb90 {
    margin-bottom: 11.25vw !important;
  }
  .mb100 {
    margin-bottom: 12.5vw !important;
  }
}
/* for SP */
/*-------------------------------------------------------------
 margin-left
-------------------------------------------------------------*/
.ml0 {
  margin-left: 0rem !important;
}

.ml05 {
  margin-left: 0.5rem !important;
}

.ml10 {
  margin-left: 1rem !important;
}

.ml15 {
  margin-left: 1.5rem !important;
}

.ml20 {
  margin-left: 2rem !important;
}

.ml25 {
  margin-left: 2.5rem !important;
}

.ml30 {
  margin-left: 3rem !important;
}

.ml40 {
  margin-left: 4rem !important;
}

.ml50 {
  margin-left: 5rem !important;
}

.ml60 {
  margin-left: 6rem !important;
}

.ml70 {
  margin-left: 7rem !important;
}

.ml80 {
  margin-left: 8rem !important;
}

.ml90 {
  margin-left: 9rem !important;
}

.ml100 {
  margin-left: 10rem !important;
}

@media screen and (max-width: 767px) {
  .ml05 {
    margin-left: 0.63vw !important;
  }
  .ml10 {
    margin-left: 1.25vw !important;
  }
  .ml15 {
    margin-left: 1.88vw !important;
  }
  .ml20 {
    margin-left: 2.5vw !important;
  }
  .ml25 {
    margin-left: 3.13vw !important;
  }
  .ml30 {
    margin-left: 3.75vw !important;
  }
  .ml40 {
    margin-left: 5vw !important;
  }
  .ml50 {
    margin-left: 6.25vw !important;
  }
  .ml60 {
    margin-left: 7.5vw !important;
  }
  .ml70 {
    margin-left: 8.75vw !important;
  }
  .ml80 {
    margin-left: 10vw !important;
  }
  .ml90 {
    margin-left: 11.25vw !important;
  }
  .ml100 {
    margin-left: 12.5vw !important;
  }
}
/* for SP */
/*-------------------------------------------------------------
 margin-right
-------------------------------------------------------------*/
.mr0 {
  margin-right: 0rem !important;
}

.mr05 {
  margin-right: 0.5rem !important;
}

.mr10 {
  margin-right: 1rem !important;
}

.mr15 {
  margin-right: 1.5rem !important;
}

.mr20 {
  margin-right: 2rem !important;
}

.mr25 {
  margin-right: 2.5rem !important;
}

.mr30 {
  margin-right: 3rem !important;
}

.mr40 {
  margin-right: 4rem !important;
}

.mr50 {
  margin-right: 5rem !important;
}

.mr60 {
  margin-right: 6rem !important;
}

.mr70 {
  margin-right: 7rem !important;
}

.mr80 {
  margin-right: 8rem !important;
}

.mr90 {
  margin-right: 9rem !important;
}

.mr100 {
  margin-right: 10rem !important;
}

@media screen and (max-width: 767px) {
  .mr05 {
    margin-right: 0.63vw !important;
  }
  .mr10 {
    margin-right: 1.25vw !important;
  }
  .mr15 {
    margin-right: 1.88vw !important;
  }
  .mr20 {
    margin-right: 2.5vw !important;
  }
  .mr25 {
    margin-right: 3.13vw !important;
  }
  .mr30 {
    margin-right: 3.75vw !important;
  }
  .mr40 {
    margin-right: 5vw !important;
  }
  .mr50 {
    margin-right: 6.25vw !important;
  }
  .mr60 {
    margin-right: 7.5vw !important;
  }
  .mr70 {
    margin-right: 8.75vw !important;
  }
  .mr80 {
    margin-right: 10vw !important;
  }
  .mr90 {
    margin-right: 11.25vw !important;
  }
  .mr100 {
    margin-right: 12.5vw !important;
  }
}
/* for SP */
/*===============================================================

	padding

===============================================================*/
.pt0 {
  padding-top: 0 !important;
}

.pb0 {
  padding-bottom: 0 !important;
}

@media screen and (max-width: 767px) {
  .pt0_sp {
    padding-top: 0 !important;
  }
}

@media screen and (max-width: 767px) {
  .pb0_sp {
    padding-bottom: 0 !important;
  }
}

/*===============================================================

    アニメーション

    animation: rotate_loop 40s linear infinite;

===============================================================*/
@-webkit-keyframes rotate_loop {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes rotate_loop {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@-webkit-keyframes rotate_loop_revers {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg);
  }
}
@keyframes rotate_loop_revers {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg);
  }
}
@-webkit-keyframes scale_bounse {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes scale_bounse {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes kv_phone_animation {
  0% {
    -webkit-transform: translate(0, 0) rotate(0);
            transform: translate(0, 0) rotate(0);
  }
  50% {
    -webkit-transform: translate(0, 2rem) rotate(-2deg);
            transform: translate(0, 2rem) rotate(-2deg);
  }
  100% {
    -webkit-transform: translate(0, 0) rotate(0deg);
            transform: translate(0, 0) rotate(0deg);
  }
}
@keyframes kv_phone_animation {
  0% {
    -webkit-transform: translate(0, 0) rotate(0);
            transform: translate(0, 0) rotate(0);
  }
  50% {
    -webkit-transform: translate(0, 2rem) rotate(-2deg);
            transform: translate(0, 2rem) rotate(-2deg);
  }
  100% {
    -webkit-transform: translate(0, 0) rotate(0deg);
            transform: translate(0, 0) rotate(0deg);
  }
}
[class^=c_btn] a,
[class^=c_btn] a:hover {
  text-decoration: none;
}

/*===============================================================

    c_btn

===============================================================*/
.c_btn {
  min-width: 280px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1;
}
.c_btn a {
  position: relative;
  display: block;
  padding: 15px 30px !important;
  border-radius: 50px;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
  color: rgb(0, 131, 206);
  border: 1px solid rgb(0, 131, 206);
  background: #fff;
  width: 270px;
  overflow: hidden;
}
.c_btn a span {
  position: relative;
  z-index: 2;
}
.c_btn.active a,
.c_btn a:hover {
  color: #fff;
}
.c_btn a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background: rgb(0, 131, 206);
  background: -webkit-gradient(linear, left top, right top, from(rgb(0, 131, 206)), color-stop(50%, rgb(0, 131, 206)), to(rgba(0, 131, 206, 0)));
  background: linear-gradient(90deg, rgb(0, 131, 206) 0%, rgb(0, 131, 206) 50%, rgba(0, 131, 206, 0) 100%);
  -webkit-transition: all 1.5s;
  transition: all 1.5s;
  z-index: 1;
}
.c_btn.active a::before,
.c_btn a:hover::before {
  width: 200%;
}
.c_btn a::after {
  content: "\f105";
  color: rgb(0, 131, 206);
  font-family: "Font Awesome 6 Pro";
  position: absolute;
  right: 15px;
  font-size: 1.6rem;
  font-weight: 400;
  margin-left: 10px;
}
.c_btn.active a:hover::after,
.c_btn a:hover::after {
  color: #fff;
}
.c_btn.-disabled a, .c_btn.-disabled button {
  cursor: auto;
  pointer-events: none;
  background-color: #999999;
}
@media screen and (max-width: 767px) {
  .c_btn a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    font-size: 3.5vw;
  }
}

/*===============================================================

	レイアウト
	_rayout.scss

===============================================================*/
.full_width {
  padding-left: 5rem;
  padding-right: 5rem;
}
@media screen and (max-width: 767px) {
  .full_width {
    padding-left: 8vw;
    padding-right: 8vw;
  }
}

.max_width {
  max-width: 1800px;
  margin-left: auto;
  margin-right: auto;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (max-width: 1900px) {
  .max_width {
    padding: 0 5rem;
  }
}
@media screen and (max-width: 1170px) {
  .max_width {
    padding: 0 3rem;
  }
}
@media screen and (max-width: 767px) {
  .max_width {
    padding-left: 0;
    padding-right: 0;
  }
}

.wide_width {
  max-width: 150rem;
  margin-left: auto;
  margin-right: auto;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (max-width: 1600px) {
  .wide_width {
    padding: 0 5rem;
  }
  .max_width .wide_width {
    padding: 0;
  }
}
@media screen and (max-width: 1170px) {
  .wide_width {
    padding: 0 3rem;
  }
  .max_width .wide_width {
    padding: 0;
  }
}
@media screen and (max-width: 767px) {
  .wide_width {
    padding-left: 0;
    padding-right: 0;
  }
}

.large_width {
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (max-width: 1300px) {
  .large_width {
    padding: 0 5rem;
  }
  .max_width .large_width, .wide_width .large_width {
    padding: 0;
  }
}
@media screen and (max-width: 1170px) {
  .large_width {
    padding: 0 3rem;
  }
  .max_width .large_width, .wide_width .large_width {
    padding: 0;
  }
}
@media screen and (max-width: 767px) {
  .large_width {
    padding-left: 0;
    padding-right: 0;
  }
}

.content_width {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  max-width: 107rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1170px) {
  .content_width {
    padding: 0 3rem;
  }
  .max_width .content_width, .wide_width .content_width, .large_width .content_width {
    padding: 0;
  }
}
@media screen and (max-width: 767px) {
  .content_width {
    padding-left: 0;
    padding-right: 0;
  }
}

.narrow_width {
  max-width: 70rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  .narrow_width {
    padding-left: 0;
    padding-right: 0;
  }
}

.btn_width {
  max-width: 40rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  .btn_width {
    padding-left: 0;
    padding-right: 0;
  }
}

.absolute_full_width {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/*===============================================================

	seciton
	headlineとcontentなど、複数の要素、機能を取りまとめるコンテナ的な親要素。
	幅はsection_innerに記述する

===============================================================*/
.section_wrp {
  overflow: hidden;
  display: block;
  padding-top: 110px;
  height: auto;
  /* タブレット */
}
.section_wrp {
  /* for TABLET */
  /* SP */
}
@media screen and (max-width: 767px) {
  .section_wrp {
    padding-top: 70px;
  }
}
.section_wrp {
  /* for SP */
}

.section {
  width: 100%;
}

.section_inner {
  margin: 0 auto;
  padding-top: 12rem;
  padding-bottom: 12rem;
  padding-left: 0;
  padding-right: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .section_inner {
    padding-top: 10vw;
    padding-bottom: 12vw;
    padding-left: 8vw;
    padding-right: 8vw;
  }
}

/*===============================================================

	content 
	個別のコンテンツ

===============================================================*/
.content + .content {
  margin-top: 10rem;
}

.headline + .content {
  margin-top: 6rem;
}

.content + .headline {
  margin-top: 10rem;
}

.content .content + *,
.content * + .content {
  margin-top: 6rem;
}

.content_title + .content {
  margin-top: 0;
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .content {
    width: 100%;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
/* for tablet */
/* SP向けレイアウトの指定：～736px */
@media screen and (max-width: 767px) {
  .content + .content {
    margin-top: 8rem;
  }
  .headline + .content {
    margin-top: 4rem;
  }
  .content + .headline {
    margin-top: 5rem;
  }
  .content .content + *,
  .content * + .content {
    margin-top: 4rem;
  }
  .content_title + .content {
    margin-top: 0;
  }
}
/* for SP */
/*-------------------------------------------------------------
	block	
-------------------------------------------------------------*/
.block + .block_title {
  margin-top: 5rem;
}
.block_title + .block {
  margin-top: 2rem;
}
.block + .block {
  margin-top: 4rem;
}
.block p + p {
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  .block + .block_title {
    margin-top: 4rem;
  }
  .block_title + .block {
    margin-top: 1.2rem;
  }
  .block + .block {
    margin-top: 3.2rem;
  }
}

/*===============================================================

    block_title

===============================================================*/
.block_title + .block_title {
  margin-top: 2rem;
}
.block_title {
  /* タブレット */
}
.block_title {
  /* for TABLET */
  /* SP */
}
@media screen and (max-width: 767px) {
  .block_title + .block_title {
    margin-top: 2.4rem;
  }
}
.block_title {
  /* for SP */
}

/*===============================================================
	_grid.scss
===============================================================*/
.grid_wrp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: -4rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.grid_wrp .grid {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 4rem;
}
.grid_wrp .grid .grid_wrp {
  margin-top: -2rem;
}
.grid_wrp .grid .grid {
  margin-top: 2rem;
}
.grid_wrp .grid_1_1 {
  width: 100%;
}
.grid_wrp .grid_2_1 {
  width: calc((100% - 4rem) / 2);
}
.grid_wrp .grid_3_1 {
  width: calc((100% - 4rem * 2) / 3);
  /* 40px * 2 = 80px */
}
.grid_wrp .grid_3_2 {
  width: calc(100% - (100% - 4rem * 2) / 3 - 4rem);
}
.grid_wrp .grid_4_1 {
  width: calc((100% - 4rem * 3) / 4);
  /* 40px * 3 = 120px */
}
.grid_wrp .grid_5_1 {
  width: calc((100% - 4rem * 2) / 5);
  /* 20px * 4 = 80px */
}
.grid_wrp .grid_6_1 {
  width: calc((100% - 4rem * 5) / 6);
  /* 50px * 5 = 100px */
}
.grid_wrp.grid_wrp3:after, .grid_wrp.grid_wrp4:after, .grid_wrp.grid_wrp4:before, .grid_wrp.grid_wrp5:after, .grid_wrp.grid_wrp5:before {
  content: "";
  display: block;
  height: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.grid_wrp.grid_wrp3:after {
  width: calc((100% - 4rem * 2) / 3);
}
.grid_wrp.grid_wrp4:after, .grid_wrp.grid_wrp4:before {
  width: calc((100% - 4rem * 3) / 4);
}
.grid_wrp.grid_wrp5:after, .grid_wrp.grid_wrp5:before {
  width: calc((100% - 4rem * 2) / 5);
}
@media screen and (max-width: 767px) {
  .grid_wrp {
    margin-top: -5vw;
  }
  .grid_wrp .grid {
    margin-top: 5vw;
  }
  .grid_wrp .grid .grid_wrp {
    margin-top: -3vw;
  }
  .grid_wrp .grid .grid {
    margin-top: 3vw;
  }
  .grid_wrp .grid_1_1 {
    width: 100%;
  }
  .grid_wrp .grid_2_1 {
    width: 100%;
  }
  .grid_wrp .grid_3_1 {
    width: calc((100% - 5vw) / 2);
  }
  .grid_wrp .grid_3_2 {
    width: 100%;
  }
  .grid_wrp .grid_4_1 {
    width: calc((100% - 5vw) / 2);
  }
  .grid_wrp .grid_5_1 {
    width: calc((100% - 5vw) / 2);
  }
  .grid_wrp .grid_6_1 {
    width: calc((100% - 10vw) / 3);
  }
  .grid_wrp.grid_wrp3:after {
    width: calc((100% - 80px) / 3);
  }
  .grid_wrp.grid_wrp4:after, .grid_wrp.grid_wrp4:before {
    width: calc((100% - 120px) / 4);
  }
  .grid_wrp.grid_wrp5:after, .grid_wrp.grid_wrp5:before {
    width: calc((100% - 80px) / 5);
  }
  .grid_wrp .sp_grid_1 {
    width: 100% !important;
  }
}

/*===============================================================
潮だまり財団
===============================================================*/
/*===============================================================

    c_bg_logomark

===============================================================*/
.c_bg_logomark, .c_bg_logomark_left_none, .c_bg_logomark_left_mid, .c_bg_logomark_left_bottom, .c_bg_logomark_left_top, .c_bg_logomark_right, .c_bg_logomark_right_mid, .c_bg_logomark_right_bottom, .c_bg_logomark_right_top, .c_bg_logomark_left {
  position: relative;
}
.c_bg_logomark .section_inner, .c_bg_logomark_left_none .section_inner, .c_bg_logomark_left_mid .section_inner, .c_bg_logomark_left_bottom .section_inner, .c_bg_logomark_left_top .section_inner, .c_bg_logomark_right .section_inner, .c_bg_logomark_right_mid .section_inner, .c_bg_logomark_right_bottom .section_inner, .c_bg_logomark_right_top .section_inner, .c_bg_logomark_left .section_inner {
  position: relative;
  z-index: 1;
}
.c_bg_logomark::after, .c_bg_logomark_left_none::after, .c_bg_logomark_left_mid::after, .c_bg_logomark_left_bottom::after, .c_bg_logomark_left_top::after, .c_bg_logomark_right::after, .c_bg_logomark_right_mid::after, .c_bg_logomark_right_bottom::after, .c_bg_logomark_right_top::after, .c_bg_logomark_left::after, .c_bg_logomark::before, .c_bg_logomark_left_none::before, .c_bg_logomark_left_mid::before, .c_bg_logomark_left_bottom::before, .c_bg_logomark_left_top::before, .c_bg_logomark_right::before, .c_bg_logomark_right_mid::before, .c_bg_logomark_right_bottom::before, .c_bg_logomark_right_top::before, .c_bg_logomark_left::before {
  position: absolute;
  content: "";
  background-image: url(/cms/wp-content/themes/shiodamari2026/assets/images/top/bg_mark01.svg);
  background-repeat: no-repeat;
  width: 315px;
  height: 385px;
  background-size: contain;
  z-index: 0;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .c_bg_logomark::after, .c_bg_logomark_left_none::after, .c_bg_logomark_left_mid::after, .c_bg_logomark_left_bottom::after, .c_bg_logomark_left_top::after, .c_bg_logomark_right::after, .c_bg_logomark_right_mid::after, .c_bg_logomark_right_bottom::after, .c_bg_logomark_right_top::after, .c_bg_logomark_left::after, .c_bg_logomark::before, .c_bg_logomark_left_none::before, .c_bg_logomark_left_mid::before, .c_bg_logomark_left_bottom::before, .c_bg_logomark_left_top::before, .c_bg_logomark_right::before, .c_bg_logomark_right_mid::before, .c_bg_logomark_right_bottom::before, .c_bg_logomark_right_top::before, .c_bg_logomark_left::before {
    width: 31.5vw;
    height: 38.5vw;
  }
}

.c_bg_logomark_left::before {
  top: 0;
  left: 0;
}
.c_bg_logomark_right::after, .c_bg_logomark_right_mid::after, .c_bg_logomark_right_bottom::after, .c_bg_logomark_right_top::after {
  background-image: url(/cms/wp-content/themes/shiodamari2026/assets/images/top/bg_mark02.svg);
  top: 0;
  right: 0;
}
.c_bg_logomark_left_top::before {
  top: -140px;
  left: 0;
}
@media screen and (max-width: 767px) {
  .c_bg_logomark_left_top::before {
    top: -20vw;
    left: 0;
  }
}

.c_bg_logomark_right_top::after {
  top: -140px;
  right: 0;
}
@media screen and (max-width: 767px) {
  .c_bg_logomark_right_top::after {
    top: -20vw;
    right: 0;
  }
}

.c_bg_logomark_left_bottom::before {
  bottom: 0;
  left: 0;
}
.c_bg_logomark_right_bottom::after {
  top: auto;
  bottom: 0;
  right: 0;
}
.c_bg_logomark_left_mid::before {
  top: 50%;
  left: 0;
}
.c_bg_logomark_right_mid::after {
  top: 50%;
  right: 0;
}
.c_bg_logomark_left_none::before {
  display: none;
  opacity: 0;
}
.c_bg_logomark_after_none::after {
  display: none;
  opacity: 0;
}

.c_bg_logomark_before_none::before {
  display: none;
}

/*===============================================================

    c_wave

===============================================================*/
.c_wave, .c_wave_lightgray, .c_wave_lightblue, .c_wave_blue {
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 100%;
  height: 80px;
  overflow: hidden;
}
.c_wave::before, .c_wave_lightgray::before, .c_wave_lightblue::before, .c_wave_blue::before {
  content: "";
  position: absolute;
  inset: 0;
  width: 200%;
  background-image: url("/cms/wp-content/themes/shiodamari2026/assets/images/fig_wave.svg");
  background-repeat: repeat-x;
  background-position: left top;
  background-size: auto 80px;
  -webkit-animation: waveMove 25s linear infinite;
          animation: waveMove 25s linear infinite;
}
@media screen and (max-width: 767px) {
  .c_wave, .c_wave_lightgray, .c_wave_lightblue, .c_wave_blue {
    height: 10vw;
  }
  .c_wave::before, .c_wave_lightgray::before, .c_wave_lightblue::before, .c_wave_blue::before {
    background-size: auto 10vw;
  }
}

@-webkit-keyframes waveMove {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

@keyframes waveMove {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
/*-------------------------------------------------------------
c_wave_blue
-------------------------------------------------------------*/
.c_wave_blue::before {
  background-image: url("/cms/wp-content/themes/shiodamari2026/assets/images/fig_wave_blue.svg");
}

.c_wave_lightblue::before {
  background-image: url("/cms/wp-content/themes/shiodamari2026/assets/images/fig_wave_lightblue.svg");
}

.c_wave_lightgray::before {
  background-image: url("/cms/wp-content/themes/shiodamari2026/assets/images/fig_wave_lightgray.svg");
}

/*===============================================================

    c_basic_content

===============================================================*/
.c_basic_content {
  letter-spacing: 0.1em;
}
.c_basic_content + .c_basic_content {
  margin-top: 5rem;
}
.c_basic_content {
  /*===============================================================
  tab_block
  ===============================================================*/
}
.c_basic_content .tab_block {
  display: inline-block;
  font-size: 2.5rem;
  line-height: 1.8;
  width: 20rem;
  text-align: center;
  border-radius: 2rem 2rem 0 0;
  background-color: #0083CE;
  color: #fff;
  margin-left: 6rem;
  font-weight: 300;
}
@media screen and (max-width: 767px) {
  .c_basic_content .tab_block {
    font-size: 3.5vw;
    width: 30vw;
    border-radius: 3vw 3vw 0 0;
    margin-left: 5vw;
  }
}
.c_basic_content {
  /*===============================================================
  body_block
  ===============================================================*/
}
.c_basic_content .body_block {
  background-color: #fff;
  -webkit-box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3);
  border-radius: 2rem;
  padding: 6rem;
}
.c_basic_content .body_block .block_inner + .block_inner {
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .c_basic_content .body_block {
    padding: 5vw;
  }
  .c_basic_content .body_block .block_inner + .block_inner {
    margin-top: 8vw;
  }
}
.c_basic_content .body_block {
  /*-------------------------------------------------------------
  title_block
  -------------------------------------------------------------*/
}
.c_basic_content .body_block .title_block {
  position: relative;
  color: #0083CE;
  border-bottom: solid 1px #9FA0A0;
  font-size: 2.6rem;
  line-height: 1.6;
  padding-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .c_basic_content .body_block .title_block {
    font-size: 4.5vw;
    padding-bottom: 3vw;
  }
}
.c_basic_content .body_block {
  /*-------------------------------------------------------------
  link_btn
  -------------------------------------------------------------*/
}
.c_basic_content .body_block .link_btn {
  position: absolute;
  width: 45px;
  height: 45px;
  top: 0;
  right: 0;
  margin: auto;
}
.c_basic_content .body_block .link_btn a {
  display: block;
  position: relative;
  width: 45px;
  height: 45px;
  border-radius: 45px;
  background-color: #0083CE;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.c_basic_content .body_block .link_btn a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 10px;
  height: 10px;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 14px solid #fff;
  border-right: 14px solid transparent;
  -webkit-transform: translate(8px, 0);
          transform: translate(8px, 0);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.c_basic_content .body_block .link_btn a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  .c_basic_content .body_block .link_btn {
    width: 8vw;
    height: 8vw;
  }
  .c_basic_content .body_block .link_btn a {
    width: 8vw;
    height: 8vw;
    border-radius: 8vw;
    background-color: #0083CE;
  }
  .c_basic_content .body_block .link_btn a::after {
    width: 2vw;
    height: 2vw;
    border-top: 2vw solid transparent;
    border-bottom: 2vw solid transparent;
    border-left: 3vw solid #fff;
    border-right: 3vw solid transparent;
    -webkit-transform: translate(2vw, 0);
            transform: translate(2vw, 0);
  }
}
.c_basic_content .body_block {
  /*===============================================================

      entry_block

  ===============================================================*/
  /*===============================================================
  slide_block
  ===============================================================*/
}
.c_basic_content .body_block .slide_block {
  /*-------------------------------------------------------------
  sildes
  -------------------------------------------------------------*/
}
.c_basic_content .body_block .slide_block .sildes {
  aspect-ratio: 1920/840;
  position: relative;
  background-color: #0083CE;
  overflow: hidden;
  border-radius: 1.2rem;
}
.c_basic_content .body_block .slide_block .sildes .slide {
  position: absolute;
  top: 0;
}
.c_basic_content .body_block .slide_block .sildes .slide img {
  width: 100%;
  height: auto;
}
.c_basic_content .body_block .slide_block .sildes .slide {
  opacity: 0;
  display: none;
}
.c_basic_content .body_block .slide_block .sildes .active {
  opacity: 1;
  display: block;
}
@media screen and (max-width: 767px) {
  .c_basic_content .body_block .slide_block .sildes {
    border-radius: 2vw;
    aspect-ratio: 1290/1450;
  }
}
.c_basic_content .body_block .slide_block {
  /*-------------------------------------------------------------
  btns
  -------------------------------------------------------------*/
}
.c_basic_content .body_block .slide_block .btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem 3rem;
  padding: 0;
  margin: 0;
  margin-top: 2rem;
  list-style: none;
}
.c_basic_content .body_block .slide_block .btns .slide_btn {
  min-width: 25rem;
}
.c_basic_content .body_block .slide_block .btns .slide_btn a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
}
.c_basic_content .body_block .slide_block .btns .slide_btn a::after {
  display: none;
}
.c_basic_content .body_block .slide_block .btns .slide_btn:has(a:only-child) {
  width: auto;
}
.c_basic_content .body_block .slide_block .btns .slide_btn a:hover {
  color: #fff !important;
}
@media screen and (max-width: 767px) {
  .c_basic_content .body_block .slide_block .btns {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 1.2rem;
  }
  .c_basic_content .body_block .slide_block .btns .slide_btn {
    min-width: 0;
  }
  .c_basic_content .body_block .slide_block .btns .slide_btn a {
    white-space: normal;
    font-size: 3.5vw;
  }
}
.c_basic_content .body_block {
  /*===============================================================
  fish_life_block
  ===============================================================*/
}
.c_basic_content .body_block .fish_life_block {
  position: relative;
  padding-left: 5rem;
  margin-top: 3rem;
}
@media screen and (max-width: 767px) {
  .c_basic_content .body_block .fish_life_block {
    padding-left: 0;
    padding-top: 6vw;
    margin-top: 3vw;
  }
}
.c_basic_content .body_block .fish_life_block {
  /*-------------------------------------------------------------
  label
  -------------------------------------------------------------*/
}
.c_basic_content .body_block .fish_life_block .label {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-color: #0083CE;
  color: #fff;
  width: 100px;
  height: 100px;
  font-size: 4.8rem;
  line-height: 100px;
  border-radius: 100px;
  letter-spacing: 0;
  text-align: center;
  font-weight: 300;
}
@media screen and (max-width: 767px) {
  .c_basic_content .body_block .fish_life_block .label {
    top: 0;
    bottom: auto;
    left: 0;
    right: 0;
    margin: auto;
    width: 12vw;
    height: 12vw;
    font-size: 8vw;
    line-height: 12vw;
    border-radius: 20vw;
  }
}
.c_basic_content .body_block .fish_life_block {
  /*-------------------------------------------------------------
  txt_block
  -------------------------------------------------------------*/
}
.c_basic_content .body_block .fish_life_block .txt_block {
  background-color: #EAF6FD;
  border-radius: 2rem;
  border: solid 1px #0083CE;
  padding: 3rem;
  padding-left: 10rem;
}
.c_basic_content .body_block .fish_life_block .txt_block .title, .c_basic_content .body_block .fish_life_block .txt_block .c_card .label_block .title__blue, .c_card .label_block .c_basic_content .body_block .fish_life_block .txt_block .title__blue {
  font-size: 2.6rem;
  line-height: 1.8;
  padding-bottom: 2rem;
  border-bottom: solid 1px #0083CE;
}
.c_basic_content .body_block .fish_life_block .txt_block p {
  font-size: 1.7rem;
  line-height: 2;
  margin-top: 2rem;
}
@media screen and (max-width: 767px) {
  .c_basic_content .body_block .fish_life_block .txt_block {
    border-radius: 3vw;
    padding: 5vw;
    padding-top: 8vw;
  }
  .c_basic_content .body_block .fish_life_block .txt_block .title, .c_basic_content .body_block .fish_life_block .txt_block .c_card .label_block .title__blue, .c_card .label_block .c_basic_content .body_block .fish_life_block .txt_block .title__blue {
    font-size: 4.5vw;
    line-height: 1.4;
    padding-bottom: 3vw;
  }
  .c_basic_content .body_block .fish_life_block .txt_block p {
    font-size: 3.5vw;
    line-height: 2;
    margin-top: 2vw;
  }
}

/*===============================================================
c_card
===============================================================*/
.c_card {
  background-color: #fff;
  padding: 8rem 4rem 6rem;
  padding: 8rem;
  border-radius: 2rem;
  margin-top: 10rem;
  position: relative;
  -webkit-box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3);
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .c_card {
    padding: 10vw 5vw;
    margin-top: 10vw;
  }
}
.c_card {
  /*-------------------------------------------------------------
  label_block
  -------------------------------------------------------------*/
}
.c_card .label_block {
  position: absolute;
  top: -3.5rem;
  left: -5rem;
}
.c_card .label_block .title, .c_card .label_block .title__blue {
  font-size: 2.1rem;
  background-image: url(/cms/wp-content/themes/shiodamari2026/assets/images/card_label_bg.svg);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: contain;
  width: 50rem;
  height: auto;
  aspect-ratio: 500/84;
  text-align: center;
  color: #0083CE;
  letter-spacing: 0.2em;
  vertical-align: middle;
}
.c_card .label_block .title span, .c_card .label_block .title__blue span {
  display: inline-block;
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
}
.c_card .label_block .title strong, .c_card .label_block .title__blue strong {
  display: inline-block;
  font-size: 171%;
  font-weight: 400;
  -webkit-transform: translateY(0.14em);
          transform: translateY(0.14em);
}
.c_card .label_block .title__blue {
  background-image: url(/cms/wp-content/themes/shiodamari2026/assets/images/card_label_bg_blue.svg);
  color: #fff;
}
@media screen and (max-width: 767px) {
  .c_card .label_block {
    position: absolute;
    top: -5.5vw;
    left: -5vw;
  }
  .c_card .label_block .title, .c_card .label_block .title__blue {
    font-size: 3.2vw;
    background-position: center top;
    width: 65vw;
  }
  .c_card .label_block .title span, .c_card .label_block .title__blue span {
    -webkit-transform: translateY(-1.2vw);
            transform: translateY(-1.2vw);
  }
}
.c_card {
  /*-------------------------------------------------------------
  number_block
  -------------------------------------------------------------*/
}
.c_card .number_block {
  position: absolute;
  top: 3rem;
  right: 3rem;
  font-size: 11rem;
  line-height: 1;
  font-weight: 300;
  color: #C9CACA;
}
@media screen and (max-width: 767px) {
  .c_card .number_block {
    top: 3vw;
    right: 3vw;
    font-size: 15vw;
  }
}
.c_card {
  /*-------------------------------------------------------------
  title_block
  -------------------------------------------------------------*/
}
.c_card .title_block {
  position: relative;
  padding-bottom: 6rem;
}
.c_card .title_block .title, .c_card .title_block .label_block .title__blue, .c_card .label_block .title_block .title__blue {
  font-size: 3.6rem;
  line-height: 1.5;
  font-weight: 300;
}
@media screen and (max-width: 767px) {
  .c_card .title_block {
    padding-bottom: 5vw;
  }
  .c_card .title_block .title, .c_card .title_block .label_block .title__blue, .c_card .label_block .title_block .title__blue {
    font-size: 5vw;
  }
}
.c_card {
  /*-------------------------------------------------------------
  fish_title_block
  -------------------------------------------------------------*/
}
.c_card .fish_title_block {
  border-left: solid 10px #0083CE;
  margin-top: 8rem;
}
.c_card .fish_title_block:nth-child(1) {
  margin-top: 0;
}
.c_card .fish_title_block .inner {
  position: relative;
  display: inline-block;
  padding: 0 2rem 0 2rem;
}
.c_card .fish_title_block .number {
  font-size: 11rem;
  line-height: 0.8;
  font-weight: 300;
  color: #C9CACA;
}
.c_card .fish_title_block .title, .c_card .fish_title_block .label_block .title__blue, .c_card .label_block .fish_title_block .title__blue {
  color: #0083CE;
  font-size: 2.6rem;
  line-height: 1;
  margin-top: 0.5em;
}
.c_card .fish_title_block .fig_fish {
  position: absolute;
  width: 20rem;
  top: 0;
  bottom: 0;
  left: 15rem;
  margin: auto;
}
.c_card .fish_title_block.reverse {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  border-left: 0;
  border-right: solid 10px #0083CE;
  text-align: right;
}
.c_card .fish_title_block.reverse .fig_fish {
  right: 15rem;
  left: auto;
}
@media screen and (max-width: 767px) {
  .c_card .fish_title_block {
    border-left: solid 5px #0083CE;
    margin-top: 8vw;
  }
  .c_card .fish_title_block:nth-child(1) {
    margin-top: 0;
  }
  .c_card .fish_title_block .inner {
    padding: 0 3vw;
  }
  .c_card .fish_title_block .number {
    font-size: 15vw;
  }
  .c_card .fish_title_block .title, .c_card .fish_title_block .label_block .title__blue, .c_card .label_block .fish_title_block .title__blue {
    font-size: 4.5vw;
  }
  .c_card .fish_title_block .fig_fish {
    width: 25vw;
    left: 20vw;
  }
  .c_card .fish_title_block.reverse {
    border-right: solid 5px #0083CE;
  }
  .c_card .fish_title_block.reverse .fig_fish {
    right: 20vw;
    left: auto;
  }
}
.c_card {
  /*-------------------------------------------------------------
  txt_block
  -------------------------------------------------------------*/
}
.c_card .txt_block {
  letter-spacing: 0.1em;
}
.c_card .txt_block .title, .c_card .txt_block .label_block .title__blue, .c_card .label_block .txt_block .title__blue {
  font-size: 2.8rem;
  font-weight: 400;
}
.c_card .txt_block .subtitle {
  font-size: 2.3rem;
  line-height: 1.8;
  font-weight: 400;
}
.c_card .txt_block p {
  font-size: 1.6rem;
  line-height: 2;
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  .c_card .txt_block .title, .c_card .txt_block .label_block .title__blue, .c_card .label_block .txt_block .title__blue {
    font-size: 5vw;
  }
  .c_card .txt_block .subtitle {
    font-size: 4vw;
  }
  .c_card .txt_block p {
    font-size: 3.5vw;
  }
}
.c_card {
  /*-------------------------------------------------------------
  fig_txt_block
  -------------------------------------------------------------*/
}
.c_card .fig_txt_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.c_card .fig_txt_block .txt_block {
  width: 38rem;
}
.c_card .fig_txt_block .fig_block {
  width: calc(100% - 38rem - 3rem);
}
@media screen and (max-width: 1070px) {
  .c_card .fig_txt_block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .c_card .fig_txt_block .txt_block {
    width: 100%;
    margin-top: 3rem;
  }
  .c_card .fig_txt_block .fig_block {
    width: 100%;
  }
}
.c_card {
  /*-------------------------------------------------------------
  news_block
  -------------------------------------------------------------*/
}
.c_card .news_block {
  margin-top: 5rem;
}
.c_card .news_block .title, .c_card .news_block .label_block .title__blue, .c_card .label_block .news_block .title__blue {
  font-size: 2.1rem;
}
@media screen and (max-width: 767px) {
  .c_card .news_block {
    margin-top: 5vw;
  }
  .c_card .news_block .title, .c_card .news_block .label_block .title__blue, .c_card .label_block .news_block .title__blue {
    font-size: 5vw;
  }
}
.c_card {
  /*-------------------------------------------------------------
  videos_block
  -------------------------------------------------------------*/
}
.c_card .videos_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 3rem;
  margin-top: 2rem;
}
.c_card .videos_block .video {
  width: calc((100% - 6rem) / 3);
}
.c_card .videos_block .video iframe {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  border: 0;
  border-radius: 1.2rem;
}
@media screen and (max-width: 1070px) {
  .c_card .videos_block .video {
    width: calc((100% - 3rem) / 2);
  }
}
@media screen and (max-width: 767px) {
  .c_card .videos_block .video {
    width: 100%;
  }
  .c_card .videos_block .video iframe {
    border-radius: 2vw;
  }
}

/*===============================================================

    c_grid_block

===============================================================*/
.c_grid_block {
  margin-top: 2.5rem;
  display: -ms-grid;
  display: grid;
  gap: 4rem;
}
.c_grid_block + .entry_block {
  margin-top: 4rem;
}
.c_grid_block {
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
}
.c_grid_block:has(.column:nth-child(2)):not(:has(.column:nth-child(4))) {
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
}
.c_grid_block:has(.column:nth-child(4)) {
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
}
.c_grid_block p {
  font-size: 1.7rem;
  line-height: 2;
}
.c_grid_block .video,
.c_grid_block .fig {
  border-radius: 1.2rem;
  overflow: hidden;
  margin-top: 0.3em;
}
.c_grid_block img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .c_grid_block {
    margin-top: 3vw;
    -ms-grid-columns: 1fr !important;
    grid-template-columns: 1fr !important;
    gap: 3vw;
  }
  .c_grid_block p {
    font-size: 3.5vw;
    line-height: 2;
  }
  .c_grid_block .fig {
    border-radius: 2vw;
  }
}
.c_grid_block {
  /*-------------------------------------------------------------
          fig_caption
  -------------------------------------------------------------*/
}
.c_grid_block .fig_caption {
  border: solid 1px #0083CE;
}
.c_grid_block .fig_caption .caption {
  background-color: #0083CE;
  color: #fff;
  text-align: center;
  font-size: 1.7rem;
  line-height: 1.6;
  padding: 1rem 0.5em;
}
.c_grid_block .fig_caption .fig {
  border-radius: 0;
  padding: 1rem;
  margin: 0;
}
.c_grid_block .fig_caption .fig img {
  border-radius: 0.5rem;
}
@media screen and (max-width: 767px) {
  .c_grid_block .fig_caption .caption {
    font-size: 3.5vw;
    padding: 1vw 0.5em;
  }
  .c_grid_block .fig_caption .fig {
    padding: 2vw;
  }
}

/*===============================================================

    c_card_list

===============================================================*/
.c_card_list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(0, 1fr) 4rem minmax(0, 1fr);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4rem;
}
.c_card_list .card {
  min-width: 0;
  background-color: #FFF;
  -webkit-box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3);
  border-radius: 2rem;
}
.c_card_list .card a {
  display: block;
  height: 100%;
  text-decoration: none;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.c_card_list .card a:hover {
  opacity: 0.5;
}
.c_card_list .card .img-box {
  padding: 2rem;
}
.c_card_list .card .img-box img {
  display: block;
  width: 100%;
  height: auto;
}
.c_card_list .card .txt-box {
  padding: 0 20px 35px 20px;
}
.c_card_list .card .txt-box .card-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  color: #666464;
  font-size: 3.4rem;
  font-style: normal;
  font-weight: 300;
  line-height: 100%;
  letter-spacing: 2.04px;
}
.c_card_list .card .txt-box .card-subtitle {
  padding-top: 15px;
  color: #0083CE;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.6px;
}
@media screen and (max-width: 1070px) {
  .c_card_list {
    gap: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .c_card_list {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 3vw;
  }
  .c_card_list .card {
    border-radius: 3vw;
  }
  .c_card_list .card .img-box {
    padding: 3vw;
  }
  .c_card_list .card .txt-box {
    padding: 0 3vw 5vw 3vw;
  }
  .c_card_list .card .txt-box .card-title {
    font-size: 4vw;
  }
  .c_card_list .card .txt-box .card-subtitle {
    padding-top: 2vw;
    font-size: 3vw;
  }
}

/*===============================================================

    c_topics

===============================================================*/
.c_topics {
  padding: 50px 0 150px;
  background: #fff;
}
.c_topics .c_topics_inner {
  padding: 0;
  padding-left: 50px;
  padding-right: 50px;
}
.c_topics .topics-wrap figure {
  min-height: 20rem;
  aspect-ratio: 690/400;
  width: 100%;
}
.c_topics .swiper-button-next,
.c_topics .swiper-button-prev {
  background: rgb(102, 100, 100);
  background-color: #0083CE;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  color: #fff;
}
.c_topics .swiper-button-next:after,
.c_topics .swiper-button-prev:after {
  font-size: 1.2rem;
  font-weight: 600;
}
.c_topics .swiper-button-prev {
  top: 40%;
  left: -25px;
  left: -50px;
  right: auto;
}
.c_topics .swiper-button-next {
  top: 40%;
  right: -25px;
  right: -50px;
  left: auto;
}
.c_topics .btn_text {
  text-align: right;
  margin-top: 10px;
}
.c_topics .btn_text::after {
  content: "\f105";
  color: rgb(0, 131, 206);
  font-family: "Font Awesome 6 Pro";
  position: relative;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 400;
  margin-left: 10px;
}
.c_topics .topics-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 60px;
  overflow: hidden;
}
.c_topics .topics-box .topics-card {
  width: 33.3333333333%;
}
.c_topics .topics-box .topics-card + .topics-card {
  margin-left: 30px;
}
@media screen and (max-width: 767px) {
  .c_topics {
    padding: 5vw 0 15vw;
  }
  .c_topics .swiperbtn-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 5vw;
    z-index: 2;
    height: 40px;
    position: relative;
    top: 0;
  }
  .c_topics .swiper-button-next,
  .c_topics .swiper-button-prev {
    position: relative;
    width: 40px;
    height: 40px;
    margin: 0;
    top: 0;
    right: 0;
    left: 0;
  }
  .c_topics .swiper-button-next {
    margin-left: 25px;
  }
  .c_topics .topics-box .topics-card {
    width: 100%;
  }
}
.c_topics {
  /*===============================================================
  Title_lv2
  ===============================================================*/
}
.c_topics .Title_lv2 {
  font-size: 6.3rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 200;
  line-height: 65.45px;
  letter-spacing: 0.03em;
  color: rgb(102, 100, 100);
}
.c_topics .Title_lv2 span {
  display: inline-block;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 28.8px;
  letter-spacing: 0.1em;
  color: rgb(0, 131, 206);
  margin-left: 20px;
}
@media screen and (max-width: 767px) {
  .c_topics .Title_lv2 {
    font-size: 5.4rem;
    line-height: 45.9px;
    letter-spacing: 0.03em;
    padding: 0 8vw;
  }
  .c_topics .Title_lv2 span {
    font-size: 2rem;
    line-height: 24px;
    letter-spacing: 0.1em;
    color: rgb(0, 131, 206);
    margin-left: 15px;
  }
}
.c_topics {
  /*===============================================================
  topics-swiper
  ===============================================================*/
}
.c_topics .topics-swiper {
  position: relative;
  margin-top: 60px;
  overflow: hidden;
}
.c_topics .topics-swiper figure {
  margin-bottom: 30px;
  text-align: center;
  aspect-ratio: 16/9;
  width: 100%;
  height: auto;
}
.c_topics .topics-swiper img {
  aspect-ratio: 16/9;
  border-radius: 20px;
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-fit: cover;
     object-fit: cover;
}
.c_topics .topics-swiper a,
.c_topics .topics-box .topics-card a {
  display: block;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  color: rgb(102, 100, 100);
}
.c_topics .topics-swiper a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  .c_topics .topics-swiper {
    height: auto;
    margin-top: 8vw;
  }
  .c_topics .topics-swiper figure {
    margin-bottom: 30px;
    text-align: center;
  }
  .c_topics .topics-swiper img {
    height: auto;
  }
  .c_topics .c_topics_inner {
    padding: 0;
    padding-left: 0;
    padding-right: 0;
  }
  .c_topics #topics-container,
  .c_topics .topics-wrap {
    height: auto;
  }
}
.c_topics {
  /*===============================================================
  topics-text
  ===============================================================*/
}
.c_topics .topics-text {
  padding-left: 15px;
  position: relative;
  line-height: 1.7;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  min-height: 3em;
  /* 2行分の高さ（フォントサイズに応じて調整） */
  max-height: 3em;
  /* 2行以上の高さにならないようにする */
  margin-top: 10px;
}
.c_topics .topics-text::before {
  content: "\f105";
  position: absolute;
  color: rgb(0, 131, 206);
  font-family: "Font Awesome 6 Pro";
  font-size: 1.6rem;
  font-weight: 400;
  top: 2px;
  left: 0;
}
/*===============================================================

    c_about_content

===============================================================*/
.c_about_content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.c_about_content + .c_about_content {
  margin-top: 10rem;
}
.c_about_content .hader_block {
  width: 22rem;
}
.c_about_content .body_block {
  width: calc(100% - 22rem);
}
@media screen and (max-width: 767px) {
  .c_about_content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .c_about_content + .c_about_content {
    margin-top: 10vw;
  }
  .c_about_content .hader_block {
    width: 100%;
  }
  .c_about_content .body_block {
    width: 100%;
    margin-top: 3vw;
  }
}
.c_about_content {
  /*===============================================================
  hader_block
  ===============================================================*/
}
.c_about_content .hader_block {
  padding: 0 1.5rem;
}
.c_about_content .hader_block .title, .c_about_content .hader_block .c_card .label_block .title__blue, .c_card .label_block .c_about_content .hader_block .title__blue {
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  font-size: 2.6rem;
  letter-spacing: 0.06em;
  text-align: left;
  color: #07c;
  padding: 10px 0;
}
@media screen and (max-width: 767px) {
  .c_about_content .hader_block {
    padding: 0;
  }
  .c_about_content .hader_block .title, .c_about_content .hader_block .c_card .label_block .title__blue, .c_card .label_block .c_about_content .hader_block .title__blue {
    font-size: 4vw;
    padding: 0;
  }
}
.c_about_content {
  /*===============================================================
  body_block
  ===============================================================*/
}
.c_about_content .body_block .block + .block {
  margin-top: 5rem;
}
.c_about_content .body_block .title, .c_about_content .body_block .c_card .label_block .title__blue, .c_card .label_block .c_about_content .body_block .title__blue {
  font-weight: 300;
  font-size: 3.8rem;
  letter-spacing: 0.1em;
  text-align: left;
  color: #666464;
}
.c_about_content .body_block .subtitle {
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 2;
  color: #0083CE;
}
.c_about_content .body_block .fig_vision {
  max-width: 81rem;
}
.c_about_content .body_block p {
  font-size: 1.7rem;
  line-height: 2;
}
.c_about_content .body_block p strong {
  font-size: 150%;
  font-weight: 300;
}
.c_about_content .body_block * + p {
  margin-top: 0.8em;
}
@media screen and (max-width: 767px) {
  .c_about_content .body_block .title, .c_about_content .body_block .c_card .label_block .title__blue, .c_card .label_block .c_about_content .body_block .title__blue {
    font-size: 6vw;
  }
  .c_about_content .body_block .subtitle {
    font-size: 4vw;
    line-height: 2;
    color: #0083CE;
  }
  .c_about_content .body_block .fig_vision {
    max-width: 100%;
  }
  .c_about_content .body_block p {
    font-size: 3.5vw;
  }
  .c_about_content .body_block .name strong {
    font-size: 180%;
    display: block;
    line-height: 1.1;
  }
}
.c_about_content {
  /*-------------------------------------------------------------
  table-default
  -------------------------------------------------------------*/
}
.c_about_content .table-default th {
  text-align: justify;
}
.c_about_content .table-default .txtindent {
  padding-left: 1em;
  text-indent: -1em;
}
.c_about_content .table-default .txtindent2 {
  padding-left: 1.4em;
  text-indent: -1.4em;
}
@media screen and (max-width: 767px) {
  .c_about_content .table-default th {
    border-top: 1px solid rgba(0, 0, 0, 0.2);
    padding: 5vw 0 2vw 0;
  }
  .c_about_content .table-default td {
    padding: 0 0 5vw 0;
  }
}
.c_about_content {
  /*-------------------------------------------------------------
  member_block
  -------------------------------------------------------------*/
}
.c_about_content .member_block {
  width: 100%;
  max-width: 60rem;
  gap: 4.5rem;
  text-align: center;
  margin-top: 0;
  margin-left: 1em;
}
.c_about_content .member_block img {
  width: 100%;
  height: auto;
  -webkit-box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, 0.2);
}
.c_about_content .member_block figcaption {
  text-align: center;
  margin-top: 1.5rem;
}
@media screen and (max-width: 767px) {
  .c_about_content .member_block {
    width: 50vw;
    gap: 4.5rem;
    text-align: center;
    margin-top: 0;
    margin-inline: auto;
  }
  .c_about_content .member_block figcaption {
    margin-top: 3vw;
  }
}

/*　潮だまり財団元からあるもの　*/
/**********************************************
* 
* 1.reset
* 2.base
* 3.layout
* 4.grid
* 5.flex
* 6.utilities
*
************************************************/
/**********************************************
* 
* 1.reset
*
* Bootstrap Reboot v4.1.3 (https://getbootstrap.com/)
* Copyright 2011-2018 The Bootstrap Authors
* Copyright 2011-2018 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
*
************************************************/
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

@-ms-viewport {
  width: device-width;
}
article,
aside,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
  display: block;
}

body {
  margin: 0;
  font-weight: 400;
  text-align: left;
  background-color: #fff;
}

[tabindex="-1"]:focus {
  outline: 0 !important;
}

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-weight: inherit;
  font-size: inherit;
}

p {
  margin: 0;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
}

address {
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin: 0;
  list-style: none;
  padding: 0;
}

dd {
  margin: 0;
}

blockquote {
  margin: 0;
}

b,
strong {
  font-weight: bolder;
}

dfn,
em {
  font-style: normal;
}

small {
  font-size: 100%;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  text-decoration: none;
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):hover,
a:not([href]):not([tabindex]):focus {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus {
  outline: 0;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0;
}

img {
  vertical-align: bottom;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: bottom;
}

table {
  border-collapse: collapse;
}

caption {
  padding: 0;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
  font-weight: inherit;
}

label {
  display: inline-block;
}

button {
  border-radius: 0;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  vertical-align: middle;
  color: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: 0;
  border-radius: 0;
  text-align: inherit;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background: transparent;
}

button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type=radio],
input[type=checkbox] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}

input[type=date],
input[type=time],
input[type=datetime-local],
input[type=month] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin: 0;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

/**********************************************
* 
* 2.base
*
***********************************************/
html {
  width: 100%;
  height: 100%;
  font-size: 62.5%;
}

body {
  width: 100%;
  height: 100%;
  font-size: 1.6rem;
  line-height: 1.5;
  color: #666464;
  -webkit-text-size-adjust: 100%;
  word-wrap: break-word;
  overflow-wrap: break-word;
  font-family: "Noto Sans JP", sans-serif;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

body.is-spnav-active {
  overflow: hidden;
}

@media (max-width: 767px) {
  body {
    min-width: initial;
    min-width: auto;
    font-size: 1.6rem;
  }
}
/**********************************************
* 
* 3.layout
*
***********************************************/
.l-header {
  position: fixed;
  top: 0;
  z-index: 100;
  width: 100%;
}

.l-content {
  position: relative;
  padding-top: 115px;
  padding-bottom: 90px;
}

.l-container {
  max-width: 1200px;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

.l-container-min {
  width: 770px;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

.l-container-fluid {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

.l-space-s {
  margin-top: 30px;
}

.l-space-m {
  margin-top: 40px;
}

.l-space-l {
  margin-top: 50px;
}

.l-space-minus-s {
  margin-top: -30px;
}

@media (max-width: 767px) {
  .l-header {
    min-width: 0;
  }
  .l-content {
    width: 100%;
    padding-top: 70px;
    padding-bottom: 20px;
  }
  .l-container {
    width: 100%;
    padding-right: 20px;
    padding-left: 20px;
  }
  .l-container-min {
    width: 100%;
    padding-right: 20px;
    padding-left: 20px;
  }
  .l-container-fluid {
    padding-right: 20px;
    padding-left: 20px;
  }
  .l-space-s {
    margin-top: 15px;
  }
  .l-space-m {
    margin-top: 20px;
  }
  .l-space-l {
    margin-top: 30px;
  }
  .l-space-minus-s {
    margin-top: -15px;
  }
}
/**********************************************
* 
* 4.grid
*
***********************************************/
.l-row {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.l-row-img {
  width: 100%;
  height: auto;
}

.l-no-gutters {
  margin-right: 0;
  margin-left: 0;
}

.l-no-gutters > .l-col,
.l-no-gutters > [class*=l-col-] {
  padding-right: 0;
  padding-left: 0;
}

.l-col-1,
.l-col-2,
.l-col-3,
.l-col-4,
.l-col-5,
.l-col-6,
.l-col-7,
.l-col-8,
.l-col-9,
.l-col-10,
.l-col-11,
.l-col-12,
.l-col,
.l-col-auto,
.l-col-sm-1,
.l-col-sm-2,
.l-col-sm-3,
.l-col-sm-4,
.l-col-sm-5,
.l-col-sm-6,
.l-col-sm-7,
.l-col-sm-8,
.l-col-sm-9,
.l-col-sm-10,
.l-col-sm-11,
.l-col-sm-12,
.l-col-sm,
.l-col-sm-auto {
  position: relative;
  width: 100%;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}

.l-col {
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  -ms-flex-positive: 1;
  -webkit-box-flex: 1;
          flex-grow: 1;
  max-width: 100%;
}

.l-col-auto {
  -ms-flex: 0 0 auto;
  -webkit-box-flex: 0;
          flex: 0 0 auto;
  width: auto;
  max-width: none;
}

.l-col-1 {
  -ms-flex: 0 0 8.333333%;
  -webkit-box-flex: 0;
          flex: 0 0 8.333333%;
  max-width: 8.333333%;
}

.l-col-2 {
  -ms-flex: 0 0 16.666667%;
  -webkit-box-flex: 0;
          flex: 0 0 16.666667%;
  max-width: 16.666667%;
}

.l-col-3 {
  -ms-flex: 0 0 25%;
  -webkit-box-flex: 0;
          flex: 0 0 25%;
  max-width: 25%;
}

.l-col-4 {
  -ms-flex: 0 0 33.333333%;
  -webkit-box-flex: 0;
          flex: 0 0 33.333333%;
  max-width: 33.333333%;
}

.l-col-5 {
  -ms-flex: 0 0 41.666667%;
  -webkit-box-flex: 0;
          flex: 0 0 41.666667%;
  max-width: 41.666667%;
}

.l-col-6 {
  -ms-flex: 0 0 50%;
  -webkit-box-flex: 0;
          flex: 0 0 50%;
  max-width: 50%;
}

.l-col-7 {
  -ms-flex: 0 0 58.333333%;
  -webkit-box-flex: 0;
          flex: 0 0 58.333333%;
  max-width: 58.333333%;
}

.l-col-8 {
  -ms-flex: 0 0 66.666667%;
  -webkit-box-flex: 0;
          flex: 0 0 66.666667%;
  max-width: 66.666667%;
}

.l-col-9 {
  -ms-flex: 0 0 75%;
  -webkit-box-flex: 0;
          flex: 0 0 75%;
  max-width: 75%;
}

.l-col-10 {
  -ms-flex: 0 0 83.333333%;
  -webkit-box-flex: 0;
          flex: 0 0 83.333333%;
  max-width: 83.333333%;
}

.l-col-11 {
  -ms-flex: 0 0 91.666667%;
  -webkit-box-flex: 0;
          flex: 0 0 91.666667%;
  max-width: 91.666667%;
}

.l-col-12 {
  -ms-flex: 0 0 100%;
  -webkit-box-flex: 0;
          flex: 0 0 100%;
  max-width: 100%;
}

.l-order-first {
  -ms-flex-order: -1;
  -webkit-box-ordinal-group: 0;
          order: -1;
}

.l-order-last {
  -ms-flex-order: 13;
  -webkit-box-ordinal-group: 14;
          order: 13;
}

.l-order-0 {
  -ms-flex-order: 0;
  -webkit-box-ordinal-group: 1;
          order: 0;
}

.l-order-1 {
  -ms-flex-order: 1;
  -webkit-box-ordinal-group: 2;
          order: 1;
}

.l-order-2 {
  -ms-flex-order: 2;
  -webkit-box-ordinal-group: 3;
          order: 2;
}

.l-order-3 {
  -ms-flex-order: 3;
  -webkit-box-ordinal-group: 4;
          order: 3;
}

.l-order-4 {
  -ms-flex-order: 4;
  -webkit-box-ordinal-group: 5;
          order: 4;
}

.l-order-5 {
  -ms-flex-order: 5;
  -webkit-box-ordinal-group: 6;
          order: 5;
}

.l-order-6 {
  -ms-flex-order: 6;
  -webkit-box-ordinal-group: 7;
          order: 6;
}

.l-order-7 {
  -ms-flex-order: 7;
  -webkit-box-ordinal-group: 8;
          order: 7;
}

.l-order-8 {
  -ms-flex-order: 8;
  -webkit-box-ordinal-group: 9;
          order: 8;
}

.l-order-9 {
  -ms-flex-order: 9;
  -webkit-box-ordinal-group: 10;
          order: 9;
}

.l-order-10 {
  -ms-flex-order: 10;
  -webkit-box-ordinal-group: 11;
          order: 10;
}

.l-order-11 {
  -ms-flex-order: 11;
  -webkit-box-ordinal-group: 12;
          order: 11;
}

.l-order-12 {
  -ms-flex-order: 12;
  -webkit-box-ordinal-group: 13;
          order: 12;
}

.l-offset-1 {
  margin-left: 8.333333%;
}

.l-offset-2 {
  margin-left: 16.666667%;
}

.l-offset-3 {
  margin-left: 25%;
}

.l-offset-4 {
  margin-left: 33.333333%;
}

.l-offset-5 {
  margin-left: 41.666667%;
}

.l-offset-6 {
  margin-left: 50%;
}

.l-offset-7 {
  margin-left: 58.333333%;
}

.l-offset-8 {
  margin-left: 66.666667%;
}

.l-offset-9 {
  margin-left: 75%;
}

.l-offset-10 {
  margin-left: 83.333333%;
}

.l-offset-11 {
  margin-left: 91.666667%;
}

@media (max-width: 767px) {
  .l-row {
    margin-right: -7px;
    margin-left: -7px;
  }
  .l-no-gutters {
    margin-right: 0;
    margin-left: 0;
  }
  .l-col-1,
  .l-col-2,
  .l-col-3,
  .l-col-4,
  .l-col-5,
  .l-col-6,
  .l-col-7,
  .l-col-8,
  .l-col-9,
  .l-col-10,
  .l-col-11,
  .l-col-12,
  .l-col,
  .l-col-auto,
  .l-col-sm-1,
  .l-col-sm-2,
  .l-col-sm-3,
  .l-col-sm-4,
  .l-col-sm-5,
  .l-col-sm-6,
  .l-col-sm-7,
  .l-col-sm-8,
  .l-col-sm-9,
  .l-col-sm-10,
  .l-col-sm-11,
  .l-col-sm-12,
  .l-col-sm,
  .l-col-sm-auto {
    padding-right: 7px;
    padding-left: 7px;
  }
  .l-col-sm {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    -webkit-box-flex: 1;
            flex-grow: 1;
    max-width: 100%;
  }
  .l-col-sm-auto {
    -ms-flex: 0 0 auto;
    -webkit-box-flex: 0;
            flex: 0 0 auto;
    width: auto;
    max-width: none;
  }
  .l-col-sm-1 {
    -ms-flex: 0 0 8.333333%;
    -webkit-box-flex: 0;
            flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .l-col-sm-2 {
    -ms-flex: 0 0 16.666667%;
    -webkit-box-flex: 0;
            flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .l-col-sm-3 {
    -ms-flex: 0 0 25%;
    -webkit-box-flex: 0;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .l-col-sm-4 {
    -ms-flex: 0 0 33.333333%;
    -webkit-box-flex: 0;
            flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .l-col-sm-5 {
    -ms-flex: 0 0 41.666667%;
    -webkit-box-flex: 0;
            flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .l-col-sm-6 {
    -ms-flex: 0 0 50%;
    -webkit-box-flex: 0;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .l-col-sm-7 {
    -ms-flex: 0 0 58.333333%;
    -webkit-box-flex: 0;
            flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .l-col-sm-8 {
    -ms-flex: 0 0 66.666667%;
    -webkit-box-flex: 0;
            flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .l-col-sm-9 {
    -ms-flex: 0 0 75%;
    -webkit-box-flex: 0;
            flex: 0 0 75%;
    max-width: 75%;
  }
  .l-col-sm-10 {
    -ms-flex: 0 0 83.333333%;
    -webkit-box-flex: 0;
            flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .l-col-sm-11 {
    -ms-flex: 0 0 91.666667%;
    -webkit-box-flex: 0;
            flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .l-col-sm-12 {
    -ms-flex: 0 0 100%;
    -webkit-box-flex: 0;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .l-order-sm-first {
    -ms-flex-order: -1;
    -webkit-box-ordinal-group: 0;
            order: -1;
  }
  .l-order-sm-last {
    -ms-flex-order: 13;
    -webkit-box-ordinal-group: 14;
            order: 13;
  }
  .l-order-sm-0 {
    -ms-flex-order: 0;
    -webkit-box-ordinal-group: 1;
            order: 0;
  }
  .l-order-sm-1 {
    -ms-flex-order: 1;
    -webkit-box-ordinal-group: 2;
            order: 1;
  }
  .l-order-sm-2 {
    -ms-flex-order: 2;
    -webkit-box-ordinal-group: 3;
            order: 2;
  }
  .l-order-sm-3 {
    -ms-flex-order: 3;
    -webkit-box-ordinal-group: 4;
            order: 3;
  }
  .l-order-sm-4 {
    -ms-flex-order: 4;
    -webkit-box-ordinal-group: 5;
            order: 4;
  }
  .l-order-sm-5 {
    -ms-flex-order: 5;
    -webkit-box-ordinal-group: 6;
            order: 5;
  }
  .l-order-sm-6 {
    -ms-flex-order: 6;
    -webkit-box-ordinal-group: 7;
            order: 6;
  }
  .l-order-sm-7 {
    -ms-flex-order: 7;
    -webkit-box-ordinal-group: 8;
            order: 7;
  }
  .l-order-sm-8 {
    -ms-flex-order: 8;
    -webkit-box-ordinal-group: 9;
            order: 8;
  }
  .l-order-sm-9 {
    -ms-flex-order: 9;
    -webkit-box-ordinal-group: 10;
            order: 9;
  }
  .l-order-sm-10 {
    -ms-flex-order: 10;
    -webkit-box-ordinal-group: 11;
            order: 10;
  }
  .l-order-sm-11 {
    -ms-flex-order: 11;
    -webkit-box-ordinal-group: 12;
            order: 11;
  }
  .l-order-sm-12 {
    -ms-flex-order: 12;
    -webkit-box-ordinal-group: 13;
            order: 12;
  }
  .l-offset-sm-0 {
    margin-left: 0;
  }
  .l-offset-sm-1 {
    margin-left: 8.333333%;
  }
  .l-offset-sm-2 {
    margin-left: 16.666667%;
  }
  .l-offset-sm-3 {
    margin-left: 25%;
  }
  .l-offset-sm-4 {
    margin-left: 33.333333%;
  }
  .l-offset-sm-5 {
    margin-left: 41.666667%;
  }
  .l-offset-sm-6 {
    margin-left: 50%;
  }
  .l-offset-sm-7 {
    margin-left: 58.333333%;
  }
  .l-offset-sm-8 {
    margin-left: 66.666667%;
  }
  .l-offset-sm-9 {
    margin-left: 75%;
  }
  .l-offset-sm-10 {
    margin-left: 83.333333%;
  }
  .l-offset-sm-11 {
    margin-left: 91.666667%;
  }
}
/**********************************************
* 
* 5.flex
*
***********************************************/
.l-flex-row {
  -ms-flex-direction: row !important;
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: normal !important;
          flex-direction: row !important;
}

.l-flex-column {
  -ms-flex-direction: column !important;
  -webkit-box-orient: vertical !important;
  -webkit-box-direction: normal !important;
          flex-direction: column !important;
}

.l-flex-row-reverse {
  -ms-flex-direction: row-reverse !important;
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: reverse !important;
          flex-direction: row-reverse !important;
}

.l-flex-column-reverse {
  -ms-flex-direction: column-reverse !important;
  -webkit-box-orient: vertical !important;
  -webkit-box-direction: reverse !important;
          flex-direction: column-reverse !important;
}

.l-flex-wrap {
  -ms-flex-wrap: wrap !important;
  flex-wrap: wrap !important;
}

.l-flex-nowrap {
  -ms-flex-wrap: nowrap !important;
  flex-wrap: nowrap !important;
}

.l-flex-wrap-reverse {
  -ms-flex-wrap: wrap-reverse !important;
  flex-wrap: wrap-reverse !important;
}

.l-flex-fill {
  -ms-flex: 1 1 auto !important;
  -webkit-box-flex: 1 !important;
          flex: 1 1 auto !important;
}

.l-flex-grow-0 {
  -ms-flex-positive: 0 !important;
  -webkit-box-flex: 0 !important;
          flex-grow: 0 !important;
}

.l-flex-grow-1 {
  -ms-flex-positive: 1 !important;
  -webkit-box-flex: 1 !important;
          flex-grow: 1 !important;
}

.l-flex-shrink-0 {
  -ms-flex-negative: 0 !important;
  flex-shrink: 0 !important;
}

.l-flex-shrink-1 {
  -ms-flex-negative: 1 !important;
  flex-shrink: 1 !important;
}

.l-justify-content-start {
  -ms-flex-pack: start !important;
  -webkit-box-pack: start !important;
          justify-content: flex-start !important;
}

.l-justify-content-end {
  -ms-flex-pack: end !important;
  -webkit-box-pack: end !important;
          justify-content: flex-end !important;
}

.l-justify-content-center {
  -ms-flex-pack: center !important;
  -webkit-box-pack: center !important;
          justify-content: center !important;
}

.l-justify-content-between {
  -ms-flex-pack: justify !important;
  -webkit-box-pack: justify !important;
          justify-content: space-between !important;
}

.l-justify-content-around {
  -ms-flex-pack: distribute !important;
  justify-content: space-around !important;
}

.l-align-items-start {
  -ms-flex-align: start !important;
  -webkit-box-align: start !important;
          align-items: flex-start !important;
}

.l-align-items-end {
  -ms-flex-align: end !important;
  -webkit-box-align: end !important;
          align-items: flex-end !important;
}

.l-align-items-center {
  -ms-flex-align: center !important;
  -webkit-box-align: center !important;
          align-items: center !important;
}

.l-align-items-baseline {
  -ms-flex-align: baseline !important;
  -webkit-box-align: baseline !important;
          align-items: baseline !important;
}

.l-align-items-stretch {
  -ms-flex-align: stretch !important;
  -webkit-box-align: stretch !important;
          align-items: stretch !important;
}

.l-align-content-start {
  -ms-flex-line-pack: start !important;
  align-content: flex-start !important;
}

.l-align-content-end {
  -ms-flex-line-pack: end !important;
  align-content: flex-end !important;
}

.l-align-content-center {
  -ms-flex-line-pack: center !important;
  align-content: center !important;
}

.l-align-content-between {
  -ms-flex-line-pack: justify !important;
  align-content: space-between !important;
}

.l-align-content-around {
  -ms-flex-line-pack: distribute !important;
  align-content: space-around !important;
}

.l-align-content-stretch {
  -ms-flex-line-pack: stretch !important;
  align-content: stretch !important;
}

.l-align-self-auto {
  -ms-flex-item-align: auto !important;
  -ms-grid-row-align: auto !important;
      align-self: auto !important;
}

.l-align-self-start {
  -ms-flex-item-align: start !important;
  align-self: flex-start !important;
}

.l-align-self-end {
  -ms-flex-item-align: end !important;
  align-self: flex-end !important;
}

.l-align-self-center {
  -ms-flex-item-align: center !important;
  -ms-grid-row-align: center !important;
      align-self: center !important;
}

.l-align-self-baseline {
  -ms-flex-item-align: baseline !important;
  align-self: baseline !important;
}

.l-align-self-stretch {
  -ms-flex-item-align: stretch !important;
  -ms-grid-row-align: stretch !important;
      align-self: stretch !important;
}

@media (max-width: 767px) {
  .l-flex-sm-row {
    -ms-flex-direction: row !important;
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
            flex-direction: row !important;
  }
  .l-flex-sm-column {
    -ms-flex-direction: column !important;
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
            flex-direction: column !important;
  }
  .l-flex-sm-row-reverse {
    -ms-flex-direction: row-reverse !important;
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
            flex-direction: row-reverse !important;
  }
  .l-flex-sm-column-reverse {
    -ms-flex-direction: column-reverse !important;
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
            flex-direction: column-reverse !important;
  }
  .l-flex-sm-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important;
  }
  .l-flex-sm-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
  }
  .l-flex-sm-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important;
  }
  .l-flex-sm-fill {
    -ms-flex: 1 1 auto !important;
    -webkit-box-flex: 1 !important;
            flex: 1 1 auto !important;
  }
  .l-flex-sm-grow-0 {
    -ms-flex-positive: 0 !important;
    -webkit-box-flex: 0 !important;
            flex-grow: 0 !important;
  }
  .l-flex-sm-grow-1 {
    -ms-flex-positive: 1 !important;
    -webkit-box-flex: 1 !important;
            flex-grow: 1 !important;
  }
  .l-flex-sm-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important;
  }
  .l-flex-sm-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important;
  }
  .l-justify-content-sm-start {
    -ms-flex-pack: start !important;
    -webkit-box-pack: start !important;
            justify-content: flex-start !important;
  }
  .l-justify-content-sm-end {
    -ms-flex-pack: end !important;
    -webkit-box-pack: end !important;
            justify-content: flex-end !important;
  }
  .l-justify-content-sm-center {
    -ms-flex-pack: center !important;
    -webkit-box-pack: center !important;
            justify-content: center !important;
  }
  .l-justify-content-sm-between {
    -ms-flex-pack: justify !important;
    -webkit-box-pack: justify !important;
            justify-content: space-between !important;
  }
  .l-justify-content-sm-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important;
  }
  .l-align-items-sm-start {
    -ms-flex-align: start !important;
    -webkit-box-align: start !important;
            align-items: flex-start !important;
  }
  .l-align-items-sm-end {
    -ms-flex-align: end !important;
    -webkit-box-align: end !important;
            align-items: flex-end !important;
  }
  .l-align-items-sm-center {
    -ms-flex-align: center !important;
    -webkit-box-align: center !important;
            align-items: center !important;
  }
  .l-align-items-sm-baseline {
    -ms-flex-align: baseline !important;
    -webkit-box-align: baseline !important;
            align-items: baseline !important;
  }
  .l-align-items-sm-stretch {
    -ms-flex-align: stretch !important;
    -webkit-box-align: stretch !important;
            align-items: stretch !important;
  }
  .l-align-content-sm-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important;
  }
  .l-align-content-sm-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important;
  }
  .l-align-content-sm-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important;
  }
  .l-align-content-sm-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important;
  }
  .l-align-content-sm-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important;
  }
  .l-align-content-sm-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important;
  }
  .l-align-self-sm-auto {
    -ms-flex-item-align: auto !important;
    -ms-grid-row-align: auto !important;
        align-self: auto !important;
  }
  .l-align-self-sm-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important;
  }
  .l-align-self-sm-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important;
  }
  .l-align-self-sm-center {
    -ms-flex-item-align: center !important;
    -ms-grid-row-align: center !important;
        align-self: center !important;
  }
  .l-align-self-sm-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important;
  }
  .l-align-self-sm-stretch {
    -ms-flex-item-align: stretch !important;
    -ms-grid-row-align: stretch !important;
        align-self: stretch !important;
  }
}
/**********************************************
* 
* 6.utilities
*
***********************************************/
.u-pc {
  display: block !important;
}

.u-sp {
  display: none !important;
}

.u-pc-inline {
  display: inline !important;
}

.u-sp-inline {
  display: none !important;
}

@media screen and (max-width: 767px) {
  .u-pc {
    display: none !important;
  }
  .u-sp {
    display: block !important;
  }
  .u-pc-inline {
    display: none !important;
  }
  .u-sp-inline {
    display: inline !important;
  }
}
/*u-br
---------------------------------------*/
.u-br {
  display: inline-block;
}

/*u-screen-reader-text
---------------------------------------*/
.u-screen-reader-text {
  position: absolute;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  width: 1px;
  height: 1px;
}

/*text-align
---------------------------------------*/
.u-tal {
  text-align: left !important;
}

.u-tar {
  text-align: right !important;
}

.u-tac {
  text-align: center !important;
}

@media (max-width: 767px) {
  .u-tal-sm {
    text-align: left !important;
  }
  .u-tar-sm {
    text-align: right !important;
  }
  .u-tac-sm {
    text-align: center !important;
  }
}
/*font-weight
---------------------------------------*/
.u-fwb {
  font-weight: bold;
}

/*vertical-align
---------------------------------------*/
.u-vam {
  vertical-align: middle;
}

/*width height
---------------------------------------*/
.u-w-100 {
  width: 100%;
}

.u-h-100 {
  height: 100%;
}

.u-mw-100 {
  max-width: 100%;
}

.u-mh-100 {
  max-height: 100%;
}

/*img width 100%
---------------------------------------*/
.u-img-100 {
  width: 100%;
  height: auto;
}

/*border
---------------------------------------*/
.u-border-0 {
  border: 0 !important;
}

.u-border-top-0 {
  border-top: 0 !important;
}

.u-border-right-0 {
  border-right: 0 !important;
}

.u-border-bottom-0 {
  border-bottom: 0 !important;
}

.u-border-left-0 {
  border-left: 0 !important;
}

/*display
---------------------------------------*/
.u-none {
  display: none !important;
}

.u-inline {
  display: inline !important;
}

.u-inline-block {
  display: inline-block !important;
}

.u-block {
  display: block !important;
}

.u-table {
  display: table !important;
}

.u-table-row {
  display: table-row !important;
}

.u-table-cell {
  display: table-cell !important;
}

.u-flex {
  display: -ms-flexbox !important;
  display: -webkit-box !important;
  display: flex !important;
}

.u-inline-flex {
  display: -ms-inline-flexbox !important;
  display: -webkit-inline-box !important;
  display: inline-flex !important;
}

@media (max-width: 767px) {
  .u-sm-none {
    display: none !important;
  }
  .u-sm-inline {
    display: inline !important;
  }
  .u-sm-inline-block {
    display: inline-block !important;
  }
  .u-sm-block {
    display: block !important;
  }
  .u-sm-table {
    display: table !important;
  }
  .u-sm-table-row {
    display: table-row !important;
  }
  .u-sm-table-cell {
    display: table-cell !important;
  }
  .u-sm-flex {
    display: -ms-flexbox !important;
    display: -webkit-box !important;
    display: flex !important;
  }
  .u-sm-inline-flex {
    display: -ms-inline-flexbox !important;
    display: -webkit-inline-box !important;
    display: inline-flex !important;
  }
}
/*margin padding
---------------------------------------*/
.u-mat0 {
  margin-top: 0 !important;
}

.u-mat5 {
  margin-top: 5px !important;
}

.u-mat10 {
  margin-top: 10px !important;
}

.u-mat15 {
  margin-top: 15px !important;
}

.u-mat20 {
  margin-top: 20px !important;
}

.u-mat30 {
  margin-top: 30px !important;
}

.u-mat40 {
  margin-top: 40px !important;
}

.u-mat50 {
  margin-top: 50px !important;
}

.u-mat60 {
  margin-top: 60px !important;
}

.u-mat70 {
  margin-top: 70px !important;
}

.u-mat80 {
  margin-top: 80px !important;
}

.u-mat90 {
  margin-top: 90px !important;
}

.u-mat100 {
  margin-top: 100px !important;
}

.u-mat110 {
  margin-top: 110px !important;
}

.u-mat120 {
  margin-top: 120px !important;
}

.u-mat130 {
  margin-top: 130px !important;
}

.u-mat140 {
  margin-top: 140px !important;
}

.u-mat150 {
  margin-top: 150px !important;
}

@media (max-width: 767px) {
  .u-mat0-sm {
    margin-top: 0 !important;
  }
  .u-mat5-sm {
    margin-top: 5px !important;
  }
  .u-mat10-sm {
    margin-top: 10px !important;
  }
  .u-mat15-sm {
    margin-top: 15px !important;
  }
  .u-mat20-sm {
    margin-top: 20px !important;
  }
  .u-mat25-sm {
    margin-top: 25px !important;
  }
  .u-mat30-sm {
    margin-top: 30px !important;
  }
  .u-mat35-sm {
    margin-top: 35px !important;
  }
  .u-mat40-sm {
    margin-top: 40px !important;
  }
  .u-mat45-sm {
    margin-top: 45px !important;
  }
  .u-mat50-sm {
    margin-top: 50px !important;
  }
  .u-mat55-sm {
    margin-top: 55px !important;
  }
  .u-mat60-sm {
    margin-top: 60px !important;
  }
  .u-mat65-sm {
    margin-top: 65px !important;
  }
  .u-mat70-sm {
    margin-top: 70px !important;
  }
  .u-mat75-sm {
    margin-top: 75px !important;
  }
  .u-mat80-sm {
    margin-top: 80px !important;
  }
  .u-mat85-sm {
    margin-top: 85px !important;
  }
  .u-mat90-sm {
    margin-top: 90px !important;
  }
  .u-mat95-sm {
    margin-top: 95px !important;
  }
  .u-mat100-sm {
    margin-top: 100px !important;
  }
}
/**********************************************
 * header
 * footer
 * common
 ***********************************************/
.l-wrap {
  overflow: hidden;
}

/**********************************************
 * Header
 ***********************************************/
.Header {
  background: #fff;
  padding: 10px 30px 10px;
  -webkit-box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
}

.Header_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 90px;
  position: relative;
}

.Header_logoLink {
  display: inline-block;
  font-size: 2.2rem;
  color: #000;
}

.Header_logoLink span {
  font-size: 1.6rem;
  letter-spacing: 0.03em;
}

.Header_navWrap {
  width: auto;
}

.HeaderNav_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  gap: 60px;
  -webkit-transition: all 0.1s;
  transition: all 0.1s;
}

.HeaderNav_list > .HeaderNav_item {
  cursor: pointer;
}

.HeaderNav_link {
  position: relative;
  display: block;
  font-weight: 400;
  line-height: 1.2;
  color: #000;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.HeaderNav_link::after {
  content: "";
  position: absolute;
  background: url(../images/gnav_mark.svg) no-repeat;
  width: 0;
  height: 10px;
  left: 50%;
  margin-left: -40px;
  bottom: -15px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.HeaderNav_link.-contact {
  position: relative;
  display: block;
  font-weight: 400;
  line-height: 1.2;
  color: #000;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  padding-right: 10px;
}

.HeaderNav_link.-contact::after {
  left: 70%;
  bottom: 26px;
  color: #fff !important;
  margin-left: 15px;
}

.HeaderNav_link:hover::after {
  width: 77px;
}

@media screen and (min-width: 768px) and (max-width: 1350px) {
  .HeaderNav_link {
    font-size: 1.6rem;
  }
}
.contact .HeaderNav_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #0083CE;
  border-radius: 50px;
  color: #fff;
  width: 180px;
  padding: 0 54px 0 30px;
  height: 55px;
  overflow: hidden;
}

.contact .HeaderNav_link::before {
  position: absolute;
  content: "";
  background: url(../images/btn_mask.png) no-repeat;
  background-size: contain;
  width: 170px;
  height: 55px;
  left: -100%;
  -webkit-transition: 1.5s;
  transition: 1.5s;
  z-index: 2;
  opacity: 0;
  mix-blend-mode: soft-light;
  /* 重ね方を指定 */
}

.contact .HeaderNav_link:hover::before {
  left: 100%;
  opacity: 1;
}

.Header_spButtonWrap {
  display: none;
}

/*===============================================================
リキッド
===============================================================*/
@media screen and (max-width: 1300px) {
  .HeaderNav_list {
    gap: 4vw;
  }
  .contact .HeaderNav_link {
    padding: 0 2em 0 1em;
    width: 13.85vw;
  }
}
@media screen and (max-width: 1100px) {
  .Header_logo {
    width: 24vw;
  }
  .Header_logo img {
    width: 100%;
    height: auto;
  }
  .HeaderNav_link {
    font-size: 1.45vw;
  }
  .HeaderNav_list {
    gap: 3vw;
  }
}
@media (max-width: 767px) {
  .Header {
    padding: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .Header_inner {
    height: 70px;
    padding: 25px 15px;
    width: calc(100% - 20px);
  }
  .Header_logo {
    width: auto;
  }
  .Header_logo img {
    width: 34vw;
    height: auto;
  }
  .Header_logoLink {
    font-size: 1.8rem;
  }
  .Header_logoLink span {
    font-size: 1.4rem;
  }
  .Header_spButtonWrap {
    display: block;
    position: absolute;
    right: 0;
    z-index: 10;
  }
  .HeaderSpButton {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    cursor: pointer;
    color: #fff;
  }
  .HeaderSpButton:focus {
    outline: none;
  }
  .HeaderSpButton span {
    display: block;
    background: rgb(0, 131, 206);
    width: 28px;
    height: 3px;
    -webkit-transition: 0.5s;
    transition: 0.5s;
    border-radius: 3px;
  }
  .HeaderSpButton span + span {
    margin-top: 8px;
  }
  /* .HeaderSpButton::before {
  	position: absolute;
  	top: 14px;
  	font-family: "Font Awesome 6 Pro";
  	content: '\f0c9';
  	font-size: 3.2rem;
  	line-height: 1;
  	color: #0077CC;
  	font-weight: 300;
  	right: 20px;
  } */
  body.is-spnav-active .HeaderSpButton span:nth-of-type(1) {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  body.is-spnav-active .HeaderSpButton span:nth-of-type(2) {
    display: none;
  }
  body.is-spnav-active .HeaderSpButton span:nth-of-type(3) {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  body.is-spnav-active .HeaderSpButton span + span {
    margin-top: -3px;
  }
  .Header_navWrap {
    position: fixed;
    top: 70px;
    right: -100%;
    width: 100%;
    height: 100%;
    overflow: auto;
    background: #fff;
    padding: 10px 20px 40px;
    display: block;
    -webkit-transition: -webkit-transform 0.5s;
    transition: -webkit-transform 0.5s;
    transition: transform 0.5s;
    transition: transform 0.5s, -webkit-transform 0.5s;
    z-index: 10;
  }
  .HeaderNav_list {
    display: block;
    height: 100%;
  }
  .HeaderNav_list > .HeaderNav_item {
    position: relative;
    padding: 30px 20px;
    padding: 8vw 3vw;
    border-top: 1px solid #666464;
  }
  .HeaderNav_list > .HeaderNav_item::after {
    content: "\f105";
    color: rgb(102, 100, 100);
    font-family: "Font Awesome 6 Pro";
    position: absolute;
    font-size: 6vw;
    font-weight: 300;
    top: 6vw;
    right: 3vw;
  }
  .HeaderNav_list > .HeaderNav_item + .HeaderNav_item {
    margin-left: 0;
  }
  .HeaderNav_link {
    color: rgb(102, 100, 100);
    text-decoration: none;
    font-size: 4vw;
  }
  .HeaderNav_link::after {
    content: none;
  }
  .HeaderNav_link.-contact::after {
    bottom: 25px;
  }
  .contact .HeaderNav_link {
    margin: 30px auto 0;
    width: 98%;
  }
  .contact::after {
    content: none !important;
  }
  body.is-spnav-active .Header_navWrap {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
/**********************************************
 * conversion_area
 ***********************************************/
.conversion_area {
  position: relative;
  z-index: 2;
  background: url(../images/bg_conversion.svg) no-repeat top 60px center rgb(0, 131, 206);
  padding: 150px 0;
}

.conversion_area .conversion_area_lead {
  font-size: 3.6rem;
  font-weight: 400;
  line-height: 52.13px;
  letter-spacing: 0.07em;
  text-align: center;
  color: #fff;
}

.conversion_area .conversion_area_text {
  margin-top: 40px;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 41.4px;
  letter-spacing: 1px;
  text-align: center;
  color: #fff;
}

.conversion_area .btn_area {
  margin-top: 100px;
  padding-top: 100px;
  border-top: 1px solid #fff;
}

.conversion_area .btn_area .Title_lv2 {
  font-family: "Roboto", sans-serif;
  font-size: 7.7rem;
  font-weight: 200;
  line-height: 65.45px;
  letter-spacing: 0.03em;
  text-align: center;
  color: #fff;
}

.conversion_area .btn_area .Btn {
  margin-top: 50px;
}

.conversion_area .btn_area .Btn a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 370px;
  height: 78px;
  color: #fff;
  border: 1px solid #fff;
  border-radius: 50px;
  font-size: 2.8rem;
  font-weight: 400;
  margin: 0 auto;
  overflow: hidden;
}

.conversion_area .btn_area .Btn a span {
  position: relative;
  z-index: 2;
}

.conversion_area .btn_area .Btn a:hover {
  color: rgb(0, 131, 206);
}

.conversion_area .btn_area .Btn a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background: rgb(255, 255, 255);
  background: -webkit-gradient(linear, left top, right top, from(rgb(255, 255, 255)), color-stop(50%, rgb(255, 255, 255)), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(90deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 50%, rgba(255, 255, 255, 0) 100%);
  -webkit-transition: all 1.5s;
  transition: all 1.5s;
}

.conversion_area .btn_area .Btn a:hover::before {
  width: 200%;
}

.conversion_area .btn_area .Btn a[target=_blank]::after {
  position: absolute;
  right: 25px;
  color: #fff;
  font-size: 2rem;
}

.conversion_area .btn_area .Btn a[target=_blank]:hover::after {
  color: rgb(0, 131, 206);
}

@media (max-width: 767px) {
  .conversion_area {
    background: url(../images/bg_conversion.svg) no-repeat top 60px center rgb(0, 131, 206);
    padding: 80px 0 100px;
    background-size: 50% auto;
  }
  .conversion_area .conversion_area_lead {
    font-size: 2rem;
    line-height: 36px;
  }
  .conversion_area .conversion_area_text {
    margin-top: 25px;
    font-size: 1.6rem;
    line-height: 36.8px;
    letter-spacing: normal;
    text-align: left;
  }
  .conversion_area .btn_area {
    margin-top: 30px;
    padding-top: 60px;
    border-top: 1px solid #fff;
  }
  .conversion_area .btn_area .Title_lv2 {
    font-size: 5.4rem;
    line-height: 45.9px;
    letter-spacing: 0.03em;
  }
  .conversion_area .btn_area .Btn {
    margin-top: 30px;
  }
  .conversion_area .btn_area .Btn a {
    width: 90%;
    height: 46px;
    font-size: 1.8rem;
  }
  .conversion_area .btn_area .Btn a[target=_blank]::after {
    font-size: 1.6rem;
  }
}
/**********************************************
 * Footer
 ***********************************************/
.Footer {
  padding: 80px 0 40px;
  background: rgb(241, 249, 254);
}

.Footer_logo {
  text-align: center;
}

.Footer_logoImg {
  width: 100px;
  height: auto;
}

.Footer_nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 20px;
}

.Footer_nav .Footer_nav_card {
  width: 19%;
}

.Footer_nav .Footer_nav_card.action_menu {
  width: 24%;
}

.FooterNav_item + .FooterNav_item {
  margin-top: 40px;
}

.Footer_navLink {
  display: inline-block;
  font-size: 1.8rem;
  color: #0083CE;
  text-align: center;
  font-weight: 700;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.Footer_navLink:hover {
  opacity: 0.6;
}

.Footer_nav_child {
  margin-top: 20px;
}

.Footer_navLink.-child {
  position: relative;
  display: inline-block;
  font-size: 1.6rem;
  color: rgb(102, 100, 100);
  text-align: center;
  font-weight: 400;
  padding: 10px 0;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  padding-left: 20px;
  line-height: 100%;
}

.Footer_navLink.-child::before {
  position: absolute;
  content: "\f105";
  font-family: "Font Awesome 6 Pro";
  top: 11px;
  left: 0;
  font-size: 1.6rem;
  color: #0083CE;
}

.Footer_copyright {
  font-size: 1.6rem;
  font-weight: 700;
  color: #666464;
  text-align: center;
  margin-top: 100px;
}

/*===============================================================
リキッド
===============================================================*/
@media screen and (max-width: 1300px) {
  .Footer {
    padding-left: 30px;
    padding-right: 30px;
  }
  .Footer_navLink.-child {
    font-size: 1.23vw;
  }
}
@media (max-width: 767px) {
  .Footer {
    padding: 60px 0 20px;
  }
  .Footer .l-container {
    padding: 0 20px;
  }
  .Footer_nav {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .Footer_nav .Footer_nav_card.action_menu,
  .Footer_nav .Footer_nav_card {
    width: 100%;
  }
  .Footer_nav .Footer_nav_card + .Footer_nav_card {
    margin-top: 40px;
  }
  .Footer_navLink {
    font-size: 1.8rem;
  }
  .Footer_navLink.-child {
    font-size: 1.6rem;
  }
  .Footer_copyright {
    font-size: 1rem;
  }
}
/**********************************************
 * common
***********************************************/
/* Title_lv1
*******************************************/
.Title_lv1 {
  margin: 80px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 4rem;
  line-height: 1.2;
  text-align: center;
}

.Title_lv1::before,
.Title_lv1::after {
  content: "";
  width: 3px;
  height: 40px;
  background-color: #014190;
}

.Title_lv1::before {
  margin-right: 30px;
  -webkit-transform: rotate(-35deg);
          transform: rotate(-35deg);
}

.Title_lv1::after {
  margin-left: 30px;
  -webkit-transform: rotate(35deg);
          transform: rotate(35deg);
}

@media (max-width: 767px) {
  .Title_lv1 {
    margin: 40px 0;
    font-size: 2.6rem;
  }
}
/* Title_lv2
*******************************************/
.Title_lv2 {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  font-size: 2.6rem;
  letter-spacing: 0.06em;
  text-align: left;
  color: #07c;
  padding: 10px 0;
}

@media (max-width: 767px) {
  .Title_lv2 {
    font-size: 1.8rem;
    margin-bottom: 10px;
  }
  .Title_lv2:before {
    top: -20px;
  }
}
.Lang_en {
  font-family: "Montserrat", sans-serif;
  font-size: 1.6rem;
}

/* Text
*******************************************/
.Text {
  font-size: 1.8rem;
  letter-spacing: 0.18px;
  line-height: 2.5;
}

.Text.-lh-35 {
  line-height: 35.2px;
}

.Text.-white {
  color: #ffffff;
}

.Text.-center {
  text-align: center;
}

@media (max-width: 767px) {
  .Text {
    font-size: 1.6rem;
    letter-spacing: 0.16px;
  }
}
/* Link
*******************************************/
.Link {
  position: relative;
  color: #387ccc;
  display: inline-block;
  text-decoration: none;
}

.Link:hover {
  opacity: 0.7;
}

.Link.-arrow::before,
.Link.-arrow::after {
  font-family: "Font Awesome 5 Free";
  font-size: 1.4rem;
  font-weight: 900;
  color: #333;
}

.Link.-arrow.-l::before {
  margin-right: 5px;
  content: "\f053";
}

.Link.-arrow.-r::after {
  margin-left: 5px;
  content: "\f054";
}

.Btn .Link.-arrow.-l::before {
  margin-right: 10px;
  font-size: 1.6rem;
  color: #fff;
}

.Btn .Link.-arrow.-r::after {
  margin-left: 10px;
  font-size: 1.6rem;
  color: #fff;
}

/* 外部リンク */
a[target=_blank]::after {
  display: inline-block;
  margin-left: 10px;
  font-family: "Font Awesome 5 Pro";
  content: "\f08e";
  font-weight: 400;
  font-size: 1.4rem;
  color: #0083CE;
}

/* PDFリンク */
a[href$=".pdf"]:after {
  margin-left: 10px;
  font-family: "Font Awesome 5 Pro";
  content: "\f1c1";
  font-weight: 400;
  font-size: 1.4rem;
  color: #0083CE;
}

/* Btn
*******************************************/
.BtnWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.Btn {
  min-width: 280px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1;
}

.Btn:not(:last-of-type) {
  margin-right: 30px;
}

.bg_content .Btn a {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 16px;
  text-align: center;
  color: rgb(0, 131, 206);
  border: 1px solid rgb(0, 131, 206);
  background: rgb(241, 249, 254);
  width: 270px;
  height: 55px;
  overflow: hidden;
}

.bg_content .Btn a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background: rgb(0, 131, 206);
  background: -webkit-gradient(linear, left top, right top, from(rgb(0, 131, 206)), color-stop(50%, rgb(0, 131, 206)), to(rgba(0, 131, 206, 0)));
  background: linear-gradient(90deg, rgb(0, 131, 206) 0%, rgb(0, 131, 206) 50%, rgba(0, 131, 206, 0) 100%);
  -webkit-transition: all 1.5s;
  transition: all 1.5s;
}

.bg_content .Btn a::after {
  content: "\f105";
  color: rgb(0, 131, 206);
  font-family: "Font Awesome 6 Pro";
  position: absolute;
  right: 15px;
  font-size: 1.6rem;
  font-weight: 400;
  margin-left: 10px;
}

.bg_content .Btn a:hover {
  color: #fff;
}

.bg_content .Btn a:hover::before {
  width: 200%;
}

.bg_content .Btn a:hover::after {
  color: #fff;
}

.bg_content .Btn a span {
  position: relative;
  z-index: 2;
}

@media (max-width: 767px) {
  .bg_content .Btn a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    height: 55px;
  }
}
.Btn a,
.Btn button {
  position: relative;
  display: block;
  padding: 18px 30px !important;
  border-radius: 50px;
  width: 100%;
  color: #fff;
  text-align: center;
}

.Btn.-disabled a,
.Btn.-disabled button {
  cursor: auto;
  pointer-events: none;
  background-color: #999999;
}

@media (max-width: 767px) {
  .Btn {
    font-size: 1.6rem;
    width: 100%;
  }
  .Btn:not(:last-of-type) {
    margin-right: 0;
    margin-bottom: 15px;
  }
}
/* DefinitionList
***************************************/
.DefinitionList_item + .DefinitionList_item {
  margin-top: 10px;
}

.DefinitionList_term {
  position: relative;
  font-weight: bold;
  font-size: 2rem;
  display: inline-block;
  padding-right: 30px;
}

.DefinitionList_term::after {
  position: absolute;
  content: "";
  right: 10px;
  top: -5px;
  bottom: 0;
  margin: auto;
  width: 10px;
  height: 10px;
  border-bottom: 1px solid #333;
  border-right: 1px solid #333;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

/* Pagetop
***************************************/
.Pagetop {
  position: fixed;
  right: 30px;
  bottom: 30px;
  width: 80px;
  height: 80px;
  z-index: 10;
}

.Pagetop_link {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%;
  width: 100%;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  border-radius: 50%;
  background: #99CDEB;
  color: #fff;
  font-size: 3.4rem;
  font-weight: 700;
}

.Pagetop_img {
  width: 100%;
  height: auto;
}

.Pagetop_link:hover {
  opacity: 0.8;
}

@media (max-width: 767px) {
  .Pagetop {
    right: 20px;
    bottom: 40px;
    width: 50px;
    height: 50px;
  }
  .Pagetop_link {
    font-size: 2.6rem;
  }
}
.contact_btn a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: url(../images/bg_conatct.svg) no-repeat;
  background-size: contain;
  color: #fff;
  width: 383px;
  height: 115px;
  margin: 110px auto 0;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  font-size: 2rem;
}

.contact_btn a::after {
  content: none;
}

.contact_btn a:hover {
  opacity: 0.8;
}

@media (max-width: 767px) {
  .contact_btn a {
    background-size: 100%;
    width: 80%;
    height: 92px;
    margin: 80px auto 0;
    -webkit-transition: 0.5s;
    transition: 0.5s;
    font-size: 1.8rem;
  }
  .l-wrap {
    background: none;
  }
}
/* メインタイトル */
.mainvisual {
  position: relative;
  padding-top: 125px;
  text-align: center;
  background: #007BCC;
  width: 100%;
  height: 695px;
  z-index: 2;
  margin-top: -2px;
}

.mainvisual.-second-layer::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 165px;
  background: url(../images/mainvisual_frame_s_layer.svg) no-repeat;
  background-size: cover;
  left: 0;
  bottom: -50px;
}

.mainvisual.-second-layer.-white::after {
  background: url(../images/mainvisual_frame_s_layer-white.svg) no-repeat;
  background-size: cover;
}

.mainvisual .title-box {
  color: #fff;
  text-align: left;
}

.mainvisual .title, .mainvisual .c_card .label_block .title__blue, .c_card .label_block .mainvisual .title__blue {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-size: 7.2rem;
  letter-spacing: 4px;
  font-weight: 200;
}

.mainvisual .sub-title {
  font-size: 2.6rem;
  font-weight: 400;
}

.mainvisual .heading-text {
  margin-top: 75px;
  font-size: 3.2rem;
  line-height: 200%;
  letter-spacing: 1px;
}

.mainvisual.-other {
  height: 270px;
  padding-top: 0;
  margin-bottom: 85px;
}

.mainvisual.-other .l-container {
  height: 100%;
}

.mainvisual.-other::after {
  content: none;
}

.mainvisual.-other .title-box {
  height: 100%;
}

.mainvisual.-other .title, .mainvisual.-other .c_card .label_block .title__blue, .c_card .label_block .mainvisual.-other .title__blue {
  height: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 5.4rem;
  font-weight: 200;
  line-height: 54px;
  letter-spacing: 1px;
}

.mainvisual.-other .sub-title {
  font-size: 2.4rem;
  margin-top: 35px;
  line-height: 24px;
}

@media (min-width: 550px) and (max-width: 767px) {
  .mainvisual.-second-layer::after {
    height: 50px !important;
  }
}
@media (max-width: 767px) {
  .mainvisual.-second-layer::after {
    width: 100%;
    height: 35px;
    background: url(../images/mainvisual_frame_s_layer_sp.svg) no-repeat;
    background-size: cover;
    bottom: -2px;
  }
  .mainvisual .title, .mainvisual .c_card .label_block .title__blue, .c_card .label_block .mainvisual .title__blue {
    font-size: 3.2rem;
    line-height: 36px;
    letter-spacing: 2px;
  }
  .mainvisual .sub-title {
    font-size: 1.4rem;
    letter-spacing: 2px;
  }
  .mainvisual .heading-text {
    margin-top: 20px;
    font-size: 1.8rem;
  }
  .mainvisual.-other {
    height: 120px;
    padding-top: 0px;
    margin-bottom: 0;
  }
  .mainvisual.-other .title, .mainvisual.-other .c_card .label_block .title__blue, .c_card .label_block .mainvisual.-other .title__blue {
    font-size: 2rem;
    font-weight: 300;
    line-height: 20px;
    letter-spacing: 1px;
    text-align: center;
  }
  .mainvisual.-other .sub-title {
    font-size: 14px;
    font-weight: 400;
    line-height: 14px;
    text-align: center;
    margin-top: 15px;
  }
}
.decoration_image {
  position: absolute;
  z-index: 3;
  left: -15px;
  bottom: 0;
  padding-top: 50px;
}

.lead {
  font-weight: 400;
  font-size: 3.8rem;
  letter-spacing: 0.1em;
  text-align: left;
  color: #666464;
}

@media (max-width: 767px) {
  .lead {
    font-size: 2.4rem;
    letter-spacing: 0.06em;
    line-height: 180%;
  }
}
.lonav {
  margin-top: 0;
}

.lonav a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: url(../images/bg_philosophy.png) no-repeat top 10px center;
  background-size: contain;
  width: 100%;
  height: 258px;
  color: #fff;
  font-weight: normal;
  font-size: 2.4rem;
  letter-spacing: 0.06em;
  text-align: center;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.lonav .vision a {
  background: url(../images/bg_vision.png) no-repeat top 10px center;
  background-size: contain;
  width: 100%;
  height: 258px;
}

.lonav .greeting a {
  background: url(../images/bg_greeting.png) no-repeat top 10px center;
  background-size: contain;
  width: 100%;
  height: 258px;
}

.lonav .guide a {
  background: url(../images/bg_guide.png) no-repeat top 10px center;
  background-size: contain;
  width: 100%;
  height: 258px;
}

.lonav a::before {
  content: "";
  position: absolute;
  background: url(../images/bg_mask.png) no-repeat top 10px center;
  background-size: contain;
  width: 100%;
  height: 258px;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.lonav a::after {
  content: "\f178";
  font-family: "Font Awesome 6 Pro";
  position: absolute;
  bottom: 40px;
  left: 50%;
  margin-left: -12px;
  color: #fff;
}

.lonav a span {
  position: relative;
  z-index: 2;
}

.lonav a:hover::before {
  opacity: 0;
}

@media (max-width: 767px) {
  .lonav .card:nth-of-type(n + 3) {
    margin-top: 20px;
  }
  .lonav a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background: url(../images/bg_philosophy.png) no-repeat top 10px center;
    background-size: contain;
    width: 100%;
    height: 160px;
    font-size: 1.6rem;
    padding-bottom: 30px;
  }
  .lonav .vision a,
  .lonav .greeting a,
  .lonav .guide a {
    height: 170px;
  }
  .lonav a::after {
    content: "\f178";
    font-family: "Font Awesome 6 Pro";
    position: absolute;
    bottom: 45px;
  }
  .lonav a::before {
    height: 170px;
    top: 0px;
  }
  .lonav a:hover::before {
    opacity: 1;
  }
}
.detail {
  margin-top: 50px;
  line-height: 2;
}

.detail dt {
  margin-bottom: 10px;
}

.detail dt span {
  color: #0083CE;
}

.name {
  margin-top: 45px;
  font-weight: normal;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  line-height: 32px;
}

.name span {
  display: inline-block;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 32px;
  margin-right: 15px;
}

.name em {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 32px;
  display: inline-block;
  margin-left: 10px;
}

@media (max-width: 767px) {
  .name {
    margin-top: 25px;
  }
  .name em {
    margin-left: 0;
  }
}
.table-default {
  table-layout: fixed;
}

.table-default th {
  position: relative;
  width: 6em;
  padding: 40px 0 0;
  vertical-align: top;
  line-height: 2;
}

.table-default tr:first-of-type th:first-of-type {
  padding: 10px 0;
}

.table-default th::after {
  position: absolute;
  content: ":";
  top: 39px;
  right: -15px;
}

.table-default tr:first-of-type th:first-of-type::after {
  top: 9px;
}

.table-default td {
  padding: 40px 0 10px 30px;
  vertical-align: top;
  line-height: 2;
}

.table-default tr:first-of-type td:first-of-type {
  padding: 10px 0 10px 30px;
}

.table-default td dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.table-default td dl dt {
  width: 4em;
  margin-right: 1em;
  text-align: justify;
  -moz-text-align-last: justify;
       text-align-last: justify;
}

@media (max-width: 767px) {
  .table-default th,
  .table-default td {
    display: block;
    width: 100%;
  }
  .table-default th {
    text-align: left;
    -moz-text-align-last: left;
         text-align-last: left;
    padding: 10px 0 10px;
  }
  .table-default th::after {
    content: none;
  }
  .table-default td {
    padding: 0 0 10px 0;
  }
  .table-default tr:last-of-type td {
    padding-bottom: 0;
  }
  .table-default tr:first-of-type td:first-of-type {
    padding: 0 0 10px 0;
  }
}
#method .bg_content {
  background: url(../images/bg_vision.svg) no-repeat top 0 center;
  background-size: 90%;
}

.anime {
  display: none;
}

/* コンテンツの背景 */
.bg_content {
  position: relative;
  padding-top: 65px;
  padding-bottom: 65px;
  z-index: 3;
}

.bg_content::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: url(../images/logo-content-left.svg) no-repeat;
  width: 516px;
  height: 600px;
  background-size: contain;
  z-index: 1;
}

.bg_content::after {
  content: "";
  position: absolute;
  top: 613px;
  right: 0;
  background: url(../images/logo-content-right.svg) no-repeat;
  width: 335px;
  height: 400px;
  background-size: contain;
  z-index: 1;
}

.bg_content section {
  position: relative;
  z-index: 4;
}

.bg_content.-other {
  padding-top: 0;
  padding-bottom: 0;
}

.decoration_image + .bg_content {
  margin-bottom: 385px;
  padding-bottom: 0;
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .bg_content {
    padding-top: 60px;
    padding-bottom: 80px;
    overflow: hidden;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .bg_content::before {
    top: 125px;
    left: 0;
    background: url(../images/logo-content-left.svg) no-repeat;
    width: 220px;
    height: 220px;
    background-size: contain;
  }
  .bg_content::after {
    content: "";
    position: absolute;
    top: auto;
    bottom: 30px;
    right: -15px;
    background: url(../images/logo-content-right.svg) no-repeat;
    width: 155px;
    height: 170px;
    background-size: contain;
  }
  .decoration_image {
    width: calc(100% + 15px);
  }
  .decoration_image::after {
    content: "";
    position: absolute;
    top: -70px;
    right: -15px;
    background: url(../images/logo-content-right.svg) no-repeat;
    width: 155px;
    height: 170px;
    background-size: contain;
  }
  .decoration_image + .bg_content {
    margin-bottom: 120px;
    padding-bottom: 0;
    z-index: 1;
  }
  .decoration_image + .bg_content::before {
    top: 0;
  }
  .decoration_image + .bg_content::after {
    content: none;
  }
}
.l-row.-wide {
  margin-right: -50px;
  margin-left: -50px;
}

.-wide .l-col-1,
.-wide .l-col-2,
.-wide .l-col-3,
.-wide .l-col-4,
.-wide .l-col-5,
.-wide .l-col-6,
.-wide .l-col-7,
.-wide .l-col-8,
.-wide .l-col-9,
.-wide .l-col-10,
.-wide .l-col-11,
.-wide .l-col-12,
.-wide .l-col,
.-wide .l-col-auto,
.-wide .l-col-sm-1,
.-wide .l-col-sm-2,
.-wide .l-col-sm-3,
.-wide .l-col-sm-4,
.-wide .l-col-sm-5,
.-wide .l-col-sm-6,
.-wide .l-col-sm-7,
.-wide .l-col-sm-8,
.-wide .l-col-sm-9,
.-wide .l-col-sm-10,
.-wide .l-col-sm-11,
.-wide .l-col-sm-12,
.-wide .l-col-sm,
.-wide .l-col-sm-auto {
  padding-right: 50px;
  padding-left: 50px;
}

@media (max-width: 767px) {
  .l-row.-wide {
    margin-right: -7px;
    margin-left: -7px;
  }
  .-wide .l-col-1,
  .-wide .l-col-2,
  .-wide .l-col-3,
  .-wide .l-col-4,
  .-wide .l-col-5,
  .-wide .l-col-6,
  .-wide .l-col-7,
  .-wide .l-col-8,
  .-wide .l-col-9,
  .-wide .l-col-10,
  .-wide .l-col-11,
  .-wide .l-col-12,
  .-wide .l-col,
  .-wide .l-col-auto,
  .-wide .l-col-sm-1,
  .-wide .l-col-sm-2,
  .-wide .l-col-sm-3,
  .-wide .l-col-sm-4,
  .-wide .l-col-sm-5,
  .-wide .l-col-sm-6,
  .-wide .l-col-sm-7,
  .-wide .l-col-sm-8,
  .-wide .l-col-sm-9,
  .-wide .l-col-sm-10,
  .-wide .l-col-sm-11,
  .-wide .l-col-sm-12,
  .-wide .l-col-sm,
  .-wide .l-col-sm-auto {
    padding-right: 7px;
    padding-left: 7px;
  }
}
.l-content {
  margin-top: -5px;
  padding-bottom: 0;
}

.mainvisual {
  padding: 115px 0 0;
  position: relative;
  text-align: center;
  background: url(../../images/top/mainvisual.jpg) rgb(241, 249, 254) no-repeat center top;
  background-size: cover;
  height: 1080px;
  display: none;
}

.mainvisual::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 205px;
  background: url(../../images/mainvisual_frame.svg) no-repeat;
  left: 0;
  bottom: 0;
}

.mainvisual .imgbox {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: -90px;
  z-index: 3;
}

.mainvisual .lead {
  font-size: 4.4rem;
  font-weight: 500;
  line-height: 94px;
  letter-spacing: 0.2em;
  color: #fff;
}

@media (max-width: 767px) {
  .mainvisual {
    padding: 40px 0 0;
    position: relative;
    text-align: center;
    background: url(../../images/top/mainvisual_sp.jpg) rgb(241, 249, 254) no-repeat center top;
    background-size: cover;
    height: 372px;
  }
  .mainvisual::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 43px;
    background: url(../../images/mainvisual_frame_sp.svg) no-repeat;
    background-size: 100% auto;
    left: 0;
    bottom: -2px;
  }
  .mainvisual .lead {
    font-size: 2rem;
    font-weight: 500;
    line-height: 40px;
    letter-spacing: 0.28em;
  }
  .mainvisual .imgbox {
    bottom: -60px;
  }
}
.theme {
  background: rgb(241, 249, 254);
  padding: 100px 0 100px;
  text-align: center;
}

.theme .Text {
  font-size: 2.1rem;
}

.theme_text {
  font-family: "Roboto", sans-serif;
  font-size: 7.4rem;
  font-weight: 700;
  line-height: 86.72px;
  color: rgb(0, 131, 206);
  letter-spacing: 10px;
  margin-top: 25px;
}

@media (max-width: 767px) {
  .theme {
    padding: 90px 0 40px;
    text-align: center;
  }
  .theme .Text {
    font-size: 1.6rem;
  }
  .theme_text {
    font-size: 3.6rem;
    font-weight: 700;
    line-height: 36px;
    letter-spacing: 0.09em;
    text-align: center;
    margin-top: 30px;
  }
}
/*===============================================================
topics
===============================================================*/
.topics {
  padding: 50px 0 150px;
  background: #fff;
}

.topics .l-container {
  padding: 0;
  padding-left: 50px;
  padding-right: 50px;
}

.topics .Title_lv2 {
  font-size: 6.3rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 200;
  line-height: 65.45px;
  letter-spacing: 0.03em;
  color: rgb(102, 100, 100);
}

.topics .Title_lv2 span {
  display: inline-block;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 28.8px;
  letter-spacing: 0.1em;
  color: rgb(0, 131, 206);
  margin-left: 20px;
}

.topics .topics-swiper {
  position: relative;
  margin-top: 60px;
  overflow: hidden;
}

.topics .topics-swiper a,
.topics .topics-box .topics-card a {
  display: block;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  color: rgb(102, 100, 100);
}

.topics .topics-swiper a:hover {
  opacity: 0.7;
}

.topics figure {
  margin-bottom: 30px;
  text-align: center;
  aspect-ratio: 16/9;
  width: 100%;
  height: auto;
}

.topics img {
  border-radius: 20px;
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.topics .topics-text {
  padding-left: 15px;
  position: relative;
  line-height: 1.7;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  min-height: 3em;
  /* 2行分の高さ（フォントサイズに応じて調整） */
  max-height: 3em;
  /* 2行以上の高さにならないようにする */
  margin-top: 10px;
}

.topics .topics-text::before {
  content: "\f105";
  position: absolute;
  color: rgb(0, 131, 206);
  font-family: "Font Awesome 6 Pro";
  font-size: 1.6rem;
  font-weight: 400;
  top: 2px;
  left: 0;
}

.topics .swiper-button-next,
.topics .swiper-button-prev {
  background: rgb(102, 100, 100);
  background-color: #0083CE;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  color: #fff;
}

.topics .swiper-button-next:after,
.topics .swiper-button-prev:after {
  font-size: 1.2rem;
  font-weight: 600;
}

.topics .swiper-button-prev {
  top: 40%;
  left: -25px;
  left: -50px;
  right: auto;
}

.topics .swiper-button-next {
  top: 40%;
  right: -25px;
  right: -50px;
  left: auto;
}

.topics .btn_text {
  text-align: right;
  margin-top: 10px;
}

.topics .btn_text::after {
  content: "\f105";
  color: rgb(0, 131, 206);
  font-family: "Font Awesome 6 Pro";
  position: relative;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 400;
  margin-left: 10px;
}

.topics .topics-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 60px;
  overflow: hidden;
}

.topics .topics-box .topics-card {
  width: 33.3333333333%;
}

.topics .topics-box .topics-card + .topics-card {
  margin-left: 30px;
}

@media (max-width: 767px) {
  .topics {
    padding: 5vw 0 15vw;
  }
  .topics .l-container {
    padding: 0;
    padding-left: 0;
    padding-right: 0;
  }
  .topics .Title_lv2 {
    font-size: 5.4rem;
    line-height: 45.9px;
    letter-spacing: 0.03em;
    padding: 0 8vw;
  }
  .topics .Title_lv2 span {
    font-size: 2rem;
    line-height: 24px;
    letter-spacing: 0.1em;
    color: rgb(0, 131, 206);
    margin-left: 15px;
  }
  .topics figure {
    margin-bottom: 30px;
    text-align: center;
    height: 134px;
  }
  .topics img {
    height: auto;
  }
  #topics-container,
  .topics-wrap {
    height: auto;
  }
  .topics .topics-swiper {
    height: auto;
    margin-top: 8vw;
  }
  .topics .swiperbtn-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 5vw;
    z-index: 2;
    height: 40px;
    position: relative;
    top: 0;
  }
  .topics .swiper-button-next,
  .topics .swiper-button-prev {
    position: relative;
    width: 40px;
    height: 40px;
    margin: 0;
    top: 0;
    right: 0;
    left: 0;
  }
  .topics .swiper-button-next {
    margin-left: 25px;
  }
  .topics .topics-box .topics-card {
    width: 100%;
  }
}
.navigation {
  background: rgb(241, 249, 254);
  padding: 155px 0 200px;
}

.navigation .navigation_list .l-row {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.navigation .about_us {
  margin-top: 150px;
}

.navigation .block_action {
  margin-top: 150px;
  background-color: #fff;
}

.navigation .navigation_list img {
  max-width: 756px;
  height: auto;
}

.navigation .navigation_list .navigation_card dt {
  font-size: 6.3rem;
  font-weight: 200;
  line-height: 70px;
  letter-spacing: 0.03em;
}

.navigation .navigation_list .navigation_card dt span {
  display: block;
  margin-top: 15px;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 26.4px;
  letter-spacing: 0.1em;
  color: rgb(0, 131, 206);
}

.navigation .navigation_list .navigation_card dd {
  margin-top: 45px;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 36px;
}

.navigation .navigation_list .navigation_card .Btn {
  margin-top: 40px;
}

.navigation .navigation_list .navigation_card .Btn a {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 16px;
  text-align: center;
  color: rgb(0, 131, 206);
  border: 1px solid rgb(0, 131, 206);
  background: rgb(241, 249, 254);
  width: 270px;
  overflow: hidden;
}

.navigation .navigation_list .navigation_card .Btn a span {
  position: relative;
  z-index: 2;
}

.navigation .navigation_list .navigation_card .Btn a:hover {
  color: #fff;
}

.navigation .navigation_list .navigation_card .Btn a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background: rgb(0, 131, 206);
  background: -webkit-gradient(linear, left top, right top, from(rgb(0, 131, 206)), color-stop(50%, rgb(0, 131, 206)), to(rgba(0, 131, 206, 0)));
  background: linear-gradient(90deg, rgb(0, 131, 206) 0%, rgb(0, 131, 206) 50%, rgba(0, 131, 206, 0) 100%);
  -webkit-transition: all 1.5s;
  transition: all 1.5s;
}

.navigation .navigation_list .navigation_card .Btn a:hover::before {
  width: 200%;
}

.navigation .navigation_list .navigation_card .Btn a::after {
  content: "\f105";
  color: rgb(0, 131, 206);
  font-family: "Font Awesome 6 Pro";
  position: absolute;
  right: 15px;
  font-size: 1.6rem;
  font-weight: 400;
  margin-left: 10px;
}

.navigation .navigation_list .navigation_card .Btn a:hover::after {
  color: #fff;
}

@media (max-width: 767px) {
  .navigation {
    background: rgb(241, 249, 254);
    padding: 100px 0 110px;
  }
  .navigation .about_us,
  .navigation .our_passion {
    margin-top: 90px;
  }
  .navigation .navigation_list img {
    max-width: 100%;
    height: auto;
  }
  .navigation .navigation_list .navigation_card dt {
    font-size: 5.4rem;
    line-height: 45.9px;
    letter-spacing: 0.03em;
  }
  .navigation .navigation_list .navigation_card dt span {
    font-size: 2rem;
  }
  .navigation .navigation_list .navigation_card dd {
    font-size: 1.6rem;
    margin-top: 30px;
    font-weight: 400;
    line-height: 35.2px;
  }
  .navigation .navigation_list .navigation_card .Btn a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    height: 55px;
  }
}
.mark {
  position: relative;
}

.mark.-large::before {
  position: absolute;
  content: "";
  background: url(../../images/top/bg_mark_large.svg) no-repeat;
  width: 485px;
  height: 562px;
  background-size: contain;
  top: 0;
  left: 0;
  z-index: 2;
}

.mark01 {
  position: relative;
}

.mark01::before {
  position: absolute;
  content: "";
  background: url(../../images/top/bg_mark01.svg) no-repeat;
  width: 315px;
  height: 385px;
  background-size: contain;
  top: -140px;
  left: 0;
  z-index: 0;
}

.mark02 {
  position: relative;
}

.mark02::before {
  position: absolute;
  content: "";
  background: url(../../images/top/bg_mark02.svg) no-repeat;
  width: 315px;
  height: 385px;
  background-size: contain;
  top: 510px;
  right: 0;
  z-index: 0;
}

.our_passion.mark02::before {
  top: 0;
}

@media (max-width: 767px) {
  .mark.-large::before {
    background: url(../../images/top/bg_mark_large.svg) no-repeat;
    width: 200px;
    height: 200px;
    background-size: contain;
    top: auto;
    bottom: -40px;
  }
  .mark01::before {
    position: absolute;
    content: "";
    background: url(../../images/top/bg_mark01.svg) no-repeat;
    width: 154px;
    height: 170px;
    background-size: contain;
    top: 190px;
    left: 0;
  }
  .mark02::before {
    background: url(../../images/top/bg_mark02.svg) no-repeat;
    width: 134px;
    height: 170px;
    background-size: contain;
    top: auto;
    bottom: -140px;
    right: 0;
  }
  .our_passion.mark02::before {
    top: auto;
    bottom: -70px;
  }
}
/* action */
#action {
  background: #fff;
}

#action .bg_content {
  background-color: #fff;
  padding-bottom: 0;
  padding-top: 120px;
}

#action .mainvisual {
  background: url(../../images/action/bg_action.jpg) no-repeat center top;
  background-size: cover;
}

#action .bg_content::after {
  top: 533px;
}

#action .balloon {
  background: url(../../images/action/bg_action.svg) no-repeat;
  width: 550px;
  height: 86px;
  color: #fff;
  padding: 5px 0 0;
  text-align: center;
  margin: 0 auto;
  font-size: 3.4rem;
  font-weight: 400;
  line-height: 49.23px;
  letter-spacing: 3.4px;
}

#action .message .message_lead {
  font-size: 3.4rem;
  font-weight: 400;
  line-height: 62.9px;
  letter-spacing: 0.1em;
  text-align: center;
  color: #0083CE;
}

#action .message .message_lead em {
  position: relative;
}

#action .message .message_lead em.wave::after {
  position: absolute;
  content: "";
  background: url(../../images/action/wave.svg) repeat-x;
  left: 0;
  bottom: -10px;
  width: 100%;
  height: 11px;
  background-size: contain;
}

#action .action_tag {
  display: inline-block;
  background: #0083CE;
  border-radius: 5px;
  font-size: 3.1rem;
  font-weight: 300;
  line-height: 26.35px;
  letter-spacing: 0.02em;
  text-align: center;
  color: #fff;
  padding: 7px 15px 10px;
}

#action section .Title_lv2 {
  font-size: 7.2rem;
  font-weight: 200;
  line-height: 61.2px;
  letter-spacing: 0.03em;
  color: #666464;
  margin-top: 10px;
}

#action section .Title_lv2 span {
  font-family: "Noto Sans JP", sans-serif;
  display: inline-block;
  font-size: 2.2rem;
  font-weight: 400;
  line-height: 31.86px;
  letter-spacing: 0.1em;
  color: #0083CE;
  margin-left: 10px;
}

#action .action_lead {
  font-size: 2.6rem;
  font-weight: 400;
  line-height: 52px;
  letter-spacing: 0.1em;
  color: #0083CE;
  margin-top: 70px;
}

#action .action_text {
  font-weight: 500;
  line-height: 35.2px;
  letter-spacing: 1px;
  margin-top: 50px;
}

#action .action01 {
  margin-top: 115px;
}

#action .action01 .bg_blue {
  position: relative;
  background: -webkit-gradient(linear, left top, left bottom, from(#6BC8F2), to(#00A9E4));
  background: linear-gradient(180deg, #6BC8F2 0%, #00A9E4 100%);
  padding: 60px 0;
  margin-top: 70px;
}

#action .action01 .bg_blue::after {
  content: "";
  position: absolute;
  background: url(../../images/action/baloon_parts.svg) no-repeat;
  bottom: -53px;
  left: 0;
  right: 0;
  margin: auto;
  width: 165px;
  height: 53px;
  background-size: contain;
}

#action .action01 .bg_blue .bg_blue_inner {
  position: relative;
}

#action .action01 .bg_blue .bg_blue_inner::before {
  content: "";
  background: url(../../images/action/bg_fish.svg) no-repeat;
  top: -60px;
  right: -120px;
  position: absolute;
  width: 240px;
  height: 69px;
  background-size: contain;
}

#action .action01 .btn_area {
  margin-top: 20px;
}

#action .action01 .btn_area + .btn_area {
  margin-top: 170px;
}

#action .action01 .btn_area .btn_area_title {
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 32.4px;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fff;
}

#action .action01 .btn_area .btn_circle a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  border: 1px solid #fff;
  margin: 70px auto 0;
  color: #fff;
  font-weight: 500;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  text-align: center;
  line-height: 1.3;
}

#action .action01 .btn_area .btn_circle a::after {
  position: absolute;
  content: "\f105";
  font-family: "Font Awesome 6 Pro";
  bottom: 5px;
  left: 50%;
  font-size: 1.4rem;
  margin-left: -5px;
  color: #fff;
}

#action .action01 .btn_area .btn_circle a:hover {
  background: rgb(0 131 206/30%);
}

#action .action01 .method {
  margin-top: 150px;
}

#action .action01 .method .method_title {
  background: #0083CE;
  padding: 10px;
  color: #fff;
  border-radius: 15px;
  font-family: Noto Sans JP;
  font-weight: 400;
  font-size: 3.2rem;
  line-height: 46.34px;
  letter-spacing: 0.1em;
  text-align: center;
  margin-bottom: 60px;
}

#action .action01 .method .method_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#action .action01 .method .method_card {
  position: relative;
  width: calc(33.3333333333% - 40px);
  margin-right: 60px;
}

#action .action01 .method .method_card:nth-of-type(3n) {
  margin-right: 0;
}

#action .action01 .method .method_card + .method_card::after {
  content: "\f178";
  font-family: "Font Awesome 6 Pro";
  background: #0083CE;
  width: 40px;
  height: 40px;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  border-radius: 50%;
  top: 50%;
  left: -50px;
  margin-top: -70px;
  font-weight: 400;
  font-size: 2.4rem;
}

#action .action01 .method .method_card img {
  width: 100%;
  height: auto;
}

#action .action01 .method .method_card figcaption {
  margin-top: 15px;
  font-weight: 500;
  line-height: 28px;
  letter-spacing: 0.16px;
}

#action .movie {
  position: relative;
  margin: 50px 0;
}

#action .movie::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background: url(../../images/action/bg_logo.svg) no-repeat;
  background-size: contain;
  width: 341px;
  height: 400px;
}

#action .movie .movie_title {
  color: #0083CE;
  font-weight: 400;
  font-size: 3.2rem;
  line-height: 46.34px;
  letter-spacing: 0.1em;
  text-align: center;
}

#action .movie .movie_text {
  margin-top: 20px;
  font-weight: 400;
  font-size: 1.9rem;
  line-height: 34.2px;
  letter-spacing: 1px;
  text-align: center;
}

#action .movie .movie_inner {
  width: 970px;
  margin: 40px auto 0;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  border-radius: 25px;
}

#action .movie .movie_inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#action .action02 {
  position: relative;
  background: #F1F9FE;
  margin-top: 100px;
  padding: 150px 0 200px;
}

#action .action02::before {
  content: "";
  position: absolute;
  right: 0;
  top: -60px;
  background: url(../../images/action/bg_logo_large.svg) no-repeat;
  background-size: contain;
  width: 519px;
  height: 600px;
}

#action .action02::after {
  content: "";
  position: absolute;
  left: 0;
  top: 33%;
  background: url(../../images/action/bg_logo.svg) no-repeat;
  background-size: contain;
  width: 341px;
  height: 400px;
}

#action .action02 .operation_number {
  font-weight: 600;
  font-size: 2.2rem;
  line-height: 31.86px;
  letter-spacing: 0.1em;
  color: #0083CE;
}

#action .action02 .operation_number span {
  font-family: "Roboto", sans-serif;
  display: inline-block;
  margin-right: 10px;
  font-weight: 200;
  font-size: 5.6rem;
  line-height: 47.6px;
  letter-spacing: 1.68px;
  color: #666464;
}

#action .action02 .operation_title {
  font-weight: 400;
  font-size: 2.2rem;
  line-height: 44px;
  letter-spacing: 0px;
  margin-top: 30px;
}

#action .action02 .operation_text {
  font-weight: 500;
  line-height: 35.2px;
  letter-spacing: 1px;
  margin-top: 30px;
}

#action .action02 figure img {
  width: 100%;
  height: auto;
}

#action .action03 {
  position: relative;
  padding-top: 150px;
}

#action .action03::before {
  content: "";
  position: absolute;
  right: 0;
  top: -150px;
  background: url(../../images/action/bg_logo_large.svg) no-repeat;
  background-size: contain;
  width: 519px;
  height: 600px;
}

#action .action03::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -190px;
  background: url(../../images/action/bg_logo.svg) no-repeat;
  background-size: contain;
  width: 341px;
  height: 400px;
  z-index: -1;
}

#action .action03 .support_text {
  font-weight: 500;
  line-height: 35.2px;
  letter-spacing: 1px;
}

#action .bg_content .Btn a {
  background: #fff;
}

@media (max-width: 767px) {
  #action .mainvisual {
    width: 100%;
    height: 340px;
    padding-top: 40px;
    background: url(../../images/action/bg_action_sp.jpg) no-repeat center top;
    background-size: cover;
  }
  #action .bg_content {
    padding-top: 60px;
  }
  #action .bg_content::before {
    top: 235px;
  }
  #action .bg_content::after {
    top: 1095px;
  }
  #action .balloon {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    background: #0083CE;
    background-size: 100%;
    height: 120px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 3rem;
    line-height: 45px;
    letter-spacing: 3px;
    text-align: center;
    border-radius: 30px;
    margin-bottom: 30px;
  }
  #action .balloon::after {
    position: absolute;
    content: "";
    background: url(../../images/action/baloon_arrow.svg) no-repeat;
    background-size: contain;
    width: 79px;
    height: 26px;
    bottom: -25px;
    left: 0;
    right: 0;
    margin: auto;
  }
  #action .message .message_lead {
    font-size: 2.4rem;
    line-height: 44.4px;
    letter-spacing: 2%;
    margin-top: 20px;
  }
  #action .action_tag {
    font-weight: 300;
    font-size: 2.2rem;
    line-height: 18.7px;
    letter-spacing: 2%;
    text-align: center;
    padding: 7px 15px 10px;
  }
  #action .action01 {
    margin-top: 65px;
  }
  #action section .Title_lv2 {
    font-weight: 300;
    font-size: 36px;
    line-height: 30.6px;
    letter-spacing: 3%;
  }
  #action section .Title_lv2 span {
    display: block;
    font-size: 1.4rem;
    line-height: 20.27px;
    letter-spacing: 10%;
    margin-left: 0;
    margin-top: 10px;
  }
  #action .action_lead {
    font-size: 2.2rem;
    line-height: 44px;
    letter-spacing: 10%;
    margin-top: 10px;
  }
  #action .action_text {
    margin-top: 30px;
  }
  #action .action01 .method {
    position: relative;
    margin-top: 100px;
  }
  #action .action01 .method::before {
    content: "";
    position: absolute;
    left: 0;
    top: 343px;
    background: url(../../images/action/bg_logo.svg) no-repeat;
    background-size: contain;
    width: 170px;
    height: 170px;
  }
  #action .action01 .method .method_title {
    font-size: 2.8rem;
    line-height: 40.54px;
    letter-spacing: 10%;
    text-align: center;
    padding: 10px;
    margin-bottom: 30px;
  }
  #action .action01 .method .method_list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #action .action01 .method .method_card {
    position: relative;
    width: 100%;
    margin-right: 0;
  }
  #action .action01 .method .method_card + .method_card {
    margin-top: 70px;
  }
  #action .action01 .method .method_card + .method_card::after {
    content: "\f178";
    width: 40px;
    height: 40px;
    color: #fff;
    top: 15px;
    left: 50%;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    margin-left: -15px;
  }
  #action .action01 .btn_area .btn_circle a {
    margin: 30px auto 0;
  }
  #action .action01 .bg_blue {
    position: relative;
    background: -webkit-gradient(linear, left top, left bottom, from(#6BC8F2), to(#00A9E4));
    background: linear-gradient(180deg, #6BC8F2 0%, #00A9E4 100%);
    padding: 100px 0 60px;
    margin-top: 80px;
  }
  #action .action01 .bg_blue .bg_blue_inner::before {
    top: -100px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  #action .action01 .action_title {
    font-weight: 400;
    font-size: 2.4rem;
    line-height: 34.75px;
    letter-spacing: 2.4px;
    text-align: center;
    color: #fff;
    background: #0083CE;
    border-radius: 25px;
    padding: 10px 0;
    margin: 30px 0;
  }
  #action .movie {
    margin: 50px 0 0;
  }
  #action .movie::before {
    content: none;
  }
  #action .movie .movie_title {
    font-size: 2.6rem;
  }
  #action .movie .movie_text {
    margin-top: 20px;
    font-size: 1.6rem;
    text-align: left;
  }
  #action .movie .movie_inner {
    width: 100%;
    margin: 30px auto 0;
  }
  #action .action02 {
    margin-top: 80px;
    padding: 80px 0;
  }
  #action .action02::before {
    content: "";
    position: absolute;
    right: 0;
    top: -105px;
    background: url(../../images/action/bg_logo_large.svg) no-repeat;
    background-size: contain;
    width: 190px;
    height: 220px;
  }
  #action .action02::after {
    content: none;
  }
  #action .action02 .operation_title {
    font-size: 2rem;
    line-height: 40px;
    letter-spacing: 0px;
  }
  #action .action02 .operation_number {
    font-weight: 400;
  }
  #action .action02 .operation_text {
    font-weight: 400;
    font-size: 16px;
    line-height: 35.2px;
    letter-spacing: 1px;
    margin-top: 25px;
  }
  #action .action03 {
    padding-top: 80px;
  }
  #action .action03::before {
    content: "";
    position: absolute;
    right: 0;
    top: -35px;
    background: url(../../images/action/bg_logo_large.svg) no-repeat;
    background-size: contain;
    width: 190px;
    height: 220px;
  }
  #action .action03::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 610px;
    background: url(../../images/action/bg_logo.svg) no-repeat;
    background-size: contain;
    width: 170px;
    height: 170px;
  }
  #action .action03 figure img {
    max-width: 100%;
    height: auto;
  }
}
.t-blue {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 28px;
  color: #0083CE;
}

/* 魚たちの衣食住の課題 */
#issues .mainvisual.-other {
  background: url(../../images/action/issues/bg_issues.jpg) no-repeat;
  background-size: cover;
}

#issues .mainvisual.-other {
  margin-bottom: 0;
}

#issues .issues_message {
  padding: 120px 0 100px;
  background: #fff;
}

#issues .issues_message .issues_title {
  font-weight: 400;
  font-size: 3.2rem;
  line-height: 64px;
  letter-spacing: 1px;
  color: #0083CE;
  text-align: center;
}

#issues .issues_message .issues_text {
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 39.6px;
  letter-spacing: 0.01em;
  text-align: center;
  margin-top: 60px;
}

#issues .task {
  padding: 120px 0 120px;
}

#issues .task .task_baloon {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #0083CE;
  color: #fff;
  border-radius: 50px;
  font-weight: 400;
  font-size: 2.2rem;
  line-height: 26.4px;
  letter-spacing: 0.1em;
  width: 370px;
  padding: 10px 0;
  text-align: center;
  margin-bottom: 70px;
}

#issues .task .task_baloon::before {
  content: "";
  position: absolute;
  top: -10px;
  right: -200px;
  background: url(../../images/action/issues/illustration.svg) no-repeat;
  background-size: contain;
  width: 171px;
  height: 72px;
}

#issues .task .task_baloon::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  left: 70px;
  bottom: -25px;
  border-style: solid;
  border-width: 34px 18.5px 0 18.5px;
  border-color: #0083CE transparent transparent transparent;
}

#issues .task .task_baloon span {
  font-weight: 500;
  font-size: 3.4rem;
  line-height: 49.23px;
  letter-spacing: 0.1em;
}

#issues .task .task_title {
  font-weight: 500;
  font-size: 2.6rem;
  line-height: 39px;
  letter-spacing: 1px;
}

#issues .task .task_text {
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 39.6px;
  letter-spacing: 0.01em;
  margin-top: 20px;
}

#issues .task .news_box {
  margin-top: 80px;
}

#issues .task .movie_inner {
  width: 100%;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  border-radius: 20px;
}

#issues .task .movie_inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#issues .task.-pattern02 {
  position: relative;
  background: #fff;
}

#issues .task.-pattern02::before {
  content: "";
  background: url(../../images/action/issues/bg_pattern02-top.svg) no-repeat;
  width: 100%;
  height: 41px;
  background-size: contain;
  position: absolute;
  top: -20px;
  left: 0;
}

#issues .task.-pattern02::after {
  content: "";
  background: url(../../images/action/issues/bg_pattern02-bottom.svg) no-repeat;
  width: 100%;
  height: 41px;
  background-size: contain;
  position: absolute;
  bottom: -20px;
  left: 0;
}

#issues .task.-pattern02 .task_baloon {
  margin: 0 0 65px auto;
}

#issues .task.-pattern02 .task_baloon::before {
  right: auto;
  left: -200px;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

#issues .task.-pattern02 .textbox {
  width: 370px;
  margin: 0 0 0 auto;
}

@media (max-width: 767px) {
  #issues .mainvisual.-other {
    background: url(../../images/action/issues/bg_issues_sp.jpg) no-repeat;
    background-size: cover;
  }
  #issues .issues_message {
    padding: 60px 0 40px;
  }
  #issues .issues_message .issues_title {
    font-weight: 400;
    font-size: 1.8rem;
    line-height: 34.2px;
    letter-spacing: 1px;
  }
  #issues .issues_message .issues_text {
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 35.2px;
    letter-spacing: 0.01em;
    text-align: center;
    margin-top: 40px;
  }
  #issues .task {
    padding: 160px 0 80px;
  }
  #issues .task .task_baloon {
    position: relative;
    width: 100%;
    margin-bottom: 55px;
    font-size: 2rem;
    letter-spacing: 2px;
  }
  #issues .task .task_baloon::before {
    top: -90px;
    right: 10px;
  }
  #issues .task.-pattern02 .task_baloon {
    margin: 0 0 55px auto;
  }
  #issues .task.-pattern02 .task_baloon::before {
    right: auto;
    left: 20px;
  }
  #issues .task .task_baloon::after {
    bottom: -23px;
    margin-left: -20px;
    border-width: 27px 18.5px 0 18.5px;
  }
  #issues .task .task_baloon span {
    font-size: 2.8rem;
    line-height: 40.23px;
  }
  #issues .task .task_text {
    font-weight: 400;
    font-size: 1.6rem;
  }
  #issues .task figure img {
    width: 100%;
    height: auto;
  }
  #issues .task .news_box {
    margin-top: 50px;
  }
  #issues .task.-pattern02::before {
    content: "";
    background: url(../../images/action/issues/bg_pattern02-top_sp.svg) no-repeat;
    width: 100%;
    height: 15px;
    background-size: cover;
    position: absolute;
    top: -15px;
    left: 0;
  }
  #issues .task.-pattern02::after {
    content: "";
    background: url(../../images/action/issues/bg_pattern02-bottom_sp.svg) no-repeat;
    width: 100%;
    height: 15px;
    background-size: cover;
    position: absolute;
    bottom: -5px;
    left: 0;
  }
  #issues .task.-pattern02 .textbox {
    width: 100%;
  }
}
/* About Us */
#about .mainvisual {
  background: url(../../images/about/about-mainvisual.jpg) no-repeat center top;
  background-size: cover;
}

#about .bg_content::before {
  top: -20px;
}

#about .bg_content::after {
  top: 545px;
}

#about .about-box {
  position: relative;
  z-index: 1;
}

#about .about-box .l-row {
  margin-left: -20px;
  margin-right: -20px;
}

#about .about-box .l-col-6 {
  padding-right: 20px;
  padding-left: 20px;
}

#about .card {
  background: #FFF;
  margin-bottom: 40px;
  border-radius: 20px;
  -webkit-box-shadow: 5px 5px 13px 0px rgba(0, 0, 0, 0.2);
          box-shadow: 5px 5px 13px 0px rgba(0, 0, 0, 0.2);
}

#about .card a {
  display: block;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

#about .card a:hover {
  opacity: 0.5;
}

#about .l-row:last-child .card {
  margin-bottom: 0;
}

#about .img-box {
  padding: 20px;
}

#about .img-box img {
  width: 100%;
}

#about .txt-box {
  padding: 0 20px 35px 20px;
}

#about .txt-box .card-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  color: #666464;
  font-size: 3.4rem;
  font-style: normal;
  font-weight: 300;
  line-height: 100%;
  letter-spacing: 2.04px;
}

#about .txt-box .card-subtitle {
  padding-top: 15px;
  color: #0083CE;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.6px;
}

@media (max-width: 767px) {
  #about .mainvisual {
    width: 100%;
    height: 340px;
    padding-top: 40px;
    background: url(../..//images/about/about-mainvisual-sp.jpg) no-repeat center top;
    background-size: cover;
  }
  #about .bg_content::before {
    top: 0;
  }
  #about .bg_content::after {
    top: auto;
    bottom: 0;
  }
  #about .card {
    margin-bottom: 25px;
  }
  #about .l-row:first-child .card {
    margin-top: 0;
  }
  #about .l-row:last-child .card {
    margin-bottom: 25px;
  }
  #about .l-row:last-child .l-col-6:last-child .card {
    margin-bottom: 0;
  }
  #about .img-box {
    padding: 15px 15px 10px;
  }
  #about .txt-box {
    padding: 0 15px 25px 15px;
  }
  #about .txt-box .card-title {
    font-size: 2.4rem;
    line-height: 100%;
    letter-spacing: 0.48px;
  }
  #about .txt-box .card-subtitle {
    padding-top: 13px;
    font-size: 1.4rem;
  }
}
.about .mainvisual.-other {
  background: url(../../images/about/bg_about.jpg) no-repeat;
  background-size: cover;
}

@media (max-width: 767px) {
  .about .mainvisual.-other {
    background: url(../../images/about/bg_about_sp.jpg) no-repeat;
    background-size: cover;
  }
}
/* 下層ページ共通 */
.about {
  background: #F5F5F8;
}

.about .bg_content .Btn a {
  background: #F5F5F8;
}

.about .bg_content::before {
  top: 125px;
}

.about .bg_content .Text {
  font-size: 1.6rem;
  line-height: 220%;
}

.about .bg_content .lead {
  letter-spacing: 1px;
}

.about .bg_content .detail {
  font-weight: 500;
  letter-spacing: 0.16px;
}

.about .bg_content img {
  width: 100%;
  max-width: 811px;
  height: auto;
}

@media (max-width: 767px) {
  .about .bg_content {
    padding-top: 50px;
  }
  .about .bg_content::before {
    top: 115px !important;
  }
  .about .bg_content img {
    max-width: none;
  }
}
/* guide */
#guide .bg_content::before {
  top: 180px;
}

#guide .business {
  text-indent: -2rem;
  padding-left: 5rem;
}

#guide .guide-box {
  width: 100%;
  margin-top: 10px;
  text-align: center;
}

#guide .guide-box figcaption {
  text-align: center;
}

#guide .guide-box img {
  width: 180px;
  -webkit-box-shadow: 5px 5px 13px 0px rgba(0, 0, 0, 0.2);
          box-shadow: 5px 5px 13px 0px rgba(0, 0, 0, 0.2);
}

@media (max-width: 767px) {
  #guide .business {
    padding-left: 2rem;
  }
  #guide .guide-box {
    margin-top: 40px;
  }
}
/* greeting */
@media (max-width: 767px) {
  .about .Title_lv2 {
    margin-bottom: 0;
  }
}
#news .l-content {
  padding-bottom: 10px;
}

#news .mainvisual {
  background: url(../../images/news/bg_news.jpg) no-repeat center top;
  background-size: cover;
}

.news .mainvisual {
  background: url(../../images/news/bg_news-single.jpg) no-repeat center top;
  background-size: cover;
}

.news-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  min-height: 100px;
  margin-top: 115px;
}

.news-list li {
  width: calc(33.3333333333% - 45px);
  margin-right: 45px;
  margin-bottom: 80px;
}

/* .news-list li:nth-of-type(3n) {
	margin-right: 0;
} */
.news-list li figure {
  margin-bottom: 30px;
  text-align: center;
  height: 200px;
}

.news-list li figure img {
  border-radius: 20px;
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.news-list li .data_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 20px;
}

.news-list li time {
  font-family: "Roboto", sans-serif;
  display: inline-block;
  font-size: 1.6rem;
  letter-spacing: 0.06em;
  text-align: left;
  color: #666464;
}

.news-list li .news-tax {
  display: inline-block;
  min-width: 125px;
  border-radius: 25px;
  background: #BBE2F1;
  text-align: center;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 18px;
  letter-spacing: 0.05em;
  text-align: center;
  padding: 5px 15px;
  color: #0083CE;
}

.news-list li a {
  display: block;
}

.news-list li a {
  display: block;
  letter-spacing: 0.02em;
  text-align: left;
  color: #666464;
  margin-top: 10px;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.news-list li a .news_title {
  line-height: 200%;
  letter-spacing: 0.8px;
}

.news-list li a[target=_blank]::after {
  content: none;
}

.news-list li a[target=_blank] .news_title::after {
  position: relative;
  top: 0;
  display: inline-block;
  margin-left: 5px;
  font-family: "Font Awesome 5 Pro";
  content: "\f08e";
  font-weight: 400;
  font-size: 1.4rem;
  color: #666464;
}

.news-list li a[href$=".pdf"] .news_title::after {
  content: "\f1c1";
}

.news-list li a:hover {
  opacity: 0.7;
}

.year-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 10px;
  margin-top: 80px;
}

.year-list li {
  width: calc(20% - 24px);
  margin-right: 30px;
}

.year-list li:nth-of-type(5n) {
  margin-right: 0;
}

.year-list li:nth-of-type(n + 6) {
  margin-top: 20px;
}

.year-list input {
  display: none;
}

.year-list label {
  -webkit-transition: 0.5s;
  transition: 0.5s;
  display: block;
  cursor: pointer;
  position: relative;
  cursor: pointer;
  font-size: 1.6rem;
  letter-spacing: 0.06em;
  text-align: center;
  color: #0083CE;
  padding: 10px 0;
  background: #fff;
  border: 1px solid #0083CE;
  border-radius: 25px;
}

.year-list label::after {
  content: "\f105";
  color: rgb(0, 131, 206);
  font-family: "Font Awesome 6 Pro";
  position: absolute;
  right: 15px;
  font-size: 1.6rem;
  font-weight: 400;
  margin-left: 10px;
}

.year-list label:hover,
.year-list input:checked + label {
  opacity: 1;
  background: #0083CE;
  color: #fff;
}

.year-list label:hover::after,
.year-list input:checked + label::after {
  color: #fff;
}

@media (max-width: 767px) {
  #news .l-content {
    padding-bottom: 0;
  }
  #news .mainvisual {
    width: 100%;
    height: 340px;
    padding-top: 40px;
    background: url(../../images/news/bg_news_sp.jpg) no-repeat center top;
    background-size: cover;
  }
  #news .bg_content {
    padding-top: 30px;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    padding: 8vw;
  }
  #news .bg_content::before {
    top: 20px;
  }
  .news .mainvisual {
    width: 100%;
    background: url(../../images/news/bg_news-single_sp.jpg) no-repeat center top;
    background-size: cover;
  }
  .year-list {
    margin-top: 40px;
  }
  .year-list li {
    width: 100%;
    margin-right: 0;
  }
  .year-list li:nth-of-type(n + 2) {
    margin-top: 20px;
  }
  .year-list label {
    padding: 15px 0;
  }
  .news-list {
    margin-top: 60px;
  }
  .news-list li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 40px;
  }
  .news-list li a {
    font-size: 1.4rem;
  }
  .news-list li figure {
    margin-bottom: 20px;
  }
  .news-list li figure img {
    height: auto;
  }
  .news-list li time {
    letter-spacing: 0.32px;
  }
}
/* 記事 */
.new-detail time {
  font-family: "Roboto", sans-serif;
  display: inline-block;
  font-size: 1.6rem;
  letter-spacing: 0.06em;
  text-align: left;
  color: #666464;
  margin-right: 10px;
}

.new-detail label {
  display: inline-block;
  min-width: 125px;
  border-radius: 25px;
  background: #BBE2F1;
  text-align: center;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 18px;
  letter-spacing: 0.05em;
  text-align: center;
  padding: 7px 15px;
  color: #0083CE;
}

.new-detail h2 {
  font-weight: normal;
  font-size: 3.2rem;
  letter-spacing: 0.04em;
  text-align: left;
  color: #000;
  margin: 30px 0 45px;
}

.new-detail p {
  line-height: 2;
}

.new_pagers {
  margin-top: 100px;
}

.Btn {
  margin-top: 100px;
}

.Btn a {
  margin: 0 auto;
}

@media (max-width: 767px) {
  .new-detail h2 {
    font-weight: normal;
    font-size: 2.2rem;
    color: #000;
    margin: 20px 0 25px;
  }
  .new-detail label {
    display: inline-block;
    margin-left: 0;
    min-width: 10em;
    width: auto;
    padding: 5px 10px;
    margin-right: 10px;
  }
}
/* ブロックエディター スタイルカスタマイズ */
.new-detail p + *,
.new-detail * + p {
  margin-top: 40px;
}

.wp-block-file__embed {
  display: none;
}

.wp-block-video {
  margin-bottom: 60px;
}

.wp-block-video video {
  width: 100%;
  aspect-ratio: 16/9;
}

.news_content h3 {
  font-weight: normal;
  font-size: 2.6rem;
  letter-spacing: 0.04em;
  text-align: left;
  color: #01a1cc;
  margin-bottom: 60px;
}

.news_content h4 {
  font-weight: 500;
  font-size: 2.2rem;
  letter-spacing: 0.04em;
  text-align: left;
  color: #000;
  margin-bottom: 60px;
}

.news_content h5 {
  font-weight: 600;
  font-size: 1.8rem;
  letter-spacing: 0.04em;
  text-align: left;
  color: #000;
  margin-top: 60px;
  margin-bottom: 60px;
  padding-left: 10px;
  border-left: 5px solid #01a1cc;
}

.wp-block-columns h5 {
  margin-top: 0;
}

.news_content ul.wp-block-list,
.news_content ol.wp-block-list {
  margin-bottom: 60px;
}

.news_content ul.wp-block-list li {
  padding-left: 25px;
  position: relative;
}

.news_content ul.wp-block-list li + li {
  margin-top: 20px;
}

.news_content ul.wp-block-list li::before {
  display: block;
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  background: #ccc;
  border-radius: 50%;
  top: 7px;
  left: 0;
  z-index: 1;
}

.news_content ol.wp-block-list {
  counter-reset: list-counter;
  /* カウンターの初期化 */
  list-style: none;
  /* デフォルトのリストスタイルを無効に */
}

.news_content ol.wp-block-list li {
  padding-left: 25px;
  position: relative;
  counter-increment: list-counter;
  /* カウンターを1ずつ増加 */
}

.news_content ol.wp-block-list li + li {
  margin-top: 20px;
}

.news_content ol.wp-block-list li::before {
  content: counter(list-counter) ". ";
  /* カウンターの値を表示 */
  position: absolute;
  left: 0;
  font-weight: bold;
}

.news_content a {
  color: #01a1cc;
}

.news_content a::after {
  margin-left: 3px;
}

.wp-block-buttons {
  margin-top: 60px;
  margin-bottom: 40px;
}

.wp-block-button + .wp-block-button {
  margin-top: 20px;
}

.wp-block-button:last-of-type {
  margin-bottom: 60px;
}

.wp-block-button a {
  display: inline-block;
  border-radius: 20px;
  background: #fff;
  border: 1px solid #01a1cc;
  color: #01a1cc !important;
  line-height: 40px;
  padding: 0 45px;
  min-width: 188px;
  text-align: center;
}

.wp-block-button a {
  position: relative;
}

.wp-block-button a::after {
  position: absolute;
  content: "\f061";
  font-family: "Font Awesome 6 Pro";
  top: 50%;
  right: 15px;
  margin-top: -20px;
}

.wp-block-button a::after {
  position: absolute;
  content: "\f061";
  font-family: "Font Awesome 6 Pro";
  top: 50%;
  right: 15px;
  margin-top: -20px;
}

.wp-block-button a[target=_blank]::after {
  font-family: "Font Awesome 6 Pro";
  content: "\f08e";
  font-weight: 400;
  font-size: 1.4rem;
  color: #01A1CC;
}

.wp-block-button a[href$=".pdf"]:after {
  font-family: "Font Awesome 6 Pro";
  content: "\f1c1";
  font-weight: 400;
  font-size: 1.4rem;
  color: #01A1CC;
  margin-top: -19px;
}

.wp-block-file {
  margin-bottom: 60px;
}

.wp-block-file a::after {
  content: none;
}

.wp-block-file .wp-block-file__button {
  display: inline-block;
  border-radius: 20px;
  background: #fff;
  border: 1px solid #01a1cc;
  color: #01a1cc !important;
  line-height: 40px;
  padding: 0 45px;
  margin-left: 20px;
}

.wp-block-flexible-table-block-table {
  margin-top: 40px;
  margin-bottom: 60px;
}

.wp-block-flexible-table-block-table table {
  width: 100%;
}

.wp-block-flexible-table-block-table + .wp-block-flexible-table-block-table {
  margin-top: 40px;
}

.wp-block-flexible-table-block-table table tr *:first-of-type {
  min-width: 135px;
}

.wp-block-flexible-table-block-table table th {
  background: rgba(1, 161, 204, 0.1);
  border: 1px solid #999;
  padding: 20px;
}

.wp-block-flexible-table-block-table table td {
  border: 1px solid #999;
  padding: 20px;
}

.wp-block-flexible-table-block-table table + figcaption,
.wp-block-flexible-table-block-table figcaption + table {
  margin-top: 15px;
}

.wp-block-gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 40px;
  margin-bottom: 60px;
}

.wp-block-image + .wp-block-image {
  margin-left: 30px;
}

.wp-block-image img {
  width: 100%;
  height: auto;
  border-radius: 10px;
}

.wp-block-image figcaption {
  margin-top: 15px;
}

.wp-block-quote {
  margin-bottom: 60px;
}

.wp-block-quote p:first-of-type {
  background: rgba(1, 161, 204, 0.2);
  margin-bottom: 10px;
  padding: 15px;
  border-radius: 10px;
}

.wp-block-quote p + * {
  margin-top: 0 !important;
}

@media (max-width: 767px) {
  .Btn {
    margin-top: 50px;
  }
  .wp-block-gallery {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 40px;
  }
  .wp-block-image {
    width: 100%;
  }
  .wp-block-image + .wp-block-image {
    margin-left: 0;
  }
  .wp-block-image:nth-of-type(n + 2) {
    margin-top: 30px;
  }
  .wp-block-flexible-table-block-table table {
    max-width: 640px !important;
    width: 640px !important;
  }
  .news_content {
    font-size: 1.4rem;
  }
  .news_content h3 {
    font-size: 2.2rem;
    margin-bottom: 40px;
  }
  .news_content h4 {
    font-size: 2rem;
    color: #000;
    margin-bottom: 40px;
  }
  .news_content h5 {
    margin-bottom: 40px;
    padding-left: 5px;
    border-left: 3px solid #01a1cc;
    font-weight: 500;
  }
  .news_content ul.wp-block-list,
  .news_content ol.wp-block-list {
    margin-bottom: 20px;
  }
  .news_content ul.wp-block-list li {
    padding-left: 20px;
  }
  .news_content ul.wp-block-list li + li {
    margin-top: 10px;
  }
  .news_content ul.wp-block-list li::before {
    width: 9px;
    height: 9px;
  }
  .news_content ol.wp-block-list li {
    padding-left: 20px;
  }
  .news_content ol.wp-block-list li + li {
    margin-top: 10px;
  }
  .wp-block-buttons {
    margin-top: 40px;
    margin-bottom: 40px;
  }
  .wp-block-button:last-of-type {
    margin-bottom: 40px;
  }
  .wp-block-video {
    margin-bottom: 40px;
  }
  .wp-block-quote {
    margin-bottom: 40px;
  }
  .wp-block-flexible-table-block-table table th {
    padding: 15px;
  }
  .wp-block-button a {
    border-radius: 50px;
    text-align: center;
    line-height: 1.5;
    padding: 10px 45px;
  }
  .wp-block-button a::after {
    right: 20px;
    margin-top: -10px;
  }
  .wp-block-flexible-table-block-table {
    margin-bottom: 40px;
  }
  :where(.wp-block-columns.is-layout-flex) {
    gap: 1em !important;
  }
}
.scroll-hint-icon {
  background: rgba(10, 102, 183, 0.7);
}

@media (max-width: 767px) {
  .scroll-hint-icon {
    top: calc(50% - 44px);
    left: calc(50% - 50px);
    width: 90px;
    height: 87px;
  }
}
/* passion */
#passion .mainvisual {
  background: url(../../images/passion/bg_passion.jpg) no-repeat center top;
  background-size: cover;
}

#passion .lead {
  font-size: 3.8rem;
  font-weight: 400;
  line-height: 64px;
  letter-spacing: 1px;
  color: #0083CE;
}

#passion .theme_text {
  font-family: "Roboto", sans-serif;
  font-size: 6.3rem;
  font-weight: 700;
  line-height: 126px;
  letter-spacing: 0.1em;
  color: #0083CE;
}

@media (max-width: 767px) {
  #passion .mainvisual {
    width: 100%;
    height: 340px;
    padding-top: 40px;
    background: url(../../images/passion/bg_passion_sp.jpg) no-repeat center top;
    background-size: cover;
  }
  #passion .lead {
    font-size: 2.4rem;
    line-height: 43.2px;
    letter-spacing: 1px;
  }
  #passion .theme_text {
    font-size: 3.6rem;
    font-weight: 700;
    line-height: 72px;
    margin-top: 10px;
  }
}
/* セクション  */
/*===============================================================

    section_top_kv

===============================================================*/
.section_top_kv {
  background-image: url(/cms/wp-content/themes/shiodamari2026/assets/images/top/top_kv_bg.jpg);
  background-size: cover;
  background-position: center center;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  aspect-ratio: 3000/2700;
}
@media screen and (max-width: 767px) {
  .section_top_kv {
    background-image: url(/cms/wp-content/themes/shiodamari2026/assets/images/top/top_kv_bg_sp.jpg);
    background-position: top center;
    background-size: contain;
  }
}
.section_top_kv {
  /*===============================================================
  txt_block
  ===============================================================*/
}
.section_top_kv .txt_block {
  color: #fff;
  text-align: center;
  margin-top: -25rem;
  margin-top: -11vw;
}
.section_top_kv .txt_block .label {
  font-size: 2.4rem;
  font-size: 1.5vw;
  line-height: 1;
  background-image: url(/cms/wp-content/themes/shiodamari2026/assets/images/top/top_kv_pop.png);
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  width: 16em;
  height: 3em;
  padding-top: 0.7em;
  letter-spacing: 0.15em;
  margin-left: 2.2em;
}
.section_top_kv .txt_block .title, .section_top_kv .txt_block .c_card .label_block .title__blue, .c_card .label_block .section_top_kv .txt_block .title__blue {
  font-size: 4.6rem;
  font-size: 2.5vw;
  line-height: 1.4;
  font-weight: 400;
  letter-spacing: 0.3em;
  margin-top: 0.1em;
}
.section_top_kv .txt_block .read {
  font-size: 2.1rem;
  font-size: 1.21vw;
  line-height: 2.2;
  margin-top: 0.8em;
  letter-spacing: 0.12em;
}
.section_top_kv .txt_block .en {
  font-size: 6rem;
  font-size: 3.3vw;
  line-height: 1;
  margin-top: 0.3em;
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  letter-spacing: 0.15em;
}
.section_top_kv .txt_block .title_block .c_wave_blue {
  display: none;
}
@media screen and (max-width: 767px) {
  .section_top_kv .txt_block {
    margin-top: 0;
    padding: 0;
  }
  .section_top_kv .txt_block .label {
    font-size: 3vw;
    margin-left: -3em;
  }
  .section_top_kv .txt_block .title, .section_top_kv .txt_block .c_card .label_block .title__blue, .c_card .label_block .section_top_kv .txt_block .title__blue {
    font-size: 5vw;
    margin-left: 0.2em;
  }
  .section_top_kv .txt_block .read {
    font-size: 3.5vw;
    margin-top: 0;
  }
  .section_top_kv .txt_block .en {
    font-size: 7vw;
  }
  .section_top_kv .txt_block .title_block {
    position: relative;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    aspect-ratio: 1600/1833;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .section_top_kv .txt_block .title_block .txt {
    margin-top: -23vw;
  }
  .section_top_kv .txt_block .title_block .c_wave_blue {
    display: block;
  }
  .section_top_kv .txt_block .lead_block {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    background-color: #0083CE;
    padding: 3vw 0 20vw;
  }
}

/*===============================================================

	section_top_menu

===============================================================*/
.section_top_menu {
  background: rgb(241, 249, 254);
}
.section_top_menu .section_inner {
  padding-bottom: 15rem;
  padding-top: 15rem;
}
.section_top_menu .content {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.section_top_menu .txt_block {
  width: 370px;
}
.section_top_menu .fig_block {
  width: calc(100% - 370px - 20px);
}
.section_top_menu .fig_block img {
  width: 100%;
  height: auto;
}
.section_top_menu .fig_action {
  -webkit-transform: translateY(-60px);
          transform: translateY(-60px);
}
@media screen and (max-width: 767px) {
  .section_top_menu .section_inner {
    padding-bottom: 10vw;
    padding-top: 15vw;
  }
  .section_top_menu .content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .section_top_menu .txt_block {
    width: 100%;
    margin-top: 5vw;
  }
  .section_top_menu .fig_block {
    width: 100%;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    padding: 0 3vw;
  }
  .section_top_menu .fig_action {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.section_top_menu {
  /*===============================================================
  navigation_card
  ===============================================================*/
}
.section_top_menu .navigation_card dt {
  font-size: 6.3rem;
  font-weight: 200;
  line-height: 70px;
  letter-spacing: 0.03em;
}
.section_top_menu .navigation_card dt span {
  display: block;
  margin-top: 15px;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 26.4px;
  letter-spacing: 0.1em;
  color: rgb(0, 131, 206);
}
.section_top_menu .navigation_card dd {
  margin-top: 45px;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 36px;
}
@media screen and (max-width: 767px) {
  .section_top_menu .navigation_card dt {
    font-size: 5.4rem;
    line-height: 45.9px;
    letter-spacing: 0.03em;
  }
  .section_top_menu .navigation_card dt span {
    font-size: 2rem;
  }
  .section_top_menu .navigation_card dd {
    font-size: 1.6rem;
    margin-top: 5vw;
    font-weight: 400;
    line-height: 35.2px;
  }
}
.section_top_menu {
  /*===============================================================
  Btn
  ===============================================================*/
}
.section_top_menu .navigation_card .Btn {
  margin-top: 40px;
}
.section_top_menu .navigation_card .Btn a {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 16px;
  text-align: center;
  color: rgb(0, 131, 206);
  border: 1px solid rgb(0, 131, 206);
  background: rgb(241, 249, 254);
  width: 270px;
  overflow: hidden;
  margin-left: 0;
  margin-right: auto;
}
.section_top_menu .navigation_card .Btn a span {
  position: relative;
  z-index: 2;
}
.section_top_menu .navigation_card .Btn a:hover {
  color: #fff;
}
.section_top_menu .navigation_card .Btn a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background: rgb(0, 131, 206);
  background: -webkit-gradient(linear, left top, right top, from(rgb(0, 131, 206)), color-stop(50%, rgb(0, 131, 206)), to(rgba(0, 131, 206, 0)));
  background: linear-gradient(90deg, rgb(0, 131, 206) 0%, rgb(0, 131, 206) 50%, rgba(0, 131, 206, 0) 100%);
  -webkit-transition: all 1.5s;
  transition: all 1.5s;
}
.section_top_menu .navigation_card .Btn a:hover::before {
  width: 200%;
}
.section_top_menu .navigation_card .Btn a::after {
  content: "\f105";
  color: rgb(0, 131, 206);
  font-family: "Font Awesome 6 Pro";
  position: absolute;
  right: 15px;
  font-size: 1.6rem;
  font-weight: 400;
  margin-left: 10px;
}
.section_top_menu .navigation_card .Btn a:hover::after {
  color: #fff;
}
@media screen and (max-width: 767px) {
  .section_top_menu .navigation_card .Btn a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    height: 55px;
  }
}
.section_top_menu {
  /*-------------------------------------------------------------
  入れ子 背景白
  -------------------------------------------------------------*/
}
.section_top_menu:nth-child(even) {
  background-color: #fff;
}
.section_top_menu:nth-child(even) .navigation_card .Btn a {
  background: #fff;
}
.section_top_menu {
  /*===============================================================
  fig
  ===============================================================*/
}
.section_top_menu .fig {
  position: absolute;
  z-index: 2;
  pointer-events: none;
}
.section_top_menu .fig img {
  width: 100%;
  height: auto;
}
.section_top_menu .fig_fish01 {
  width: 282px;
  top: -210px;
  right: 0;
}
.section_top_menu .fig_ebi {
  width: 426px;
  top: -110px;
  left: 35%;
}
.section_top_menu .fig_fish02 {
  width: 310px;
  bottom: -110px;
  right: 3%;
}
.section_top_menu .fig_kai {
  width: 170px;
  top: -100px;
  left: 40%;
}
@media screen and (max-width: 767px) {
  .section_top_menu .fig_fish01 {
    width: 40vw;
    top: -25vw;
    right: -8%;
  }
  .section_top_menu .fig_ebi {
    width: 60vw;
    top: -10vw;
    left: 20%;
  }
  .section_top_menu .fig_fish02 {
    width: 45vw;
    top: 45vw;
    bottom: auto;
    right: -7%;
  }
  .section_top_menu .fig_kai {
    width: 22vw;
    top: -5vw;
    left: 40%;
  }
}

/*===============================================================

    section_top_project

===============================================================*/
.section_top_project {
  /*===============================================================
  header_block
  ===============================================================*/
}
.section_top_project .header_block .title, .section_top_project .header_block .c_card .label_block .title__blue, .c_card .label_block .section_top_project .header_block .title__blue {
  position: relative;
  display: inline-block;
  padding-right: 22rem;
}
.section_top_project .header_block .title .font_en, .section_top_project .header_block .c_card .label_block .title__blue .font_en, .c_card .label_block .section_top_project .header_block .title__blue .font_en {
  font-size: 6.3rem;
  font-weight: 200;
  line-height: 70px;
  letter-spacing: 0.03em;
}
.section_top_project .header_block .title .ja, .section_top_project .header_block .c_card .label_block .title__blue .ja, .c_card .label_block .section_top_project .header_block .title__blue .ja {
  margin-top: 15px;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 26.4px;
  letter-spacing: 0.1em;
  color: #0083CE;
  padding-left: 0.8em;
}
.section_top_project .header_block .fig_kani {
  position: absolute;
  z-index: 2;
  pointer-events: none;
  width: 20rem;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}
@media screen and (max-width: 767px) {
  .section_top_project .header_block .title, .section_top_project .header_block .c_card .label_block .title__blue, .c_card .label_block .section_top_project .header_block .title__blue {
    display: inline-block;
    padding-right: 0;
  }
  .section_top_project .header_block .title .font_en, .section_top_project .header_block .c_card .label_block .title__blue .font_en, .c_card .label_block .section_top_project .header_block .title__blue .font_en {
    font-size: 5.4rem;
    line-height: 45.9px;
    letter-spacing: 0.03em;
  }
  .section_top_project .header_block .title .ja, .section_top_project .header_block .c_card .label_block .title__blue .ja, .c_card .label_block .section_top_project .header_block .title__blue .ja {
    display: block;
    font-size: 2rem;
    padding: 0;
  }
  .section_top_project .header_block .fig_kani {
    width: 32vw;
    top: -2vw;
    bottom: auto;
    right: -14vw;
  }
}
.section_top_project {
  /*===============================================================
  project_block
  ===============================================================*/
}
.section_top_project .project_block {
  margin-top: 2.5rem;
  display: -ms-grid;
  display: grid;
  gap: 4rem;
  -ms-grid-columns: 1fr 4rem 1fr;
  grid-template-columns: 1fr 1fr;
}
.section_top_project .project_block .fig a {
  display: block;
  border-radius: 2rem;
  overflow: hidden;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.section_top_project .project_block .fig a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  .section_top_project .project_block {
    margin-top: 5vw;
    display: -ms-grid;
    display: grid;
    gap: 3vw;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
  .section_top_project .project_block .fig a {
    border-radius: 3vw;
  }
}
.section_top_project {
  /*===============================================================
  youtube_info_block
  ===============================================================*/
}
.section_top_project .youtube_info_block {
  text-align: center;
}
.section_top_project .youtube_info_block .title, .section_top_project .youtube_info_block .c_card .label_block .title__blue, .c_card .label_block .section_top_project .youtube_info_block .title__blue {
  font-size: 2.6rem;
  line-height: 1.4;
  color: #0083CE;
  position: relative;
  display: inline-block;
  padding: 0 1em;
  letter-spacing: 0.1em;
}
.section_top_project .youtube_info_block .title::after, .section_top_project .youtube_info_block .c_card .label_block .title__blue::after, .c_card .label_block .section_top_project .youtube_info_block .title__blue::after, .section_top_project .youtube_info_block .title::before, .section_top_project .youtube_info_block .c_card .label_block .title__blue::before, .c_card .label_block .section_top_project .youtube_info_block .title__blue::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 2px;
  height: 1.5em;
  background-color: #0083CE;
}
.section_top_project .youtube_info_block .title::after, .section_top_project .youtube_info_block .c_card .label_block .title__blue::after, .c_card .label_block .section_top_project .youtube_info_block .title__blue::after {
  left: 0;
  -webkit-transform: rotate(-15deg);
          transform: rotate(-15deg);
}
.section_top_project .youtube_info_block .title::before, .section_top_project .youtube_info_block .c_card .label_block .title__blue::before, .c_card .label_block .section_top_project .youtube_info_block .title__blue::before {
  right: 0;
  -webkit-transform: rotate(15deg);
          transform: rotate(15deg);
}
.section_top_project .youtube_info_block .youtube_btn {
  width: 25rem;
  margin: 0 auto;
  margin-top: 3rem;
}
.section_top_project .youtube_info_block .youtube_btn a {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  display: block;
}
.section_top_project .youtube_info_block .youtube_btn a:hover {
  opacity: 0.7;
}
.section_top_project .youtube_info_block .youtube_btn a::after {
  display: none;
}
@media screen and (max-width: 767px) {
  .section_top_project .youtube_info_block .title, .section_top_project .youtube_info_block .c_card .label_block .title__blue, .c_card .label_block .section_top_project .youtube_info_block .title__blue {
    font-size: 5vw;
  }
  .section_top_project .youtube_info_block .title::after, .section_top_project .youtube_info_block .c_card .label_block .title__blue::after, .c_card .label_block .section_top_project .youtube_info_block .title__blue::after, .section_top_project .youtube_info_block .title::before, .section_top_project .youtube_info_block .c_card .label_block .title__blue::before, .c_card .label_block .section_top_project .youtube_info_block .title__blue::before {
    height: 2.5em;
  }
  .section_top_project .youtube_info_block .youtube_btn {
    width: 50vw;
    margin: 0 auto;
    margin-top: 5vw;
  }
}

/*===============================================================

    section_page_title

===============================================================*/
.section_page_title {
  position: relative;
  background-color: #000;
  height: 50rem;
}
.section_page_title [class^=c_wave] {
  z-index: 3;
}
.section_page_title .section_inner {
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .section_page_title {
    height: 80vw;
  }
}
.section_page_title {
  /*-------------------------------------------------------------
  kv_img
  -------------------------------------------------------------*/
}
.section_page_title .kv_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50rem;
  overflow: hidden;
  z-index: 1;
}
.section_page_title .kv_img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 50rem;
}
@media screen and (max-width: 767px) {
  .section_page_title .kv_img {
    height: 80vw;
  }
  .section_page_title .kv_img img {
    height: 80vw;
  }
}
.section_page_title {
  /*-------------------------------------------------------------
  kv_jungle
  -------------------------------------------------------------*/
}
.section_page_title .kv_jungle img {
  -o-object-position: left 50% top -50px;
     object-position: left 50% top -50px;
}
@media screen and (max-width: 767px) {
  .section_page_title .kv_jungle {
    height: 88vw;
  }
  .section_page_title .kv_jungle img {
    height: 88vw;
  }
}
.section_page_title {
  /*-------------------------------------------------------------
  title_block
  -------------------------------------------------------------*/
}
.section_page_title .title_block {
  color: #fff;
}
.section_page_title .title_block .title, .section_page_title .title_block .c_card .label_block .title__blue, .c_card .label_block .section_page_title .title_block .title__blue {
  letter-spacing: 0.05em;
  font-size: 8.5rem;
  line-height: 0.8;
}
.section_page_title .title_block .title .en, .section_page_title .title_block .c_card .label_block .title__blue .en, .c_card .label_block .section_page_title .title_block .title__blue .en {
  font-weight: 200;
}
.section_page_title .title_block .title .ja, .section_page_title .title_block .c_card .label_block .title__blue .ja, .c_card .label_block .section_page_title .title_block .title__blue .ja {
  font-size: 2.4rem;
  padding-left: 1em;
  letter-spacing: 0.15em;
}
.section_page_title .title_block p {
  font-size: 2.6rem;
  line-height: 1.8;
  letter-spacing: 0.15em;
  margin-top: 1.8em;
}
@media screen and (max-width: 767px) {
  .section_page_title .title_block .title, .section_page_title .title_block .c_card .label_block .title__blue, .c_card .label_block .section_page_title .title_block .title__blue {
    font-size: 10vw;
    line-height: 0.8;
  }
  .section_page_title .title_block .title .en, .section_page_title .title_block .c_card .label_block .title__blue .en, .c_card .label_block .section_page_title .title_block .title__blue .en {
    font-weight: 200;
    display: block;
  }
  .section_page_title .title_block .title .ja, .section_page_title .title_block .c_card .label_block .title__blue .ja, .c_card .label_block .section_page_title .title_block .title__blue .ja {
    font-size: 3.2vw;
    padding: 0;
    margin-top: 0.3em;
  }
  .section_page_title .title_block p {
    font-size: 3.5vw;
    line-height: 1.8;
    margin-top: 1.5em;
  }
}

/*===============================================================

    section_subpage_title

===============================================================*/
.section_subpage_title {
  position: relative;
  height: 36rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.section_subpage_title .section_inner {
  padding: 0;
  padding-bottom: 40px;
}
.section_subpage_title [class^=c_wave] {
  z-index: 3;
}
.section_subpage_title .section_inner {
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .section_subpage_title {
    height: 50vw;
  }
}
.section_subpage_title {
  /*-------------------------------------------------------------
  kv_img
  -------------------------------------------------------------*/
}
.section_subpage_title .kv_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 36rem;
  overflow: hidden;
  z-index: 1;
}
.section_subpage_title .kv_img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 36rem;
}
@media screen and (max-width: 767px) {
  .section_subpage_title .kv_img {
    height: 50vw;
  }
  .section_subpage_title .kv_img img {
    height: 50vw;
  }
}
.section_subpage_title {
  /*-------------------------------------------------------------
  kv_action
  -------------------------------------------------------------*/
}
.section_subpage_title .kv_action img {
  -o-object-position: center center;
     object-position: center center;
  -o-object-position: left 50% top -150px;
     object-position: left 50% top -150px;
}
@media screen and (max-width: 767px) {
  .section_subpage_title .kv_action img {
    -o-object-position: left 50% top 0vw;
       object-position: left 50% top 0vw;
  }
}
.section_subpage_title {
  /*-------------------------------------------------------------
  kv_esashi
  -------------------------------------------------------------*/
}
.section_subpage_title .kv_esashi img {
  -o-object-position: center center;
     object-position: center center;
}
.section_subpage_title {
  /*-------------------------------------------------------------
  title_block
  -------------------------------------------------------------*/
}
.section_subpage_title .title_block {
  color: #fff;
  text-align: center;
}
.section_subpage_title .title_block .title, .section_subpage_title .title_block .c_card .label_block .title__blue, .c_card .label_block .section_subpage_title .title_block .title__blue {
  letter-spacing: 0.1em;
  font-size: 4.8rem;
  line-height: 1.4;
  font-weight: 300;
}
.section_subpage_title .title_block p {
  font-size: 2.1rem;
  line-height: 1.6;
  letter-spacing: 0.15em;
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  .section_subpage_title .title_block .title, .section_subpage_title .title_block .c_card .label_block .title__blue, .c_card .label_block .section_subpage_title .title_block .title__blue {
    font-size: 6vw;
  }
  .section_subpage_title .title_block p {
    font-size: 3.5vw;
  }
}

.section_subpage_title_esashi {
  height: 50rem;
}
@media screen and (max-width: 767px) {
  .section_subpage_title_esashi {
    height: 50vw;
  }
}
.section_subpage_title_esashi {
  /*-------------------------------------------------------------
  kv_img
  -------------------------------------------------------------*/
}
.section_subpage_title_esashi .kv_img {
  height: 50rem;
}
.section_subpage_title_esashi .kv_img img {
  height: 50rem;
}
@media screen and (max-width: 767px) {
  .section_subpage_title_esashi .kv_img {
    height: 50vw;
  }
  .section_subpage_title_esashi .kv_img img {
    height: 50vw;
  }
}
.section_subpage_title_esashi {
  /*-------------------------------------------------------------
  title_block
  -------------------------------------------------------------*/
}
.section_subpage_title_esashi .title_block .title, .section_subpage_title_esashi .title_block .c_card .label_block .title__blue, .c_card .label_block .section_subpage_title_esashi .title_block .title__blue {
  -webkit-transform: translateY(-0.6em);
          transform: translateY(-0.6em);
  text-shadow: 10px 10px 10px rgb(0, 0, 0);
}
@media screen and (max-width: 767px) {
  .section_subpage_title_esashi .title_block .title, .section_subpage_title_esashi .title_block .c_card .label_block .title__blue, .c_card .label_block .section_subpage_title_esashi .title_block .title__blue {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    text-shadow: 3px 3px 5px rgba(0, 0, 0, 0.6);
  }
}

/*===============================================================

    section_hug_the_ocean

===============================================================*/
.section_hug_the_ocean {
  background-image: url(/cms/wp-content/themes/shiodamari2026/assets/images/promis/hug_bg.jpg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  color: #fff;
}
.section_hug_the_ocean .section_inner {
  padding-top: 80px;
}
@media screen and (max-width: 767px) {
  .section_hug_the_ocean .section_inner {
    padding-top: 5vw;
  }
}
.section_hug_the_ocean {
  /*===============================================================
  title_block
  ===============================================================*/
}
.section_hug_the_ocean .title_block .title, .section_hug_the_ocean .title_block .c_card .label_block .title__blue, .c_card .label_block .section_hug_the_ocean .title_block .title__blue {
  font-size: 4.6rem;
  line-height: 2;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 1070px) {
  .section_hug_the_ocean .title_block .title, .section_hug_the_ocean .title_block .c_card .label_block .title__blue, .c_card .label_block .section_hug_the_ocean .title_block .title__blue {
    font-size: 4.3vw;
  }
}
@media screen and (max-width: 767px) {
  .section_hug_the_ocean .title_block .title, .section_hug_the_ocean .title_block .c_card .label_block .title__blue, .c_card .label_block .section_hug_the_ocean .title_block .title__blue {
    font-size: 5vw;
    line-height: 1.6;
  }
}
.section_hug_the_ocean {
  /*===============================================================
  fig_block
  ===============================================================*/
}
.section_hug_the_ocean .fig_block {
  max-width: 95rem;
  margin: 0 auto;
  margin-top: -7rem;
}
.section_hug_the_ocean .fig_block img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 1070px) {
  .section_hug_the_ocean .fig_block {
    margin-top: -6.54vw;
  }
}
@media screen and (max-width: 767px) {
  .section_hug_the_ocean .fig_block {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    padding: 0 3vw;
  }
}
.section_hug_the_ocean {
  /*===============================================================
  txt_block
  ===============================================================*/
}
.section_hug_the_ocean .txt_block {
  text-align: center;
}
.section_hug_the_ocean .txt_block p {
  font-size: 2.1rem;
  line-height: 2.2;
  letter-spacing: 0.1em;
  margin-top: 1em;
}
.section_hug_the_ocean .txt_block .font_en {
  font-size: 6rem;
  font-weight: bold;
  letter-spacing: 0.15em;
  margin-top: 0.5em;
}
@media screen and (max-width: 1070px) {
  .section_hug_the_ocean .txt_block p {
    font-size: 1.8vw;
  }
  .section_hug_the_ocean .txt_block .font_en {
    font-size: 5.61vw;
  }
}
@media screen and (max-width: 767px) {
  .section_hug_the_ocean .txt_block p {
    font-size: 3.5vw;
  }
  .section_hug_the_ocean .txt_block .font_en {
    font-size: 8vw;
  }
}

/*===============================================================

    section_fish_life

===============================================================*/
.section_fish_life {
  background-color: #0083CE;
  margin-bottom: 5px;
}
.section_fish_life {
  /*===============================================================
  header_block
  ===============================================================*/
}
.section_fish_life .header_block {
  text-align: center;
  color: #fff;
}
.section_fish_life .header_block .title, .section_fish_life .header_block .c_card .label_block .title__blue, .c_card .label_block .section_fish_life .header_block .title__blue {
  font-size: 2.8rem;
  letter-spacing: 0.2em;
}
.section_fish_life .header_block .title strong, .section_fish_life .header_block .c_card .label_block .title__blue strong, .c_card .label_block .section_fish_life .header_block .title__blue strong {
  font-size: 164%;
  font-weight: 300;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 767px) {
  .section_fish_life .header_block .title, .section_fish_life .header_block .c_card .label_block .title__blue, .c_card .label_block .section_fish_life .header_block .title__blue {
    font-size: 3.8vw;
  }
  .section_fish_life .header_block .title strong, .section_fish_life .header_block .c_card .label_block .title__blue strong, .c_card .label_block .section_fish_life .header_block .title__blue strong {
    font-size: 150%;
  }
}
/*===============================================================

    section_bg

===============================================================*/
.bg_white,
.section_bg_white {
  background-color: #fff;
}

.bg_lightblue,
.section_bg_lightblue {
  background-color: #F1F9FE;
}

.bg_lightgray,
.section_bg_lightgray {
  background-color: #F7F6FA;
}

/*===============================================================

    section_bg__logos

===============================================================*/
.section_bg__logos, .section_bg__logos_about {
  position: relative;
  overflow: hidden;
}
.section_bg__logos::before, .section_bg__logos_about::before, .section_bg__logos::after, .section_bg__logos_about::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 315px;
  height: 100%;
  background-image: url(/cms/wp-content/themes/shiodamari2026/assets/images/bg_logo_loop_right.svg);
  background-repeat: repeat-y;
  background-size: 315px auto;
  pointer-events: none;
  z-index: 0;
}
.section_bg__logos::before, .section_bg__logos_about::before {
  left: 0;
  background-position: left top;
  background-image: url(/cms/wp-content/themes/shiodamari2026/assets/images/bg_logo_loop_left.svg);
}
.section_bg__logos::after, .section_bg__logos_about::after {
  right: 0;
  background-position: right 1000px;
}
.section_bg__logos.left_loop_once::before, .left_loop_once.section_bg__logos_about::before {
  background-repeat: no-repeat;
}
.section_bg__logos.right_loop_once::after, .right_loop_once.section_bg__logos_about::after {
  background-repeat: no-repeat;
}
.section_bg__logos > *, .section_bg__logos_about > * {
  position: relative;
  z-index: 1;
}
.section_bg__logos.section_bg_lightgray::after, .section_bg_lightgray.section_bg__logos_about::after {
  background-image: url(/cms/wp-content/themes/shiodamari2026/assets/images/bg_logo_loop_right_gray.svg);
}
.section_bg__logos.section_bg_lightgray::before, .section_bg_lightgray.section_bg__logos_about::before {
  background-image: url(/cms/wp-content/themes/shiodamari2026/assets/images/bg_logo_loop_left_gray.svg);
}
@media screen and (max-width: 767px) {
  .section_bg__logos::after, .section_bg__logos_about::after {
    right: 0;
    background-position: right 130vh;
  }
  .section_bg__logos::before, .section_bg__logos_about::before, .section_bg__logos::after, .section_bg__logos_about::after {
    width: 30vw;
    background-size: 30vw;
  }
  .section_bg__logos.section_bg_lightgray::before, .section_bg_lightgray.section_bg__logos_about::before, .section_bg__logos.section_bg_lightgray::after, .section_bg_lightgray.section_bg__logos_about::after {
    opacity: 0.5;
  }
  .section_bg__logos.section_bg_lightgray::after, .section_bg_lightgray.section_bg__logos_about::after {
    width: 30vw;
    background-position: right 120vh;
    background-size: 30vw;
  }
  .section_bg__logos.section_bg_lightgray::before, .section_bg_lightgray.section_bg__logos_about::before {
    width: 50vw;
    background-position: left 0;
    background-size: 50vw;
  }
}

/*===============================================================

    section_bg__logos

===============================================================*/
.section_bg__logos_about.section_bg_lightgray::after {
  width: 340px;
  background-size: 340px auto;
  background-position: right 500px;
  background-image: url(/cms/wp-content/themes/shiodamari2026/assets/images/bg_logo_loop_right_gray2.svg);
}
.section_bg__logos_about.section_bg_lightgray::before {
  width: 500px;
  background-position: left 0px;
  background-size: 500px auto;
  background-image: url(/cms/wp-content/themes/shiodamari2026/assets/images/bg_logo_loop_left_gray2.svg);
}
@media screen and (max-width: 767px) {
  .section_bg__logos_about.section_bg_lightgray::before, .section_bg__logos_about.section_bg_lightgray::after {
    opacity: 0.5;
  }
  .section_bg__logos_about.section_bg_lightgray::after {
    width: 30vw;
    background-position: right 120vh;
    background-size: 30vw;
  }
  .section_bg__logos_about.section_bg_lightgray::before {
    width: 50vw;
    background-position: left 0;
    background-size: 50vw;
  }
}

/*===============================================================

    section_action

===============================================================*/
.section_action {
  /*===============================================================
  header_block
  ===============================================================*/
}
.section_action .header_block .label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 3.6rem;
  line-height: 1;
  color: #0083CE;
  font-weight: 100;
  letter-spacing: 0.1em;
}
.section_action .header_block .label .num {
  display: inline-block;
  background-color: #0083CE;
  text-align: center;
  color: #fff;
  border-radius: 10rem;
  width: 7rem;
  height: 7rem;
  font-size: 5.4rem;
  line-height: 7rem;
  margin-left: 0.1em;
  vertical-align: middle;
  -webkit-transform: translateY(-0.05em);
          transform: translateY(-0.05em);
  letter-spacing: 0;
}
.section_action .header_block .title, .section_action .header_block .c_card .label_block .title__blue, .c_card .label_block .section_action .header_block .title__blue {
  font-size: 7.2rem;
  line-height: 1;
  font-weight: 100;
  letter-spacing: 0.08em;
  margin-top: 0.3em;
}
.section_action .header_block .title .jp, .section_action .header_block .c_card .label_block .title__blue .jp, .c_card .label_block .section_action .header_block .title__blue .jp {
  font-size: 30%;
  color: #0083CE;
  margin-left: 1em;
  letter-spacing: 0.2em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .section_action .header_block .label {
    font-size: 6vw;
  }
  .section_action .header_block .label .num {
    border-radius: 20vw;
    width: 10vw;
    height: 10vw;
    font-size: 8vw;
    line-height: 10vw;
    -webkit-transform: translateY(-0.05em);
            transform: translateY(-0.05em);
  }
  .section_action .header_block .title, .section_action .header_block .c_card .label_block .title__blue, .c_card .label_block .section_action .header_block .title__blue {
    font-size: 8.5vw;
  }
  .section_action .header_block .title .jp, .section_action .header_block .c_card .label_block .title__blue .jp, .c_card .label_block .section_action .header_block .title__blue .jp {
    display: block;
    font-size: 3.5vw;
    margin-left: 0;
    margin-top: 1em;
  }
}
.section_action {
  /*===============================================================
  read_block
  ===============================================================*/
}
.section_action .read_block {
  letter-spacing: 0.05em;
  margin-top: 8rem;
}
.section_action .read_block .title, .section_action .read_block .c_card .label_block .title__blue, .c_card .label_block .section_action .read_block .title__blue {
  font-size: 2.8rem;
  line-height: 2;
  color: #0083CE;
}
.section_action .read_block p {
  font-size: 1.7rem;
  line-height: 2;
}
.section_action .read_block * + p {
  margin-top: 2em;
}
@media screen and (max-width: 767px) {
  .section_action .read_block {
    margin-top: 5vw;
  }
  .section_action .read_block .title, .section_action .read_block .c_card .label_block .title__blue, .c_card .label_block .section_action .read_block .title__blue {
    font-size: 5vw;
    line-height: 2;
  }
  .section_action .read_block p {
    font-size: 3.5vw;
  }
  .section_action .read_block * + p {
    margin-top: 1em;
  }
}
.section_action {
  /*===============================================================
  action1_block
  ===============================================================*/
}
.section_action .action1_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.section_action .action1_block .read_block {
  width: 50%;
}
.section_action .action1_block .fig_block {
  width: 50%;
}
.section_action .action1_block .fig_block .fig {
  margin-bottom: -15rem;
  margin-right: -3rem;
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}
@media screen and (max-width: 1200px) {
  .section_action .action1_block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .section_action .action1_block .read_block {
    width: 100%;
  }
  .section_action .action1_block .read_block .pc {
    display: none;
  }
  .section_action .action1_block .fig_block {
    width: 100%;
  }
  .section_action .action1_block .fig_block .fig {
    -webkit-transform: scale(1);
            transform: scale(1);
    max-width: 70rem;
    margin: 0 auto;
    margin-top: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .section_action .action1_block .fig_block {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }
  .section_action .action1_block .fig_block .fig {
    margin-top: 8vw;
  }
}
.section_action {
  /*===============================================================
  action2_block
  ===============================================================*/
}
.section_action .action2_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 5rem;
}
.section_action .action2_block .case {
  width: calc((100% - 10rem) / 2);
}
@media screen and (max-width: 1070px) {
  .section_action .action2_block .case {
    width: calc((100% - 5rem) / 2);
  }
}
@media screen and (max-width: 767px) {
  .section_action .action2_block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 8vw;
  }
  .section_action .action2_block .case {
    width: 100%;
  }
  .section_action .action2_block .case + .case {
    margin-top: 8vw;
  }
}
.section_action .action2_block {
  /*-------------------------------------------------------------
  case
  -------------------------------------------------------------*/
}
.section_action .action2_block .case {
  letter-spacing: 0.1em;
}
.section_action .action2_block .case .label .font_en {
  font-size: 5.2rem;
  line-height: 1;
  font-weight: 100;
}
.section_action .action2_block .case .label .ja {
  font-size: 2.4rem;
  line-height: 1;
  color: #0083CE;
  padding-left: 0.3em;
  letter-spacing: 0.2em;
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
  display: inline-block;
}
.section_action .action2_block .case .subtitle {
  font-size: 2.3rem;
  line-height: 2;
  font-weight: 400;
  margin-top: 3rem;
}
.section_action .action2_block .case p {
  margin-top: 3rem;
  font-size: 1.7rem;
  line-height: 2;
}
.section_action .action2_block .case .fig {
  border-radius: 2rem;
  overflow: hidden;
  margin-top: 3rem;
}
@media screen and (max-width: 767px) {
  .section_action .action2_block .case .label .font_en {
    font-size: 8vw;
  }
  .section_action .action2_block .case .label .ja {
    font-size: 3.5vw;
  }
  .section_action .action2_block .case .subtitle {
    font-size: 4vw;
    margin-top: 3vw;
  }
  .section_action .action2_block .case p {
    margin-top: 3vw;
    font-size: 3.5vw;
    line-height: 2;
  }
  .section_action .action2_block .case .fig {
    border-radius: 3vw;
    margin-top: 5vw;
  }
}
.section_action {
  /*===============================================================
  action3_block
  ===============================================================*/
}
.section_action .action3_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-top: 2em;
  gap: 2rem;
}
.section_action .action3_block .fig01 {
  width: 45rem;
  border-radius: 2rem;
  overflow: hidden;
}
.section_action .action3_block .fig02 {
  width: 22.5rem;
  -webkit-box-shadow: 5px 5px 5px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 5px 5px 5px 0 rgba(0, 0, 0, 0.3);
}
@media screen and (max-width: 1200px) {
  .section_action .action3_block .pc {
    display: none;
  }
  .section_action .action3_block .txt {
    width: 100%;
  }
  .section_action .action3_block .fig01 {
    width: 64%;
  }
  .section_action .action3_block .fig02 {
    width: 32%;
  }
}
@media screen and (max-width: 767px) {
  .section_action .action3_block {
    margin-top: 5vw;
    gap: 0;
  }
  .section_action .action3_block .fig01 {
    border-radius: 3vw;
  }
  .section_action .action3_block .fig {
    margin-top: 5vw;
  }
}
.section_action {
  /*===============================================================
  case_block
  ===============================================================*/
}
.section_action .case_block {
  border-radius: 2rem;
  overflow: hidden;
  margin-top: 8rem;
  -webkit-box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3);
}
.section_action .case_block .case {
  background-color: #fff;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.section_action .case_block .case .fig_block,
.section_action .case_block .case .txt_block {
  width: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .section_action .case_block {
    border-radius: 3vw;
    margin-top: 10vw;
  }
  .section_action .case_block .case {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .section_action .case_block .case .fig_block,
  .section_action .case_block .case .txt_block {
    width: 100%;
  }
}
.section_action .case_block {
  /*-------------------------------------------------------------
  txt_block
  -------------------------------------------------------------*/
}
.section_action .case_block .txt_block {
  padding: 6rem 5rem;
  padding-top: 7rem;
  letter-spacing: 0.05em;
}
.section_action .case_block .txt_block .label {
  position: absolute;
  top: 0;
  left: 0;
  width: 18rem;
  background-color: #0083CE;
  color: #fff;
  text-align: center;
  font-size: 2.1rem;
  line-height: 4.5rem;
  border-radius: 0 0 2rem 0;
  letter-spacing: 0.1em;
}
.section_action .case_block .txt_block .title, .section_action .case_block .txt_block .c_card .label_block .title__blue, .c_card .label_block .section_action .case_block .txt_block .title__blue {
  color: #0083CE;
  font-size: 2.8rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
.section_action .case_block .txt_block p {
  font-size: 1.7rem;
  line-height: 1.9;
  margin-top: 1em;
}
@media screen and (max-width: 1200px) {
  .section_action .case_block .txt_block .pc {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .section_action .case_block .txt_block {
    padding: 8vw 5vw;
    padding-top: 15vw;
    letter-spacing: 0.05em;
  }
  .section_action .case_block .txt_block .label {
    width: 40vw;
    font-size: 3.5vw;
    line-height: 1;
    padding: 3vw;
    border-radius: 0 0 3vw 0;
  }
  .section_action .case_block .txt_block .title, .section_action .case_block .txt_block .c_card .label_block .title__blue, .c_card .label_block .section_action .case_block .txt_block .title__blue {
    font-size: 5vw;
  }
  .section_action .case_block .txt_block p {
    font-size: 3.5vw;
    line-height: 1.9;
    margin-top: 1em;
  }
}
.section_action .case_block {
  /*-------------------------------------------------------------
  fig_block
  -------------------------------------------------------------*/
}
.section_action .case_block .fig_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-radius: 0 2rem 0 0;
  overflow: hidden;
}
.section_action .case_block .fig_block .fig {
  width: 100%;
  height: 100%;
}
.section_action .case_block .fig_block img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}
.section_action .case_block {
  /*===============================================================
  case
  ===============================================================*/
}
.section_action .case_block .case:nth-child(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.section_action .case_block .case:nth-child(even) .fig_block {
  border-radius: 2rem 0 0 0;
}
.section_action .case_block .case:nth-child(even) .txt_block .label {
  right: 0;
  left: auto;
  border-radius: 0 0 0 2rem;
}
@media screen and (max-width: 767px) {
  .section_action .case_block .case:nth-child(even) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .section_action .case_block .case:nth-child(even) .fig_block {
    border-radius: 3vw 0 0 0;
  }
  .section_action .case_block .case:nth-child(even) .txt_block .label {
    border-radius: 0 0 0 3vw;
  }
}

/*===============================================================

    section_subpage_outline

===============================================================*/
.section_subpage_outline {
  text-align: center;
  letter-spacing: 0.1em;
}
.section_subpage_outline .section_inner {
  padding-top: 3rem;
  padding-bottom: 0;
}
@media screen and (max-width: 767px) {
  .section_subpage_outline .section_inner {
    padding-top: 5vw;
    padding-bottom: 0;
  }
}
.section_subpage_outline {
  /*===============================================================
  header_block
  ===============================================================*/
}
.section_subpage_outline .header_block {
  text-align: center;
  padding-bottom: 6rem;
}
.section_subpage_outline .header_block .title, .section_subpage_outline .header_block .c_card .label_block .title__blue, .c_card .label_block .section_subpage_outline .header_block .title__blue {
  font-size: 3.6rem;
  line-height: 1.8;
  font-weight: 300;
  letter-spacing: 0.15em;
}
.section_subpage_outline .header_block p {
  font-size: 1.8rem;
  line-height: 2;
  margin-top: 1.2em;
}
@media screen and (max-width: 767px) {
  .section_subpage_outline .header_block {
    padding-bottom: 10vw;
    text-align: left;
  }
  .section_subpage_outline .header_block .title, .section_subpage_outline .header_block .c_card .label_block .title__blue, .c_card .label_block .section_subpage_outline .header_block .title__blue {
    font-size: 4.5vw;
  }
  .section_subpage_outline .header_block p {
    font-size: 3.5vw;
  }
}
.section_subpage_outline .header_block {
  /*===============================================================
  project_block
  ===============================================================*/
}
.section_subpage_outline .header_block .project_block {
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 3rem;
}
.section_subpage_outline .header_block .project_block .txt_block {
  width: calc(100% - 45rem);
}
.section_subpage_outline .header_block .project_block .txt_block p {
  margin-top: 0;
}
.section_subpage_outline .header_block .project_block .fig_block {
  width: 45rem;
}
@media screen and (max-width: 1200px) {
  .section_subpage_outline .header_block .project_block .pc {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .section_subpage_outline .header_block .project_block {
    margin-top: 5vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .section_subpage_outline .header_block .project_block .txt_block,
  .section_subpage_outline .header_block .project_block .fig_block {
    width: 100%;
  }
  .section_subpage_outline .header_block .project_block .txt_block {
    margin-top: 5vw;
  }
}
.section_subpage_outline {
  /*===============================================================
  outline_block
  ===============================================================*/
}
.section_subpage_outline .outline_block {
  background-color: #0083CE;
  color: #fff;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media screen and (max-width: 767px) {
  .section_subpage_outline .outline_block {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }
}
.section_subpage_outline .outline_block {
  /*-------------------------------------------------------------
  txt_block
  -------------------------------------------------------------*/
}
.section_subpage_outline .outline_block .txt_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: left;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 5rem 3rem 8rem;
  padding-left: max(3rem, (100vw - 1070px) / 2);
}
.section_subpage_outline .outline_block .txt_block .title, .section_subpage_outline .outline_block .txt_block .c_card .label_block .title__blue, .c_card .label_block .section_subpage_outline .outline_block .txt_block .title__blue {
  font-size: 3.6rem;
  line-height: 1.8;
  font-weight: 300;
}
.section_subpage_outline .outline_block .txt_block p {
  font-size: 1.7rem;
  line-height: 2;
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  .section_subpage_outline .outline_block .txt_block {
    padding: 5vw 8vw;
  }
  .section_subpage_outline .outline_block .txt_block .title, .section_subpage_outline .outline_block .txt_block .c_card .label_block .title__blue, .c_card .label_block .section_subpage_outline .outline_block .txt_block .title__blue {
    font-size: 5vw;
  }
  .section_subpage_outline .outline_block .txt_block p {
    font-size: 3.5vw;
  }
}
.section_subpage_outline .outline_block {
  /*-------------------------------------------------------------
  fig_block
  -------------------------------------------------------------*/
}
.section_subpage_outline .outline_block .fig_block {
  position: relative;
  min-height: 100%;
}
.section_subpage_outline .outline_block .fig {
  position: absolute;
  inset: 0;
}
.section_subpage_outline .outline_block img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 767px) {
  .section_subpage_outline .outline_block {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
  .section_subpage_outline .outline_block .fig_block {
    min-height: auto;
  }
  .section_subpage_outline .outline_block .fig {
    position: relative;
    aspect-ratio: 16/9;
  }
}

/*===============================================================

    section_fish-habitat

===============================================================*/
.section_fish-habitat .section_inner {
  padding-top: 0;
}
.section_fish-habitat {
  /*===============================================================
  c_card
  ===============================================================*/
}
/*===============================================================

    section_entry_index

===============================================================*/
@media screen and (max-width: 767px) {
  .section_entry_index .section_inner, .section_entry_index__top .section_inner {
    padding-left: 0;
    padding-right: 0;
  }
}
.section_entry_index, .section_entry_index__top {
  /*===============================================================
  title_block
  ===============================================================*/
}
.section_entry_index .title_block, .section_entry_index__top .title_block {
  position: relative;
  text-align: center;
}
.section_entry_index .title_block .title, .section_entry_index__top .title_block .title, .section_entry_index .title_block .c_card .label_block .title__blue, .section_entry_index__top .title_block .c_card .label_block .title__blue, .c_card .label_block .section_entry_index .title_block .title__blue, .c_card .label_block .section_entry_index__top .title_block .title__blue {
  color: #0083CE;
  font-size: 4.6rem;
  line-height: 1;
  font-weight: 300;
  letter-spacing: 0.15em;
}
.section_entry_index .title_block .fig_fish, .section_entry_index__top .title_block .fig_fish {
  width: 25rem;
  position: absolute;
  top: -5rem;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-transform: translateX(23rem);
          transform: translateX(23rem);
}
@media screen and (max-width: 767px) {
  .section_entry_index .title_block .title, .section_entry_index__top .title_block .title, .section_entry_index .title_block .c_card .label_block .title__blue, .section_entry_index__top .title_block .c_card .label_block .title__blue, .c_card .label_block .section_entry_index .title_block .title__blue, .c_card .label_block .section_entry_index__top .title_block .title__blue {
    font-size: 5vw;
  }
  .section_entry_index .title_block .fig_fish, .section_entry_index__top .title_block .fig_fish {
    width: 25vw;
    position: absolute;
    top: -4vw;
    left: 0;
    right: 0;
    margin: auto;
    -webkit-transform: translateX(25vw);
            transform: translateX(25vw);
  }
}
.section_entry_index, .section_entry_index__top {
  /*===============================================================
  topics 上書き
  ===============================================================*/
}
.section_entry_index .c_topics, .section_entry_index__top .c_topics {
  padding: 0;
}
/*===============================================================

section_entry_index__top

===============================================================*/
.section_entry_index__top .section_inner {
  padding-top: 0;
}
/*===============================================================

    section_news_index

===============================================================*/
.section_news_index .section_inner {
  padding-top: 0;
}
.section_news_index .bg_content {
  background-color: none;
}
/*===============================================================

    section_about_members

===============================================================*/
.section_about_members .section_inner {
  padding-top: 3rem;
  letter-spacing: 0.1em;
}
.section_about_members {
  /*===============================================================
  content_outline
  ===============================================================*/
}
.section_about_members .content_outline {
  text-align: center;
}
.section_about_members .content_outline p {
  font-size: 1.8rem;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .section_about_members .content_outline {
    text-align: left;
  }
  .section_about_members .content_outline p {
    font-size: 3.5vw;
    line-height: 2;
  }
}
.section_about_members {
  /*===============================================================
  content_memberlist
  ===============================================================*/
}
.section_about_members .content_memberlist {
  margin-top: 10rem;
}
.section_about_members .content_memberlist .pos_name {
  font-size: 2.6rem;
  letter-spacing: 0.1em;
}
.section_about_members .content_memberlist .card_member_top + .card_member,
.section_about_members .content_memberlist .card_member + .card_member {
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .section_about_members .content_memberlist {
    margin-top: 10vw;
  }
  .section_about_members .content_memberlist .pos_name {
    font-size: 4.4vw;
  }
  .section_about_members .content_memberlist .card_member_top + .card_member,
  .section_about_members .content_memberlist .card_member + .card_member {
    margin-top: 10vw;
  }
}
.section_about_members {
  /*===============================================================
  card_member
  ===============================================================*/
}
.section_about_members .card_member {
  background-color: #fff;
  border-radius: 2rem;
  overflow: hidden;
  position: relative;
  -webkit-box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3);
  letter-spacing: 0.1em;
  margin-top: 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.section_about_members .card_member .profile_block {
  width: 62%;
}
.section_about_members .card_member .photo_block {
  width: 38%;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .section_about_members .card_member {
    border-radius: 3vw;
    margin-top: 5vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .section_about_members .card_member .profile_block,
  .section_about_members .card_member .photo_block {
    width: 100%;
  }
}
.section_about_members .card_member {
  /*===============================================================
  profile_block
  ===============================================================*/
}
.section_about_members .card_member .profile_block {
  padding: 4rem 4rem 4rem 7rem;
}
.section_about_members .card_member .profile_block .profile_name {
  font-size: 2.8rem;
  line-height: 1.8;
}
.section_about_members .card_member .profile_block .profile_post {
  font-size: 1.7rem;
  line-height: 1.8;
  margin-top: 0.5em;
}
.section_about_members .card_member .profile_block .profile_career {
  margin-top: 6rem;
}
.section_about_members .card_member .profile_block .profile_career .title, .section_about_members .card_member .profile_block .profile_career .c_card .label_block .title__blue, .c_card .label_block .section_about_members .card_member .profile_block .profile_career .title__blue {
  font-size: 1.7rem;
  line-height: 1.8;
  position: relative;
}
.section_about_members .card_member .profile_block .profile_career .title::after, .section_about_members .card_member .profile_block .profile_career .c_card .label_block .title__blue::after, .c_card .label_block .section_about_members .card_member .profile_block .profile_career .title__blue::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: calc(100% - 3em);
  height: 1px;
  background-color: #666;
}
.section_about_members .card_member .profile_block .profile_career p {
  margin-top: 0.5em;
  font-size: 1.7rem;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .section_about_members .card_member .profile_block {
    padding: 5vw;
  }
  .section_about_members .card_member .profile_block .profile_name {
    font-size: 5vw;
  }
  .section_about_members .card_member .profile_block .profile_post {
    font-size: 3.5vw;
    margin-top: 0;
  }
  .section_about_members .card_member .profile_block .profile_career {
    margin-top: 4vw;
  }
  .section_about_members .card_member .profile_block .profile_career .title, .section_about_members .card_member .profile_block .profile_career .c_card .label_block .title__blue, .c_card .label_block .section_about_members .card_member .profile_block .profile_career .title__blue {
    font-size: 3.5vw;
  }
  .section_about_members .card_member .profile_block .profile_career p {
    font-size: 3.5vw;
  }
}
.section_about_members {
  /*===============================================================
  card_member_top
  ===============================================================*/
}
.section_about_members .card_member_top {
  background-color: #fff;
  border-radius: 2rem;
  overflow: hidden;
  margin-top: 10rem;
  position: relative;
  -webkit-box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3);
  letter-spacing: 0.1em;
}
.section_about_members .card_member_top:first-of-type {
  margin-top: 5rem;
}
.section_about_members .card_member_top .head_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.section_about_members .card_member_top .name_block,
.section_about_members .card_member_top .photo_block {
  width: 50%;
}
.section_about_members .card_member_top .profile_block {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .section_about_members .card_member_top {
    margin-top: 13vw;
  }
  .section_about_members .card_member_top:first-of-type {
    margin-top: 8vw;
  }
  .section_about_members .card_member_top .head_block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .section_about_members .card_member_top .name_block,
  .section_about_members .card_member_top .photo_block,
  .section_about_members .card_member_top .profile_block {
    width: 100%;
  }
}
.section_about_members .card_member_top {
  /*===============================================================
  name_block
  ===============================================================*/
}
.section_about_members .card_member_top .name_block {
  padding: 7rem 7rem;
}
.section_about_members .card_member_top .name_block .profile_name {
  font-size: 2.8rem;
  line-height: 1.8;
}
.section_about_members .card_member_top .name_block .profile_post {
  font-size: 1.7rem;
  line-height: 1.8;
  margin-top: 0.8em;
}
@media screen and (max-width: 767px) {
  .section_about_members .card_member_top .name_block {
    padding: 5vw;
  }
  .section_about_members .card_member_top .name_block .profile_name {
    font-size: 5vw;
  }
  .section_about_members .card_member_top .name_block .profile_post {
    font-size: 3.5vw;
    margin-top: 0;
  }
}
.section_about_members .card_member_top {
  /*===============================================================
  profile_block
  ===============================================================*/
}
.section_about_members .card_member_top .profile_block {
  padding: 4rem 7rem;
}
.section_about_members .card_member_top .profile_block .profile_career {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.section_about_members .card_member_top .profile_block .profile_career .title, .section_about_members .card_member_top .profile_block .profile_career .c_card .label_block .title__blue, .c_card .label_block .section_about_members .card_member_top .profile_block .profile_career .title__blue {
  font-size: 1.7rem;
  line-height: 1.8;
  width: 7rem;
  padding-right: 3rem;
  position: relative;
}
.section_about_members .card_member_top .profile_block .profile_career .title::after, .section_about_members .card_member_top .profile_block .profile_career .c_card .label_block .title__blue::after, .c_card .label_block .section_about_members .card_member_top .profile_block .profile_career .title__blue::after {
  content: "";
  position: absolute;
  top: 0.6rem;
  height: calc(100% - 0.6rem);
  right: 0rem;
  width: 1px;
  background: #666;
}
.section_about_members .card_member_top .profile_block .profile_career p {
  width: calc(100% - 7rem);
  padding-left: 3rem;
  font-size: 1.7rem;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .section_about_members .card_member_top .profile_block {
    padding: 5vw;
  }
  .section_about_members .card_member_top .profile_block .profile_career {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .section_about_members .card_member_top .profile_block .profile_career .title, .section_about_members .card_member_top .profile_block .profile_career .c_card .label_block .title__blue, .c_card .label_block .section_about_members .card_member_top .profile_block .profile_career .title__blue {
    font-size: 3.5vw;
    width: 100%;
  }
  .section_about_members .card_member_top .profile_block .profile_career .title::after, .section_about_members .card_member_top .profile_block .profile_career .c_card .label_block .title__blue::after, .c_card .label_block .section_about_members .card_member_top .profile_block .profile_career .title__blue::after {
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    width: calc(100% - 3em);
    height: 1px;
  }
  .section_about_members .card_member_top .profile_block .profile_career p {
    width: 100%;
    font-size: 3.5vw;
    margin-top: 0.5em;
    padding-left: 0;
  }
}
/*# sourceMappingURL=style.css.map */