@charset "UTF-8";
/* ----------------------------------------------------
	sassを使用しています。css編集の際はご注意ください。
	compass/scss
---------------------------------------------------- */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");
/* ----------------------------------------------------
animation
---------------------------------------------------- */
.animeObj_fuwa {
  animation: fuwa 1s linear infinite;
}

@keyframes fuwa {
  0% {
    transform: translate(0, -7px);
  }
  50% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(0, -7px);
  }
}
/* ----------------------------------------------------
mv
---------------------------------------------------- */
.mv {
  height: 900px;
  background: #BDDFE3;
  position: relative;
}
@media (max-width: 1680px) {
  .mv {
    height: 52.619vw;
  }
}
@media (max-width: 750px) {
  .mv {
    height: 197.6vw;
    background: url(../images/top/sp/mv_1015.png) center top/100% no-repeat;
    position: relative;
    z-index: 21;
    top: -4vw;
  }
}
.mvItem {
  line-height: 0;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
}
@media (max-width: 750px) {
  .mvItem img {
    display: none;
  }
}
.mvVoteIcon {
  position: absolute;
  z-index: 2;
  right: 9.167vw;
  bottom: 2.381vw;
}
@media (max-width: 1680px) {
  .mvVoteIcon img {
    width: 15.238vw;
    height: auto;
  }
}
@media (max-width: 750px) {
  .mvVoteIcon {
    right: auto;
    bottom: auto;
    left: 3.2vw;
    top: 36.8vw;
  }
  .mvVoteIcon img {
    width: 30.933vw;
  }
}

/* ----------------------------------------------------
message
---------------------------------------------------- */
.message {
  padding: 143px 0 92px 0;
  position: relative;
  z-index: 3;
}
@media (max-width: 1680px) {
  .message {
    padding: 8.512vw 0 5.476vw 0;
  }
}
@media (max-width: 750px) {
  .message {
    padding: 0 0 21.333vw 0;
    margin-top: -16vw;
    background: url(../images/top/sp/bg_message.png) bottom center/100% no-repeat;
  }
}
.message h2 {
  margin-bottom: 20px;
  font-size: 46px;
  line-height: 1.5;
  color: #2B7AA1;
}
@media (max-width: 1680px) {
  .message h2 {
    margin-bottom: 1.19vw;
    font-size: 2.738vw;
  }
}
@media (max-width: 750px) {
  .message h2 {
    margin-bottom: 9.333vw;
    font-size: 7.467vw;
    font-weight: 500;
  }
}
.message h2 span {
  margin-left: 92px;
  display: block;
}
@media (max-width: 1680px) {
  .message h2 span {
    margin-left: 5.476vw;
  }
}
@media (max-width: 750px) {
  .message h2 span {
    margin-top: 2.667vw;
    margin-left: 16vw;
  }
}
.messageContainer.c_wrap {
  padding-left: 100px;
  position: relative;
}
@media (max-width: 1680px) {
  .messageContainer.c_wrap {
    padding-left: 0;
    margin-left: 5.952vw;
  }
}
@media (max-width: 750px) {
  .messageContainer.c_wrap {
    padding: 0 8vw;
    margin: 0;
  }
}
.messageContainer p {
  color: #2B7AA1;
  font-size: 22px;
  font-weight: bold;
  line-height: 2;
}
@media (max-width: 1680px) {
  .messageContainer p {
    font-size: 1.31vw;
  }
}
@media (max-width: 750px) {
  .messageContainer p {
    text-indent: 5.333vw;
    font-size: 5.333vw;
    font-weight: 500;
    line-height: 1.8;
  }
}
.messageContainer p + .btnLink {
  margin-top: 30px;
}
@media (max-width: 1680px) {
  .messageContainer p + .btnLink {
    margin-top: 1.786vw;
  }
}
@media (max-width: 750px) {
  .messageContainer p + .btnLink {
    margin-top: 10.667vw;
  }
}
.messageContainer .txt {
  width: 730px;
  text-align: center;
}
@media (max-width: 1680px) {
  .messageContainer .txt {
    width: 43.452vw;
  }
}
@media (max-width: 750px) {
  .messageContainer .txt {
    width: 100%;
    text-align: left;
  }
}
.message .photo {
  position: absolute;
  top: -115px;
  right: -50px;
}
@media (max-width: 1680px) {
  .message .photo {
    top: -6.845vw;
    right: 4.048vw;
  }
}
@media (max-width: 750px) {
  .message .photo {
    display: none;
  }
}
@media (max-width: 1680px) {
  .message .photo img {
    width: 25.238vw;
    height: auto;
  }
}

