@charset "UTF-8";
html {
  scroll-behavior: smooth; /* スムーススクロール */
  scroll-padding-top: 200px;
}
/*-----------------------------
maincontents
-----------------------------*/
#mainContents {
  max-width: 1280px;
  margin: auto;
	
}
#mainContents a:hover {
  opacity: 0.8;
  transition: 0.6s;
}

/*[id] {
  scroll-margin-top: 200px;
}*/


#mainContents .mt60{
	margin-top: 60px;
}


/*-----------------------------
kv
-----------------------------*/
#mainContents .kv {
  margin-bottom: 30px;
}
#mainContents .kv p img {
  width: 100%;
}


/*-----------------------------
intro-box
-----------------------------*/
#mainContents .intro-box {
	background-color: #f2f2f2;
	padding: 30px 2.34375%;
font-size: clamp(16px, 1.40625vw, 18px);
    line-height: 1.9;
    color: #333333;
	margin: 0 2.34375% 30px;
	
	border-radius: 2px;
}




/*-----------------------------
nav
-----------------------------*/
#mainContents nav ul li a {
  display: flex;
}
#mainContents nav ul li p {}
#mainContents nav ul li a {
font-size: clamp(16px, 1.5625vw, 20px);
  font-weight: 800;
  line-height: 180%;
  color: #343434 !important;
  text-decoration: none !important;
  text-align: center;
  padding: 2.734375vh 0;
  border: 2px #343434 solid;
  border-radius: 5px;
}
#mainContents nav ul li a:hover {
  color: #c3002f !important;
  padding: 2.734375vh 0;
  border: 2px #c3002f solid;
  transition: 0.6s;
}
#mainContents nav ul li a:hover::after {
  border-top: 2px solid #c3002f;
  border-right: 2px solid #c3002f;
  transition: 0.8s;
}
#mainContents nav .jump {
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
#mainContents nav ul {
  margin: 0 2.34375% 30px;
  display: flex;
}
#mainContents nav ul li {
  width: 31.147%; /* 各リストアイテムの横幅を指定 */
}
#mainContents nav ul li a {
  justify-content: center;
  align-items: center;
  flex-direction: column;
  flex-grow: 1;
  min-height: 138px;
}
#mainContents nav ul li a::after {
  /* ④絶対必要 */
  content: "";
  display: block;
  /* ⑤三角のサイズ */
  width: 12px;
  height: 12px;
  /* ⑥三角の線と回転角度 */
  border-top: 2px solid #343434;
  border-right: 2px solid #343434;
  transform: rotate(135deg);
}
/*-----------------------------
contents
-----------------------------*/
#contents {
  letter-spacing: 0.1em;
  margin: 0 2.34375%;
}

#contents h1 {
font-size: clamp(26px, 2.5vw, 32px);
  line-height: 1.5;
  padding-bottom: 10px;
	color: #c3002f;
  font-weight: bold;
}



#contents h2 {
font-size: clamp(16px, 1.40625vw, 18px);
  line-height: 1.9;
	color: #000000;
}
#contents p {
font-size: clamp(16px, 1.40625vw, 18px);
  line-height: 1.9;
  color: #333333;
  display: flex;
align-items: flex-start;
margin-top: 30px;
}

#contents p span.name{
	background-color: #999999;
	color: #ffffff;
	padding:0.5px 1.5625%;
	margin-right: 1.171875%;
	white-space: nowrap;
	flex-shrink: 0;
}

#contents p.caption{
font-size: clamp(12px, 1.17vw, 14px);
	margin-top: 5px;
	color: #666666;
}

#contents .annotation_list li{
  display: flex;
  font-size: min(1.17vw, 14px);
  line-height: 150%;
  color: #333;
margin-bottom: 0.5vw;
}

#contents .annotation_list .label{
  width: 2em;
  flex-shrink: 0;
}


#contents .box:not(:first-child) {
  padding-top: 30px;
}
#contents .box:first-child {
  padding-top: 30px;
}
#contents .box {
  display: flex;
  justify-content: space-between;
}
#contents .box:nth-child(even) {
  flex-direction: row-reverse;
}
#contents .text {
  width: 57.786%;
}
#contents .pict {
  width: 100%;
  margin-top: 30px;
}

