/*                      team                    */

.team_contents {
 background-color: #fff;
 padding-top: min(5rem, calc(50vw / 12.8));
}
.team_inner {
 width: min(108rem, calc(1080vw / 12.8));
 margin: 0 auto;
}

.team_item {
 width: 100%;
 position: relative;
 padding: min(6rem, calc(60vw / 12.8)) 0 min(9rem, calc(90vw / 12.8));
}
.team_item_01,.team_item_03 {
 background-color: #FBF0F2;
}
.team_item_02 {
 background-color: #EEF4FA;
}
.team_item_04 {
 background-color: #E6F1EE;
}

.team_item_ttl {
 font-size: 2.4rem;
 font-weight: 600;
 letter-spacing: 0.02em;
 color: #fff;
 position: absolute;
 top: 0;
 left: 0;
 padding: min(.6rem, calc(6vw / 12.8))  min(6rem, calc(60vw / 12.8));
}
.team_item_01 .team_item_ttl,
.team_item_03 .team_item_ttl{
 background-color: #B5002B;
}
.team_item_02 .team_item_ttl{
 background-color:#003869;
}
.team_item_04 .team_item_ttl{
 background-color:#348884;
}
.team_top_img {
width: min(42rem, calc(420vw / 12.8));
margin: 0 auto;
}
.team_item_box {
 width: min(95rem, calc(950vw / 12.8));
 margin: min(10rem, calc(100vw / 12.8)) auto 0;
 box-sizing: border-box;
 border: min(.8rem, calc(8vw / 12.8)) #E88B8B solid;
 background-color: #F8F8F8;
 box-shadow: 0  min(.3rem, calc(3vw / 12.8))  min(.6rem, calc(6vw / 12.8)) #0000004d;
 padding: min(2.5rem, calc(25vw / 12.8)) 0 min(7.5rem, calc(75vw / 12.8));
 position: relative;
}
.team_item_02 .team_item_box {
 border-color: #6498C7;
}
.team_item_03 .team_item_box,
.team_item_04 .team_item_box  {
 border: none;
 background: none;
 box-shadow: none;
 padding: 0;
}
.team_item_04 .team_item_box  {
 margin: 0 auto;
}
.team_box_img {
 width: min(74.2rem, calc(742vw / 12.8));
 margin: 0 auto;
}
.team_box_img_txt {
 width: min(28rem, calc(280vw / 12.8));
 position: absolute;
 top: max(-13rem, calc(-130vw / 12.8));
 left: 0;
 right: 0;
 margin: 0 auto;
 z-index: 1;

}
.team_item_02 .team_box_img_txt {
 top: max(-10rem, calc(-100vw / 12.8));
}

