/*
 * link-icon
 * ----------------------------------------------------------------------------
 *
 */
.link-icon {
  display: flex;
  margin-top: var(--space-size-20);
  color: var(--ion-link-text-color);
  font-size: var(--font-size-14);
  font-family: var(--hiragino-font-3);
  line-height: 16px;
  text-align: left;
}

.link-icon ion-icon {
  flex-shrink: 0;
  font-size: var(--font-size-20);
  vertical-align: bottom;
}

.link-icon a {
  cursor: pointer;
}

.link-icon a:link {
  text-decoration: none;
}

.link-icon a:visited {
  color: var(--ion-link-visited-text-color);
}

.link-icon a:visited ion-icon {
  color: var(--ion-link-visited-text-color);
}

.link-icon a:hover {
  text-decoration: underline;
}

.link-icon[linkMiddle],
[linkMiddle] {
  justify-content: center;
}

.link-icon[linkRight],
[linkRight] {
  justify-content: flex-end;
}

/* link-iconのmargin-top制御（デフォルトPC20,SP20） */
/* リンクが箇条書きに入れ子になる場合、margin-top:PC4,SP4とする。さらに以降の箇条書きとの間隔を確保するためmargin-bottom:10pxを付与する。 */
.list-text-dot .link-icon,
.list-text-asterisk .link-icon {
  margin-top: var(--space-size-4);
  margin-bottom: var(--space-size-10);
}

/*
 * link-img-right
 * ----------------------------------------------------------------------------
 *
 */
.link-img-right {
  display: flex;
  margin-top: var(--space-size-20);
  color: var(--ion-link-text-color);
  font-size: var(--font-size-14);
  font-family: var(--hiragino-font-3);
  text-align: left;
}

.link-img-right img {
  flex-shrink: 0;
  height: 16px;
  margin-left: var(--space-size-4);
}

.link-img-right a:link {
  text-decoration: none;
  pointer-events: auto;
}

.link-img-right a:visited {
  color: var(--ion-link-visited-text-color);
}

.link-img-right a:hover {
  text-decoration: underline;
}

.link-img-right[linkMiddle],
[linkMiddle] {
  justify-content: center;
}

.link-img-right[linkRight],
[linkRight] {
  justify-content: flex-end;
}

/* link-img-rightのmargin-top制御（デフォルトPC20,SP20）*/
/*  リンクが箇条書きに入れ子になる場合、margin-top:PC4,SP4とする。さらに以降の箇条書きとの間隔を確保するためmargin-bottom:10pxを付与する。*/
.list-text-dot .link-img-right,
.list-text-asterisk .link-img-right {
  margin-top: var(--space-size-4);
  margin-bottom: var(--space-size-10);
}

/*
 *  text-link-middle *
 * ----------------------------------------------------------------------------
 *
 */
.text-link-middle {
  color: var(--ion-link-text-color);
  font-size: var(--font-size-14);
  font-family: var(--hiragino-font-3);
  cursor: pointer;
}

.text-link-front {
  color: var(--ion-link-text-color);
  text-decoration: none;
}

.text-link-front:hover {
  text-decoration: underline;
}

.text-link-front:visited {
  color: var(--ion-link-visited-text-color);
}

.text-link-middle img {
  flex-shrink: 0;
  height: 16px;
  margin: 0 var(--space-size-4);
}

.text-link-middle a:link {
  text-decoration: none;
}

.text-link-middle a:visited {
  color: var(--ion-link-visited-text-color);
}

.text-link-middle a:hover {
  text-decoration: underline;
}

.text-link-middle > a[href^='tel:'] {
  color: var(--ion-link-text-color);
  pointer-events: auto;
}

.text-inline-block {
  display: inline-block;
}

/*
 * image-link-syorui-box
 * ----------------------------------------------------------------------------
 *
 */
.image-link-syorui-box {
  margin-top: var(--space-size-20);
  padding: 0;
  background: var(--ion-image-link-box-without-bg-color);
}

/*
 * image-link-box
 * ----------------------------------------------------------------------------
 *
 */
.image-link-syorui-box .lineup {
  display: flex;
  justify-content: center;
  margin-top: 10px;
}

.image-link-syorui-box .image-link {
 
 margin-top: var(--space-size-10);
}

.image-link {
  flex: 1;
  max-width: 187px;
  cursor: pointer;
}
 
.image-link:hover .text-center-syorui {
  text-decoration: underline;
}


.image-link:not(:first-child) {
  margin-left: var(--space-size-10);
}

.movie-link-icon {
  display: flex;
  margin-top: var(--space-size-12);
  margin-bottom: var(--space-size-25);
  color: var(--ion-default-text-color);
  font-size: var(--font-size-14);
  font-family: var(--hiragino-font-3);
  line-height: 18px;
  text-align: left;
}

.movie-link-icon span {
  font-weight: bold;
}

.movie-link-icon a:hover {
  text-decoration: underline;
}

.image-link .image-link-one-line {
  display: flex;
  align-items: center;
  height: 116px;
  padding: var(--space-size-8);
}

.image-link-one-line img {
  max-height: 100%;
}

.image-link ion-item .vertical-layout {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
}

.vertical-layout {
  height: initial;
}

.vertical-layout > .horizontal-layout {
  left: initial;
}

.vertical-layout > .horizontal-layout > .text-center-syorui {
  display: flex;
  align-items: center;
  font-size: var(--font-size-12);
  text-decoration: none;
  height: 20px;
  font-weight: 700;
  font-family: var(--hiragino-font-6);
}

.vertical-layout > .horizontal-layout > .text-center-syorui:hover {
  text-decoration: underline;
}

.image-link .list-text-asterisk > ul li {
  position: relative;
  list-style-type: none;
}

/* movie-image-link */
.movie-image-link {
  margin-top: 20px;
  max-width: 386px;
  background: var(--ion-image-link-bg-color);
  border-radius: 12px;
  box-shadow: 0 2px 4px 0 var(--ion-color-custom-black-opacity);
  cursor: pointer;
}

.movie-image-link-width {
  max-width: 1080px;
}

.movie-image-link > .vertical-layout {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
  height: 232px;
}

.text-two-line {
  height: var(--space-size-40) !important;
  white-space: nowrap;
}

.list-text-index-wrapper .list-text-index {
  margin-top: var(--space-size-10);
}