/* ----------------------------------------------------
banner
---------------------------------------------------- */
.banner {
  padding: 83px 0 74px 0;
  background: url(../images/top/ill_parliament.png) bottom 34px right -110px no-repeat #F3F7FA;
  position: relative;
  z-index: 4;
}
@media (max-width: 1680px) {
  .banner {
    padding: 4.94vw 0 4.405vw 0;
    background: url(../images/top/ill_parliament.png) bottom 2.024vw right -6.548vw/23.512vw no-repeat #F3F7FA;
  }
}
@media (max-width: 750px) {
  .banner {
    padding: 50px 30px;
    background: #F3F7FA;
  }
}
.banner > .inner {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 1680px) {
  .banner > .inner {
    justify-content: flex-start;
  }
}
@media (max-width: 750px) {
  .banner > .inner {
    display: block;
  }
}
.bannerItem {
  margin: 0 27px;
  line-height: 0;
}
@media (max-width: 1680px) {
  .bannerItem {
    margin: 0 0 0 3.214vw;
  }
}
@media (max-width: 750px) {
  .bannerItem {
    margin: 0;
  }
}
@media (max-width: 1680px) {
  .bannerItem:first-child img {
    width: 20.833vw;
    height: auto;
  }
}
@media (max-width: 750px) {
  .bannerItem:first-child {
    margin-bottom: 13.333vw;
  }
  .bannerItem:first-child img {
    width: 100%;
  }
}
@media (max-width: 1680px) {
  .bannerItem:nth-child(2) img {
    width: 46.429vw;
    height: auto;
  }
}
@media (max-width: 750px) {
  .bannerItem:nth-child(2) img {
    width: 100%;
  }
}

/* ----------------------------------------------------
hamazou_pj
---------------------------------------------------- */
.hamazou_pj {
  padding: 77px 0 140px 0;
  background: url(../images/common/bg_dot.jpg) center;
}
@media (max-width: 1680px) {
  .hamazou_pj {
    padding: 4.583vw 0 8.333vw 0;
    background: url(../images/common/bg_dot.jpg) center center/1.429vw;
  }
}
@media (max-width: 750px) {
  .hamazou_pj {
    padding: 20.533vw 0 32.533vw 0;
    background: url(../images/common/bg_dot.jpg) center center/6.4vw;
  }
}
.hamazou_pj .c_wrap > a {
  position: relative;
  background: #f0f;
  z-index: 1;
}
.hamazou_pj h2 {
  margin-bottom: -122px;
  line-height: 0;
  text-align: center;
  position: relative;
  top: 0;
  right: 0;
  left: 0;
  z-index: 4;
}
@media (max-width: 1680px) {
  .hamazou_pj h2 {
    margin-bottom: -7.262vw;
  }
}
@media (max-width: 750px) {
  .hamazou_pj h2 {
    padding: 0 8vw;
  }
}
.hamazou_pj h2 img {
  width: 692px;
  height: auto;
}
@media (max-width: 1680px) {
  .hamazou_pj h2 img {
    width: 41.429vw;
  }
}
@media (max-width: 750px) {
  .hamazou_pj h2 img {
    width: 100%;
  }
}
.hamazou_pjMv {
  line-height: 0;
  position: relative;
  z-index: 0;
}
@media (max-width: 1680px) {
  .hamazou_pjMv .photoPc img {
    width: 70.238vw;
    height: auto;
  }
}
@media (max-width: 750px) {
  .hamazou_pjMv .photoPc {
    display: none;
  }
}
.hamazou_pjMv .photoSp {
  display: none;
}
@media (max-width: 750px) {
  .hamazou_pjMv .photoSp {
    display: block;
  }
}
.hamazou_pj .flake {
  line-height: 0;
  position: absolute;
  z-index: 5;
}
.hamazou_pj .flake.f_1 {
  top: 16px;
  left: -71px;
}
@media (max-width: 1680px) {
  .hamazou_pj .flake.f_1 {
    top: 0.952vw;
    left: -4.226vw;
  }
  .hamazou_pj .flake.f_1 img {
    width: 10vw;
    height: auto;
  }
}
@media (max-width: 750px) {
  .hamazou_pj .flake.f_1 {
    top: -12.267vw;
    left: 0;
    right: 0;
  }
  .hamazou_pj .flake.f_1 img {
    width: 100%;
  }
}
.hamazou_pj .flake.f_2 {
  top: 0;
  right: -73px;
}
@media (max-width: 1680px) {
  .hamazou_pj .flake.f_2 {
    right: -4.345vw;
  }
  .hamazou_pj .flake.f_2 img {
    width: 18.393vw;
    height: auto;
  }
}
@media (max-width: 750px) {
  .hamazou_pj .flake.f_2 {
    top: auto;
    left: 0;
    right: 0;
    bottom: -19.467vw;
  }
  .hamazou_pj .flake.f_2 img {
    width: 100%;
  }
}
.hamazou_pjText {
  margin-top: -86px;
  margin-left: auto;
  width: 476px;
  position: relative;
  z-index: 5;
}
@media (max-width: 1680px) {
  .hamazou_pjText {
    margin-top: -5.119vw;
    width: 28.333vw;
  }
}
@media (max-width: 750px) {
  .hamazou_pjText {
    padding: 0 8vw;
    margin-top: -6.667vw;
    width: 100%;
  }
}
.hamazou_pjText p {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 500;
  color: #2CCCEA;
  font-size: 24px;
  line-height: 1.9;
}
@media (max-width: 1680px) {
  .hamazou_pjText p {
    font-size: 1.429vw;
  }
}
@media (max-width: 750px) {
  .hamazou_pjText p {
    font-size: 4.8vw;
    line-height: 1.8;
  }
}
.hamazou_pjText .btnLink {
  margin-top: 29px;
  margin-left: 0;
}
@media (max-width: 1680px) {
  .hamazou_pjText .btnLink {
    margin-top: 1.726vw;
  }
}
@media (max-width: 750px) {
  .hamazou_pjText .btnLink {
    margin: 8vw auto 0 auto;
  }
}

