@charset "Shift_JIS";
/** ***************************************
 * 個人認証関連（m2z1）画面ごとの固有スタイル定義
 * 個人認証領域の画面ごとの固有のスタイルを定義
 */
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

/**
 * SubscriptionFlowブロック
 * マイページ利用申し込みフロー
 */
.SubscriptionFlow {
  padding: 25px;
  font-size: 1.142rem;
  text-align: center;
}

.SubscriptionFlow:first-child {
  margin-top: 35px;
}

@media screen and (max-width: 768px) {
  .SubscriptionFlow {
    margin-top: 15px;
    padding: 15px;
    font-size: 1.083rem;
  }
}

.SubscriptionFlow__button {
  margin: 10px auto 20px;
  width: 360px;
}

@media screen and (max-width: 768px) {
  .SubscriptionFlow__button {
    width: 100%;
    font-size: 2rem;
  }
}

/**
 * EnqueteBlockブロック
 *
 */
.EnqueteBlock {
  margin-bottom: 70px;
  padding: 25px 65px;
  font-size: 1.142rem;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .EnqueteBlock {
    margin-bottom: 50px;
    padding: 20px 15px;
  }
}

.EnqueteBlock__title {
  margin-top: 0;
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 1.142rem;
}

@media screen and (max-width: 768px) {
  .EnqueteBlock__title {
    font-size: 1.166rem;
  }
}

.EnqueteBlock__text {
  margin-top: 0;
}

@media screen and (max-width: 768px) {
  .EnqueteBlock__text {
    font-size: 1.166rem;
  }
}

/**
 * MessageChara ブロック
 *
 */
.MessageChara {
  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;
}

@media screen and (max-width: 768px) {
  .MessageChara {
    display: block;
  }
}

@media screen and (max-width: 768px) {
  .MessageChara__message {
    color: #666;
  }
}

.MessageChara__image {
  margin-right: 20px;
}

.MessageChara__image img {
  width: 126px;
}

@media screen and (max-width: 768px) {
  .MessageChara__image {
    display: none;
  }
}



/*アコーディオンPC・SP*/
.AccordionPC__contents {
    cursor: pointer;
    margin-top: 30px;
    border: 1px solid #ebebeb;
    border-radius: 5px;
    -webkit-box-shadow: inset 0 -2px 0 #ebebeb;
    box-shadow: inset 0 -2px 0 #ebebeb;
    background-color: #fcfcfc;
}

.AccordionPC__contents .AccordionPC-active {
    background-color: transparent;
}

.AccordionPC--active .AccordionPC__title {
    margin: 0 !important;
    border-bottom: 1px solid #ebebeb;
    border-radius: 5px 5px 0 0;
    background-color: #fcfcfc;
}

.AccordionPC--active .AccordionPC__title::before {
    background: url("../images/join/icon-accordion_close.svg") no-repeat 0 0;
    background-position: center;
}

@media screen and (min-width: 769px) {
    .AccordionPC--active .AccordionPC__inner {
        display: block;
        padding: 20px 10px;
    }
}

.AccordionPC__inner {
    display: none;
    background-color: #fff;
}

.AccordionPC__inner > .Heading:first-child {
    margin-top: 0;
}

.AccordionPC__title {
    margin-top: 50px !important;
    margin-bottom: 20px !important;
    font-size: 1.285rem;
    text-align: center;
}

.AccordionPC__title {
    margin: 0 !important;
    padding: 20px 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.083rem;
    text-align: left;
    color: #000;
}

.AccordionPC__title::before {
    content: '';
    margin-right: 10px;
    display: block;
    width: 15px;
    height: 15px;
    background: url("../images/join/icon-accordion_open.svg") no-repeat 0 0;
    background-position: center;
}

/**
 * サービス停止案内表示エリア用
 * htmlはバッチで生成しているのでセレクタ名はルールに沿っていない
 */
#m1_infoMsgArea {
  padding: 4px;
  background: url(../images/common/border-topics.png) repeat 0 0;
  border-radius: 2px;
  list-style: none;
  margin-left: 0;
}

#m1_infoMsgArea li {
  margin: 0;
  padding: 20px 25px;
  background-color: #fff;
  font-size: 1.142rem;
  font-weight: bold;
  color: #000;
}

