@charset "UTF-8";
/* Scss Document */
@import url("base.css");
/*共通設定-------------------------------------------------------------------------------------------------------------------------------------*/
/*基本設定*/
/*メイン*/
#m_top {
  width: 100%;
  margin: 0; }
  #m_top h1 {
    background-image: url("../img/voice/top_img.jpg");
    background-repeat: repeat-x;
    background-position: center;
    background-size: cover;
    color: #fff;
    font-size: 225%;
    text-align: center;
    padding: 3em 0; }

.voice {
  margin: 0 auto 0;
  padding: 3em 0;
}

.voice_maintxt_area {
  width: calc(100% - 2em);
  margin: 0 auto 0;
  padding: 3em 1em;
/*
  width: 1000px;
  padding: 3em 0;
*/
}

.voice_maintxt_area div.center {
  text-align: center;
}
.voice_maintxt_area div.text {
  padding: 0 0.5em;
}

.voice_maintxt_area h2 {
  font-size: 140%;
  margin-bottom: 1.0em;
  text-align: center;
  display: inline-block;
}

/*20260323*/
.voice_maintxt_area h2.contents_l {
  font-size: 140%;
  margin-bottom: 1.0em;
  text-align: left;
  display: inline-block;
}


.voice_maintxt_area p {
  margin: 0.8em 0;
  line-height: 1.8;
}
.voice_maintxt_area p img.main {
  width: 100%;
  max-height: auto;
}
.voice_maintxt_area p span.name {
  color: #ff3333;
}

.voice_maintxt_area h4 {
  margin: 2.0em 0 0.5em;
  line-height: 1.8;/*20250305*/
}

.voice_maintxt_area p.fs105 {
  font-size: 105%;
}

.voice_maintxt_area div.flexbox {
  width: 100%;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  text-align: center;
}
.voice_maintxt_area div.flexbox p {
  text-align: left;
  display: inline-block;
}

.voice_maintxt_area div.flexbox p:nth-child(1) {
  width: 65%;
}
.voice_maintxt_area div.flexbox p:nth-child(2) {
  width: 33%;
  text-align: center;/*20250225*/
}

