@charset "utf-8";
/*          google fonts          */

.visual img {
	width: 100%;
}
.visual-box {
	pointer-events: none;
}
.visual {
	position: relative;
}
.visual img.logo {
	position: absolute;
	top: 10px;
	left: 0;
	right: 0;
	margin: auto;
	width: 95%;
	transition: 1s ease-out;
	opacity: 0;
	filter: blur(10px);
}
.visual img.logo.in {
	opacity: 1;
	filter: blur(0);
}
.visual img.catchcopy {
	position: absolute;
	top: 24.6%;
	left: 10px;
	width: 16.5%;
	max-width: 82px;
	mask-image: url(/books/auroratosalmon/img/mask01.webp);
	transition: 2s linear;
	mask-repeat: no-repeat;
	mask-position: 50% 100%;
}
.visual img.catchcopy.in {
	mask-position: 50% 0%;
}
@media (min-width: 855px) {
	.visual img.catchcopy {
		width: 19%;
	}
}
.visual img.promotion {
	position: absolute;
	bottom: 16px;
	right: 25px;
	width: 30%;
	max-width: 144px;
	z-index: 2;
	transition: 1s ease-out;
	opacity: 0;
	transform: translateY(20px);
}
.visual img.detail-img {
	position: absolute;
	bottom: 30px;
	left: 23px;
	width: 36%;
	max-width: 171px;
	z-index: 2;
	transition: 1s ease-out;
	opacity: 0;
	transform: translateY(20px);
}
.visual img.promotion.in,.visual img.detail-img.in {
	transform: translateY(0);
	opacity: 1;
}
.visual::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 228px;
	background: linear-gradient(180deg,rgba(0, 0, 0, 0) 0%,rgba(0, 0, 0, .2) 100%);
	z-index: 1;
	bottom: 0;
	left: 0;
	transition: 1s ease-out;
	opacity: 0;
}
.visual.in::after {
	transition: 1s ease-out;
	opacity: 1;
}
/*+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-     Site Contents     -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+*/

h1.title {
	/* 375：34px、480：40px */
	font-size: clamp(2.125rem, 0.786rem + 5.71vw, 2.5rem);
	font-weight: 900;
	line-height: 1;
	padding-top: 64px;
	margin: auto;
	text-align: center;
	color: #fff;
}
h1.title.cl01 {
	color: #AC9200;
}



/*          イントロダクション          */
.visual-bottom {
	background: url(/books/auroratosalmon/img/bg01.webp),url(/books/auroratosalmon/img/bg05.webp);
}
#introduction {
	background: url(/books/auroratosalmon/img/bg03.webp);
	background-size: 100% auto;
}
.intro-txt {
	text-align: center;
	line-height: 2;
	padding-bottom: 32px;
}
.intro-txt p {
	margin-bottom: 40px;
}
.intro-top p {
	margin: auto;
}
.intro-top p .frame {
	border: 1px #AC9200 solid;
	background: #fff;
	display: inline-block;
	line-height: 1;
	padding: 8px 6px 8px 8px;
}
.intro-top p .ls {
	letter-spacing: -10px;
}
/*          ストーリー          */
#story {
	background: url(/books/auroratosalmon/img/bg02.webp) ,linear-gradient(180deg,#617694 0%,#2F3C50 100%);
	background-size: 100% auto;
	color: #fff;
}
#story .star img {
	filter: brightness(0) saturate(100%) invert(100%) sepia(96%) saturate(15%) hue-rotate(255deg) brightness(103%) contrast(106%);
}
.story-top-txt {
	text-align: center;
	margin: 80px auto;
}
.story-top-txt p span {
	position: relative;
	font-weight: bold;
}
.story-top-txt p span::before {
	content: "";
	position: absolute;
	top: -24px;
	left: -35px;
	width: 40px;
	height: 40px;
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
}
.story-top-txt p span::after {
	content: "";
	position: absolute;
	bottom: -24px;
	right: -35px;
	width: 40px;
	height: 40px;
	border-bottom: 1px solid #fff;
	border-right: 1px solid #fff;
}
.story-txt-box {
	width: 85%;
	margin: auto;
	padding-bottom: 72px;
	line-height: 2;
}
.story-txt-box p {
	margin-bottom: 40px;
}
.story-txt-box .story-bottom-txt {
	text-align: center;
	margin: 56px auto;
}
.story-txt-box .story-last-txt {
	text-align: center;
	background: -webkit-linear-gradient(310deg, hsl(64deg, 89%, 88%) 20%, hsl(905deg 100% 99%) 43%, hsl(12deg 100% 91%) 53%, hsl(54deg 100% 88%) 80%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-weight: bold;
}

/*          キャラクター          */
#character {
	background: url(/books/auroratosalmon/img/bg01.webp), url(/books/auroratosalmon/img/bg04.webp),url(/books/auroratosalmon/img/bg05.webp);
	background-size: auto,100% auto;
	color: #fff;
}
.chara-box {
	position: relative;
}
#chara-02 {
	margin-top: -50px;
}
#chara-03 {
	margin-top: -50px;
}
#chara-04 {
	padding: 40px 0 54px;
}
/*          キーワード          */
#keyword {
	background: url(/books/auroratosalmon/img/bg02.webp) ,linear-gradient(180deg,#617694 0%,#2F3C50 100%);
	background-size: 100% auto;
}
#keyword .star img {
	filter: brightness(0) saturate(100%) invert(100%) sepia(96%) saturate(15%) hue-rotate(255deg) brightness(103%) contrast(106%);
}
.keyword {
	padding-bottom: 40px;
	line-height: 2;
}
.keyword-box {
	width: 85%;
	margin: auto;
	background: #fff;
	border: 1px #AC9200 solid;
	margin-bottom: 32px;
}
.keyword-box .keyword-frame {
	border: 1px #AC9200 solid;
	margin: 8px;
	padding: 24px 16px;
}
.keyword-box .name {
	/* 375：16px、480：20px */
	font-size: clamp(1rem, 0.107rem + 3.81vw, 1.25rem);
}

