@charset "UTF-8";
a {
  color: #010101;
}
a:hover {
  color: #BF001A;
}

.btn--main {
  background: #010101;
  color: #ffffff;
}
.btn--main.special {
  border-radius: 50em;
  background-color: #800011;
}
.btn--main:hover {
  background: #BF001A;
}

.btn--sub {
  background: transparent;
  color: #010101;
}
.btn--sub:hover {
  background: #BF001A;
  color: #ffffff;
}

.detail__btn a::before {
  border-color: #000000;
}

.btn--chevron {
  color: #010101;
}
.btn--chevron::after {
  border-color: #010101;
}
.btn--chevron:hover {
  color: #BF001A;
}
.btn--chevron:hover::after {
  border-color: #BF001A;
}

.btn--chevron-left {
  color: #010101;
}
.btn--chevron-left::after {
  border-color: #010101;
}
.btn--chevron-left:hover {
  color: #BF001A;
}
.btn--chevron-left:hover::after {
  border-color: #BF001A;
}

.page--mypage .wrap > section {
  overflow: hidden;
}
.page--mypage .logo {
  display: none;
}

header {
  padding: 2em 5% 0;
}
header h1 {
  position: relative;
  width: 15vw;
  max-width: 200px;
  margin: 3em auto 1em;
}
header h1 svg {
  fill: #000000;
}

.section--login {
  padding-top: 0;
}

.block--attention {
  padding: 20px;
  border: solid 1px;
  border-radius: 6px;
  font-size: 14px;
}

footer {
  position: relative;
}
footer .block--link {
  margin-top: 4em;
}
footer .block--link .list--link {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: baseline;
}
footer .block--link .list--link li {
  margin-right: 1em;
}
footer .block--link .list--link li:last-of-type {
  margin-right: 0;
}
footer .block--link .list--link li a {
  position: relative;
  color: #010101;
  font-family: "Segoe UI", SegoeUI, "Microsoft YaHei", 微软雅黑, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0em;
  font-size: 11px;
  letter-spacing: 0.1em;
}
footer .block--link .list--link li a::after {
  display: none;
}
footer .block--link .list--link.link--permission li a {
  display: block;
  font-size: 11px;
  text-decoration: underline;
}
footer .block--link .list--link.link--permission li.link--icon {
  width: 3em;
}
footer .block--link .list--link.link--permission li.link--icon img {
  width: 100%;
}

