@charset "UTF-8";
/* ページ内の設定 */

html {
	font-size: 1px;
}
/* 共通部分に影響が出ないように */
html > * {
	font-size: 16px;
}

/* コンテンツ固有部分の設定 */
.wrap {
	color:#000;
	width: 100%;
	margin: -6px 0;
	min-width: 1200px;
	font-family: 'Noto Sans JP', sans-serif;
	padding-bottom: 0.3rem;
	font-feature-settings: "palt";
	overflow: hidden;
}
.wrap img {
	vertical-align: bottom;
}
.section {
	overflow: hidden;
}
.inner {
	width: 1200px;
	margin: 0 auto;
}
.font_mincho {
	font-family: 'Noto Serif JP', serif;
}

.bg_blue {
	position: relative;
	background: #e4f5fc;
}
.bg_white {
	padding-top: 1px;
	position: relative;
	background: #fff;
}

/* mv */
.mv {
	position: relative;
	&:after {
        content: "";
        position: absolute;
        z-index: 1;
        bottom: -17px;
        left: 0;
        width: 100%;
        height: calc(72 * var(--mv-size));
        background: url(../img/pc/product/sozai_ichiba_mottainaiosakana/wave_blue.png) repeat-x calc(50% - 160px) 0% / calc(328.5 * var(--mv-size)) auto;
	}
}

@media(max-width: 1200px){
	.mv {
		--mv-size: 1px;
	}
}
@media(min-width: 1201px){
	.mv {
		--mv-size: calc(100/1200*1vw);
	}
}
@media(min-width: 1440px){
	.mv {
		--mv-size: calc(1440/1200*1px);
	}
}
.mv_head {
	display: flex;
	justify-content: center;
	align-items: center;
	background:#fff;
	height: calc(164 * var(--mv-size));
}
.mv_head_ttl {
	display: flex;
	justify-content: center;
    align-items: center;
    gap: calc(45 * var(--mv-size));
}
.mv_head_logo_sozai {
	width: calc(88 * var(--mv-size));
	height: auto;
}
.mv_head_logo_projects {
	width: calc(280 * var(--mv-size));
	height: auto;
}

.mv_main {
	position: relative;

}
.mv_main_body {
    position: relative;
	background: #f8ba3d url(../img/pc/product/sozai_ichiba_mottainaiosakana/mv_bg.jpg) repeat 50% 0 / calc(113.5 * var(--mv-size)) auto;
    height: calc(555 * var(--mv-size));
	overflow: hidden;
	&:after {
        content: "";
        position: absolute;
        z-index: 1;
        bottom: -17px;
        left: 0;
        width: 100%;
        height: calc(72 * var(--mv-size));
        background: url(../img/pc/product/sozai_ichiba_mottainaiosakana/wave.png) repeat-x 50% 0% / calc(328.5 * var(--mv-size)) auto;
	}
}
.mv_item {
	width: calc(1554 * var(--mv-size));
    height: auto;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: calc(-1554 / 2 * var(--mv-size));
    display: block;
}
.mv_txt_area {
	position:relative;
	background:#fff;
	padding-bottom: calc(75 * var(--mv-size));
    /* height: calc(478 * var(--mv-size)); */
}
.mv_txt_area_set {
	display:flex;
	gap: calc(30 * var(--mv-size));
    padding-inline: calc(88 * var(--mv-size));
    margin-inline: auto;
    width: calc(1030 * var(--mv-size));
}
.mv_txt_area_set_detail {
	width: calc(545 * var(--mv-size));
}
.mv_txt_area_set_img {
	position: relative;
	flex: 1;
}
.mv_txt_area_set_img_pkg {
    position: relative;
    z-index: 1;
    margin-top: calc(-150 * var(--mv-size));
    margin-left: calc(-12 * var(--mv-size));
    width: calc(536 * var(--mv-size));
}
.mv_txt_area_set_detail_set {
    display: grid;
    grid-template-areas:
    "logo pop"
	"ttl ttl";
    align-items: center;
    gap: calc(0 * var(--mv-size)) calc(26 * var(--mv-size));
    margin-top: calc(-22 * var(--mv-size));
    position: relative;
    z-index: 1;
}
.mv_txt_area_set_detail_set_logo {
	grid-area: logo;
}
.mv_txt_area_set_detail_set_pop {
	grid-area: pop;
}
.mv_txt_area_set_detail_set_ttl {
	grid-area: ttl;
}
.mv_txt_area_set_detail_set_logo_img {
	width: calc(331 * var(--mv-size));
}
.mv_txt_area_set_detail_set_pop_img {
	width: calc(189 * var(--mv-size));
}
.mv_txt_area_set_detail_set_ttl_img {
	width: calc(499 * var(--mv-size));
    margin-left: calc(16 * var(--mv-size));
    margin-top: calc(-8 * var(--mv-size));
}
.mv_txt_area_set_detail_txt {
    margin-top: calc(13 * var(--mv-size));
    font-size: calc(16 * var(--mv-size));
    margin-left: calc(17 * var(--mv-size));
    margin-right: calc(46 * var(--mv-size));
    line-height: 1.55;
}
.mv_txt_area_btn_list {
    display: flex;
    justify-content: center;
    margin-top: calc(21 * var(--mv-size));
    gap: calc(22 * var(--mv-size));
    margin-left: calc(-11 * var(--mv-size));
}
.mv_txt_area_btn {
    width: calc(150 * var(--mv-size));
    height: calc(45 * var(--mv-size));
    display: flex;
    justify-content: center;
    align-items: center;
	font-size: calc(15 * var(--mv-size));
    letter-spacing: 0.06em;
	text-decoration:none;
	font-weight: 700;
}
.mv_txt_area_btn_detail {
	border:1px solid #000;
	background:#fff;
	color:#000;
}
.mv_txt_area_btn_amazon {
	border:1px solid #000;
	background:#000;
	color:#fff;
}
.mv_txt_area_btn_yodobashi {
	border:1px solid #BDBDBD;
	background:#BDBDBD;
	color:#000;
}