#contents .pict ul{
  display: flex;
  gap: 1.25%; /* 16px */
  padding: 0;
  margin: 0;	
  align-items: center;
justify-content: center;
	
}



#contents .pict ul li {
  width: calc((100% - 1.25%) / 2);
  list-style: none;
}





#contents .pict ul li img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 5px;
}
#contents {
  margin-bottom: 30px;
}
/*-----------------------------
gallery
-----------------------------*/
#mainContents #gallery {
  background-color: #f5f5f5;
  border-top: 1px solid #ebebeb;
  border-bottom: 1px solid #ebebeb;
  margin: 60px auto 0;
}
#mainContents #gallery h2 {
  font-size: min(2.1875vw, 28px);
  font-weight: bold;
  line-height: 160%;
  text-align: center;
}
#mainContents #gallery .container {
  width: 100%;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 20px 2.34375% 30px;
}
#mainContents #gallery .container .pict_box {
  width: 24%;
}
#mainContents #gallery .container .pict_box img {
  width: 100%;
  border-radius: 5px;
}



/* リスト全体 */
.interview-list {
  padding: 0;
  margin: 30px 0;
  list-style: none;

  display: flex;
  gap: 1.25%;
}

/* 各カード */
.interview-profile {
  display: flex;
  gap: 20px;
  align-items: center;

  padding: 20px;
  background: #fff;
  border: 1px solid #666666;
  border-radius: 8px;
	flex: 1;
}

.interview-profile .prof-name{
font-size: clamp(20px, 1.875vw, 24px)!important;
color: #000000;
	margin-top: 0!important;
}


.interview-profile .desc{
	margin-top: 0!important;
}

/* 画像 */
.profile-img {
  width: 146px;
  height: 146px;
  flex-shrink: 0;
  border-radius: 50%;
  overflow: hidden;
}

.profile-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* テキスト */
.profile-text {
  flex: 1;
}







/*-----------------------------
banner_link
-----------------------------*/
#mainContents .banner h3{
	background-color: #f2f2f2;
	padding: 10px 1.5625%;
	width: 100%;
font-size: clamp(20px, 1.875vw, 24px);
	
}
#mainContents .banner a{
width: 100%;
	
}

#mainContents .banner a img{
width: 100%;
	
}




/*-----------------------------
footer_btn
-----------------------------*/
#mainContents .footer_btn {
  padding-bottom: 30px;
  text-align: center;
}

#mainContents .footer_btn a {
  display: block;
  text-decoration: none;
  letter-spacing: 0.05em;
  border-radius: 5px;
}

/* 赤ボタン */

#mainContents .footer_btn .btn_red {
  width: 95.3125%;
  margin: 30px auto;
  padding: 22px 0;
  background-color: #c3002f;
  color: #fff;
  font-size: min(2vw, 24px);
  font-weight: 700;
}


/* グレーボタン */

#mainContents .footer_btn .btn_gray {
  width: 48.852%;
  margin: 0 auto;
  padding: 18px 0;
  background-color: #666666;
  color: #fff;
  font-size: min(1.7vw, 20px);
  font-weight: 700;
}
/*-----------------------------
tenpo_btn
-----------------------------*/
#mainContents .tenpo_btn {
  background-color: #f2f2f2;
  padding: 30px 0;
}

#mainContents .tenpo_box {
  width: 100%;
  display: flex;
justify-content: flex-start;
  flex-wrap: wrap;
  padding: 20px 2.34375% 10px;
}

#mainContents .tenpo_btn h2 {
  padding-bottom: 20px;
  letter-spacing: 0.05em;
  font-size: min(2.1875vw, 28px);
  text-align: center;
}

#mainContents .tenpo_box .btn_orange {
  width: 31.147%;
  margin-bottom: 20px;
margin-right: 3.2795%;
}

#mainContents .tenpo_box .btn_orange:nth-child(3n) {
  margin-right: 0;
}

#mainContents .tenpo_box .btn_orange a img {
  width: 100%;
  display: block;
}
/*-----------------------------
    960px以下
-----------------------------*/
@media screen and (max-width: 960px) {
  #mainContents {
/*    text-align: center;*/
  }
	
  #mainContents .kv{