@media screen and (max-width: 768px) {
  #m1_infoMsgArea li {
    padding: 15px 10px;
    font-size: 1rem;
    text-align: left;
  }
}

/**
 * Page2Z1113 ブロック
 *
 */
@media screen and (min-width: 769px) {
  .Page2Z1113 .Box__instruction {
    font-size: 1.543rem;
  }

  .Page2Z1113 .AttentionBlock__inner {
    font-size: 1.37rem;
  }

  .Page2Z1113 .ErrorDialog__list,
  .Page2Z1113 .Notes--kome,
  .Page2Z1113 .AccordionPC__inner {
    font-size: 1.2rem;
  }

  .Page2Z1113 .Step__title {
    font-size: 2.056rem;
  }

  .Page2Z1113 .InputForm__leadtext,
  .Page2Z1113 .InputForm__label {
    font-size: 1.37rem;
  }

  .Page2Z1113 .RadioButton--card + label .RadioButton__title {
    font-size: 1.713rem;
  }

  .Page2Z1113 .AccordionPC__title {
    font-size: 1.299rem;
  }

  .Page2Z1113 .Agreement__inner {
    height: 380px;
  }

  .Page2Z1113 .AgreementPC__inner {
    height: auto;
  }
}

@media screen and (max-width: 768px) {
  .Page2Z1113 .Box__instruction {
    font-size: 1.3rem;
  }

  .Page2Z1113 .AttentionBlock__inner {
    font-size: 1.2rem;
  }

  .Page2Z1113 .ErrorDialog__list,
  .Page2Z1113 .Notes--kome {
    font-size: 1.2rem;
  }

  .Page2Z1113 .Step__title {
    font-size: 1.6rem;
  }

  .Page2Z1113 .InputForm__leadtext,
  .Page2Z1113 .InputForm__label {
    font-size: 1.3rem;
  }

  .Page2Z1113 .RadioButton--card + label .RadioButton__title {
    font-size: 1.713rem;
  }

  .Page2Z1113 .AccordionSP__title {
    font-size: 1.3rem;
  }

  .Page2Z1113 .AccordionSP__inner {
    font-size: 1.2rem;
  }

  .SupportDesc__title span {
    font-size: 1.066rem;
  }

  .Page2Z1113 .SupportDesk__free-dial {
    font-size: 1.5em;
  }

  .Page2Z1113 .SupportDesk__time {
    font-size: 0.6em;
  }

}

/**
 * Page2Z1351 ブロック
 *
 */
.Page2Z1351 .MailingEndNotice__check {
    width: 100%;
    margin-top: 30px;
    margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
    .Page2Z1351 .MailingEndNotice__check {
        margin-top: 24px;
    }
}

.Page2Z1351 .Heading--caution {
    background-color: yellow;
    font-size: 1em;
    color: #e60000;
}

