    @charset "UTF-8";
    /* Scss Document */
    
    * {
        font-family: 'Noto Sans JP', sans-serif;
        margin: 0;
        padding: 0;
        font-weight: 400;
        text-decoration: none;
        list-style: none;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        color: #4c3d36;
        font-size: 16px;
        line-height: 26px;
        letter-spacing: 0.5px;
    }
    /* font-family: 'Noto Serif JP', serif; */
    
     ::selection {
        background-color: #393a34 !important;
        color: #ffffff !important;
    }
    
    a,
    input[type="submit"] {
        display: block;
        cursor: pointer;
        text-decoration: none;
        outline: none;
    }
    
    a:before,
    a:after,
    .hovercon:before,
    .hovercon:after,
    input[type="submit"]:before,
    input[type="submit"]:after {
        position: absolute;
        z-index: -1;
        display: block;
        content: '';
    }
    
    a,
    a:before,
    a:after,
    .hovercon,
    .hovercon:before,
    .hovercon:after,
    input[type="submit"],
    input[type="submit"]:before,
    input[type="submit"]:after {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-transition: all .3s;
        transition: all .3s;
    }
    
    .display-pc {
        display: block;
    }
    
    .display-sp,
    .display-sp2 {
        display: none !important;
    }
    
    .width1080 {
        width: 1080px;
        margin: 0 auto;
    }
    
    .fixed {
        position: fixed;
        left: 0;
        top: 0;
    }
    /*アニメーション要素のスタイル*/
    
    .animation {
        opacity: 0;
        visibility: hidden;
        transition: 1s;
        transform: translateY(30px);
    }
    
    .active {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }
    
    .animation2 {
        animation-name: fadein;
        animation-duration: 2s;
    }
    
    @keyframes fadein {
        from {
            opacity: 0;
            transform: translateY(20px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }
    /* svgここから */
    
    #mask .st0 {
        fill: none;
        stroke: #FFFFFF;
        stroke-width: 40;
        /*線の太さを指定する*/
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-miterlimit: 10;
        stroke-dasharray: 1500;
        /* 線の間隔を指定する */
        stroke-dashoffset: 1500;
        /* 線の位置を指定する */
    }
    /* svgここまで */
    /*header {
	position: -webkit-sticky;
    position: sticky;
	top: 0;
	z-index: 1;
} */
    
    header .top-main {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        width: 100%;
        height: 90px;
        background-color: #ffffff;
        z-index: 99;
    }
    
    header .top-main .top-main01 {
        display: inline-block;
    }
    
    header .top-main .top-main01 .mian_logo img {
        display: block;
        width: 200px;
        height: auto;
        margin: 20px;
    }
    
    header .top-main .top-main02 {
        height: 90px;
        float: right;
    }
    
    header .top-main .top-main02 .top-main02-1 {
        display: inline-block;
        vertical-align: top;
        padding: 15px;
    }
    
    header .top-main .top-main02 .top-main02-2 {
        display: inline-block;
        vertical-align: top;
    }
    
    header .top-main .top-main02 .top-main02-2 a {
        width: 360px;
        height: 90px;
        background-color: #cb9b0c;
        padding: 23px;
        text-align: center;
    }
    
    header .top-main .top-main02 .top-main02-2 img {
        display: inline-block;
        width: 45px;
        height: auto;
        margin: 0 10px;
    }
    
    header .top-main .top-main02 .top-main02-2 p {
        display: inline-block;
        font-size: 22px;
        font-weight: 600;
        color: #ffffff;
        vertical-align: top;
        line-height: 50px;
    }
    
    header .top-text {
        width: 100%;
        /*height: 90vh;*/
        height: 600px;
        margin-top: 90px;
        background-image: url("../img/top_main01_2.jpg");
        background-size: cover;
        /*background-position: 25% 50%;*/
        background-position: center center;
    }
    header .top-text h2 {
        position: absolute;
        top: 40px;
        left: 0;
        right: 0;
        bottom: auto;
        margin: auto;
        color: #4c3d36;
        font-size: 32px;
        font-family: 'Noto Serif JP', serif;
        font-weight: 600;
        text-align: center;
        line-height: 40px;
        letter-spacing: 2px;
    }
    /*header .top-text:before {
    content: "";
	position: fixed;
    display: block;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-image: url(../img/top_main01.jpg);
	background-size: cover;
	background-position: 25% 50%;
}*/
    
    .iPhone-svg {
        display: none;
        width: 80vw;
        height: auto;
        position: absolute;
        top: 20px;
        left: 20px;
    }
    
    .iPhone,
    .iPad {
        -webkit-background-size: contain;
        background-size: contain;
    }
    
    .iPhone svg,
    .iPad svg {
        display: none;
    }
    
    .iPhone .iPhone-svg,
    .iPad .iPhone-svg {
        display: block;
    }
    
    header .top-text .width1080 {
        position: relative;
        height: 100%;
    }
    
    header .top-text .width1080 svg {
        position: absolute;
        top: 50px;
        left: 0;
        width: 675px;
        height: auto;
    }
    
    header .top-text .top-text-sub {
        position: absolute;
        right: 0;
        bottom: 50px;
    }
    
    header .top-text .top-text-sub p {
        font-size: 25px;
        color: #ffffff;
        line-height: 55px;
    }
    
    header .top-text .top-text-sub img,
    header .top-text .top-text-logo img {
        width: 350px;
        height: auto;
    }
    
    header .top-text .top-text-logo img {
        display: block;
        margin: 0 auto;
    }
    
    header .top-text .top-text-logo {
        position: absolute;
        margin: auto;
        left: 0;
        right: 0;
        bottom: 40px;
    }
    
    .gift-button {
        position: fixed;
        top: 150px;
        right: 0;
        z-index: 10;
    }
    .gift-button a {
        background-color: #ad1826;
        width: 45px;
        height: 195px;
        padding: 20px 15px;
        color: #ffffff;
        line-height: 18px;
        writing-mode: vertical-rl;
        font-size: 16px;
        font-weight: 600;
        letter-spacing: 1px;
        text-align: center;
    }
    
    .contacttel .telp01 {
        font-size: 10px;
        line-height: 20px;
        display: block;
        text-align: center;
    }
    
    .contacttel .telp02 {
        display: inline-block;
        font-size: 35px;
        font-family: 'Roboto', sans-serif;
        font-weight: 500;
        /*font-style: italic;*/
    }
    
    .contacttel img {
        display: inline-block;
        width: 30px;
        height: 30px;
        vertical-align: bottom;
        margin: 5px 2px 5px auto;
    }
    
    .contacttel.contacttel02 {
        border: solid 1px #ffffff;
        margin: 25px auto;
        padding: 30px 15px;
    }
    
    .contacttel.contacttel02 p {
        color: #ffffff;
    }
    
    .h2-1,
    .h2-2 {
        display: block;
        font-size: 34px;
        width: 95%;
        height: 80px;
        background-size: contain;
        text-align: center;
        margin: 0 auto;
        line-height: 80px;
        background-position: center;
        font-weight: 600;
    }
    
    .h2-1 {
        color: #ffffff;
        background-image: url("../img/title01.png");
    }
    
    .h2-2 {
        background-image: url("../img/title02.png");
    }
    
    .title03,
    .title04 {
        font-size: 28px;
        font-family: 'Noto Serif JP', serif;
        font-weight: 600;
        text-align: center;
        margin: 20px auto;
        line-height: 40px;
    }
    
    .title03 {
        color: #ffffff;
    }
    
    .p-center {
        text-align: center;
    }
    
    article {
        background-image: url("../img/backimg01.png");
        background-size: 200%;
        background-repeat: repeat;
    }
    
    .section1 {
        background-color: rgba(0, 0, 0, 0.75);
        background-blend-mode: multiply;
        z-index: 3;
    }
    
    .section1,
    .section2 {
        position: relative;
        padding: 50px 0;
    }
    
    .section2 {
        z-index: 2;
    }
    
    .section1 h3,
    .section1 p,
    .section1 td,
    .section1 a {
        color: #ffffff;
    }
    
    .section4 {
        position: relative;
        z-index: 2;
        background-color: #4c3d36;
        padding: 80px 0;
    }
    
    .div-content01,
    .div-content02 {
        display: flex;
    }
    
    .section1 .mv {
        margin: 40px auto 0 auto;
    }
    
    .section1 .mv p {
        text-align: center;
        margin: 24px auto 0 auto;
    }
    
    .flex {
        display: flex;
    }
    
    .section1 .flex,
    .section2 .flex {
        justify-content: space-between;
        align-items: center;
        margin: 40px auto;
    }
    
    .flex .left,
    .flex .right {
        width: 48%;
        color: #fff;
    }
    
    .flex .left img,
    .flex .right img {
        width: 100%;
        height: auto;
    }
    
    .flex .left h3,
    .flex .right h3 {
        font-size: 20px;
        font-weight: bold;
        display: block;
        padding: 24px 0;
    }
    
    .flex .left p,
    .flex .right p {
        text-indent: 1rem;
    }
    
    .flex .left p.normal,
    .flex .right p.normal {
        text-indent: 0rem;
    }
    
    .div-content01 .div-content01-left {
        margin-right: 30px;
    }
    
    .img01 {
        display: block;
        margin: auto;
    }
    
    .div-content01 .div-content01-left,
    .div-content01 .div-content01-right {
        width: 48%;
        margin: 50px auto;
    }
    
    .div-content01 .div-content01-left>p,
    .div-content01 .div-content01-right>p,
    .div-content02 .div-content02-text p {
        line-height: 30px;
    }
    
    .div-content02 .div-content02-img,
    .div-content02 .div-content02-text {
        margin: 30px;
    }
    
    .div-content02 .div-content02-img {
        width: 340px;
    }
    
    .div-content02 .div-content02-text {
        width: 630px;
    }
    
    .div-content02 .div-content02-text2 {
        margin: 130px auto;
    }
    
    .div-content01 .div-content01-left .img00 {
        width: 450px;
        height: 450px;
    }
    
    .div-content01 .div-content01-left .img01,
    .div-content01 .div-content01-right .img01 {
        width: 480px;
        height: 340px;
    }
    
    .div-content02 .div-content02-img .img01 {
        width: 340px;
        height: 340px;
        /*margin-bottom: 15px;*/
    }
    
    .div-content01 h3,
    .div-content02 h3 {
        margin-bottom: 10px;
        font-size: 26px;
        line-height: 45px;
        font-weight: 600;
    }
    
    .section2 .div-content01 .div-content01-left h3,
    .section2 .div-content01 .div-content01-right h3 {
        margin-top: 30px;
    }
    
    .div-content02-img p {
        font-weight: 600;
    }
    
    .div-content02-img p:first-of-type,.gift-text5 {
        font-size: 26px;
        line-height: 39px !important;
		font-weight: 600;
    }
    
    .div-content02-img p:last-of-type,.gift-text6 {
        font-size: 16px;
        line-height: 28px !important;
		font-weight: 600;
    }
    
    .div-content03 {}
    
    .p03 {
        display: flex;
        margin: 60px auto 30px auto;
        align-items: center;
        justify-content: center;
        font-size: 20px;
        color: #ffffff;
        font-weight: 600;
        letter-spacing: 1.5px;
    }
    
    .p03:before,
    .p03:after {
        border-top: 1px solid #ffffff;
        content: "";
        width: 100px;
    }
    
    .p03:before {
        margin-right: 20px;
    }
    
    .p03:after {
        margin-left: 20px;
    }
    
    .div-content03 .div-content03-inner {
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 30px;
        justify-content: center;
    }
    
    .div-content03-button {
        width: 320px;
        margin: 0 10px;
    }
    
    .div-content03-button a {
        width: 320px;
        height: 80px;
        border-radius: 40px;
    }
    
    .div-content03-button img {
        display: inline-block;
        width: 22px;
        height: 22px;
        margin: 30px 20px;
    }
    
    .div-content03-button p {
        display: inline-block;
        font-size: 21px;
        line-height: 80px;
        font-weight: 600;
        color: #ffffff;
        vertical-align: top;
    }
    
    .div-content03-button.div-content03-button1 a {
        background-color: #bd9f66;
    }
    
    .div-content03-button.div-content03-button2 a {
        background-color: #cb9b0c;
    }
    
    .div-content03-button.div-content03-button3 a {
        background-color: #ad1826;
    }
    
    .table01 {
        margin-bottom: 10px;
    }
    
    .table01 tr td {
        padding: 0 5px;
        line-height: 30px;
    }
    
    .section3 {
        position: relative;
        top: 0;
        z-index: 2;
        width: 100%;
        height: 400px;
        padding: 50px 0 0 0;
        background-image: url("../img/sub_mv.jpg");
        background-position: center;
        background-size: 100% auto;
    }
    
    .section3 h2.normal {
        color: #fff;
        font-size: 28px;
        font-family: 'Noto Serif JP', serif;
        font-weight: 600;
        line-height: 40px;
    }
    
    @media screen and (min-width:1800px) {
        .section3 {
            height: 600px;
        }
    }
    /*.section3:before {
    content: "";
    display: block;
	position: -webkit-sticky;
    position: sticky;
    top: 0;
    left: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
	background-image: url("../img/top_main02.jpg");
	background-position: center;
	background-size: cover;
}*/
    
    .section3 .width1080 {
        position: relative;
        height: 100%;
    }
    
    .section3 img,
    .section3 p {
        position: absolute;
        display: block;
    }
    
    .section3 img {
        width: 400px;
        height: auto;
        top: 0;
        left: 0;
    }
    
    .section3 p {
        color: #ffffff;
    }
    /* .section3 p:first-of-type {
	font-size: 30px;
	line-height: 44px;
	font-weight: 600;
	top: 150px;
	left: 0;
} */
    
    p.p-02 {
        font-size: 10px;
        line-height: 15px;
        bottom: 50px;
        right: 0;
    }
    
    p.p-03 {
        margin: 0 25px;
    }
    
    .font12px {
        font-size: 12px;
        line-height: 18px !important;
    }
    
    .span01,
    .span02 {
        display: block;
        height: 28px;
        margin-bottom: 10px;
        font-size: 12px;
        line-height: 28px;
        text-align: center;
        font-weight: 600;
        border-radius: 5px;
    }
    
    .span01 {
        width: 80px;
        background-color: #ffffff;
        color: #ad1826;
    }
    
    .span02 {
        width: 120px;
        background-color: #ad1826;
        color: #ffffff;
    }
    
    .g-ul,
    .gift-text2 {
        margin: 20px auto;
    }
    
    .g-ul li {
        padding: 10px;
        border-bottom: solid 1px #ffffff;
    }
    
    .g-ul li:first-child {
        border-top: solid 1px #ffffff;
    }
    
    .gift-text2 {
        padding: 10px;
        border-bottom: solid 1px #4c3d36;
    }
    
    .gift-text2 {
        border-top: solid 1px #4c3d36;
    }
    
    .g-ul li p,
    .g-ul li a {
        display: inline-block;
    }
    
    .g-ul p:first-child {
        width: 190px;
        font-size: 16px;
    }
    
    .g-ul p:nth-of-type(2) {
        width: 120px;
        font-size: 18px;
        font-weight: 600;
        margin-right: 10px;
    }
    
    .g-ul a,
    .gift-flex .gift-con .gift-text .gift-text2 a {
        display: inline-block;
        width: 170px;
        height: 30px;
        background-color: #cb9b0c;
        color: #ffffff;
        border-radius: 15px;
        font-size: 15px;
        text-align: center;
        line-height: 28px;
    }
    
    .gift-flex {
        display: flex;
        flex-wrap: wrap;
    }
    
    .gift-flex .gift-con {
        width: 31%;
        margin: 1%;
    }
    
    .gift-flex .gift-con .gift-link img {
        width: 320px;
        height: 320px;
    }
    
    .gift-flex .gift-con .gift-text {
        margin: 20px auto;
    }
    
    .gift-flex .gift-con .gift-text .gift-text1,
    .gift-flex .gift-con .gift-text .gift-text2 {
        font-weight: 600;
    }
    
    .gift-flex .gift-con .gift-text .gift-text1 {
        font-size: 16px;
    }
    
    .gift-flex .gift-con .gift-text .gift-text2 {
        font-size: 18px;
    }
    
    .gift-flex .gift-con .gift-text .gift-text2 a {
        margin-left: 20px;
    }
    
    .gift-flex .gift-con .gift-text .gift-text3 {
        font-size: 12px;
        line-height: 18px;
    }
    
    footer {
        position: relative;
        z-index: 5;
        background-color: #393a34;
    }
    
    footer small {
        display: block;
        color: #ffffff;
        padding-bottom: 20px;
        font-size: 12px;
        text-align: center;
    }
    
    footer .width1080 {
        display: flex;
        flex-wrap: wrap;
        text-align: center;
        padding: 70px;
    }
    
    .foot1 {
        width: 36%;
    }
    
    .foot2 {
        width: 25%;
    }
    
    .foot3 {
        width: 36%;
    }
    
    .foot2 img {
        width: 175px;
        height: auto;
    }
    
    .foot3 a {
        width: 340px;
        height: 65px;
        margin-bottom: 20px;
        text-align: center;
    }
    
    .foot3 a p {
        display: inline-block;
        color: #ffffff;
        font-size: 16px;
        font-weight: 600;
        line-height: 65px;
        vertical-align: top;
    }
    
    .foot3 .foot-button01 {
        background-color: #878788;
    }
    
    .foot3 .foot-button01 p {
        display: inline-block;
        height: auto;
    }
    
    .foot3 .foot-button02 {
        background-color: #cb9b0c;
    }
    
    .foot3 .foot-button02 img {
        display: inline-block;
        width: 32px;
        height: auto;
        margin: 15px;
    }
    
    footer #pageTop {
        position: fixed;
        right: 0;
        bottom: 80px;
        z-index: 100;
        vertical-align: bottom;
        width: 70px;
        height: 70px;
    }
    
    footer #pageTop img {
        width: 100%;
        height: 100%;
    }