.team_box_content {
 width: min(82.5rem, calc(825vw / 12.8));
margin: 0 auto;
 background: #fff;
 box-shadow: 0  min(.3rem, calc(3vw / 12.8))  min(.6rem, calc(6vw / 12.8)) #0000004d;
 position: relative;
 padding: 0 min(2.5rem, calc(25vw / 12.8));
 margin-top: min(3rem, calc(30vw / 12.8));
 box-sizing: border-box;
}
.team_item_02 .team_box_content:nth-of-type(2) {
 padding: min(2rem, calc(20vw / 12.8)) min(2.5rem, calc(25vw / 12.8)) 0;
}
.team_item_02 .team_box_content:nth-of-type(3) {
 padding: min(5rem, calc(50vw / 12.8)) min(2.5rem, calc(25vw / 12.8)) 0;
}
.team_item_04 .team_box_content {
 display: flex;
 justify-content: space-between;
 box-shadow: none;
 background: none;
}
.team_box_ttl{
 display: inline-block;
 text-align: left;
 font-size: 2rem;
 font-weight: 600;
 color: #fff;
 background-color: #B5002B;
 position: absolute;
 top: 0;
 left: 0;
 padding: min(.7rem, calc(7vw / 12.8)) min(2.5rem, calc(25vw / 12.8));
}
.team_item_02 .team_box_ttl {
 background-color: #003869;
}
.team_box_content dl {
 display: flex;
 justify-content: space-between;
 align-items: center;
 padding:  min(3rem, calc(30vw / 12.8)) 0;
}
.team_item_04 .team_box_content dl {
 flex-direction: column;
 width: min(24.5rem, calc(245vw / 12.8));
 padding: 0;
 background-color: #fff;
 box-shadow: 0  min(.3rem, calc(3vw / 12.8))  min(.6rem, calc(6vw / 12.8)) #0000004d;
 padding-bottom: min(1rem, calc(10vw / 12.8));
}
.team_box_content dl:not(:first-of-type) {
 padding-top: 0;
}
.team_box_content dl.flex_s {
 align-items: flex-start;
}
.team_box_content dl dt {
 width: min(38rem, calc(380vw / 12.8));
 text-align: justify;
 font-size: 1.6rem;
 font-weight: 600;
 color: #B5002B;
 line-height: 1.5;
 letter-spacing: 0.02em;
}
.team_item_02 .team_box_content dl dt {
 color: #003869;
}
.team_item_02 .team_box_content:nth-of-type(3)  dl dt {
 width: min(38rem, calc(380vw / 12.8));
}
.team_item_04 .team_box_content dl dt {
 width: 100%;
 font-size: 2rem;
 color: #fff;
 background-color: #348884;
 text-align: center;
 padding:min(1.2rem, calc(12vw / 12.8)) 0;
}
.team_box_content dl dt .pt {
 padding-top:  min(4.5rem, calc(45vw / 12.8));
}
.team_box_content dl dt span {
 display: block;
 width:  min(27rem, calc(270vw / 12.8));
 border: #72A1CC solid min(.1rem, calc(1vw / 12.8));
 box-sizing: border-box;
 background-color: #EEF4FA;
 text-align: center;
 font-size: 1.6rem;
 font-weight: 600;
 letter-spacing: 0.03em;
 padding: min(1.4rem, calc(14vw / 12.8)) 0;
 margin-bottom: min(1rem, calc(10vw / 12.8));
}
.team_box_content dl dd {
 width: min(34.5rem, calc(345vw / 12.8));
}
.team_box_content dl dd p {
 display: flex;
 align-items: flex-end;
 flex-wrap: wrap;
}
.team_item_04 .team_box_content dl dd p  {
flex-direction: column;
align-items: center;
}
.team_box_content dl dd span {
 width:  min(7.8rem, calc(78vw / 12.8));
 margin-right:  min(1.5rem, calc(15vw / 12.8));
}
.team_box_content dl dd p:not(:first-of-type)  {
 margin-top: min(1.5rem, calc(15vw / 12.8));
}
.team_item_04 .team_box_content dl dd p span {
 margin:min(1.5rem, calc(15vw / 12.8)) 0;
}


.team_box_content dl dd a {
 display: block;
 width:  min(21.5rem, calc(215vw / 12.8));
 color: #fff;
 background-color: #D43802;
 border-radius: min(10rem, calc(100vw / 12.8));
 font-weight: 600;
 padding: min(.7rem, calc(7vw / 12.8)) 0;
 font-size: 1.6rem;
 box-sizing: border-box;
 border: min(.2rem, calc(2vw / 12.8)) solid #D43802;
 box-shadow: 0  min(.3rem, calc(3vw / 12.8))  min(.6rem, calc(6vw / 12.8)) #0000004d;
 position: relative;
}
.team_item_02 .team_box_content dl dd a {
 border-color: #00539C;
 background-color: #00539C;
}
.team_item_04 .team_box_content dl dd a {
 border-color: #348884;
 background-color: #348884;
}
.team_box_content a::before {
 content: '';
 width: min(.6rem,calc(6vw/12.8));
 height: min(.6rem,calc(6vw/12.8));
 border-top: min(.3rem,calc(3vw/12.8)) solid #fff;
 border-right: min(.3rem,calc(3vw/12.8)) solid #fff;
 position: absolute;
 top: 50%;
 transform: translateY(-50%) rotate(45deg);
 right:min(2rem,calc(20vw/12.8));
 transition: .4s;
}

.team_box_content dl dd span.team_box_img {
 display: block;
 width: min(23rem,calc(230vw/12.8));
 margin: min(1.5rem,calc(15vw/12.8)) 0 0;
 margin-left:  max(-2rem,calc(-20vw/12.8));
}


@media (hover: hover)  and (pointer: fine){
 .team_box_content dl dd a:where(:any-link, :enabled, summary):hover {
  background-color: #fff;
  color: #D43802;
 }
 .team_box_content dl dd a:where(:any-link, :enabled, summary):hover::before{
  border-color: #D43802;
 }
 .team_item_02  .team_box_content dl dd a:where(:any-link, :enabled, summary):hover {
  background-color: #fff;
  color: #00539C;
 }
 .team_item_02 .team_box_content dl dd a:where(:any-link, :enabled, summary):hover::before{
  border-color: #00539C;
 }
 .team_item_04  .team_box_content dl dd a:where(:any-link, :enabled, summary):hover {
  background-color: #fff;
  color: #348884;
 }
 .team_item_04 .team_box_content dl dd a:where(:any-link, :enabled, summary):hover::before{
  border-color: #348884;
 }
}