.ph, .thumb {
  position: relative;
  line-height: 0;
}
.ph img, .thumb img {
  width: 100%;
}
.ph::after, .thumb::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: url(/static/common/global-image/dummy.gif);
  background-size: cover;
}
.ph .dummy, .thumb .dummy {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.block--firstlogin .login--attention {
  padding: 20px;
  border: solid 2px #cc0000;
  background: #ffdada;
  font-size: 13px;
}
.block--firstlogin .login--attention .txt--basic {
  display: inline-block;
  margin: 0 0 0.8em;
  border-bottom: solid 1px;
}
.block--firstlogin .login--attention b {
  color: #cc0000;
}
.block--firstlogin .login--attention a {
  color: #333333;
}
.block--firstlogin .login--attention .btn--firstlogin {
  margin: 6% auto 9%;
}
.block--firstlogin .login--attention .btn--firstlogin a {
  position: relative;
  border-bottom: solid 2px #cc0000;
  font-weight: bold;
  transition: color 0.3s;
}
.block--firstlogin .login--attention .btn--firstlogin a::before {
  content: "";
  display: inline-block;
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #333333;
  transform-origin: right center;
  transform: scaleX(1);
  transition: transform 0.4s;
}
.block--firstlogin .login--attention .btn--firstlogin a:hover {
  color: #000000;
}
.block--firstlogin .login--attention .btn--firstlogin a:hover::before {
  transform: scaleX(0);
}

.section--oshimen {
  width: 80%;
  margin: 0 auto 3em;
}
.section--oshimen .section--oshimen__inner {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  position: relative;
  left: -6%;
  padding: 2em 0;
  border-radius: 10px;
  background-color: #ffffff;
}
.section--oshimen .block--heading {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  position: relative;
  left: 6%;
  writing-mode: vertical-rl;
  text-orientation: sideways;
}
.section--oshimen .block--heading .block--name .name--main {
  color: #414141;
  font-family: "Segoe UI", SegoeUI, "Microsoft YaHei", 微软雅黑, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 0.02em;
  font-size: 24px;
  line-height: 1;
}
.section--oshimen .block--heading .block--duration {
  color: #414141;
  font-family: "Segoe UI", SegoeUI, "Microsoft YaHei", 微软雅黑, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.02em;
  font-size: 12px;
  line-height: 1;
}
.section--oshimen .block--heading .block--duration::before {
  content: "";
  display: inline-block;
  position: relative;
  width: 1px;
  height: 3em;
  margin-top: 0.8em;
  margin-bottom: 0.8em;
  background-color: #B1B1B1;
  vertical-align: middle;
}
.section--oshimen .block--heading .block--duration .duration {
  margin-left: 0.2em;
  font-family: "Segoe UI", SegoeUI, "Microsoft YaHei", 微软雅黑, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 0em;
}
.section--oshimen .block--oshimen__detail {
  position: relative;
  right: -12%;
  width: 95%;
  margin-top: 2em;
}
.section--oshimen .block--oshimen__detail .block--photo__oshimen {
  margin-bottom: 1em;
}
.section--oshimen .block--oshimen__detail .block--logo {
  position: absolute;
  top: -2.1em;
  right: -1em;
  width: clamp(85px, 28%, 100px);
}
.section--oshimen .block--oshimen__detail .block--comment {
  color: #010101;
  font-family: "Segoe UI", SegoeUI, "Microsoft YaHei", 微软雅黑, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 0em;
  font-size: 13px;
  line-height: 1.56;
}
.section--oshimen .block--oshimen__detail .block--comment .heading--comment {
  margin-top: 0.2em;
  color: #9F9F9F;
  font-family: "Segoe UI", SegoeUI, "Microsoft YaHei", 微软雅黑, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 0.02em;
  font-size: 11px;
}

@media screen and (min-width: 1px) and (max-width: 768px) {
  .page--mypage .wrap > header {
    padding-top: 0;
  }
  .page--mypage .wrap > section {
    padding-top: 0;
  }
  .section--oshimen {
    width: 100%;
    margin: 0 auto 3em;
  }
  .section--oshimen .section--oshimen__inner {
    left: -6%;
    padding: 2em 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: 0;
  }
  .section--oshimen .block--heading {
    left: 6%;
  }
  .section--oshimen .block--heading .block--name .name--main {
    font-size: 19px;
  }
  .section--oshimen .block--heading .block--duration {
    font-size: 11px;
  }
  .section--oshimen .block--heading .block--duration::before {
    height: 3em;
    margin-top: 0.8em;
    margin-bottom: 0.8em;
  }
  .section--oshimen .block--heading .block--duration .duration {
    margin-left: 0.2em;
  }
  .section--oshimen .block--oshimen__detail {
    right: -12%;
    width: 95%;
    margin-top: 2em;
  }
  .section--oshimen .block--oshimen__detail .block--photo__oshimen {
    margin-bottom: 0.4em;
  }
  .section--oshimen .block--oshimen__detail .block--logo {
    top: -2.1em;
    right: 1em;
  }
  .section--oshimen .block--oshimen__detail .block--comment {
    font-size: 13px;
  }
  .section--oshimen .block--oshimen__detail .block--comment .heading--comment {
    margin-top: 0.2em;
    font-size: 10px;
  }
  footer .block--link .list--link {
    display: block;
  }
  footer .block--link .list--link li {
    margin: 0 auto 0.6em;
    margin-right: 0;
    text-align: center;
  }
  footer .block--link .list--link li.link--icon {
    width: 3em;
    margin: 0 auto;
  }
}
.block--card {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  transition: display 0.3s ease;
  /* close icon */
}
.block--card .block--card--inner {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background: rgba(1, 1, 1, 0.8);
}
.block--card .close {
  display: inline-block;
  position: absolute;
  right: 0;
  bottom: 20vh;
  bottom: 20dvh;
  left: 0;
  z-index: 100;
  max-width: 200px;
  margin: 0 auto;
  padding: 0.8em;
  border-radius: 100em;
  border: solid 1px #010101;
  background: rgb(0, 0, 0);
  color: #ffffff;
  font-family: "Segoe UI", SegoeUI, "Microsoft YaHei", 微软雅黑, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.02em;
  text-align: center;
  cursor: pointer;
}
.block--card .card {
  width: 367px;
  height: 231px;
  border-radius: 0.3em;
  background: linear-gradient(120deg, #ffffff 11%, #e8e8e8 40%, #e8e8e8 56%, #e1e1e1 60%, #ffffff);
  background-size: 150% 100%;
  animation: gradient_moving_horizontal 15s cubic-bezier(0.65, 0, 0.35, 1) infinite;
  box-shadow: 0px 5px 15px 0 rgba(0, 0, 0, 0.3);
}
.block--card .card .card--inner {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
  border-radius: 0.3em;
}
.block--card .card .card--inner .block--logo {
  width: 40%;
  margin: 3em auto 0;
}
.block--card .card .card--inner .block--status {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  width: 85%;
  margin: 2em auto 0;
  color: #010101;
}
.block--card .card .card--inner .block--status > div {
  display: flex;
  align-items: baseline;
}
.block--card .card .card--inner .block--status > div span {
  display: inline-block;
  margin-right: 0.5rem;
  margin-bottom: 0.3rem;
  color: #969696;
  font-weight: normal;
  font-size: 11px;
  text-align: left;
  text-shadow: none;
  vertical-align: baseline;
}
.block--card .card .card--inner .block--status > div p {
  background: -webkit-linear-gradient(90deg, #919191, #b8b8b8);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 700;
  font-size: 15px;
  line-height: 1;
  text-shadow: 0 1px 0 rgba(1, 1, 1, 0.2);
}
.block--card .card .card--inner .block--status > div.nickname {
  width: 100%;
  margin-bottom: 0.5em;
}
.block--card .card .card--inner .block--status > div.number {
  width: 50%;
  text-align: left;
}
.block--card .card .card--inner .block--status > div.regist-date {
  width: 50%;
  text-align: right;
}

body.card-visible .section--oshimen ul.block--ohimen--character li img {
  animation: none;
}

@keyframes gradient_moving_horizontal {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
/*
.block--card {
	width: 367px;
	height: 231px;
	background: #ffffff;
	background-size: cover;
	border-radius: 8px;
	box-shadow: 0 20px 30px -24px rgba(0, 0, 0, .5);
	margin: -40px auto 30px;
	position: relative;
	overflow: hidden;
	+ .txt--sub {
		width: 367px;
		line-height: 1.5;
		margin: 0 auto 50px;
	}
	.logo {
		width: 76%;
		margin: 10px auto;
		position: absolute;
		left: 10%;
		top: 14%;
	}
	.status {
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
		flex-wrap: wrap;
		-webkit-box-align: flex-end;
		-webkit-align-items: flex-end;
		align-items: flex-end;
		width: 85%;
		margin: 0 auto;
	}
	.inner {
		display: flex;
		align-items: flex-end;
		flex-wrap: wrap;
		width: 100%;
		height: 100%;
		margin: 0 auto;
		padding-bottom: 20px;
		color: #B3A45D;
		font-size: 11px;
		* {
			margin: 0 auto;
			text-shadow: -.5px -1px #ffffff, 1px 1px rgba(0, 0, 0, 1);
		}
		span {
			display: inline-block;
			margin-right: .5rem;
			margin-bottom: .3rem;
			color: #969696;
			font-weight: normal;
			font-size: 10px;
			text-align: left;
			text-shadow: none;
			vertical-align: middle;
		}
		.nickname {
			width: 100%;
			margin-bottom: .5rem;
			font-size: 15px;
		}
		.member-id {
			width: 50%;
			font-weight: 500;
			font-size: 16px;
			line-height: 1;
			text-align: left;
		}
		.regist-date {
			width: 50%;
			font-weight: 500;
			font-size: 16px;
			text-align: right;
			line-height: 1;
		}
	}
}
@media screen and (min-width: 1px) and (max-width: 767px) {
	.block--card {
		width: 100%;
		height: 56.7vw;
		margin-top: -10px;
		.inner {
			.member-id {
				font-size: 14px;
			}
			.nickname {
				font-size: 13px;
			}
			.regist-date {
				font-size: 14px;
			}
		}
	}
}
*/
.btn--birthday {
  background-color: #cf4f46;
  color: #ffffff;
}
.btn--birthday i {
  margin-right: 0.3em;
  font-family: "Font Awesome 5 Free";
}

.list--menu {
  background-color: #ffffff;
}
.list--menu .list--notes {
  margin-bottom: 0;
  padding-top: 0.5em;
}
.list--menu .list--notes li {
  margin-bottom: 0.5em;
  border: none;
}
.list--menu .list--notes li a {
  display: inline-block;
  padding: 0;
  font-size: 11px;
  text-indent: 0;
  text-decoration: underline;
}
.list--menu .list--notes li a::after {
  display: none;
}

.mypage .detail__btn.app a::after {
  content: "BACK";
}

#mypage--app section .area--user-status.status--free {
  background: #999999;
}

#mypage--app section .area--user-status.status--member {
  background: #1f100a;
}

@media screen and (min-width: 1px) and (max-width: 768px) {
  header h1 {
    width: 50vw;
    margin: 6px auto 20px;
  }
}/*# sourceMappingURL=mypage-service.css.map */