/* 221024↓ */
.grecaptcha-badge {
    z-index: 1000;
}
.fadeup-mini {
  animation: fadeup 1s cubic-bezier(0.33, 1, 0.68, 1) 1 forwards;
}
@keyframes fadeup {
  0% {
    transform: translateY(30px);
    opacity: 0;
    filter: blur(5px);
  }
  100% {
    opacity: 1;
    filter: blur(0);
    transform: translateY(0);
  }
}
.huwaa {
  filter: blur(10px);
  animation-name: blur;
  animation-duration: 3s;
	animation-fill-mode: forwards;
}
.huwaa2 {
  filter: blur(10px);
  animation-name: blur;
  animation-duration: 1.5s;
	animation-fill-mode: forwards;
}
@keyframes blur {
  0% {
    filter: blur(10px);
  }
  100% {
    filter: blur(0);
  }
}

	/* ペルー アマティスタ_通常ギフト用↓ */
		header .top-text_peru01 {
			background-image: url("../img/top_main03.jpg");
		}
		@media (max-width:480px) {
			header .top-text.top-text_peru01 {
				background-image: url("../img/SP_top_main03_2.jpg") !important;
				}
			}
	/* ペルー アマティスタ_通常ギフト用↑ */
		header .top-text .top-main-link {
			display: block;
			height: 100%;
		}
		header .top-text .top-main-link:hover {
			background-color: rgba(255,255,255,0.1);
		}
	/* ペルー アマティスタ_2022冬用↓ */
	header .top-text.top-text_22winter {
        background-image: url("../img/22_winter/top_main_22winter_01.png");
	}
		@media (max-width:600px) {
			header .top-text.top-text_22winter {
				background-image: url("../img/22_winter/SP_top_main02.jpg") !important;
				}
			}
	/* ペルー アマティスタ_2022冬用↑ */
	.title_top_main {
		position: absolute;
		top: 0;
		right: 70px;
		display: block;
		width: 140px;
		height: 710px;
        background-image: url("../img/22_winter/huyu22_bg_001.png");
		background-size: contain;
	}
	.title_top_main img {
		display: block;
		width: 60%;
		height: auto;
		margin: 50px auto;
		text-align: center;
	}
	.title_top_main2 {
		display: none;
}
@media (max-width: 1350px) , (max-height: 850px) {
		.title_top_main {
			width: 120px;
	}
}
@media (max-width: 450px) and (max-height: 630px) {
		.title_top_main {
			width: 70px !important;
			height: 350px !important;
	}
}
@media (max-width: 600px) {
	.title_top_main2 {
		position: absolute;
		right: 0;
		left: 0;
		bottom: 10px;
		display: block;
		width: 80%;
		height: auto;
		margin: auto;
	}
		.title_top_main {
			right: 50px;
			width: 90px;
			height: 500px;
	}
	.title_top_main img {
		margin: 30px auto;
	}
}
	.gift-button2 a {
		background-color: #e20078 !important;
	}
	.gift-button3 {
        top: 355px;
    }
