@charset "UTF-8";
/* 共通 */
.container_v {
	max-width: 750px;
	margin: 0 auto;
}
.container_v h2,
.container_v p {
	margin: 0;
}
.container_v img {
	display: block;
	margin: 0;
	padding: 0;
	max-width: 100%;
}
.container_v .pb15 {
	padding-bottom: 15px;
}
.container_v .pb10 {
	padding-bottom: 10px;
}
.container_v .fwb {
	font-weight: bold;
}
.flex{
	display: flex;
	justify-content: center;
}
.pt30{
	padding-top: 30px;
}

/* cta */
.cta001_btn img,.cta001_btn img{
	width: 100%;
    margin: 0 auto;
	display: block;
}
.cta01_box_inner{
	position: relative;
}
.cta01_box_inner{
	content: "";
    display: block;
    width: 100%;
    padding-top: 440%; /* ← 楽天ボタン削除後に縮小 */
    background: url("../img/fv03.png") no-repeat top center;
    background-size: contain;

}
.cta001_btn {
	position: absolute;
	top:37%;
}
.cta001_btn,
.cta01_btn {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	width: 90%; /* ← スマホはここで制御すると安全 */
    max-width: 630px; /* 好みで調整 */
	
}

/* cta01 */
.cta01_btn img{
	width: 100%;
    margin: 0 auto;
}
.container_v .cta01_btn {
	position: absolute;
	top: 38.8%;
}

/* cta02 */
.cta02_btn img{
	width: 100%;
    margin: 0 auto;
}
.cta02_box_inner {
    position: relative;
}
.cta02_box_inner::before {
    content: "";
    display: block;
    width: 100%;
    padding-top: 220%; /* ← 楽天ボタン削除後に縮小 */
    background: url("../img/01_03.png") no-repeat top center;
    background-size: cover;
}
.cta002_btn{
	position: absolute;
	left: 13.5%;

}
.cta02_btn,
.cta02-01_btn {
	position: absolute;
	left: 7%;
}
.cta002_btn{
	top:50%;
}
.cta02_btn {
	top: 91%;
}
.cta02-01_btn {
	top: 93%; /* ボタンの高さ分だけ下へ */
}

/* cta03 */
.cta03_box_inner{
	content: "";
    display: block;
    width: 100%;
    padding-top: 290%; /* ← 楽天ボタン削除後 */
    background: url("../img/01_10.png") no-repeat top center;
    background-size: cover;
}

.cta03_btn img{
	width: 100%;
    margin: 0 auto;
}
.cta03_box_inner {
    position: relative;
	
}
.cta003_box_inner{
	content: "";
    display: block;
    width: 100%;
    padding-top: 626%; /* ← FV画像の縦横比 (必須) */
    background: url("../img/01_05.png") no-repeat top center;
    background-size: cover;
}
.cta003_btn{
	top: 94.1%;
}
.cta03_btn,
.cta03-01_btn {
	position: absolute;
	left: 7%;
}
.cta03_btn {
	top: 91.1%;
}
.cta03-01_btn {
	top: 90.5%; /* ボタンの高さ分だけ下へ */
}

/* cta04 */
.cta04_box_inner {
	padding: 0;
	margin: 0;
}
.cta04_btn {
	margin: 0 !important;
	padding: 0 !important;
}
.cta04_btn img,.cta04-01_btn img{
	width: 80%;
    margin: 0 auto;
}

/* cta05 */
.cta05-01_btn img,
.cta2_btn img,
.cta05_btn img{
	width: 90%;
    margin: 0 auto;
}

/* cta06 */
.cta06_btn img{
	width: 100%;
    margin: 0 auto;
}
.cta06_box_inner {
    position: relative;
}
.cta06_btn,
.cta06-01_btn {
	position: absolute;
	left: 7%;
}
.cta06_btn {
	top: 90%;
}
.cta06-01_btn {
	top: 96%;
}
.cta06_box_inner{
	content: "";
    display: block;
    width: 100%;
    padding-top: 391.39%; /* 511x2000の実寸比率 */
    background: url("../img/02_03.png") no-repeat top center;
    background-size: cover;
}

