@charset 'UTF-8';

/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

	トップページ

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */



/* ================================================================================

	レイアウト

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	#wrapper {
	}

	main.outer_wrap {
		position: relative;
		max-width: none;
		/* max-width: 1920px; 固定幅レイアウト時 */
		width: 100%;
		min-height: 50vh;
		display: block;
		margin: 0 auto;
	}

	.inner_wrap {
		position: relative;
	}

	footer.bs_footer {
		margin-top: 80px;
	}
}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	#wrapper {
	}

	main.outer_wrap {
		position: relative;
		width: 100%;
	}

	.inner_wrap {
		position: relative;
	}

	footer.bs_footer {
		margin-top: 12vw;
	}
}





/* ================================================================================

	メイン画像

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.main_top {
		position: relative;
	}
	.main_top_in {
		position: relative;
	}
	.main_top_in img {
		width: 100%;
		height: auto;
	}


	/* Amazon購入キャンペーン
	----------------------------------------------- */
	.h_amazon {
		position: absolute;
		top: 9vw;
		right: -1.5vw;
		z-index: 1;
	}
	.h_amazon img {
		width: 18vw;
		height: auto;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.main_top {
		position: relative;
	}
	.main_top_in {
		position: relative;
	}
	.main_top_in img {
		width: 100%;
		height: auto;
	}


	/* Amazon購入キャンペーン
	----------------------------------------------- */
	.h_amazon {
	}
	.h_amazon a {
		position: relative;
		display: block;
		background-color: #fdbe14;
		color: #222222;
		width: 100%;
		font-size: 4.2vw;
		font-weight: 700;
		text-align: center;
		padding: 1.3em 0 1.4em;
		margin: 0 auto;
	}
	.h_amazon a::after {
		position: absolute;
		content: "";
		display: block;
		background: url(../img/arrow2.png) center top / contain no-repeat;
		width: 2vw;
		height: 3vw;
		top: 50%;
		margin-top: -1.5vw;
		right: 3vw;
	}

}





/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

	ここからコンテンツ内容

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */



/* ================================================================================

	セクション1

================================================================================ */