/*20250222*/
.interview_area{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.interview_area_l{
  width: 65%;
}
.interview_area_r{
  width: 33%;
}
.interview_area_c{
  width: 98%;
}

.interview_n1{
  order:1;
}
.interview_n2{
  order:2;
}
.interview_n3{
  order:3;
}

.caption_txt{
  font-size: 0.9rem;
  line-height: 0.8;
}
.contents_center{
  text-align: center;
}

.contents_left{
  text-align: left;
}


.contents_right{
  text-align: right;
  font-size: 0.7rem;
}



h3 {
  padding: 1rem 2rem;
  border-top: 3px solid #000;
  border-bottom: 3px solid #000;
  text-align: center;
  margin-top: 80px;
}

.voice_maintxt_area div.flexbox p.cap {
  text-align: center;
}

/*20230410*/

.voice_info{
  /* background-color: #F5F5F5; */
  margin: 0 auto 2rem;
  padding: 1rem;
  line-height: 1.8;
}

.voice_info_dt{
  color: #00a2b1;
  float: left;
  font-weight: bold;
}
.voice_info_dt::after{
  content: "：";
}

.box1-6 {
	margin: 2em auto;
	padding:2em;/*内側余白*/
	background-color:#f4f4f4;/*背景色*/
	position:relative;
  line-height: 1.8;
}

.box1-6:after{
	position: absolute;
	content: '';
	right: 0px;
	top: 0px;
	border-width: 0 15px 15px 0;
	border-style: solid;
	border-color: #ccc #fff  #ccc;
	box-shadow: -1px 1px 1px rgba(0, 0, 0, 0.15);
}

.gray{
  color: #555555;
  font-weight: normal;
}

.voice_midashi_light-blue {
  color: #6495ED;
  display: block;
  font-size: 1.4rem;
  font-weight: normal;
}

.voice_midashi_medium-sea-green {
  color: #3CB371;
  display: block;
  font-size: 1.4rem;
  font-weight: normal;
}

.voice_midashi_coral {
  color: #FF7F50;
  display: block;
  font-size: 1.4rem;
  font-weight: normal;
}

.light-blue {
  color: #6495ED;
}

.medium-sea-green {
  color: #3CB371;
}

.coral {
  color: #FF7F50;
}


.interviewers{
  width: 860px;
  margin: 0 auto;
  padding-top: 20px;
  text-align: center;
}

.interviewers_area{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.interviewers_area_l{
  width: 45%;
}

.interviewers_area_r{
  width: 45%;
}

.interviewers_img{
  width: 200px;
  height: 200px;
  border-radius: 50%;
  object-fit: cover;
  margin-bottom: 10px;
}

.interviewers_name{
  display:block;
  font-size: 0.8rem;
}

.interviewers_info{
  font-size: 0.9rem;
  text-align: left;
}



.voice_midashi{
  color: #00a2b1;
}
.voice ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.voice ul li {
  width: 25%; 
}
.voice ul li dl dt {
  text-align: center;
  width: 100%;
  font-size: 187.5%;
  text-align: center;
}
.voice ul li dl dt img {
  display: block;
  width: 200px;
  height: 200px;
  object-fit: cover;
  border-radius: 6px;
  margin: 0 auto 1em;
}
.voice ul li dl dt span {
  font-size: 50%;
  font-weight: bold;
  color: #00a2b1;
  display: block;
}
.voice ul li dl dd {
  width: 100%;
  text-align: center;
  margin: 1em 0 0;
}

.back_g {
  /*background-color: #f4f4f4;20201003*/
  background-color: #F3FAF3;/*20201003*/
    padding: 3em 0;
  width: 100%; }

#r_bottom {
  margin: 4em auto 0; }
  #r_bottom #sns {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; }
    #r_bottom #sns li {
      width: 66px;
      margin: 0 2%; }

.voice_link {
  text-decoration: none;
  color: inherit;
}

@media (min-width: 1020px) {
	.voice_maintxt_area {
		width: 1000px !important;
	}
}

@media screen and (max-width: 767px) {
	.voice_maintxt_area div.flexbox {
		flex-direction: column;
	}
	.voice_maintxt_area div.flexbox p {
		width: 100% !important;
	}
	.voice_maintxt_area div.flexbox p img {
	    padding: 0 !important;
	}

.interviewers{
  width: 98%;
}

.interviewers_img{
  width: 100px;
  height: 100px;
}


.interview_area_l{
  width: 98%;
}
.interview_area_r{
  width: 98%;
}
.interview_area_c{
  width: 98%;
}

.interview_n1{
  order:1;
}
.interview_n2{
  order:3;
}
.interview_n3{
  order:2;
}

}

/*共通設定ここまで-------------------------------------------------------------------------------------------------------------------------------------*/
/* pc */
@media screen and (min-width: 1300px) {
  /*ヘッダー*/
  /*メイン*/
  .voice, .voice2, #r_bottom {
    width: 1280px; }

  /*フッター*/ }
/* tablet以下共通 ------------------------------------------------------------------------------------------*/
@media only screen and (max-width: 1299px) {
  /*ヘッダー*/
  /*メイン*/
  .voice, .voice2, #r_bottom {
    width: 96%; }

  /*フッター*/ }
/* tablet以下共通ここまで ------------------------------------------------------------------------------------------*/
/* tablet1 */
@media only screen and (min-width: 1024px) and (max-width: 1299px) {
  /*基本設定*/
  /*ヘッダー*/
  /*メイン*/
  /*フッター*/ }
/* tablet2  */
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  /*基本設定*/
  /*メイン*/
  /*フッター*/ }