/*          書籍情報          */
#book {
	background: url(/books/auroratosalmon/img/bg01.webp), url(/books/auroratosalmon/img/bg04.webp),url(/books/auroratosalmon/img/bg05.webp);
	background-size: auto,100% auto;
	padding-bottom: 72px;
}
.book-box {
	width: 85%;
	margin: auto;
	background: #fff;
	/* 375：24px、480：32px */
	padding: 40px clamp(1.5rem, -0.286rem + 7.62vw, 2rem) 24px;
	line-height: 2;
	filter: drop-shadow(0px 0px 8px rgba(172, 146, 0, .16));
	border: 1px #AC9200 solid;
	position: relative;
}
.book-box .top-left,.book-box .top-right,.book-box .bottom-left,.book-box .bottom-right {
	position: absolute;
	width: 16px;
	height: 16px;
	background: #AC9200;
}
.book-box .top-left {
	top: 0;
	left: 0;
	border-radius: 0 0 100% 0;
}
.book-box .top-right {
	top: 0;
	right: 0;
	border-radius: 0 0 0 100%;
}
.book-box .bottom-left {
	bottom: 0;
	left: 0;
	border-radius: 0 100% 0 0;
}
.book-box .bottom-right {
	bottom: 0;
	right: 0;
	border-radius: 100% 0 0 0;
}
.book-txt-box .title {
	/* 375：24px、480：28px */
	font-size: clamp(1.5rem, 0.607rem + 3.81vw, 1.75rem);
	padding: 16px 0 0;
}
.book-link {
	margin: 32px auto;
	text-align: center;
}
.book-link a {
	margin: 16px auto;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	background: #AC9200;
	padding: 12px 0;
	border: 1px #fff solid;
}
.book-link a svg {
	margin-left: 5px;
	width: 6%;
	fill: #fff;
}
.site-link .txt {
	/* 375：16px、480：18px */
	font-size: clamp(1rem, 0.554rem + 1.9vw, 1.125rem);
}
.site-link a {
	display: block;
	margin-bottom: 16px;
}
.site-link a img {
	width: 70%;
}

@media (min-width: 855px) {
	.pc-not {
		display: none;
	}
}
.fix-link {
	position: fixed;
	bottom: -1px;
	z-index: 80;
	background: #AC9200;
	max-width: 480px;
	display: flex;
	text-align: center;
	width: 100%;
	padding: 0 2px;
	transition: 1s ease-in-out;
	transform: translateY(50px);
}
.fix-link.in {
	transform: translateY(0px);
}
.fix-link a {
	width: 50%;
	color: #fff;
	/* 375：16px、480：20px */
	font-size: clamp(1rem, 0.107rem + 3.81vw, 1.25rem);
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px #fff solid;
	margin: 4px 2px;
	padding: 6px 0;
}
.fix-link a svg {
	fill: #fff;
	width: 15px;
	margin-left: 2px;
}