/* インタビューボタン2番目 */
.cta02_btn img{
	width: 100%;
    margin: 0 auto;
}
.cta003_box_inner {
    position: relative;
}
.cta003_btn{
	position: absolute;
	left: 13.5%;

}
/* インタビューボタン3番目 */
.cta004_box_inner {
    position: relative;
}
.cta004_btn{
	position: absolute;
	left: 13.5%;
}
.cta004_box_inner{
	content: "";
    display: block;
    width: 100%;
    padding-top: 416%; /* ← FV画像の縦横比 (必須) */
    background: url("../img/01_07.png") no-repeat top center;
    background-size: cover;
}
.cta004_btn{
	top: 67.7%;
}
/* 動画ボタン */
.cta005_btn{
	position: absolute;
	left: 13.5%;
}
.cta005_btn{
	top: 10.6%;
}
.sec_inner{
	padding: 0px 65px;
	text-align: center;
}

/* video */
.cta02_box_inner{
	position: relative;
}
.cta02_box_inner .video{
	position: absolute;
    width: 87%;
    top: 58.5%;
    margin: 0 auto;
    left: 6.5%;
}
.video iframe {
    /* width: 100%; */
    aspect-ratio: 16 / 9;
}

/* video2 */
.cta003_box_inner .video{
	position: absolute;
    width: 87%;
    top: 90.3%;
    margin: 0 auto;
    left: 6.5%;
}
/* video3 */
.cta004_box_inner .video{
	position: absolute;
    width: 87%;
    top: 63.3%;
    margin: 0 auto;
    left: 6.5%;
}
/* video4 */
.cta06_box_inner .video{
	position: absolute;
    width: 93%;
    top: 9.8%;
    margin: 0 auto;
    left: 3.7%;
}