/* ----------------------------------------------------
policy
---------------------------------------------------- */
.policy {
  background: #BDDFE3;
}
.policy:after {
  content: "";
  display: block;
  margin-left: auto;
  width: calc(100% - 35.714vw);
  height: 422px;
  background: url(../images/top/bg_policy.jpg) center bottom repeat-x;
  position: relative;
  z-index: 1;
  margin-top: -422px;
}
@media (max-width: 1680px) {
  .policy:after {
    height: 25.119vw;
    margin-top: -25.119vw;
  }
}
@media (max-width: 750px) {
  .policy:after {
    width: calc(100% - 26.933vw);
    height: 112.533vw;
    margin-top: -114.133vw;
  }
}
.policyHead {
  position: relative;
  top: -44px;
  width: 55%;
  color: #FFFFFF;
  float: left;
  font-size: 46px;
  font-weight: bold;
}
@media (max-width: 1680px) {
  .policyHead {
    top: -2.619vw;
    width: 58.095vw;
    font-size: 2.738vw;
  }
}
@media (max-width: 750px) {
  .policyHead {
    top: -8vw;
    font-size: 7.467vw;
    width: calc(100% - 8vw);
    float: none;
    font-weight: 500;
  }
}
.policyHead:after {
  content: "";
  display: block;
  width: 420px;
  height: 84px;
  background: url(../images/top/bg_txt_alife.png) center center/100% no-repeat;
  mix-blend-mode: multiply;
  margin: -35px auto 0 16.667vw;
}
@media (max-width: 1680px) {
  .policyHead:after {
    margin-top: -2.083vw;
    width: 25vw;
    height: 5vw;
  }
}
@media (max-width: 750px) {
  .policyHead:after {
    margin: -4vw 0 0 -1.6vw;
    width: 46.667vw;
    height: 9.333vw;
  }
}
.policyHead .read_1 {
  margin-left: auto;
  margin-right: 123px;
  width: 440px;
  height: 88px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #2B7AA1;
  position: relative;
  z-index: 3;
}
@media (max-width: 1680px) {
  .policyHead .read_1 {
    margin-right: 7.321vw;
    width: 26.19vw;
    height: 5.238vw;
  }
}
@media (max-width: 750px) {
  .policyHead .read_1 {
    margin: 0;
    width: 72vw;
    height: 16vw;
  }
}
.policyHead .read_2 {
  padding-right: 44px;
  padding-bottom: 45px;
  margin-top: -44px;
  width: 100%;
  height: 168px;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  background: #D14097;
}
@media (max-width: 1680px) {
  .policyHead .read_2 {
    padding-right: 2.619vw;
    padding-bottom: 2.679vw;
    margin-top: -2.619vw;
    height: 10vw;
  }
}
@media (max-width: 750px) {
  .policyHead .read_2 {
    padding-right: 5.867vw;
    padding-bottom: 3.733vw;
    margin-top: -8vw;
    height: 24vw;
  }
}
.policyRead {
  padding-top: 64px;
  padding-left: 14px;
  width: 570px;
  float: left;
}
@media (max-width: 1680px) {
  .policyRead {
    padding-top: 3.81vw;
    padding-left: 0.833vw;
    width: 33.929vw;
  }
}
@media (max-width: 750px) {
  .policyRead {
    padding: 0 8vw;
    margin-top: -5.333vw;
    margin-bottom: 15.467vw;
    width: 100%;
    float: none;
  }
}
.policyRead p {
  font-size: 22px;
  line-height: 1.9;
  font-weight: bold;
  text-indent: 22px;
}
@media (max-width: 1680px) {
  .policyRead p {
    font-size: 1.31vw;
    text-indent: 1.31vw;
  }
}
@media (max-width: 750px) {
  .policyRead p {
    font-size: 5.333vw;
    line-height: 2;
    text-indent: 5.333vw;
    font-weight: 500;
  }
}
.policyRead + .inner {
  clear: both;
}
.policyContainer {
  padding-bottom: 76px;
  position: relative;
  z-index: 3;
}
@media (max-width: 1680px) {
  .policyContainer {
    padding-bottom: 4.524vw;
  }
}
@media (max-width: 750px) {
  .policyContainer {
    padding-bottom: 21.333vw;
  }
}
.policyContainer .p_title {
  margin-bottom: 8px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
  color: #2B7AA1;
}
@media (max-width: 1680px) {
  .policyContainer .p_title {
    margin-bottom: 0.476vw;
    font-size: 1.19vw;
  }
}
@media (max-width: 750px) {
  .policyContainer .p_title {
    display: none;
  }
}
.policyItem {
  background: #FFFFFF;
}
.policyItem a {
  display: block;
  background: url(../images/common/icon_arrow_circle_lightblue2.png) center right 25px/33px no-repeat;
}
@media (max-width: 1680px) {
  .policyItem a {
    background: url(../images/common/icon_arrow_circle_lightblue2.png) center right 1.488vw/1.964vw no-repeat;
  }
}
@media (max-width: 750px) {
  .policyItem a {
    background: url(../images/common/icon_arrow_circle_lightblue2.png) bottom 4.8vw right 4.8vw/6.667vw no-repeat;
  }
}
.policyItem a:before {
  display: inline-block;
  font-size: 50px;
  font-family: "Montserrat", system-ui;
  font-weight: bold;
  color: #D14097;
}
@media (max-width: 1680px) {
  .policyItem a:before {
    font-size: 2.976vw;
  }
}
@media (max-width: 750px) {
  .policyItem a:before {
    display: block;
    font-size: 10.667vw;
    text-align: center;
    margin-bottom: 1.6vw;
  }
}
.policyItem .itemTitle {
  color: #2B7AA1;
  font-size: 31px;
  font-weight: bold;
  line-height: 1.4;
}
@media (max-width: 1680px) {
  .policyItem .itemTitle {
    font-size: 1.845vw;
  }
}
@media (max-width: 750px) {
  .policyItem .itemTitle {
    font-size: 6.4vw;
    font-weight: 500;
    text-align: center;
  }
}
@media (max-width: 750px) {
  .policyItem .itemText {
    padding-left: 40px;
  }
}
.policyItem .itemText p {
  color: #67696F;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.8;
}
@media (max-width: 1680px) {
  .policyItem .itemText p {
    font-size: 1.071vw;
  }
}
@media (max-width: 750px) {
  .policyItem .itemText p {
    font-size: 4vw;
    line-height: 1.9;
    font-weight: 500;
  }
}
.policyContentsBtn_top {
  display: flex;
  justify-content: space-between;
  border-radius: 40px 40px 0 0;
  overflow: hidden;
}
@media (max-width: 1680px) {
  .policyContentsBtn_top {
    border-radius: 2.381vw 2.381vw 0 0;
  }
}
@media (max-width: 750px) {
  .policyContentsBtn_top {
    padding: 0 8vw;
    display: block;
    border-radius: 0;
  }
}
.policyContentsBtn_top .policyItem {
  width: 49.6%;
  height: 260px;
  overflow: hidden;
}
@media (max-width: 1680px) {
  .policyContentsBtn_top .policyItem {
    height: 15.476vw;
  }
}
@media (max-width: 750px) {
  .policyContentsBtn_top .policyItem {
    margin-top: 1.6vw;
    width: 100%;
    height: 66.667vw;
    border-radius: 5.333vw;
  }
}
.policyContentsBtn_top .policyItem .itemTitle {
  margin-bottom: 20px;
}
@media (max-width: 1680px) {
  .policyContentsBtn_top .policyItem .itemTitle {
    margin-bottom: 1.19vw;
  }
}
@media (max-width: 750px) {
  .policyContentsBtn_top .policyItem .itemTitle {
    margin-bottom: 2.667vw;
  }
}
.policyContentsBtn_top .policyItem a {
  padding: 40px 35px 0 35px;
  height: 100%;
}
@media (max-width: 1680px) {
  .policyContentsBtn_top .policyItem a {
    padding: 2.381vw 2.083vw 0 2.083vw;
  }
}
@media (max-width: 750px) {
  .policyContentsBtn_top .policyItem a {
    padding: 4.8vw 0;
  }
}
.policyContentsBtn_top .policyItem a:before {
  height: 184px;
  line-height: 1;
  float: left;
}
@media (max-width: 1680px) {
  .policyContentsBtn_top .policyItem a:before {
    height: 10.952vw;
  }
}
@media (max-width: 750px) {
  .policyContentsBtn_top .policyItem a:before {
    float: none;
    height: auto;
  }
}
.policyContentsBtn_top .policyItem.no1 a:before {
  content: "1";
  margin-right: 30px;
}
@media (max-width: 1680px) {
  .policyContentsBtn_top .policyItem.no1 a:before {
    margin-right: 1.786vw;
  }
}
@media (max-width: 750px) {
  .policyContentsBtn_top .policyItem.no1 a:before {
    margin-right: 0;
  }
}
.policyContentsBtn_top .policyItem.no2 a:before {
  content: "2";
  margin-right: 24px;
}
@media (max-width: 1680px) {
  .policyContentsBtn_top .policyItem.no2 a:before {
    margin-right: 1.429vw;
  }
}
@media (max-width: 750px) {
  .policyContentsBtn_top .policyItem.no2 a:before {
    margin-right: 0;
  }
}
.policyContentsBtn_bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  border-radius: 0 0 40px 40px;
  overflow: hidden;
}
@media (max-width: 1680px) {
  .policyContentsBtn_bottom {
    border-radius: 0 0 2.381vw 2.381vw;
  }
}
@media (max-width: 750px) {
  .policyContentsBtn_bottom {
    padding: 0 8vw;
    margin-top: 0;
    display: block;
    border: 0;
  }
}
.policyContentsBtn_bottom .policyItem {
  margin-top: 9px;
  width: 49.6%;
  height: 5.952vw;
}
@media (max-width: 1680px) {
  .policyContentsBtn_bottom .policyItem {
    margin-top: 0.536vw;
    height: 8.333vw;
  }
}
@media (max-width: 750px) {
  .policyContentsBtn_bottom .policyItem {
    margin-top: 1.6vw;
    width: 100%;
    height: 26.667vw;
    border-radius: 5.333vw;
  }
}
@media (max-width: 750px) {
  .policyContentsBtn_bottom .policyItem .itemTitle {
    text-align: left;
  }
}
.policyContentsBtn_bottom .policyItem a {
  padding: 0 35px;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
}
@media (max-width: 1680px) {
  .policyContentsBtn_bottom .policyItem a {
    padding: 0 2.083vw;
  }
}
@media (max-width: 750px) {
  .policyContentsBtn_bottom .policyItem a {
    padding: 0 4.8vw 0 6.667vw;
    background: url(../images/common/icon_arrow_circle_lightblue2.png) center right 4.8vw/6.667vw no-repeat;
  }
}
.policyContentsBtn_bottom .policyItem a:before {
  margin-right: 19px;
}
@media (max-width: 1680px) {
  .policyContentsBtn_bottom .policyItem a:before {
    margin-right: 1.131vw;
  }
}
@media (max-width: 750px) {
  .policyContentsBtn_bottom .policyItem a:before {
    margin-right: 4vw;
  }
}
.policyContentsBtn_bottom .policyItem.no3 a:before {
  content: "3";
}
.policyContentsBtn_bottom .policyItem.no4 a:before {
  content: "4";
}
.policyContentsBtn_bottom .policyItem.no5 a:before {
  margin-right: 30px;
  content: "5";
}
@media (max-width: 1680px) {
  .policyContentsBtn_bottom .policyItem.no5 a:before {
    margin-right: 1.786vw;
  }
}
@media (max-width: 750px) {
  .policyContentsBtn_bottom .policyItem.no5 a:before {
    margin-right: 4vw;
  }
}
.policyContentsBtn_bottom .policyItem.no6 a:before {
  content: "6";
}
.policyContentsBtn_bottom + .btnLink {
  margin-top: 48px;
}
@media (max-width: 1680px) {
  .policyContentsBtn_bottom + .btnLink {
    margin-top: 2.857vw;
  }
}
@media (max-width: 750px) {
  .policyContentsBtn_bottom + .btnLink {
    margin-top: 12.8vw;
  }
}