margin-bottom: 0;
  }
	
  #mainContents .kv .kv_intro h1 {
    font-size: 4.8vw;
  }
  #mainContents .kv .kv_intro h2 {
    font-size: 3.2vw;
  }
  #mainContents .first {
    font-size: 2.666vw;
  }
	
/*-----------------------------
intro-box
-----------------------------*/
#mainContents .intro-box {
    font-size: 3.125vw;
margin: 0;
}
	
	
	
	
	
	
  #mainContents nav ul {
    margin-top: 3.515625vh;
  }
  #mainContents nav ul li {
    width: 86.6667%; /* 各リストアイテムの横幅を指定 */
    margin: auto;
    margin-bottom: 2.34375vh;
  }

	
  #mainContents nav ul li p {
font-size: clamp(16px, 4vw, 20px);
    line-height: 180%;
  }
  #mainContents nav ul li a::after {
    position: absolute;
    right: 12vw;
    /* ④絶対必要 */
    content: "";
    display: block;
    /* ⑤三角のサイズ */
    width: 12px;
    height: 12px;
    /* ⑥三角の線と回転角度 */
    border-top: 3px solid #343434;
    border-right: 3px solid #343434;
    transform: rotate(135deg);
  }
  #contents {
    margin: 0;
  }
	

	
	

#contents p span.name{
	padding:0.5px 1.5625%;
	margin-right: 1.171875%;
}

	
	
	
	
	
	
  #contents .box:first-child {
    padding-top: 0;
  }
  #contents{
    width: 86.6667%;
	  margin: auto;
  }
  #contents .box {
    display: flex;
    flex-direction: column;
    margin: auto;
  }
  #contents .box:nth-child(even) {
    flex-direction: column;
  }
  #contents .text {
    width: 100%;
    margin: auto;
    padding-bottom: 30px;
  }
	
	#contents h1{
font-size: clamp(20px, 5.4vw, 24px);
	}
	
	
  #contents h2 {
   font-size: clamp(16px, 4.375vw, 20px);  
  }
	
  #contents h3 {
font-size: clamp(15px, 3.8vw, 18px);
  }
	
  #contents p {
  font-size: clamp(14px, 3.125vw, 16px);
  }
	
#contents .annotation_list li{
  font-size: 12px;
	text-align: left;
	}
	
  #contents .pict ul{
    flex-direction: column;
    gap: 20px;
  }
	
	
  #contents .pict ul li{
	  width: 100%;
  }
	
	
  #mainContents #gallery {
    padding: 0 6.6666%;
    margin-bottom: 30px;
    width: 100%;
  }
  #mainContents #gallery h2 {
    font-size: 4.5333vw;
  }
  #mainContents #gallery .container .pict_box {
    width: 48.46%;
    padding-bottom: 20px;
  }
	
	
.interview-list {
  flex-direction: column;
	  gap: 20px;
}
	
	
	
/* 画像 */
.profile-img {
  width: 74px;
  height: 74px;
}
	
.interview-profile {
	align-items: normal;
	}
	
	
	
#mainContents .footer_btn {
  width: 86.666%;
  margin: 30px auto 0;
  padding-bottom: 30px;
	
}
#mainContents .footer_btn a {
  display: block;
  padding: 18px 12px;
  text-align: center;
  line-height: 1.6;
}
	
	
	
#mainContents .footer_btn .btn_red {
  width: 100%;
  margin: 0 auto 20px;
  font-size: 17px;
}
#mainContents .footer_btn .btn_gray {
  width: 100%;
  margin: 0 auto;
  font-size: 16px;
}

  #mainContents .tenpo_btn h2 {
    font-size: 3.8vw;
    line-height: 120%;
  }
	
#mainContents .tenpo_box {
  padding: 20px 0 10px;
}
	
	
	
#mainContents .tenpo_box .btn_orange {
  width: 86.6666%;
  margin: 0 auto 20px;
  padding-bottom: 0;
}
	
#mainContents .tenpo_box .btn_orange:nth-child(3n) {
  margin-right: auto;
}
	
	
}