.cta_btn a,
.cta01_btn a,
.cta001_btn a,
.cta02_btn a,
.cta002_btn a,
.cta02-01_btn a,
.cta003_btn a,
.cta03_btn a,
.cta03-01_btn a,
.cta04_btn a,
.cta04-01_btn a,
.cta05_btn a,
.cta05-01_btn a,
.cta06_btn a,
.cta06-01_btn a,
.cta2_btn a,
.cta005_btn a{
	transition: all .3s;
	display: block;
}
.cta_btn a:hover,
.cta01_btn a:hover,
.cta001_btn a:hover,
.cta002_btn a:hover,
.cta02_btn a:hover,
.cta02-01_btn a:hover,
.cta003_btn a:hover,
.cta03_btn a:hover,
.cta03-01_btn a:hover,
.cta04_btn a:hover,
.cta04-01_btn a:hover,
.cta05_btn a:hover,
.cta05-01_btn a:hover,
.cta06_btn a:hover,
.cta06-01_btn a:hover,
.cta2_btn a:hover,
.cta005_btn a:hover {
  transition: all 0.3s;
  margin-top: -5px;
  padding-bottom: 5px;
}
/* スマホ用（幅768px以下） */
@media screen and (max-width: 768px) {
.spmb07{margin-bottom:-7px!important}
.spmb10{margin-bottom:10px!important}
.spmb15{margin-bottom:15px!important}
.spmb20{margin-bottom:20px!important}
.spmb25{margin-bottom:25px!important}
.spmb30{margin-bottom:30px!important}
.spmb35{margin-bottom:35px!important}
.spmb40{margin-bottom:40px!important}
.spmb50{margin-bottom:50px!important}

.spmt015{margin-top:-15px!important}
.spmt0{margin-top:0px!important}
.spmt5{margin-top:5px!important}
.spmt10{margin-top:10px!important}
.spmt15{margin-top:15px!important}
.spmt20{margin-top:20px!important}
.spmt30{margin-top:30px!important}
.spmt32{margin-top:32px!important}
.spmt33{margin-top:33px!important}
.spmt35{margin-top:35px!important}
.spmt50{margin-top:50px!important}
.spmt55{margin-top:55px!important}

.container_v .sppb10 {
	padding-bottom: 10px!important;
}
.container_v .sppb20 {
	padding-bottom: 20px;
}


  .fv03 {
    background-position: 50% 20%; /* ここで微調整 */
  }

 .cta001_btn img,.cta01_btn img{
	width: 90%;
    margin: 0 auto;
}
.fv03{
	position: relative;
}
.cta001_btn{
	position: absolute;
    top: 96%;
    left: 0%;
	left: 50%;
    transform: translateX(-50%);
    width: 93%;
    max-width: 630px;
}
.cta01_btn {
    position: absolute!important;
    top: 106.3%!important;
    left: 50%!important;
	transform: translateX(-50%)!important;
    width: 93%!important;
    max-width: 630px!important;

}
.container_v .cta_btn a {
	transition: all .3s;
	display: block;
}
.container_v .cta_btn a:hover {
	transition: all .3s;
	margin-top: -5px;
	padding-bottom: 5px;
}
.container_v .bdb {
	padding-bottom: 30px;
	margin-bottom: 30px;
	border-bottom: 3px dotted #9e7e7e;
}
.cta001_btn{
	position: absolute;
    top: 37.5%;
    left: 0%;
	left: 50%;
    transform: translateX(-50%);
    width: 93%;
    max-width: 630px;
}
.cta01_btn {
    position: absolute!important;
    top: 38.8%!important;
    left: 50%!important;
	transform: translateX(-50%)!important;
    width: 93%!important;
    max-width: 630px!important;
}

/* cta02 */
.cta002_btn,.cta003_btn,.cta004_btn,.cta005_btn{
	width: 73%;
    margin: 0 auto;
}
.cta002_btn{
	width: 73%;
    margin: 0 auto;
}
.cta02-01_btn img,
.cta02_btn img{
	width: 85%;
    margin: 0 auto;
}
.cta02_box_inner {
    position: relative;
}
.cta002_btn{
	position: absolute;
	left: 13.5%;
}
.cta02_btn,
.cta02-01_btn {
	position: absolute;
	left: 0%;
}
.cta002_btn{
	top:67.5%;
	padding-bottom: 10px!important;
}
.cta02_btn {
	top: 92.8%;
	left: 0%;
    right: 0%;

}
.cta02-01_btn {
	top: 93.3%!important;
	left: 0%;
    right: 0%;

}
.cta03_btn img{
	width: 100%;
    margin: 0 auto;
}
.cta03_box_inner {
    position: relative;
}
.cta03_btn,
.cta03-01_btn {
	position: absolute;
	left: 0%;
}
.cta03_btn {
	top: 91%;
	left: 0%;
    right: 0%;
}
.cta03-01_btn {
	top: 91.5%;
	left: 0%;
    right: 0%;

}
.cta003_btn {
	top: 94.2%;
}
.cta03_btn img,.cta03-01_btn img{
	width: 90%;
    margin: 0 auto;
}

.cta004_btn {
	top: 67.7%;
}





/* cta04 */
.cta04_btn img,.cta04-01_btn img{
	width: 90%;
    margin: 0 auto;
}

/* cta05 */
.cta05_box_inner,.cta2_box_inner {
    position: relative;
}

/* cta05 */
.cta05-01_btn img,
.cta2_btn img,
.cta05_btn img{
	width: 90%;
    margin: 0 auto;
}
.cta2_btn{
	position: absolute;
	top:-265px!important;
}
.cta05-01_btn {
    position: absolute;
	top:-70px
}
.cta05_btn{
	position: absolute;
	top: -140px;
}


/* cta06 */
.cta06_btn img,.cta06-01_btn img{
	width: 90%;
    margin: 0 auto;
}
.cta06_box_inner {
    position: relative;
}
.cta06_btn,
.cta06-01_btn {
	position: absolute;
	left: 0%;
}
.cta06_btn {
	top: 90%;
}
.cta06-01_btn {
	top: 96%;
}

/* 2番目のボタン */
.container_v .cta1_box_inner {
	padding-left: 100px;
	position: relative;
}
.container_v .cta1 {
	color: #6b5656;
	line-height: 1.4;
	letter-spacing: 0.05em;
}
.container_v .cta1_btn {
	position: absolute;
	top: -268px;
}
.container_v .cta1 a {
	color: #d37e8c;
	word-wrap:break-word;
}
.container_v .cta1_btn a {
	transition: all .3s;
	display: block;
}

.container_v .cta1_btn a:hover {
	transition: all .3s;
	margin-top: -5px;
	padding-bottom: 5px;
}

}

	/* スマホ大用の調整 */

@media screen and (min-width: 376px) and (max-width: 540px) {
.cta002_btn{
	top:67%;
	left: 15.0%;
	padding-bottom: 10px!important;
}
.cta02_btn {
	top: 92.7%;
}
.cta02-01_btn {
	top: 93.5%;
}
.cta2_btn{
	position: absolute;
	top: -284px!important;
}
.cta05-01_btn {
    position: absolute;
	top:-70px
}
.cta05_btn{
	position: absolute;
	top: -147px;
}

}