/* same */
.same {
	position: relative;
	padding-top: 1px;
}
.same_mottainai {
    padding-top: 1px;
    margin-top: -100rem;
    position: relative;
    z-index: 1;
	padding-bottom: 197rem;
}
.same_mottainai_ttl_wrap {
	position: relative;
	text-align: center;
	margin-top: 165rem;
}
.same_ttl {
	width: 499rem;
	height:auto;
}
.same_ttl_chara_1 {
    position: absolute;
    top: -164rem;
    left: 50%;
    width: 458rem;
    margin-left: -630rem;
}
.same_ttl_chara_2 {
    position: absolute;
    top: -96rem;
    left: 50%;
    width: 275rem;
    margin-left: 300rem;
}
.same_mottainai_txt {
    margin-top: 38rem;
    text-align: center;
    font-size: 25rem;
    letter-spacing: 0.06em;
}
.same_mottainai_txt_color {
	color: #005db0;
}
.same_mottainai_txt_str {
	font-size: 70rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.08em;
	font-family:"Yu Mincho","YuMincho",	"Hiragino Mincho ProN",	"HGS明朝E",	"MS PMincho",serif;
}
.same_mottainai_txt_str_small {
	font-size: 58rem;
}
.same_mottainai_bottom {
	padding-top:1px;
	background: #99dbf6;
    padding-bottom: 198rem;
	&:after {
        content: "";
        position: absolute;
        z-index: 1;
        bottom: -17px;
        left: 0;
        width: 100%;
        height: 82rem;
        background: url(../img/pc/product/sozai_ichiba_mottainaiosakana/wave_blue.png) repeat-x 50% 0% / 328.5rem auto;
	}
}



.same_img_wrap {
	position: relative;
    width: 1100rem;
    height: auto;
    margin-top: -168rem;
    margin-inline: auto;
    display: block;
}
.same_img {
	width:100%;
	height:auto;
}
.same_img_cap {
	position: absolute;
    right: 88rem;
    bottom: 14rem;
    color: #fff;
    font-size: 10rem;
    letter-spacing: 0.05em;
}
.same_mottainai_bottom_txt {
    margin-top: 24rem;
    text-align: center;
    font-size: 25rem;
    line-height: 1.65;
    letter-spacing: 0.08em;
}
.same_chara_3 {
    width: 945rem;
    display: block;
    margin-top: 19rem;
    position: relative;
    left: 29rem;
    margin-inline: auto;
}
.same_chara_3 + .same_mottainai_bottom_txt {
	margin-top: 1rem;
}
.same_pkg_wrap {
	margin-top: -3rem;
	position:relative;
	text-align: center;
}
.same_pkg {
    position: relative;
    width: 287rem;
    height: auto;
}
.same_chara_4 {
    position: absolute;
    top: 20rem;
    left: 50%;
    margin-left: -452rem;
    width: 301rem;
    height: auto;
}
.same_chara_5 {
    position: absolute;
    top: 40rem;
    left: 50%;
    margin-left: 157rem;
    width: 350rem;
    height: auto;
}
.same_ship {
    position: absolute;
    bottom: 2rem;
    left: 50%;
    margin-left: -83rem;
    width: 170rem;
}