/* ----------------------------------------------------
profile
---------------------------------------------------- */
.profile {
  padding: 123px 0;
  background: #FFFFFF;
}
@media (max-width: 1680px) {
  .profile {
    padding: 7.321vw 0;
  }
}
@media (max-width: 750px) {
  .profile {
    padding: 26.667vw 0 55.467vw 0;
  }
}
.profileHamakawa {
  padding-left: 58px;
  margin-bottom: -190px;
  float: right;
  width: calc(100% - 54.167vw);
  height: 190px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: #E0EA5A;
  position: relative;
}
@media (max-width: 1680px) {
  .profileHamakawa {
    padding-left: 3.452vw;
    margin-bottom: -11.31vw;
    height: 11.31vw;
  }
}
@media (max-width: 750px) {
  .profileHamakawa {
    padding: 0;
    margin-bottom: 13.333vw;
    float: none;
    width: 100%;
    height: 48vw;
  }
}
.profileHamakawa:before {
  content: "";
  dsplay: block;
  width: calc(100% - 549px);
  height: 47px;
  background: #6AB1C1;
  margin-left: auto;
  position: absolute;
  right: 0;
  top: -18px;
}
@media (max-width: 1680px) {
  .profileHamakawa:before {
    width: calc(100% - 32.679vw);
    height: 2.798vw;
    top: -1.071vw;
  }
}
@media (max-width: 750px) {
  .profileHamakawa:before {
    width: 56vw;
    height: 6.4vw;
    left: 0;
    right: auto;
    top: 0;
  }
}
.profileHamakawa + .inner {
  clear: both;
}
.profileHamakawa h2 {
  color: #2B7AA1;
  font-size: 29px;
  font-weight: bold;
  font-family: "Montserrat", system-ui;
  position: relative;
  z-index: 2;
}
@media (max-width: 1680px) {
  .profileHamakawa h2 {
    font-size: 1.726vw;
  }
}
@media (max-width: 750px) {
  .profileHamakawa h2 {
    position: absolute;
    right: 0;
    left: 0;
    bottom: -1.333vw;
    font-size: 8.533vw;
    line-height: 1;
    text-align: center;
  }
}
@media (max-width: 750px) {
  .profileHamakawa .text {
    padding-right: 8vw;
    margin-left: auto;
  }
}
.profileHamakawa .text p {
  color: #343740;
  font-size: 16px;
  line-height: 1.9;
  font-family: 'Noto Sans JP', sans-serif;
}
@media (max-width: 1680px) {
  .profileHamakawa .text p {
    font-size: 0.952vw;
  }
}
@media (max-width: 750px) {
  .profileHamakawa .text p {
    font-size: 3.733vw;
    line-height: 1.7;
  }
}
.profileHamakawa .photo {
  line-height: 0;
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 334px;
}
@media (max-width: 1680px) {
  .profileHamakawa .photo {
    left: 19.881vw;
  }
}
@media (max-width: 750px) {
  .profileHamakawa .photo {
    left: -6.933vw;
  }
}
.profileHamakawa .photo img {
  width: 237px;
  height: auto;
}
@media (max-width: 1680px) {
  .profileHamakawa .photo img {
    width: 14.107vw;
  }
}
@media (max-width: 750px) {
  .profileHamakawa .photo img {
    width: auto;
    height: 59.2vw;
  }
}
.profileHead {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 98px;
  height: 240px;
  background: #F19DB5;
  position: relative;
  z-index: 3;
}
@media (max-width: 1680px) {
  .profileHead {
    width: 5.833vw;
    height: 14.286vw;
  }
}
@media (max-width: 750px) {
  .profileHead {
    margin-left: auto;
    margin-right: 16vw;
    width: 16vw;
    height: 48vw;
  }
}
.profileHead:after {
  content: "";
  display: block;
  width: 31px;
  height: 152px;
  background: #E0EA5A;
  position: absolute;
  z-index: 2;
  bottom: -43px;
  left: -15px;
}
@media (max-width: 1680px) {
  .profileHead:after {
    width: 1.845vw;
    height: 9.048vw;
    bottom: -2.56vw;
    left: -0.893vw;
  }
}
@media (max-width: 750px) {
  .profileHead:after {
    width: 5.333vw;
    height: 32vw;
    bottom: -5.333vw;
    left: -2.667vw;
  }
}
.profileHead p {
  color: #FFFFFF;
  font-size: 30px;
  line-height: 1.6;
  font-weight: bold;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}