/* ボタン3つの部分スマホ大の調整 */
@media screen and (min-width: 675px) and (max-width: 768px) {
.cta06_btn,
.cta06-01_btn {
	position: absolute!important;
	left: 2%!important;
	right: 2%;
}
}
@media screen and (min-width: 673px) and (max-width: 768px) {
	.cta2_btn{
		position: absolute;
        top: -458px !important;
		left: 6%;
        right: 6%;
	}
	.cta05_btn{
		position: absolute;
        top: -244px;
		left: 6%;
        right: 6%;
	}
	.cta05-01_btn{
		position: absolute;
        top: -122px;
		left: 6%;
        right: 6%;
	}
}
@media screen and (min-width: 444px) and (max-width: 620px) {
	.cta2_btn{
		position: absolute;
        top: -366px !important;
		left: 6%;
        right: 6%;
	}
	.cta05_btn{
		position: absolute;
        top: -196px;
		left: 6%;
        right: 6%;
	}
	.cta05-01_btn{
		position: absolute;
        top: -100px;
		left: 6%;
        right: 6%;
	}
}
@media screen and (min-width: 621px) and (max-width: 672px) {
	.cta2_btn{
		position: absolute;
        top: -400px !important;
		left: 6%;
        right: 6%;
	}
	.cta05_btn{
		position: absolute;
        top: -208px;
		left: 6%;
        right: 6%;
	}
	.cta05-01_btn{
		position: absolute;
        top: -100px;
		left: 6%;
        right: 6%;
	}
}

/* 767px以上の時（PC・タブレット）：
   ボタンを画像の上に重ねず、白い余白の中に配置する */
.cta2_btn, 
.cta05_btn, 
.cta05-01_btn {
    position: relative !important; /* 絶対配置を解除 */
    top: 0 !important;             /* 上への跳ね上がりを解除 */
    left: 0 !important;
    transform: none !important;
    margin: 0px auto !important;  /* ボタン間の余白を確保 */
    width: 90% !important;
    /* max-width: 630px; */
    display: block;
}

/* ボタンを包むコンテナ自体に十分な余白（白い領域）を持たせる */
.cta2_box_inner {
    position: relative;
    background: #fff;              /* 背景を白に固定 */
    height: auto !important;       /* 高さを自動調整 */
}

/* --- モバイル表示（766px以下）：
   ここから下は、画像にボタンを重ねる「スマホ専用デザイン」 --- */
@media screen and (max-width: 766px) {
    .cta2_box_inner {
        padding: 0;                /* スマホでは余白をなくして画像に密着 */
    }

    /* ボタンを絶対配置にして画像の上に重ねる */
    .cta2_btn, .cta05_btn, .cta05-01_btn {
        position: absolute !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        width: 90% !important;
        margin: 0 !important;
    }

    /* 画面幅（vw）に連動して重なり位置を調整 */
    @media (min-width: 444px) {
        .cta2_btn {
            top: -52vw !important;
        }
        .cta05_btn {
            top: -22vw !important;
        }
        .cta05-01_btn {
            top: -17vw !important;
        }
    }

    /* 極小画面用 */
    @media (max-width: 443px) {
        .cta2_btn {
            top: -67vw !important;
        }
        .cta05_btn {
            top: -36vw !important;
        }
        .cta05-01_btn {
            top: -18vw !important;
        }
    }
}

/* footer */
.footer_v {
	max-width: 750px;
	margin: 0 auto;
	background: #d37e8c;
	color: #fff;
	padding: 60px 15px;
	box-sizing: border-box;
}
.footer_v p {
	margin: 0;
	text-align: center;
}
.footer_v .foot_link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-bottom: 10px;
	text-align: center;
}
.footer_v .foot_link a {
	color: #fff;
	text-decoration: none;
}
.footer_v .foot_link a:hover {
	text-decoration: underline;
}
@media screen and (max-width: 767px) {
	.footer_v {
		padding: 30px 15px;
		font-size: 14px;
	}
	.footer_v p {
		font-size: 12px;
	}
	.footer_v span {
		/* display: none; */
	}
}

.btmfix_v1_01 {
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.4s ease, visibility 0.4s ease;
	position: fixed;
	bottom: 0;
	width: 100%;
	z-index: 9999;
	left: 0;
    right: 0;
	background: #fff;
}
.btmfix_v1_01.show {
	opacity: 1;
	visibility: visible;
}
.btmfix_v1_01 img {
	display: block;
	max-width: 100%;
	margin: 0 auto;
	width: 100%;
}
.btmfix_v1_01 .container_v {
	display: flex;
	align-items: center;
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
}
.btmfix_v1_01 .cta_btn {
	width: 100%;
	margin: 0;
	padding: 0;
}
.btmfix_v1_01 .cta_btn a {
	display: block;
	width: 100%;
}
.btmfix_v1_01 .cta_btn img {
	width: 100%;
	max-width: 100%;
	margin: 0;
}
@media screen and (max-width: 767px) {
	.btmfix_v1_01 {
		padding: 0;
	}
	.btmfix_v1_01 a {
		font-size: 1.2em;
	}
}