/* dekirukoto */
.dekirukoto {
	position: relative;
    margin-top: 122rem;
    width: 1200rem;
    margin-inline: auto;
    padding-bottom: 235rem;
}
.bg_blue:has(.dekirukoto) {
	&:after {
        content: "";
        position: absolute;
        z-index: 1;
        bottom: -17px;
        left: 0;
        width: 100%;
        height: 82rem;
        background: url(../img/pc/product/sozai_ichiba_mottainaiosakana/wave.png) repeat-x calc(50% - 165rem) 0% / 328.5rem auto;
	}
}
.dekirukoto_ttl {
	text-align: center;
	margin-left: 24rem;
}
.dekirukoto_ttl img {
	width: 1044rem;
	height:auto;
}
.dekirukoto_list {
	display:flex;
	justify-content: center;
	gap: 30rem;
	margin-top: 57rem;
}
.dekirukoto_list > li {
	position: relative;
	overflow: hidden;
	border-radius: 50%;
}
.dekirukoto_list img {
	width: 310rem;
	height:auto;
}

/* mottainai */
.mottainai {
    position: relative;
    z-index: 1;
    padding-bottom: 197rem;
	&:after {
        content: "";
        position: absolute;
        z-index: 1;
        bottom: -17px;
        left: 0;
        width: 100%;
        height: 82rem;
        background: url(../img/pc/product/sozai_ichiba_mottainaiosakana/wave_blue.png) repeat-x 50% 0% / 328.5rem auto;
	}
}
.mottainai_ttl {
    position: relative;
    margin-top: -150rem;
    width: 547rem;
    height: auto;
    margin-inline: auto;
    display: block;
}
.mottainai_main_ttl {
    position: relative;
    margin-top: 57rem;
    width: 700rem;
    height: auto;
    margin-inline: auto;
    display: block;
    padding-right: 30rem;
}
.mottainai_txt {
	margin-top: 60rem;
	text-align: center;
	font-size: 22rem;
	line-height:2;
    letter-spacing: 0.06em;
}
.mottainai_body_wrap {
	position: relative;
	margin-top:10rem;
	height: 1276rem;
}
.mottainai_body {
	position: absolute;
	top:0;
	left:50%;
	width: 1260rem;
	margin-left: -630rem;
	height: auto;
}
.mottainai_body_txt {
    position: absolute;
    top: 102rem;
    left: 0;
    width: 100%;
    font-size: 38rem;
    text-align: center;
    letter-spacing: 0.12em;
    color: #00B10E;
}

/* introduce */
.introduce {
	position: relative;
	padding-bottom: 150rem;
}
.introduce_ttl {
    position: relative;
    margin-top: -48rem;
    width: 173rem;
    height: auto;
    margin-inline: auto;
    display: block;
}
.introduce_txt {
    margin-top: 70rem;
    text-align: center;
    font-size: 44rem;
    line-height: 1.1;
}
.introduce_txt_small {
	font-size: 22rem;
    letter-spacing: -0.05em;
    line-height: 1.7;
}
.introduce_main_item_wrap {
	position: relative;
    width: 597rem;
	margin-inline: auto;
	margin-top: 40rem;
}
.introduce_pop {
    position: absolute;
    top: -125rem;
    left: calc(50% - 388rem);
    width: 172rem;
	height:auto;
}
.introduce_main_item {
	position: relative;
	width: 100%;
	height:auto;
}
.introduce_deco_1 {
    position: absolute;
    top: 375rem;
    left: calc(50% - 534rem);
    width: 235rem;
	height: auto;
}
.introduce_deco_2 {
    position: absolute;
    top: 239rem;
    left: calc(50% + 275rem);
    width: 268rem;
}
.introduce_main_body {
    margin-top: 50rem;
    width: 516rem;
    margin-inline: auto;
}
.introduce_main_body_btn {
	display:flex;
	border: 3rem solid #000;
	color:#fff;
	text-decoration: none;
    font-size: 25rem;
    line-height: 1.3;
    text-align: center;
}
.introduce_main_body_btn_inner {
	border: 6rem solid #fff;
	display:flex;
	justify-content: center;
	align-items: center;
	height:100rem;
	width: 100%;
	background:#366BB3;
}
.introduce_main_body_btn_small {
	font-size: 12rem;
}
.introduce_main_body_txt {
    margin-top: 15rem;
    font-size: 16rem;
    margin-inline: 10rem;
    line-height: 1.5;
    letter-spacing: 0.09em;
}
.introduce_main_body_btn_list {
	display: flex;
    justify-content: center;
    align-items: center;
    gap: 23rem;
    margin-top: 23rem;
}
.introduce_main_body_btn_list > li > a {
    width: 150rem;
    height: 45rem;
	display:flex;
	justify-content: center;
	align-items: center;
    font-weight: 700;
    font-size: 18rem;
	text-decoration: none;
}
.btn_detail {
	border:1px solid #000;
	background:#fff;
	color:#000;
}
.btn_amazon {
	background:#000;
	color:#fff;
}
.btn_yodobashi {
	border:1px solid #BDBDBD;
	background:#BDBDBD;
	color:#000;
}