@media (max-width: 1680px) {
  .profileHead p {
    font-size: 1.786vw;
  }
}
@media (max-width: 750px) {
  .profileHead p {
    font-size: 6.4vw;
    font-weight: 500;
  }
}
.profileContainer {
  clear: both;
}
.profilePhoto {
  line-height: 0;
  position: relative;
  z-index: 1;
}
.profilePhoto figcaption {
  margin-top: 10px;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 14px;
  line-height: 1.4;
}
@media (max-width: 1680px) {
  .profilePhoto figcaption {
    margin-top: 0.595vw;
    font-size: 0.833vw;
  }
}
@media (max-width: 750px) {
  .profilePhoto figcaption {
    padding-left: 18.667vw;
    font-size: 3.2vw;
    line-height: 1.4;
  }
}
.profileItem h3 {
  margin-bottom: 27px;
  font-size: 24px;
  font-weight: bold;
}
@media (max-width: 1680px) {
  .profileItem h3 {
    margin-bottom: 1.607vw;
    font-size: 1.429vw;
  }
}
@media (max-width: 750px) {
  .profileItem h3 {
    margin-bottom: 4.533vw;
    font-size: 4.8vw;
  }
}
.profileItem h3 span {
  padding: 3px 24px;
  display: inline-block;
}
@media (max-width: 1680px) {
  .profileItem h3 span {
    padding: 0.179vw 1.429vw;
  }
}
@media (max-width: 750px) {
  .profileItem h3 span {
    padding: 1.333vw 0;
    width: 100%;
    text-align: center;
  }
}
.profileItem p {
  font-size: 18px;
  line-height: 2;
  text-indent: 18px;
}
@media (max-width: 1680px) {
  .profileItem p {
    font-size: 1.071vw;
    text-indent: 1.071vw;
  }
}
@media (max-width: 750px) {
  .profileItem p {
    font-size: 4vw;
    text-indent: 4vw;
  }
}
.profile .episodeMoreContainer {
  padding-top: 165px;
  display: none;
}
@media (max-width: 1680px) {
  .profile .episodeMoreContainer {
    padding-top: 9.821vw;
  }
}
@media (max-width: 750px) {
  .profile .episodeMoreContainer {
    padding-top: 48vw;
  }
}
.profileBlock + .profileBlock {
  margin-top: 165px;
}
@media (max-width: 1680px) {
  .profileBlock + .profileBlock {
    margin-top: 9.821vw;
  }
}
@media (max-width: 750px) {
  .profileBlock + .profileBlock {
    margin-top: 48vw;
  }
}
.profileBlock .episodeMoreBtn {
  padding: 0 29px 0 36px;
  margin: 30px 0 0 auto;
  width: 320px;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: 100vw;
  font-size: 18px;
  font-weight: bold;
  color: #FFFFFF;
  background: #F19DB5;
  cursor: pointer;
  transition: 0.2s ease-in-out;
}
.profileBlock .episodeMoreBtn:hover {
  opacity: 0.6;
}
.profileBlock .episodeMoreBtn:after {
  content: "";
  display: inline-block;
  background: url(../images/common/icon_arrow_circle_pink2.png) center center/100% no-repeat;
  width: 25px;
  height: 25px;
  transform: rotate(180deg);
}
@media (max-width: 1680px) {
  .profileBlock .episodeMoreBtn:after {
    width: 1.488vw;
    height: 1.488vw;
  }
}
@media (max-width: 750px) {
  .profileBlock .episodeMoreBtn:after {
    width: 6.667vw;
    height: 6.667vw;
  }
}
.profileBlock .episodeMoreBtn.open:after {
  transform: rotate(0deg);
}
@media (max-width: 1680px) {
  .profileBlock .episodeMoreBtn {
    padding: 0 1.726vw 0 2.143vw;
    margin-top: 1.786vw;
    width: 19.048vw;
    height: 4.167vw;
    font-size: 1.071vw;
  }
}
@media (max-width: 750px) {
  .profileBlock .episodeMoreBtn {
    padding: 0 5.867vw 0 6.933vw;
    margin: 13.333vw auto 0 auto;
    width: 74.667vw;
    height: 16vw;
    font-size: 4.267vw;
    font-weight: 500;
  }
}
.profileBlock.c_1 {
  padding-right: 100px;
}
@media (max-width: 1680px) {
  .profileBlock.c_1 {
    padding-right: 5.952vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_1 {
    padding-right: 0;
  }
}
.profileBlock.c_1 .profilePhoto {
  margin-top: -118px;
  float: left;
}
@media (max-width: 1680px) {
  .profileBlock.c_1 .profilePhoto {
    margin-top: -7.024vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_1 .profilePhoto {
    margin-top: -48vw;
  }
}
.profileBlock.c_1 .profilePhoto img {
  width: 446px;
  height: auto;
}
@media (max-width: 1680px) {
  .profileBlock.c_1 .profilePhoto img {
    width: 26.548vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_1 .profilePhoto img {
    width: 74.667vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_1 .profilePhoto figcaption {
    margin-bottom: 3.733vw;
  }
}
.profileBlock.c_1 .profileItem {
  padding: 40px 40px 50px 0;
  margin-left: auto;
  width: 740px;
  border: 2px solid #F19DB5;
  border-radius: 40px 100px 40px 40px;
}
@media (max-width: 1680px) {
  .profileBlock.c_1 .profileItem {
    padding: 2.381vw 2.381vw 2.976vw 0;
    width: 44.048vw;
    border-radius: 2.381vw 5.952vw 2.381vw 2.381vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_1 .profileItem {
    padding: 0 0 8.533vw 0;
    margin: 0 8vw;
    width: auto;
    border-radius: 8vw 16vw 8vw 8vw;
  }
}
.profileBlock.c_1 .profileItem h3 span {
  background: #F19DB5;
}
.profileBlock.c_1 .itemInner {
  margin-left: auto;
  width: 526px;
}
@media (max-width: 1680px) {
  .profileBlock.c_1 .itemInner {
    width: 31.31vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_1 .itemInner {
    margin: 0 auto;
    width: 68vw;
  }
}
.profileBlock.c_1 .btnLink {
  margin-right: 0;
}
@media (max-width: 750px) {
  .profileBlock.c_1 .btnLink {
    margin: 13.333vw auto 0 auto;
  }
}
.profileBlock.c_2 {
  padding-left: 100px;
}
@media (max-width: 1680px) {
  .profileBlock.c_2 {
    padding-left: 5.952vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_2 {
    padding-left: 0;
  }
}
.profileBlock.c_2 .profilePhoto {
  margin-top: -50px;
  float: right;
}
@media (max-width: 1680px) {
  .profileBlock.c_2 .profilePhoto {
    margin-top: -2.976vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_2 .profilePhoto {
    margin-top: -32.533vw;
  }
}
.profileBlock.c_2 .profilePhoto img {
  width: 400px;
  height: auto;
}
@media (max-width: 1680px) {
  .profileBlock.c_2 .profilePhoto img {
    width: 23.81vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_2 .profilePhoto img {
    width: 69.333vw;
  }
}
.profileBlock.c_2 .profilePhoto figcaption {
  text-align: right;
}
@media (max-width: 750px) {
  .profileBlock.c_2 .profilePhoto figcaption {
    padding-left: 0;
    margin-bottom: 6.4vw;
    text-align: left;
  }
}
.profileBlock.c_2 .profileItem {
  padding: 70px 0 50px 36px;
  margin-right: auto;
  width: 750px;
  border: 2px solid #6AB1C1;
  border-radius: 100px 40px 40px 40px;
}
@media (max-width: 1680px) {
  .profileBlock.c_2 .profileItem {
    padding: 4.167vw 0 2.976vw 2.143vw;
    width: 44.643vw;
    border-radius: 5.952vw 2.381vw 2.381vw 2.381vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_2 .profileItem {
    padding: 0 0 8vw 0;
    margin: 0 8vw;
    width: auto;
    border-radius: 16vw 8vw 8vw 8vw;
  }
}
.profileBlock.c_2 .profileItem h3 span {
  background: #6AB1C1;
}
.profileBlock.c_2 .itemInner {
  width: 594px;
}
@media (max-width: 1680px) {
  .profileBlock.c_2 .itemInner {
    width: 35.357vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_2 .itemInner {
    margin: 0 auto;
    width: 68vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_3 {
    margin-top: 91.733vw;
  }
}
.profileBlock.c_3 .profilePhoto {
  margin-top: -73px;
  float: left;
}
@media (max-width: 1680px) {
  .profileBlock.c_3 .profilePhoto {
    margin-top: -4.345vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_3 .profilePhoto {
    margin-top: -78.4vw;
  }
}
.profileBlock.c_3 .profilePhoto img {
  width: 353px;
  height: auto;
}
@media (max-width: 1680px) {
  .profileBlock.c_3 .profilePhoto img {
    width: 21.012vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_3 .profilePhoto img {
    width: 66.667vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_3 .profilePhoto figcaption {
    margin-bottom: 5.333vw;
  }
}
.profileBlock.c_3 .profileItem {
  padding: 70px 50px 50px 0;
  margin-left: auto;
  width: 938px;
  border: 2px solid #E0EA5A;
  border-radius: 40px 100px 40px 40px;
}
@media (max-width: 1680px) {
  .profileBlock.c_3 .profileItem {
    padding: 4.167vw 2.976vw 2.976vw 0;
    width: 55.833vw;
    border-radius: 2.381vw 5.952vw 2.381vw 2.381vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_3 .profileItem {
    padding: 0 0 8vw 0;
    margin: 0 8vw;
    width: auto;
    border-radius: 8vw 16vw 8vw 8vw;
  }
}
.profileBlock.c_3 .profileItem h3 span {
  background: #E0EA5A;
}
.profileBlock.c_3 .itemInner {
  margin-left: auto;
  width: 720px;
}
@media (max-width: 1680px) {
  .profileBlock.c_3 .itemInner {
    width: 42.857vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_3 .itemInner {
    margin: 0 auto;
    width: 68vw;
  }
}
.profileBlock.c_4 {
  padding-left: 100px;
  margin-top: 128px;
}
@media (max-width: 1680px) {
  .profileBlock.c_4 {
    padding-left: 5.952vw;
    margin-top: 7.619vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_4 {
    padding-left: 0;
    margin-top: 45.867vw;
  }
}
.profileBlock.c_4 .profilePhoto {
  margin-top: -46px;
  float: right;
}
@media (max-width: 1680px) {
  .profileBlock.c_4 .profilePhoto {
    margin-top: -2.738vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_4 .profilePhoto {
    margin-top: -32.533vw;
  }
}
.profileBlock.c_4 .profilePhoto img {
  width: 400px;
  height: auto;
}
@media (max-width: 1680px) {
  .profileBlock.c_4 .profilePhoto img {
    width: 23.81vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_4 .profilePhoto img {
    width: 69.333vw;
  }
}
.profileBlock.c_4 .profilePhoto figcaption {
  text-align: right;
}
@media (max-width: 750px) {
  .profileBlock.c_4 .profilePhoto figcaption {
    padding-left: 0;
    margin-bottom: 20px;
    text-align: left;
  }
}
.profileBlock.c_4 .profileItem {
  padding: 75px 0 50px 46px;
  margin-right: auto;
  width: 750px;
  border: 2px solid #F19DB5;
  border-radius: 100px 40px 40px 40px;
}
@media (max-width: 1680px) {
  .profileBlock.c_4 .profileItem {
    padding: 4.464vw 0 2.976vw 2.738vw;
    width: 44.643vw;
    border-radius: 5.952vw 2.381vw 2.381vw 2.381vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_4 .profileItem {
    padding: 0 0 8vw 0;
    margin: 0 8vw;
    width: auto;
    border-radius: 8vw 16vw 8vw 8vw;
  }
}
.profileBlock.c_4 .profileItem h3 span {
  background: #F19DB5;
}
.profileBlock.c_4 .itemInner {
  width: 594px;
}
@media (max-width: 1680px) {
  .profileBlock.c_4 .itemInner {
    width: 35.357vw;
  }
}
@media (max-width: 750px) {
  .profileBlock.c_4 .itemInner {
    margin: 0 auto;
    width: 68vw;
  }
}

/* ----------------------------------------------------
youtube
---------------------------------------------------- */
.youtubeContainer {
  margin: 0 auto 50px auto;
  width: 700px;
}
@media (max-width: 1680px) {
  .youtubeContainer {
    margin-bottom: 3.472vw;
    width: 48.611vw;
  }
}
@media (max-width: 750px) {
  .youtubeContainer {
    margin-bottom: 13.333vw;
    width: 100%;
  }
}
.youtubeItem {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtubeItem iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