/* tablet3  */
@media only screen and (max-width: 767px) {
  /*メイン*/
  .voice ul {
    flex-direction: column; }
    .voice ul li:nth-child(1) {
      width: 100%; }
    .voice ul li:nth-child(2) {
      width: 96%;
      margin: 0 auto; }
      .voice ul li:nth-child(2) dl {
        margin: 1em 0 0; }
        .voice ul li:nth-child(2) dl dt {
          text-align: center; }

  .voice2 ul {
    flex-direction: column-reverse; }
    .voice2 ul li:nth-child(2) {
      width: 100%; }
    .voice2 ul li:nth-child(1) {
      width: 96%;
      margin: 0 auto; }
      .voice2 ul li:nth-child(1) dl {
        margin: 1em 0 0; }
        .voice2 ul li:nth-child(1) dl dt {
          text-align: center; } }
/* smartPhone1 */
@media only screen and (max-width: 499px) {
  /*基本設定*/
  html {
    font-size: 80%; }

  /*メイン*/ }


    .headline-box {
      background: #f7f2e4;
      padding: 40px 24px 50px;
      margin-bottom: 50px;
      border-radius: 20px;
    }

    .headline-box .sub-title {
      font-size: 18px;
      font-weight: 700;
      text-decoration: underline;
      margin: 0 0 32px;
    }

    .headline-box .main-title {
      font-size: 28px;
      font-weight: 700;
      line-height: 1.6;
      margin: 0;
    }

    .content {
      padding: 36px 24px;
      font-size: 18px;
      line-height: 1.9;
    }

    .text_color{
      color: #E5E7EB;
    }

.heading-line-left {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.4;
  padding-left: 0.75rem;
  border-left: 4px solid #2563eb;
  color: #111111;
  margin: 2.5rem 0 1rem;
}

.heading-underline {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.4;
  color: #111111;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #d1d5db;
  border-top:none;
  margin: 2.5rem 0 1rem;
}


/*20260324*/
.field-block {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 40px;
}

.field-block__text {
  flex: 1 1 auto;
  min-width: 0;
}

.field-block__image {
  flex: 0 0 300px;
  margin: 0;
  text-align: center;
}

.field-block__image img {
  display: block;
  width: 100%;
  height: auto;
}

.field-block__image figcaption {
  margin-top: 8px;
  font-size: 0.8rem;
  line-height: 1.4;
}

@media screen and (max-width: 768px) {
  .field-block {
    flex-direction: column;
    gap: 24px;
  }

  .field-block__text {
    order: 1;
  }

  .field-block__image {
    order: 2;
    flex: none;
    width: 100%;
    max-width: 320px;
    margin: 0 auto;
  }
}

.photo-block {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
}

.photo-block__images {
  display: flex;
  gap: 24px;
}

.photo-block__images img {
  display: block;
  width: calc(50% - 12px);
  height: auto;
  object-fit: cover;
}

.photo-block__caption {
  margin: 20px 0 0;
  font-size: 0.8rem;
  line-height: 1.6;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .photo-block {
    max-width: 980px;
  }

  .photo-block__images {
    flex-direction: column;
    gap: 16px;
  }

  .photo-block__images img {
    width: 80%;
    margin: 0 auto;
  }

  .photo-block__caption {
    margin-top: 16px;
  }
}

/*20260324*/

.photo-grid3 {
  display: flex;
  gap: 24px;
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
}

.photo-grid__item {
  flex: 1 1 0;
}

.photo-grid__item img {
  display: block;
  width: 100%;
  height: auto;
}

.photo-grid__caption {
  margin: 16px 0 0;
  text-align: center;
  line-height: 1.6;
  font-size: 0.8rem;  
}

@media screen and (max-width: 768px) {
  .photo-grid3 {
    flex-direction: column;
    gap: 20px;
    max-width: 980px;
  }
  .photo-grid__item img {
    width: 80%;
    margin: 0 auto;
  }
}