/* catalog */
.catalog {
	position: relative;
    padding-top: 65rem;
    padding-bottom: 88rem;
}
.catalog_ttl_wrap {
	position: relative;
	text-align: center;
	padding-top: 146rem;
}
.catalog_ttl_pop {
	position: absolute;
    top: 0rem;
    left: calc(50% - 431rem);
    width: 207rem;
    height: auto;
}
.catalog_ttl {
	position: relative;
	width: 679rem;
	height:auto;
}
.catalog_list_wrap {
	position: relative;
	width: 834rem;
	margin-inline: auto;
	margin-top: 30rem;
}
.catalog_swiper_prev {
	overflow: hidden;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 43rem;
    height: 175rem;
    display: block;
    margin-block: auto;
    left: -105rem;
    translate: 0 30rem;
}
.catalog_swiper_prev::before {
    content: "";
    width: 120rem;
    height: 120rem;
    border: 7px solid #00b00b;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin-block: auto;
    display: block;
    transform: scaleX(0.4) rotate(45deg);
    transform-origin: 37% 20%;
}
.catalog_swiper_next {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 43rem;
    height: 175rem;
    display: block;
    margin-block: auto;
    right: -105rem;
    translate: 0 30rem;
	overflow: hidden;
	scale: -1;
}
.catalog_swiper_next::before {
    content: "";
    width: 120rem;
    height: 120rem;
    border: 7px solid #00b00b;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin-block: auto;
    display: block;
    transform: scaleX(0.4) rotate(45deg);
    transform-origin: 37% 20%;
}

.catalog-swiper {
	overflow:hidden;
}
.catalog_main {
	width: 834rem;
	height: auto;
}

/* gallery */
.gallery {
	position: relative;
    padding-top: 76rem;
    padding-bottom: 108rem;
}
.gallery_ttl_wrap {
	position: relative;
	text-align: center;
	padding-top: 146rem;
}
.gallery_ttl_pop {
	position: absolute;
    top: 0rem;
    left: calc(50% - 470rem);
    width: 207rem;
    height: auto;
}
.gallery_ttl {
	position: relative;
	width: 757rem;
	height:auto;
}
.gallery_box {
    position: relative;
    margin-top: 42rem;
    padding-right: 22rem;
}
.gallery_f_1 {
    position: absolute;
    top: 34rem;
    left: calc(50% - 280rem);
    width: 169rem;
    height: auto;
}
.gallery_f_2 {
    position: absolute;
    top: 31rem;
    left: calc(50% + 100rem);
    width: 164rem;
    height: auto;
}
.gallery_chara {
	position: relative;
	display: block;
	width: 300rem;
	height:auto;
	margin-inline: auto;
}
.gallery_movie_box {
    margin-top: -48rem;
    position: relative;
    border: 3px solid #00B10E;
    background: #E3E3E3;
    width: 635rem;
    margin-inline: auto;
}
.gallery_movie {
	position:relative;
	overflow:hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 358rem;
}
.gallery_movie_play_icon {
	position: relative;
	z-index:1;
}
.coming_soon .gallery_movie_play_icon {
	display:none;
}
.coming_soon::before {
	content:"COMING SOON";
	font-size: 60rem;
	color:#00b00b;
}
.gallery_movie:not(.coming_soon)::before {
	content:"";
	position: absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:url(../img/pc/product/sozai_ichiba_mottainaiosakana/movie.jpg) no-repeat 50% 50% / cover;
}
.gallery_movie_txt_wrap {
	text-align:center;
	margin-top: 20rem;
}
.gallery_movie_txt {
	width: 475rem;
	height:auto;
}
.img_area {
	position: relative;
}
.img_1 {
	background: url(../img/pc/product/sozai_ichiba_mottainaiosakana/img_area_1.jpg) no-repeat 50% 50% / cover;
	height:300rem;
}
.img_2 {
	background: url(../img/pc/product/sozai_ichiba_mottainaiosakana/img_area_2.jpg) no-repeat 50% 10% / cover;
    height: 280rem;
}