@media screen and (max-width: 767px) {
.team_contents {
 padding-top: 2.4rem;
}
.team_inner {
 width: 100%;
 padding-bottom: 7rem;
}

.team_item {
 padding: 3rem 0 4rem;
}
.team_item_01{
 padding:2rem 0 2.5rem;
}

.team_item_ttl {
 width: 14rem;
 font-size: 1.2rem;
 padding:.3rem  0;
}
.team_top_img {
width: 21.5rem;
}
.team_item_box {
 width:35rem;
 margin: 5rem auto 0;
 border: .4rem #E88B8B solid;
 box-shadow: 0  .15rem .3rem #0000004d;
 padding:4rem 0 2.5rem;
 position: relative;
}

.team_item_03 .team_item_box {
 margin-top: 6rem;
}
.team_box_img {
 width:29rem;
 margin: 0 auto;
}
.team_box_img_txt {
 width:18rem;
 top: -7rem;

}
.team_item_02 .team_box_img_txt {
 top: -5rem;
}
.team_item_03 .team_box_img_txt {
 z-index: 0;
 top: -7.5rem;
}

.team_box_content {
 width: 32rem;
 margin: 0 auto;
 box-shadow: 0  .15rem  .3rem #0000004d;
 padding: 0 1.2rem;
 margin-top: 1.5rem;
 box-sizing: border-box;
}
.team_item_02 .team_box_content:nth-of-type(2) {
 padding:0 1.2rem ;
}
.team_item_02 .team_box_content:nth-of-type(3) {
 padding: 0 1.2rem ;
}
.team_item_04 .team_box_content {
 flex-direction: column;
}
.team_box_ttl{
 font-size: 1.2rem;
 padding:.15rem 1.2rem;
}

.team_box_content dl {
 flex-direction: column;
 padding: 3.5rem 0 1.2rem;
}
.team_item_04 .team_box_content dl {
 width: 18.7rem;
 margin: 0 auto;
 box-shadow: 0  .15rem  .3rem #0000004d;
 padding-bottom:1.2rem;
}
.team_box_content dl:not(:first-of-type) {
 padding: 1.5rem 0 3rem;
}
.team_item_04 .team_box_content dl:not(:first-of-type) {
padding: 0 0 1.5rem;
}
.team_box_content dl.flex_s {
 align-items: flex-start;
}
.team_item_04 .team_box_content dl {
 margin-bottom: 1.5rem;
}
.team_box_content dl dt {
 width: 100%;
 font-size: 1.2rem;
 line-height: 1.25;
 letter-spacing: 0.033em;
}
.team_item_02 .team_box_content:nth-of-type(3)  dl dt {
 width:100%;
}
.team_item_04 .team_box_content dl dt {
 width: 100%;
 font-size: 1.2rem;
 padding:.6rem 0;
}
.team_box_content dl dt .pt {
 padding-top: 0;
}
.team_box_content dl dt span {
 display: block;
 width: fit-content;
 min-width: 16rem;
 border: #72A1CC solid .1rem;
 font-size: 1.2rem;
 padding:.5rem 1.2rem;
 margin-bottom: 1rem;
}
.team_box_content dl dd {
 width: 20.6rem;
 margin: 1.5rem auto 0;
}
.team_item_04 .team_box_content dl dd   {
width: 100%;
}

.team_box_content dl dd span {
 width: 5.2rem;
 margin-right: 1rem;
}
.team_box_content dl dd p:not(:first-of-type)  {
 margin-top: 1rem;
}
.team_item_04 .team_box_content dl dd p span {
 margin: 0 0 1.3rem;
}


.team_box_content dl dd a {
 width: 14.4rem;
 border-radius: 5rem;
 padding:.4rem 0;
 font-size: 1.1rem;
 border:.1rem solid #D43802;
 box-shadow: 0  .15rem  .3rem #0000004d;
}

.team_box_content a::before {
 width: .4rem;
 height: .4rem;
 border-top: .2rem solid #fff;
 border-right: .2rem solid #fff;
 right:1.5rem;
}

.team_box_content dl dd span.team_box_img {
 width: 15.2rem;
 margin:.5rem auto 0;
}

}