@media screen and (max-width: 768px) {
  .Page2Z1351 .ActionArea {
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

/**
 * Page2Z1402 ブロック
 *
 */
.Page2Z1402 .InputForm--suspendnotice {
  margin-top: 0;
  width: 800px;
}

@media screen and (max-width: 768px) {
  .Page2Z1402 .InputForm--suspendnotice {
    width: 100%;
  }
}

.Page2Z1402 .SuspendNotice__heading {
    font-weight: normal;
    font-size: 1.714rem;
    text-align: center;
    margin-top: 0;
}
@media screen and (max-width: 768px) {
  .Page2Z1402 .SuspendNotice__heading {
    font-size: 1.333rem;
  }
}

.Page2Z1402 .SuspendNotice__contractlist-button {
    font-size: 1.714rem;
    min-height: 58px;
    margin: 0 10px;
    padding: 13px 8px 8px;
    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-weight: bold;
    line-height: 1;
}
@media screen and (max-width: 768px) {
    .Page2Z1402 .SuspendNotice__contractlist-button {
        width: 100%;
        margin: 0;
        font-size: 1.428rem;
    }
}

.Page2Z1402 .SuspendNotice__item {
    margin-left: 1em;
    text-indent: -1em;
}

.Page2Z1402 .SuspendNotice__check {
    width: 100%;
    margin-top: 30px;
    margin-bottom: 5px;
}

.Page2Z1402 .InquiryForm {
  margin-top: 45px;
  margin-buttom: 30px;
}

.Page2Z1402 .InquiryForm p {
  margin: 0;
  font-size: 1.286rem;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .Page2Z1402 .InquiryForm {
    margin-top: 20px;
    margin-buttom: 17px;
  }

  .Page2Z1402 .InquiryForm p {
    font-size: 1.083rem;
    text-align: left;
  }
}

/**
 * Page2Z1506 ブロック
 *
 */
.Page2Z1506 .InputForm {
  width: 900px;
}

@media screen and (max-width: 768px) {
  .Page2Z1506 .InputForm {
    margin: 20px auto 0;
    width: 100%;
  }
}

/*アコーディオンPC・SP*/
.Page2Z1506 .AccordionPC__contents {
    border: none;
}
.Page2Z1506 .AccordionSP__contents {
    border: none;
}

@media screen and (max-width: 768px) {
  .Button_font_size_himodsuke {
    font-size:0.6em;
  }
}

/**
 * Klsブロック
 * こくみんLifeサポートの表示ブロックのセット
 */
.Kls__text {
  font-size:1.1em;
  text-align: left;
}

.Kls__caption {
  margin: 1em;
  text-align: center;
  font-weight: bold;
  font-size: 1.2em;
  color: #094;
}

/**
 * 組合員検索/申込検索リンクブロック
 */
.Nav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  list-style: none;
}
 
.Nav__item {
  flex-grow: 1;
}

.Nav__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 50px;
  border-radius: 20px 20px 0px 0px;
  background-color: #094;
  color: #fff;
  font-size: 1.714rem;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
}

.Nav__label {
  margin-top: 6px;
}

.Nav__link:not(.Nav__link--current) {
  background-color: #99BEAA;
}

/**
 * Page2Z1804 ブロック
 *
 */
.moshikomiTable {
  border-collapse: collapse;
  width: 100%;
}

.moshikomiTable thead th {
  border-bottom: solid white 5px;
}

.moshikomiTable th,
.moshikomiTable td {
  text-align: center;
  padding: 5px;
  border: solid white 2px;
}

.moshikomiTable th {
  height: 35px;
  color: #fff;
  font-weight: normal;
  background: #70ad47;
}

.moshikomiTable td {
  background: #d5e3cf;
}

.moshikomiTable__address {
  text-align: left;
}

.moshikomiTable__cell--column1 {
  width: 100px;
}

.moshikomiTable__cell--column2 {
  width: 110px;
}

.moshikomiTable__cell--column3 {
  width: 125px;
}

.moshikomiTable__cell--column4 {
  width: 125px;
}

.moshikomiTable__cell--column5 {
  width: 120px;
}

.moshikomiTable__cell--column6 {
  width: 135px;
}

.moshikomiTable__cell--column7 {
  width: 175px;
}

.searchResults {
  display: flex;
  gap: 20px;
  flex-direction: column;
}

.uketsukeTime {
  width: 95px
}

.ActionArea--moshikomi {
  margin-top: 38px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 10px 0px;
}

.calendar-input--withicon {
  width: 310px;
  background-image: url(../images/common/icon-button-calendar_g.svg);
  background-size:35px 35px;
  background-position:8px 50% !important;
  background-repeat: no-repeat;
  background-position: 2px center;
  padding-left: 50px !important;
}

@media screen and (max-width: 768px) {
  .calendar-input--withicon {
    width: 100%;
  }
}

/**
 * CalendarInputブロック
 *
 */
.CalendarInput {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .CalendarInput {
    width: 100%;
  }
}
.CalendarInput .CalendarInput__icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.CalendarInput .CalendarInput__input {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
    .CalendarInput .CalendarInput__input {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      width: 100%;
    }
}
.CalendarInput .calendarIconButton {
    margin-right: 4px;
    width: 40px;
    height: 40px;
    color: #aaaaaa;
    background-color: #333333;
    background-image: url(../images/common/icon-button-calendar.svg);
    background-position: center;
    background-repeat: no-repeat;
    border: solid 3px #333333;
    border-radius: 5px;
    transition: 0.3s;
    align-self: center;
}