/* story */
.story {
	margin-top: 100rem;
    padding-bottom: 128rem;
	position: relative;
}
.story_ttl {
	width: 761rem;
	height:auto;
	margin-inline: auto;
	display:block;
}
.story_detail {
	display: flex;
	width: 761rem;
	margin-inline: auto;
	gap: 30rem;
	margin-top: 28rem;
}
.story_detail_img_wrap {
	width: 182rem;
}
.story_detail_img {
	width: 100%;
	height: auto;
}
.story_detail_txt_wrap {
    flex: 1;
    font-size: 16rem;
    line-height: 1.75;
    margin-top: -6rem;
}
.story_list {
	margin-top: 57rem;
}
.story_list > li + li {
	margin-top: 22rem;
}
.story_item_set {
	display:flex;
	justify-content: space-between;
	width: 900rem;
    margin-inline: auto;
	gap: 40rem;
}
.story_item_set_center {
	flex: 1;
	font-size: 17rem;
    line-height: 1.63;
}
.story_item_set_left {
	width: 100rem;
}
.story_item_set_right {
    width: 80rem;
    margin-right: 10rem;
}
.right .story_txt_wrap {
	position: relative;
    padding: 20rem 26rem;
	background:#CCEFCF;
    border-radius: 14rem;
    margin-right: 10rem;
}
.right .story_txt_wrap::before {
	content:"";
	position: absolute;
	top: 30rem;
	left: calc(100% - 1px);
	width: 21rem;
	height: 13rem;
	background: url(../img/pc/product/sozai_ichiba_mottainaiosakana/fukidashi.png) no-repeat 0% 0% / contain;
}
.left .story_txt_wrap {
	position: relative;
    padding: 0rem 26rem;
    margin-right: 10rem;
}
.story_item_set_left,
.story_item_set_right {
	position: relative;
}
.story_icon_set {
	position:absolute;
	top:0;
	left:0;
	right:0;
	display:block;
	margin-inline: auto;
}
.story_icon_set_name {
	width: 160%;
	margin-left:-30%;
	text-align:center;
	font-size:12rem;
	letter-spacing: 0.04em;
}
.story_icon_set_img {
	margin-top: 5rem;
}
.icon_ono {
	width: 100rem;
	height: auto;
}
.icon_oyatsu {
	width: 80rem;
	height: auto;
}

/* bottom_area_box */
.bottom_area_wrap {
	background:#e5f6fd;
    padding-block: 33rem;
}
.bottom_area_box {
	width: 470rem;
	margin-inline: auto;
    display: flex;
    align-items: center;
    gap: 50rem;
}
.bottom_area_box_logo,
.bottom_area_logo {
	width: 140rem;
	height: auto;
}
.bottom_area_box_txt {
	flex:1;
	color: #004E8C;
}
.bottom_area_txt {
	width: 105%;
    font-size: 19rem;
    line-height: 1.4;
    margin-top: 5rem;
}
.bottom_area_txt_small {
	margin-top: 15rem;
    font-size: 12.5rem;
}
.bottom_area_txt_small a {
	font-size: 16rem;
	color: inherit;
	text-decoration: none;
}

/* bnr_area */
.bnr_area {
    position: relative;
    padding-top: 100rem;
    padding-bottom: 100rem;
}
.bnr_wrap {
    position: relative;
    text-align: center;
    font-size: 0;
}
.bnr_wrap a > img {
    width:100%;
    height:auto;
}
.floating_bnr_cover {
    height:150rem;
}
.floating_bnr_wrap {
    position: fixed;
    bottom:0;
    left:0;
    width:100%;
    min-width: 1200px;
    z-index: 10;
    opacity: 0;
    transition: 0.4s opacity;
    pointer-events: none;
    text-align: center;
}
.floating_bnr_wrap.is_show {
    opacity: 1;
    pointer-events: all;
}
.floating_bnr_wrap.is_no_floating {
    position: relative;
    transform: translateX(0)!important;
}

.bnr_link {
    position: relative;
    display:inline-block;
    width: 800rem;
}
.bnr_link:hover {
    opacity:1;
}
.bnr_on {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    opacity:0;
    transition: opacity 0.4s;
}
@media (hover:hover) {
	.bnr_link {
		background: #fff;
	}
	.bnr_link .bnr {
		transition: opacity 0.4s;
	}
	.bnr_link:hover .bnr {
		opacity: 0.5;
	}

}