.gift-text4 {
	display: block;
	width: 95%;
	margin: 20px auto 0 auto;
}
.gift-text7 {
	margin-bottom: 20px;
	}
.gift-text8 {
	display: block;
    width: 90%;
    font-size: 34px;
	line-height: 50px;
	text-align: center;
    font-family: 'Noto Serif JP', serif;
	font-weight: 600;
}
.gift-text8-b {
    font-size: 28px;
	line-height: 50px;
	margin: 15px auto;
}
@media (max-width: 600px) {
	.gift-text4 {
		width: 85%;
		margin: 10px auto 0 auto;
	}
	.gift-text7 {
		margin-bottom: 10px;
	}
	.gift-text8 {
    	font-size: 20px;
		line-height: 30px;
    	margin-bottom: 10px;
	}
}

/* 221024↑ */





    @media (max-width: 1080px) {
        * {
            font-size: 14px;
            line-height: 23px;
        }
        body {
            width: 100%;
            overflow-y: hidden;
        }
        .display-pc {
            display: none !important;
        }
        .display-sp {
            display: block !important;
        }
        .display-sp2 {
            display: inline-block !important;
        }
        header .top-main {
            height: 60px;
        }
        /*
header .top-text:before {
	background-image: url("../img/top_main01_sp.jpg");	 
	 }*/
        header .top-text h2 {
            font-size: 22px;
            line-height: 40px;
            letter-spacing: 2px;
        }
        header .top-main .top-main01 .mian_logo img {
            width: 45px;
            height: 45px;
            margin: 7.5px;
        }
        header .top-main .top-main02 {
            display: flex;
            height: 60px;
        }
        header .top-main .top-main02 .top-main02-1 {
            width: 60px;
            height: 60px;
            padding: 17.5px;
            background-color: #eeeeee;
        }
        header .top-main .top-main02 .top-main02-2 a {
            width: 180px;
            height: 60px;
            padding: 10px;
        }
        header .top-main .top-main02 .top-main02-2 img {
            width: 20px;
            margin: 10px 3px 10px 0;
        }
        header .top-main .top-main02 .top-main02-2 p {
            font-size: 12px;
            line-height: 42px;
        }
        header .top-text .width1080 svg {
            top: 30px;
            left: 30px;
            width: 80vw;
        }
        header .top-text .top-text-sub {
            right: 30px;
            bottom: 30px;
        }
        header .top-text .top-text-sub p {
            font-size: 18px;
            line-height: 45px;
        }
        header .top-text .top-text-sub img {
            width: 250px;
        }
        .section1 {
            margin-top: -1px;
        }
        .gift-button {
            /*top: 90px;*/
            top: 160px;
        }
		.gift-button3 {
        	top: 300px;
    	}
        .gift-button a {
            padding: 0 7px;
            width: 26px;
            height: 130px;
            line-height: 14px;
            font-size: 12px;
            letter-spacing: 0.5px;
        }
        .width1080 {
            width: 100%;
            margin: 0 auto;
        }
        .h2-1 {
            background-image: url(../img/title01-sp.png);
        }
        .h2-2 {
            background-image: url(../img/title02-sp.png);
        }
        .h2-1,
        .h2-2 {
            font-size: 20px;
            width: 85%;
            height: 70px;
            line-height: 70px;
        }
        .div-content01 .div-content01-left,
        .div-content01 .div-content01-right {
            width: 85%;
            margin: 30px auto;
        }
        .div-content01 .div-content01-left .img01,
        .div-content01 .div-content01-right .img01 {
            width: 100%;
            height: auto;
        }
        .div-content01 .div-content01-left>p,
        .div-content01 .div-content01-right>p,
        .div-content02 .div-content02-text p {
            line-height: 26px;
        }
        .div-content01 h3,
        .div-content02 h3 {
            font-size: 20px;
            line-height: 28px;
        }
        .table01 tr {
            display: block;
            margin: 5px 0;
        }
        .table01 tr td {
            padding: 0;
            line-height: 20px;
            vertical-align: top;
        }
        .table01 tr td:first-of-type {
            width: 80px;
        }
        .g-ul li {
            text-align: center;
        }
        .g-ul li p {
            font-size: 14px !important;
            width: auto !important;
            margin-right: 10px;
        }
        .g-ul li p:nth-of-type(2) {
            font-size: 16px !important;
        }
        .g-ul li a {
            display: block;
            margin: auto;
        }
        .g-ul li a,
        .g-ul a,
        .gift-flex .gift-con .gift-text .gift-text2 a {
            margin-top: 5px;
        }
        .div-content01,
        .div-content02 {
            display: block;
            margin-bottom: 30px;
        }
        .div-content02 {
            display: block;
            width: 85%;
            margin: 20px auto 30px auto;
            padding: 0;
            text-align: center;
        }
        .div-content01 .div-content01-left,
        .div-content01 .div-content01-right {
            margin: 10px auto;
        }
        .div-content02 .div-content02-img,
        .div-content02 .div-content02-text {
            display: inline-block;
            margin: 10px;
            vertical-align: top;
        }
        .div-content02 .div-content02-img {
            width: 100%;
            margin: 0 auto 15px auto;
        }
        .div-content02 .div-content02-img .img01 {
            width: 60%;
            height: auto;
        }
        .div-content01 .img00 {
            display: block;
            width: 85% !important;
            height: auto !important;
            margin: 20px auto;
        }
        .div-content02 .div-content02-text {
            width: 100%;
            margin: auto;
            text-align: left;
			margin-bottom: 10px;
        }
        .div-content02-img p:first-of-type,.gift-text5 {
            font-size: 18px;
            line-height: 24px !important;
            margin-bottom: 10px;
        }
        .div-content02-img p:last-of-type,.gift-text6 {
            font-size: 14px;
            line-height: 18px !important;
        }
        header .top-text .top-text-sub img,
        header .top-text .top-text-logo img {
            width: 70%;
            height: auto;
        }
        .section3 {
            /*position: -webkit-sticky;
    position: sticky;*/
            position: relative;
            height: 230px;
            padding: 0;
            /*background-image: url(../img/sub_mv_sp.jpg);*/
            background-image: url(../img/SP_top_main02.jpg);
            background-attachment: scroll;
        }
        .section3 img {
            width: 220px;
            height: auto;
            top: 20px;
            left: 7.5%;
        }
        .section3 h2.normal {
            width: 85%;
            display: block;
            padding: 24px 0 0 0;
            margin: 0 auto;
            font-size: 20px;
        }
        .section1 .mv p {
            width: 85%;
            display: block;
            text-align: left;
            margin: 24px auto 0 auto;
        }
        .flex {
            flex-direction: column;
        }
        .flex .left {
            order: 1;
        }
        .flex .right {
            order: 2;
        }
        .flex .left,
        .flex .right {
            width: 85%;
            margin: 0 auto;
        }
        /*.section3 p:first-of-type {
    font-size: 20px;
    line-height: 30px;
    top: 100px;
    left: 7.5%;
}*/
        p.p-02 {
            bottom: 20px;
            width: 85%;
            margin: auto;
            left: 0;
        }
        .section4 {
            padding: 50px 0;
        }
        .gift-flex {
            width: 90%;
            margin: auto;
        }
        .gift-flex .gift-con {
            width: 46%;
            margin: 2%;
        }
        .gift-flex .gift-con .gift-text {
            margin: 0 auto 10px auto;
        }
        .gift-flex .gift-con .gift-text .gift-text2 a {
            margin-left: 0;
        }
        .gift-flex .gift-con .gift-link img {
            width: 100%;
            height: auto;
        }
        .h2-2-b {
            line-height: 18px;
            font-size: 14px;
            padding: 15px 20px;
        }
        .title03,
        .title04 {
            font-size: 20px;
            line-height: 32px;
            margin: 30px 7.5%;
        }
        .gift-flex .gift-con .gift-text .gift-text3 {
            font-size: 11px;
            line-height: 16px;
        }
        .g-ul,
        .gift-text2 {
            text-align: center;
            margin: 10px auto;
        }
        .g-ul a,
        .gift-flex .gift-con .gift-text .gift-text2 a {
            width: 130px;
            letter-spacing: -0.5px;
            height: 26px;
            border-radius: 13px;
            font-size: 14px;
            line-height: 22px;
        }
        p.p-03 {
            margin: 0;
        }
        .div-content03-button {
            margin: 10px auto;
        }
        .div-content03-button a {
            width: 320px;
            height: 50px;
            border-radius: 25px;
        }
        .div-content03-button p {
            font-size: 18px;
            line-height: 50px;
        }
        .div-content03-button img {
            width: 18px;
            height: 18px;
            margin: 16px;
        }
        .div-content03 .div-content03-inner {
            margin-bottom: 0px;
        }
        .p03 {
            margin: 45px auto 15px auto;
            font-size: 18px;
        }
        .p03:before,
        .p03:after {
            width: 70px;
        }
        .span01,
        .span02 {
            margin-bottom: 5px;
        }
        footer {
            width: 100%;
        }
        footer .width1080 {
            padding: 7.5%;
        }
        .foots {
            width: 100%;
        }
        .foot2 {
            margin: 10px auto 25px auto;
        }
        .foot2 img {
            width: 130px;
            height: auto;
        }
        .foot3 a {
            width: auto;
            max-width: 400px;
            height: 50px;
            margin: auto;
            margin-bottom: 10px;
        }
        .foot3 a p {
            font-size: 14px;
            line-height: 50px;
        }
        .foot3 .foot-button02 img {
            width: 20px;
            margin: 15px 5px;
        }
        .contacttel .telp01 {
            line-height: 14px;
        }
        .contacttel.contacttel02 {
            padding: 10px;
        }
        .contacttel img {
            width: 25px;
            height: 25px;
            margin: 0;
            vertical-align: text-bottom;
        }
        .contacttel .telp02 {
            font-size: 25px;
            vertical-align: top;
            line-height: 30px;
        }
        footer #pageTop {
            width: 50px;
            height: 50px;
        }
    }
    
    @media screen and (max-width:480px) {
        header .top-text {
            height: 75vh;
            margin-top: 60px;
            background-position: 100%;
            background-image: url("../img/SP_top_main01_2.jpg");
            background-attachment: scroll;
        }
    }
    
    @media screen and (min-width:1366px) and (max-width:2099px) {
        header .top-text {
            height: 800px;
        }
    }
    
    @media screen and (min-width:2100px) {
        header .top-text {
            height: 1000px;
        }
    }