b.pink,
b.blue,
b.yellow,
b.yellow2,
b.red {
	font-size: 1.3em;
}
.pink {
	color: #ff4d4d;
	font-weight: 600;
}
.blue {
	color: #336ca9;
	font-weight: 600;
	background: linear-gradient(transparent 60%, #ffffff 60%);
}
.yellow {
	color: #ae8814;
	font-weight: 600;
}
.yellow2 {
	color: #febf00;
	font-weight: 600;
}
.red {
	color: #e70012;
	font-weight: 600;
}

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row01 {
		background-color: #fff9cd;
		font-size: 20px;
		padding: 7.8vw 0 72px;
	}
	.row01a {
	}
	.row01b,
	.row01c,
	.row01d,
	.row01e {
		margin-top: 72px;
	}

	/* 見出し */
	.row01b h2 img,
	.row01d h2 img {
		width: auto;
		height: 91px;
	}


	/* アイコンリスト */
	.icon_list_wrap {
		position: relative;
		background: url(../img/bg_dot.png) center top / 8px auto repeat;
		border: 8px solid #ff4d4d;
		padding: 50px 30px 50px 70px;
	}
	.icon_list_wrap::before {
		position: absolute;
		content: "";
		display: block;
		background: url(../img/parts_human01.png) center top / contain no-repeat;
		width: 187px;
		height: 390px;
		top: -160px;
		right: 20px;
		pointer-events: none;
	}
	.icon_list_wrap::after {
		position: absolute;
		content: "";
		display: block;
		background: url(../img/parts_human02.png) center top / contain no-repeat;
		width: 114px;
		height: 174px;
		bottom: 0px;
		left: 20px;
		pointer-events: none;
	}

	.icon_list_wrap2 {
		position: relative;
		background: url(../img/bg_dot.png) center top / 8px auto repeat;
		border: 8px solid #336ca9;
		padding: 50px 40px;
	}
	.icon_list_wrap2::before {
		position: absolute;
		content: "";
		display: block;
		background: url(../img/parts_human03.png) center top / contain no-repeat;
		width: 134px;
		height: 198px;
		bottom: 140px;
		right: -50px;
		pointer-events: none;
	}

	.icon_list {
		text-align: center;
		display: block;
	}
	.icon_list ul {
		display: inline-block;
	}
	.icon_list ul li {
		text-align: left;
		background: url(../img/icon_check.png) left top 5px / 25px auto no-repeat;
		padding-left: 40px;
		font-size: 22px;
		font-weight: 600;
		line-height: 1.5;
	}
	.icon_list ul li:not(:first-child) {
		margin-top: 1.3em;
	}


	/* 画像 */
	.row01c .left {
		width: 30% !important;
		margin-right: 4% !important;
	}
	.row01c .right {
		width: 66% !important;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row01 {
		background-color: #fff9cd;
		padding: 16vw 4vw 8vw;
	}
	.row01a {
	}
	.row01b,
	.row01c,
	.row01d,
	.row01e {
		margin-top: 8vw;
	}

	/* 見出し */
	.row01b h2 img,
	.row01d h2 img {
		width: auto;
		height: 16vw;
	}


	/* アイコンリスト */
	.icon_list_wrap {
		position: relative;
		background: url(../img/bg_dot.png) center top / 8px auto repeat;
		border: 2vw solid #ff4d4d;
		padding: 4vw;
	}

	.icon_list_wrap2 {
		position: relative;
		background: url(../img/bg_dot.png) center top / 8px auto repeat;
		border: 2vw solid #336ca9;
		padding: 4vw;
	}

	.icon_list {
		text-align: center;
		display: block;
	}
	.icon_list ul {
		display: inline-block;
	}
	.icon_list ul li {
		text-align: left;
		background: url(../img/icon_check.png) left top 1vw / 4vw auto no-repeat;
		padding-left: 6vw;
		font-size: 4vw;
		font-weight: 600;
		line-height: 1.5;
	}
	.icon_list ul li:not(:first-child) {
		margin-top: 1.3em;
	}


	/* 画像 */
	.row01c .left {
	}
	.row01c .left img {
		width: 70%;
		height: 60vw;
		object-fit: cover;
		font-family: 'object-fit: cover;'; /* IE対策 */
		object-position: center top;
	}
	.row01c .right {
		margin-top: 4vw;
	}
}





/* ================================================================================

	90日間

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row02 {
		padding: 100px 0 0;
		font-size: 20px;
	}
	.row02::before {
		position: absolute;
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-left: 94px solid transparent;
		border-right: 94px solid transparent;
		border-top: 48px solid #fff9cd;
		top: 0px;
		left: 50%;
		margin-left: -94px;
		pointer-events: none;
	}

	.row02a {
	}
	.row02b,
	.row02c,
	.row02d,
	.row02e,
	.row02f,
	.row02g {
		margin-top: 60px;
	}

	/* 画像 */
	.row02a .left {
		width: 40% !important;
		margin-right: 6% !important;
	}
	.row02a .right {
		width: 54% !important;
	}
	.row02a .right .title h2 {
		font-size: 50px;
		font-weight: 900 !important;
		margin-top: 10px;
	}
	.row02a .right .text {
		margin-top: 30px;
	}

	/* 画像2 */
	.row02c .left {
		width: 74% !important;
		margin-right: 6% !important;
	}
	.row02c .right {
		width: 20% !important;
	}
	.row02c .left .text {
		position: relative;
		background-color: #fff9cd;
		border-radius: 30px;
		color: #ff4d4d;
		font-weight: 600;
		padding: 50px;
	}
	.row02c .left .text::after {
		position: absolute;
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-left: 40px solid #fff9cd;
		border-top: 15px solid transparent;
		border-bottom: 15px solid transparent;
		top: 30px;
		right: -40px;
		pointer-events: none;
	}

	/* 3カラム
	----------------------------------------------- */
	.col3_1 {
		margin-right: 10px;
	}
	.col3_2 {
		margin-left: 5px;
		margin-right: 5px;
	}
	.col3_3 {
		margin-left: 10px;
	}

	/* 3カラム画像トリミング */
	.col3_1 img,
	.col3_2 img,
	.col3_3 img {
		width: 100%;
		height: 209px;
		object-fit: cover;
		font-family: 'object-fit: cover;'; /* IE対策 */
		object-position: center top;
	}

	/* 青枠
	----------------------------------------------- */
	.row02g {
		background-color: #336ca9;
		color: #ffffff;
		padding: 30px 50px;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row02 {
		padding: 12vw 4vw 0;
	}
	.row02::before {
		position: absolute;
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-left: 10vw solid transparent;
		border-right: 10vw solid transparent;
		border-top: 6vw solid #fff9cd;
		top: 0px;
		left: 50%;
		margin-left: -10vw;
		pointer-events: none;
	}

	.row02a {
	}
	.row02b,
	.row02c,
	.row02d,
	.row02e,
	.row02f,
	.row02g {
		margin-top: 8vw;
	}

	/* 画像 */
	.row02a .left {
		margin-top: 4vw;
	}
	.row02a .right {
	}
	.row02a .right .title h2 {
		font-size: 7vw;
		font-weight: 900 !important;
		text-align: center;
	}
	.row02a .right .text {
		margin-top: 4vw;
	}

	/* 画像2 */
	.row02c .left {
	}
	.row02c .right {
		padding-top: 6vw;
	}
	.row02c .right img {
		width: 40vw;
	}
	.row02c .left .text {
		position: relative;
		background-color: #fff9cd;
		border-radius: 6vw;
		color: #ff4d4d;
		font-weight: 600;
		padding: 6vw;
	}
	.row02c .left .text::after {
		position: absolute;
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-left: 5vw solid transparent;
		border-right: 5vw solid transparent;
		border-top: 8vw solid #fff9cd;
		bottom: -7vw;
		left: 50%;
		margin-left: -5vw;
		pointer-events: none;
	}


	/* 3カラム
	----------------------------------------------- */
	.col3_1 {
		margin-top: 0;
	}
	.col3_2,
	.col3_3 {
		margin-top: 2vw;
	}

	/* 3カラム画像トリミング */
	.col3_1 img,
	.col3_2 img,
	.col3_3 img {
		width: 100%;
		height: 61vw;
		object-fit: cover;
		font-family: 'object-fit: cover;'; /* IE対策 */
		object-position: center top;
	}

	/* 青枠
	----------------------------------------------- */
	.row02g {
		background-color: #336ca9;
		color: #ffffff;
		padding: 4vw;
	}
}





/* ================================================================================

	著者紹介

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row03 {
		background-color: #fff9cd;
		border-top: 10px solid #336ca9;
		padding: 80px 0;
		margin-top: 80px;
	}

	/* 見出し */
	.row03 .title {
		position: relative;
		text-align: center;
	}
	.row03 .title h2 span {
		position: relative;
		display: inline-block;
		font-size: 40px;
		font-weight: 700;
		padding-bottom: 71px;
	}
	.row03 .title h2 span::after {
		position: absolute;
		content: "";
		display: block;
		background: url(../img/title_pencil.png) center top / contain no-repeat;
		width: 103px;
		height: 61px;
		bottom: 0px;
		right: -60px;
		pointer-events: none;
	}

	/* 著者
	----------------------------------------------- */
	.row03_in {
		background-color: #ffffff;
		border: 1px solid #336ca9;
		padding: 40px;
	}
	.row03_in .left {
		width: 46% !important;
		margin-right: 4% !important;
	}
	.row03_in .right {
		width: 50% !important;
	}

	.katagaki {
		font-size: 16px;
		font-weight: 600;
	}
	.name_ja {
		font-size: 46px;
		font-weight: 600;
		color: #336cab;
		line-height: 1.5;
	}
	.name_en {
		font-size: 20px;
		font-weight: 600;
		color: #336cab;
		line-height: 1;
	}

	.row03_in .right .text {
		margin-top: 40px;
		font-size: 18px;
		font-weight: 600;
	}


	/* 目次
	----------------------------------------------- */
	.row03_in2 {
		margin-top: 60px;
	}
	.row03_in2 .left {
		width: 30% !important;
		margin-right: 4% !important;
	}
	.row03_in2 .right {
		width: 66% !important;
		font-size: 14px;
	}

	/* 画像 */
	.row03_in2 .left .img1 img {
		width: 222px;
	}
	.row03_in2 .left .img2 {
		margin-top: 60px;
	}
	.row03_in2 .left .img2 img {
		width: 210px;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row03 {
		background-color: #fff9cd;
		border-top: 2vw solid #336ca9;
		padding: 12vw 4vw;
		margin-top: 12vw;
	}

	/* 見出し */
	.row03 .title {
		position: relative;
		text-align: center;
	}
	.row03 .title h2 span {
		position: relative;
		display: inline-block;
		font-size: 6vw;
		font-weight: 700;
		padding-bottom: 10.5vw;
	}
	.row03 .title h2 span::after {
		position: absolute;
		content: "";
		display: block;
		background: url(../img/title_pencil.png) center top / contain no-repeat;
		width: 15vw;
		height: 9vw;
		bottom: 0px;
		right: -9vw;
		pointer-events: none;
	}

	/* 著者
	----------------------------------------------- */
	.row03_in {
		background-color: #ffffff;
		border: 1px solid #336ca9;
		padding: 6vw;
	}
	.row03_in .left {
	}
	.row03_in .right {
		margin-top: 6vw
	}

	.katagaki {
		font-size: 3.3vw;
		font-weight: 600;
	}
	.name_ja {
		font-size: 6vw;
		font-weight: 600;
		color: #336cab;
		line-height: 1.5;
	}
	.name_en {
		font-size: 4vw;
		font-weight: 600;
		color: #336cab;
		line-height: 1;
	}

	.row03_in .right .text {
		margin-top: 6vw;
		font-size: 3.5vw;
		font-weight: 600;
	}


	/* 目次
	----------------------------------------------- */
	.row03_in2 {
		margin-top: 8vw;
	}
	.row03_in2 .left {
	}
	.row03_in2 .right {
		margin-top: 6vw;
	}

	/* 画像 */
	.row03_in2 .left .img1 img {
		width: 60vw;
	}
	.row03_in2 .left .img2 {
	}
	.row03_in2 .left .img2 img {
	}
}





/* ================================================================================

	Amazon購入キャンペーン

================================================================================ */

.row04 del { /*二重取り消し線*/
	background-image:url(../img/doubleLine_orange.png);
	background-repeat:repeat-x;
	background-position: center;
	text-decoration: none;
}


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row04 {
		background-color: #336ca9;
		padding: 80px 0;
	}

	/* 見出し */
	.row04 .title {
		position: relative;
		z-index: 1;
	}
	.row04 .title::after {
		position: absolute;
		content: "";
		display: block;
		background: url(../img/parts_campaign.png) center top / contain no-repeat;
		width: 170px;
		height: 170px;
		top: 10px;
		right: -43px;
		pointer-events: none;
	}
	.row04 .title h2 {
		position: relative;
		text-align: center;
	}


	/* キャンペーン内容
	----------------------------------------------- */
	.row04_in {
		position: relative;
		background: url(../img/bg_dot.png) center top / 8px auto repeat;
		border: 10px solid #fed966;
		padding: 70px 50px 60px 50px;
		margin-top: -40px;
	}
	.row04_in::after {
		position: absolute;
		content: "";
		display: block;
		background: url(../img/parts_sunada.png) center top / contain no-repeat;
		width: 306px;
		height: 464px;
		bottom: -25px;
		right: 10px;
	}

	.row04_in .date {
		font-size: 34px;
		font-weight: 600;
		text-align: center;
		color: #e70012;
	}
	.row04_in .date2 {
		font-size: 34px;
		font-weight: 600;
		text-align: center;
		margin-top: 0.5em;
	}
	.row04_in .date3 {
		font-size: 38px;
		font-weight: 600;
		text-align: center;
		margin-top: 0.5em;
	}
	.row04_in .date2 span,
	.row04_in .date3 span {
		display: inline;
		background: linear-gradient(transparent 60%, #fed966 60%);
		padding: 0 0.3em;
	}

	/* キャンペーン */
	.row04_in .point {
		background-color: #fff9cd;
		margin-top: 20px;
		padding: 20px;
	}
	.row04_in .point h3 {
		font-size: 26px;
		font-weight: 600;
		color: #e70012;
	}
	.row04_in .jissen {
		font-size: 26px;
		font-weight: 600;
		margin-top: 20px;
		text-align: center;
	}

	/* テキスト */
	.row04_in .text {
		font-size: 20px;
		margin: 20px 280px 0 0;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row04 {
		background-color: #336ca9;
		padding: 12vw 4vw;
	}

	/* 見出し */
	.row04 .title {
		position: relative;
		z-index: 1;
	}
	.row04 .title::after {
	}
	.row04 .title h2 {
		position: relative;
		text-align: center;
	}
	.row04 .title h2 img {
		width: 90%;
	}


	/* キャンペーン内容
	----------------------------------------------- */
	.row04_in {
		position: relative;
		background: url(../img/bg_dot.png) center top / 8px auto repeat;
		border: 2vw solid #fed966;
		padding: 8vw 4vw 72vw 4vw;
		margin-top: -5vw;
	}
	.row04_in::after {
		position: absolute;
		content: "";
		display: block;
		background: url(../img/parts_sunada.png) center top / contain no-repeat;
		width: 48vw;
		height: 70vw;
		bottom: -2vw;
		left: 50%;
		margin-left: -23vw;
	}

	.row04_in .date {
		font-size: 5vw;
		font-weight: 600;
		text-align: center;
		color: #e70012;
	}
	.row04_in .date2 {
		font-size: 5vw;
		font-weight: 600;
		text-align: center;
		margin-top: 0.5em;
	}
	.row04_in .date3 {
		font-size: 6.5vw;
		font-weight: 600;
		text-align: center;
		margin-top: 0.5em;
	}
	.row04_in .date2 span,
	.row04_in .date3 span {
		display: inline;
		background: linear-gradient(transparent 60%, #fed966 60%);
		padding: 0 0.3em;
	}

	/* キャンペーン */
	.row04_in .point {
		background-color: #fff9cd;
		margin-top: 6vw;
		padding: 4vw;
	}
	.row04_in .point h3 {
		font-size: 4vw;
		font-weight: 600;
		color: #e70012;
	}
	.row04_in .jissen {
		font-size: 4vw;
		font-weight: 600;
		margin-top: 4vw;
		text-align: center;
	}

	/* テキスト */
	.row04_in .text {
		font-size: 3.5vw;
		margin-top: 6vw;
	}
}





/* ================================================================================

	Amazon購入キャンペーン応募方法

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row05 {
		margin-top: 80px;
	}

	.row05_in {
		background-color: #336ca9;
		color: #ffffff;
		padding: 60px 0;
	}

	/* 見出し */
	.row05 .title {
		position: relative;
		text-align: center;
		margin-bottom: 40px;
	}
	.row05 .title h2 {
		position: relative;
		display: inline-block;
		font-size: 32px;
		font-weight: 700;
	}

	/* 流れ */
	.row05 .flow {
		text-align: center;
		font-size: 24px;
		margin-top: 20px;
	}
	.row05 .flow_icon {
		margin-top: 20px;
	}
	.row05 .flow_icon .elementor-icon {
		font-size: 28px;
	}

	/* リンクボタン */
	.link_amazon {
		margin-top: 60px;
	}
	.link_amazon a {
		display: block;
		background-color: #fdbe14;
		color: #336cab;
		border-radius: 20px;
		width: 700px;
		font-size: 32px;
		font-weight: 700;
		text-align: center;
		padding: 0.5em 0 0.6em;
		margin: 0 auto;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row05 {
		margin-top: 12vw;
		padding: 0 4vw;
	}

	.row05_in {
		background-color: #336ca9;
		color: #ffffff;
		padding: 6vw 4vw;
	}

	/* 見出し */
	.row05 .title {
		position: relative;
		text-align: center;
		margin-bottom: 6vw;
	}
	.row05 .title h2 {
		position: relative;
		display: inline-block;
		font-size: 5vw;
		font-weight: 700;
	}

	/* 流れ */
	.row05 .flow {
		text-align: center;
		font-size: 4vw;
		margin-top: 4vw;
	}
	.row05 .flow_icon {
		margin-top: 4vw;
	}
	.row05 .flow_icon .elementor-icon {
		font-size: 5vw;
	}

	/* リンクボタン */
	.link_amazon {
		margin-top: 6vw;
	}
	.link_amazon a {
		display: block;
		background-color: #fdbe14;
		color: #336cab;
		border-radius: 4vw;
		width: 100%;
		font-size: 4vw;
		font-weight: 700;
		text-align: center;
		padding: 0.5em 0 0.6em;
		margin: 0 auto;
	}
}





/* ================================================================================

	お問い合わせ

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.row06 {
		margin-top: 80px;
	}

	/* 見出し */
	.row06 .title {
		position: relative;
		text-align: center;
	}
	.row06 .title h2 {
		position: relative;
		display: inline-block;
		font-size: 40px;
		font-weight: 700;
		line-height: 1.4;
		padding-bottom: 40px;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.row06 {
		margin-top: 12vw;
		padding: 0 4vw;
	}

	/* 見出し */
	.row06 .title {
		position: relative;
		text-align: center;
	}
	.row06 .title h2 {
		position: relative;
		display: inline-block;
		font-size: 6vw;
		font-weight: 700;
		line-height: 1.4;
		padding-bottom: 6vw;
	}
}
