@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

@import url("drawer.css");
@import url("over.css");

*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html{
    scroll-behavior: smooth;
}

body{
    position: relative;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: -0.025em;
	background-color: #FFF;
	color: #202020;
}

div, p{
	text-align: justify;
}

a{
	text-decoration: none;
}

ul{
	list-style: none;
}

a[x-apple-data-detectors]{
  position: static !important;
  display: inline !important;
}

@media screen and (max-width:1049px){

img{
	display: block;
	width: 100%;
	height: auto;
}

body{
    position: relative;
    width: 100%;
    overflow-x: hidden;
    padding: 0;
}

body.front{
    position: relative;
    width: 100%;
    overflow-x: hidden;
    padding: 0 0 100px 0;
}


header{
    width: 100%;
    height: 54px;
    margin: 0 auto;
    padding: 16px;
}

header h1,
header div {
    height: 22px;
    text-align: center;
}

header h1 img,
header div img{
    display: block;
    width: auto;
    height: 100%;
    margin: 0 auto;
}

/* modal */

.js-modal-open{
	position: absolute;
	text-align: center;
}

.modal{
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
   z-index: 9999;
}
.modal__bg{
    background: rgba(155,132,103,.8);
    height: 100vh;
    position: absolute;
    width: 100%;
   z-index: 100;
}
.modal__content{
   position: absolute;
   width: 95%;
   height: 200px;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   padding: 15px 0;
   border-radius: 5px;
   margin : auto;
   z-index: 500;
}

.closeButton{
   z-index: 110;
   position: relative;
   margin: 0 auto;
   width: 80px;
   height: 30px;
   text-align: center;
}

.closeButton div{
	margin: 0 10px 0 0;
   font-size: 20px;
   font-weight: 900;
   color: #FFF;
}

.modalTelWpr{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 92%;
    height: 200px;
    margin: auto;
    z-index: 9999;
    padding: 20px;
    background-color: #FFF;
    border-radius: 8px;
}

.modalLogo{
    width: 156px;
    height: 28px;
    margin: 0 auto 1rem auto;
}


.modalTelWpr .ctaBtn{
    margin: 0 auto 1rem auto;
}

.closeButton div{
    margin: 0;
    text-align: center;
}

.closeButton div span{
    color: #444;
}

.closeButton p{
    color: #444;
    text-align: center;
}



header{
    width: 100%;
    height: 60px;
    margin: 0 auto;
    padding: 20px; 
}

header .headerWpr{
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin: 0 auto;
}

.headerWpr h1 {
    width: 159px;
    height: 20px;
}

.headerWpr h1 img{
    width: auto;
    height: 100%;
}

.headerWpr nav{
    display: none;
}


/* fv */
.fvWpr{
    width: 100%;
}

.fv{
    width: 100%;
    margin: 0 auto 10px auto;
}

.fvCTA{
    display: block;
    width: 350px;
    margin: 0 auto;
}

.fvCTA img{
    width: 100%;
    height: auto;
}


/* intro */

.introWpr{
    width: 100%;
    padding: 45px 0 0 0;
    background: linear-gradient(to bottom, #FFF 0%, #fde8ea 100%);
}

.intro{
    width: 95%;
    height: 100px;
    margin: 0 auto 45px auto;
}

.intro h2{
    width: 100%;
    margin: 0 0 12px 0;
    text-align: center;
    line-height: 28px;
}

.intro h2 img{
    display: inline;
    width: 200px;
    height: auto;
}

.intro h2 span{
    font-size: 22px;
    font-weight: 400;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    color: #333;
}

.gradLine{
    width: 300px;
    height: 2px;
    margin: 0 auto 12px auto;
    background: linear-gradient(to right, #FFF, #f2aeb7 50%, #FFF 100%);
}

.intro p{
    font-size: 13px;
    font-weight: 400;
    text-align: center;
}

.introBody{
    position: relative;
    width: 90%;
    margin: 0 auto;
    padding: 0 0 230px 0;
}

.imgWpr{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    position: relative;
    width: 100%;
    z-index: 100;
}

.introImg{
    width: 50%;
}

.introLeed{
    position: absolute;
    width: 93%;
    left: 0;
    right: 0;
    bottom: 40px;
    margin: 0 auto;
    padding: 20px 15px;
    border: 3px solid #f7e4e6;
    background-color: #FFF;
    font-size: 13px;
    line-height: 23px;
    text-align: center;
    box-shadow: 0 0 15px rgba(190,100,110,.3);
    z-index: 110;
}

.introLeed span{
    font-weight: 700;
    color: #e36273;
}

/* news */

.newsWpr{
    width: 90%;
    margin: 0 auto;
    padding: 40px 0 40px 0;
}

.newsTtl{
    margin: 0 auto 35px auto;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    color: #999;
    font-size: 24px;
    text-align: center;
    letter-spacing: .6rem;
}

ul.news{
    width: 100%;
    border-top: 1px solid #e5e5e5;
}

ul.news li {
    border-bottom: 1px solid #e5e5e5;
    padding: 10px 0;
}

ul.news li a{
    font-size: 14px;
    color: #333;
}

ul.news li a span{
    display: block;
    font-size: 14px;
    color: #ff9999;
}

/* about */

.about{
    width: 90%;
    margin: 0 auto;
    padding: 0 0 25px 0;
}

.aboutTtlWpr{
    width: 80%;
    margin: 0 auto 40px auto;
}

.aboutTtlAdd{
    width: 90%;
    margin: 0 auto 20px auto;
}

.aboutTtlEql{
    margin: 0 0 0 0;
}

.aboutIntro{
    width: 100%;
    margin: 0 auto 25px auto;
    padding: 20px;
    font-size: 13px;
    line-height: 23px;
    text-align: center;
    box-shadow: 0 0 10px rgba(0,0,0,.1);
}

.aboutSubLeed{
    width: 100%;
    margin: 0 auto 25px auto;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-size: 20px;
    line-height: 30px;
    text-align: center;
}

.aboutSubLeed span{
    background: linear-gradient(to bottom, #FFF 0%, #FFF 50%, #fdeff0 50%, #fdeff0 100%);
}

.ecItemUnitWpr{
    width: 100%;
    margin: 0 auto 15px auto;
}

.ecItemUnit{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    border-radius: 10px;
    margin: 0 auto 15px auto;
    padding: 35px 20px 20px 20px;
}

.ecItemUnit .upr{
    width: 130px;
}

.ecItemUnit .lwr{
    width: calc(100% - 160px);
}

.ecItemUnit.shin{
    background-color: #f4fcea;
}

.ecItemUnit.teru{
    background-color: #feefee;
}

.ecItemUnit.rin{
    background-color: #f1f8fc;
}

.ecItemUnit div .logo{
    width: 90%;
    height: 18px;
    margin: 0 auto 10px auto;
    text-align: center;
}

.ecItemUnit .logo img{
    display: block;
    margin: 0 auto;
    width: 100%;
    height: auto;
}

.ecItemUnit .itemName{
    width: 90%;
    height: 55px;
    margin: 0 auto 15px auto;
    text-align: center;
}

.ecItemUnit .itemName img{
    display: block;
    margin: 0 auto;
    width: auto;
    height: 100%;
}

.itemImg{
    width: 130px;
    height: 130px;
    border-radius: 100px;
    overflow: hidden;
    margin: 0 auto 20px auto;
}

.shin .itemImg{
    border: 3px solid #e9f5d9;
}
.teru .itemImg{
    border: 3px solid #ffdfe3;
}
.rin .itemImg{
    border: 3px solid #d5edff;
}

.ecItemUnit .itemLeed{
    margin: 0 auto 10px auto;
    font-size: 15px;
    font-weight: 700;
    line-height: 22px;
    text-align: left;
    color: #333;
}

.ecItemUnit .itemBody{
    margin: 0 auto 10px auto;
    font-size: 12px;
    line-height: 18px;
}

.ecItemUnit .price{
    font-size: 12px;
    line-height: 35px;
    text-align: right;
    margin: 0 auto 20px auto;
}

.ecItemUnit .price span{
    font-family: "Oswald", sans-serif;
    font-size: 23px;  
    font-weight: 600;
    color: #333;
}

.ecItemUnit .price span span{
    font-size: 16px;  
}

.buyBtn{
    position: relative;
    display: block;
    width: 100%;
    height: 49px;
    padding: 0 10px 0 0;
    border-radius: 25px;
    background: linear-gradient(to bottom, #ffc8cf 0%, #ed9fa7 100%);
    font-size: 20px;
    font-weight: 700;
    color: #FFF;
    line-height: 49px;
    text-align: center;
}

.buyBtn::after{
    position: absolute;
    display: block;
    content: "";
    top: 0;
    bottom: 0;
    right: 18px;
    width: 10px;
    height: 10px;
    margin: auto 0;
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    transform: rotate(45deg);
}

.bottomNotice{
    font-size: 12px;
    line-height: 16px;
    text-align: center;
    color: #999999;
}

.itemInfoWpr{
    width: 100%;
    padding: 50px 0 0 0;
}

.itemInfoWprTtl{
    margin: 0 auto 25px auto;
    padding: 12px 0;
    font-size: 20px;
    font-weight: 400;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    color: #333;
    text-align: center;
    border-top: 1px solid #adadad;
    border-bottom: 1px solid #adadad;
    line-height: 26px;
}

.itemInfoWprTtl span{
    color: #eb8f9b;
}

.itemInfoWprBody{
    font-size: 13px;
    line-height: 19px;
    text-align: center;
    color: #333;
}

.itemInfoWprBody span{
    color: #eb8f9b;
    font-weight: 700;
}

/* belonavi */

.beloNaviWpr{
    position: relative;
    padding: 30px 0 100px 0;
    background-color: #fff6f7;
}

.beloWave{
    position: absolute;
    left: 0;
    right: 0;
    top: 215px;
    width: 100%;
    margin: 0 auto;
}

.beloTtl{
    width: 130px;
    margin: 0 auto 30px auto;
}

.beloBodyWpr{
    position: relative;
    width: 93%;
    margin: 0 auto 30px auto;
    background-color: #FFF;
    border: 2px solid #f2acb6;
    padding: 25px 15px 15px 15px;
}

.clipbord{
    position: absolute;
    top: -15px;
    right: 10px;
    width: 45px;
}

.beloBody{
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    flex-direction: column-reverse;
    width: 100%;
}

.beloNaviSS{
    width: 218px;
    height: 233px;
    margin: 0 auto;
}

.beloLeedWpr{
    margin: 0 auto 5px auto;
    padding: 0 10px 0 10px;
}

.beloLeedWpr p{
    font-size: 16px;
    font-weight: 900;
    color: #e6b7bd;
    margin: 0 0 15px 0;
    text-align: center;
}

.beloLeed{
    padding: 0 0 20px 0;
    font-size: 13px;
    line-height: 19px;
    color: #333;
    text-align: center;
}

table.beloChart{
    width: 100%;
    overflow: hidden;
}

table.beloChart tr > *{
    border: 2px solid #FFF;
}

table.beloChart tr th:first-child,
table.beloChart td th:first-child{
    width: 40%;}

table.beloChart tr th{
    padding: 12px 0;
    background-color: #e5f1dd;
    text-align: center;
    font-size: 13px;
    font-weight: 700;
    color: #6ab637;
    text-align: center;
}

table.beloChart tr th:first-child{
    background-color: #ddeaf1;
    border-radius: 10px 0 0 0;
    color: #2890c8;
}

table.beloChart tr th:last-child{
    background-color: #fce9e9;
    border-radius: 0 10px 0 0;
    color: #f294a0;
}

table.beloChart tr td{
    padding: 10px 0;
    font-size: 13px;
    font-weight: 700;
    text-align: center;
    background-color: #f1f8ee;
    color: #6ab637;
}

table.beloChart tr td:first-child{
    background-color: #eef4f8;
    color: #2890c8;
    padding: 0 5px;
}

table.beloChart tr td:last-child{
    background-color: #fef4f4;
    color: #f294a0;
}

table.beloChart tr:last-child td:first-child{
    border-radius: 0 0 0 10px;
}

table.beloChart tr:last-child td:last-child{
    border-radius: 0 0 10px 0;
}

.beloUsageWpr{
    width: 90%;
    margin: 0 auto 170px auto;
}

.beloUsageTtl{
    width: 100%;
    margin: 0 auto 25px auto;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-size: 16px;
    font-weight: 900;
    line-height: 23px;
    color: #e36273;
    text-align: center;
}

.beloUsageBodyWpr{
    position: relative;
    height: 200px;
}

.beloUsageImg{
    position: relative;
    width: 100%;
    height: 200px;

    overflow: hidden;
}

.beloUsageImg img{
    width: 100%;
    height: auto;
}

.beloUsageBody{
    position: absolute;
    left: 0;
    right: 0;
    top: 90%;
    margin: 0 auto;
    width: 95%;
    padding: 20px 20px;
    background-color: #FFF;
    border-left: 6px solid #e36273;
    box-shadow: 0 0 10px rgba(0,0,0,.1);
}

.beloUsageBody p{
    margin: 0 0 10px 0;
    font-size: 13px;
    line-height: 19px;
    color: #333;
}

.beloUsageBody a{
    position: relative;
    display: block;
    width: 238px;
    height: 58px;
    padding: 0 10px 0 0;
    margin: 0 0 15px 0;
    border-radius: 29px;
    background-color: #6b7d91;
    font-size: 16px;
    font-weight: 700;
    color: #FFF;
    text-align: center;
    line-height: 55px;
}

.beloUsageBody a::after{
    position: absolute;
    display: block;
    content: "";
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto 0;
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    transform: rotate(45deg);
}

.beloCaution{
    font-size: 12px;
    line-height: 16px;
}

/* grid */

.grid{
    width: 100%;
    padding: 30px 0;
    background-image: url('https://pinofleur.com/wp-content/uploads/2026/01/squareDots.webp');
}

.keyTitleWpr{
    width: 80%;
    margin: 0 auto 60px auto; 
}

.keyTitleImg{
    width: 35px;
    margin: 0 auto 15px auto;
}

.keyTitle{
    position: relative;
    width: 100%;
    height: 62px;
    padding: 5px 0;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-size: 23px;
    font-weight: 900;
    text-align: center;
    color: #333;
    line-height: 27px;
}

.keyTitle::before{
    position: absolute;
    display: block;
    content: "";
    top: 0;
    bottom: 0;
    left: -10px;
    width: 22px;
    margin: auto 0;
    height: 62px;
    border: 2px solid #9d9d9d;
    border-right: 0px solid #9d9d9d;
}

.keyTitle::after{
    position: absolute;
    display: block;
    content: "";
    top: 0;
    bottom: 0;
    right: -10px;
    width: 22px;
    margin: auto 0;
    height: 62px;
    border: 2px solid #9d9d9d;
    border-left: 0px solid #9d9d9d;
}

.keyTitle span{
    color: #e36273;
}

.keyBodyWpr{
    width: 90%;
    margin: 0 auto 75px auto;
}

.redPine{
    width: 290px;
    margin: 0 auto 20px auto;
}

.keyBody{
    width: 100%;
}

.keyBody p{
    margin: 0 0 15px 0;
    width: 100%;
    font-size: 13px;
    line-height: 19px;
}

.keyBody p span{
    font-weight: 700;
    color: #e36273;
}

.keyBody div{
    font-size: 12px;
}

.containWpr{
    width: 90%;
    margin: 0 auto 30px auto;
}

.containTtl{
    margin: 0 auto 25px auto;
    font-size: 18px;
    font-weight: 700;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    text-align: center;
    color: #333;
    line-height: 50px;
    border-top: 2px solid #b2b2b2;
    border-bottom: 2px solid #b2b2b2;
}

.containTtl span{
    color: #e36273;
}

.containLeed p{
    margin: 0 auto 24px auto;
    font-size: 13px;
    line-height: 19px;
}

.containLeed p span{
    font-weight: 700;
    color: #e36273;
}

.containLeed p span.undeline{
    font-weight: 400;
    border-bottom: 1px solid #e36273;
}

.containLeed p span.large{
    display: inline-block;
    margin: 2px;
    padding: 3px 7px;
    font-size: 16px;
    font-weight: 700;
    color: #FFF;
    background-color: #e36273;
}

.graph{
    position: relative;
    margin: 0 auto;
    border: 2px solid #cecece;
    border-radius: 10px;
    background-color: #FFF;
}

.graph.extract{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    padding: 45px 15px 15px 15px;
}

.graph.vitamin{
    width: 100%;
    margin: 0 auto 65px auto;
    padding: 30px 20px 20px 20px;

}

.graph.ageing{
    width: 100%;
    margin: 0 auto 40px auto;
    padding: 30px 20px 20px 20px;
}

.extract .graphTtl{
    position: absolute;
    top: -17px;
    left: 0;
    right: 0;
    width: 245px;
    height: 34px;
    margin: 0 auto;
    background-color: #333333;
    font-size: 17px;
    line-height: 33px;
    color: #FFF;
    font-weight: 700;
    text-align: center;
    border-radius: 17px;
}

.component{
    width: 100%;
    margin: 0 20% 20px 20%;
}

.existingWpr{
    width: 50%;
    padding: 3.1% 0 0 0;
}

.existing_A{
    width: 100%;
    margin: 0 0 20px 0;
}

.existing_B{
    width: 100%;
}

.pf_graph{
    width: 50%;
    padding: 20px 0 0 0;
}

.graphNotice{
    padding: 5px 0 0 0;
    font-size: 13px;
    line-height: 18px;
    text-align: center;
    color: #333;
}


.vitamin .graphNotice{
    font-size: 12px;
    line-height: 18px;
    text-align: center;
    color: #999999;
}

.ageing .graphNotice{
    font-size: 12px;
    line-height: 18px;
    text-align: center;
    color: #999999;
}


.fleurTitleImg{
    width: 36px;
    height: 66px;
    margin: 0 auto 22px auto;
}

.herbalImg{
    width: 95%;
    margin: 0 auto;
}

.vitamin .graphTtl{
    position: absolute;
    top: -17px;
    left: 0;
    right: 0;
    width: 230px;
    height: 30px;
    margin: 0 auto;
    background-color: #333333;
    font-size: 13px;
    line-height: 30px;
    color: #FFF;
    font-weight: 700;
    text-align: center;
    border-radius: 17px;
}

.vitaminLeed{
    font-size: 13px;
    line-height: 20px;
    text-align: center;
}

.vitaminLeed span{
    font-size: 15px;
    font-weight: 700;
    color: #e36273;
}

.vitamin .diet{
    margin: 0 auto 1rem auto;
    text-align: center;
    overflow: scroll !important;
}

.ageing .diet{
    margin: 0 auto 1rem auto;
    text-align: center;
    overflow: scroll !important;
}

.vitamin .diet img{
    display: block;
    width: 480px !important;
    max-width: 480px;
    height: auto;
    padding: 0 0 15px 0;
    object-fit: contain;
}

.ageing .diet img{
    display: block;
    width: 480px !important;
    max-width: 480px;
    height: auto;
    padding: 0 0 15px 0;
    object-fit: contain;
}

.swiper{
    width: 161px;
    margin: 0 auto 10px auto;
    text-align: center;
}

.ageing .graphTtl{
    position: absolute;
    top: -17px;
    left: 0;
    right: 0;
    width: 330px;
    height: 30px;
    margin: 0 auto;
    background-color: #333333;
    font-size: 13px;
    line-height: 30px;
    color: #FFF;
    font-weight: 700;
    text-align: center;
    border-radius: 17px;
}

.ageingLeed{
    margin: 0 0 10px 0;
    font-size: 13px;
    line-height: 20px;
    text-align: center;
}

.ageingLeed span{
    font-size: 15px;
    font-weight: 400;
    color: #333;
}

.ageingLeed span span{
    font-size: 15px;
    font-weight: 700;
    color: #e36273;
}

.perAgeWpr{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 90%;
    margin: 0 auto 5px auto;
}

.perAge{
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin: 0 0 10px 0;
}

.vitMinTtem{
    width: 100%;
    margin: 0 0 10px 0;
    padding: 10px 0;
    border: 1px solid #86c2de;
    font-size: 13px;
    font-weight: 700;
    line-height: 21px;
    color: #86c2de;
    text-align: center;
}

.vitMinTtem span{
    font-size: 18px;
    font-weight: 900;
}

.perAge{
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.perAge div{
    width: 95%;
    margin: 0 auto;
}

.renge{
    margin: 0 0 10px 0;
    padding: 2px 10px 0 10px;
    width: 100%;
    height: 24px;
    font-size: 13px;
    font-weight: 700;
    text-align: center;
    color: #FFF;
}

.tw .renge{
    background-color: #ffd200;
}

.thi .renge{
    background-color: #94c35a;
}

.four .renge{
    background-color: #6ea2dc;
}

.decItems{
    width: 100%;
    margin: 0 auto;
    padding : 5px 0 0 0;
    font-size: 13px;
    font-weight: 700;
    text-align: center;
    color: #86c2de;
}

.perAge div p{
    width: 100%;
    font-size: 18px;
    font-weight: 900;
    text-align: center;
    color: #86c2de;
}

.nutriList{
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 auto;
    border: 2px solid #cecece;
    border-radius: 10px;
    background-color: #FFF;
}

.nutriTtl{
    width: 100%;
    padding: 10px 0;
}

.nutriTtl p{
    font-size: 15px;
    font-weight: 400;
    color: #333;
    text-align: center;
}

.nutriTtl span{
    display: block;
    font-size: 12px;
    font-weight: 400;
    color: #333;
    text-align: center;
}

.nutriItemWpr{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
}

.nutriItem{
    font-size: 13px;
}

.nutriItem.half{
    width: 50%;
    padding: 10px 0;
    text-align: center;
    border-top: 2px solid #cecece;
    border-left: 2px solid #cecece;
}

.nutriItem.tri{
    width: 33%;
    padding: 10px 0;
    text-align: center;
    border-top: 2px solid #cecece;
    border-right: 2px solid #cecece;
}

.nutriItem:first-child{
    border-left: 0px solid #cecece;
}

.nutriItem:last-child{
    border-right: 0px solid #cecece;
}


/* history */

.historyWpr{
    width: 90%;
    margin: 0 auto;
    padding: 45px 0 70px 0;
}

.historyTtlWpr{
    width: 100%;
    margin: 0 auto 40px auto;
}

.historyTtl{
    height: 30px;
    margin: 0 auto 10px auto;
    font-size: 22px;
    font-weight: 900;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    color: #333;
    text-align: center;
}

.historyTtlWpr span{
    display: block;
    width: 100px;
    height: 2px;
    margin: 0 auto;
    background-color: #0046a2;
}

.startingWpr{
    padding: 0 0 30px 0;
    margin: 0 auto 30px auto;
    border-bottom: 1px solid #e8e8e8;
}

.startingBody{
    width: 100%;
}

.startingBody p{
    margin: 0 0 25px 0;
    font-size: 16px;
    line-height: 28px;
}

.startingImg{
    width: 298px;
    margin: 0 auto 20px auto;
}

.femtecTtl{
    margin: 0 auto 30px auto;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
}

.femtecBodyWpr{
    display: flex;
    justify-content: space-between;
    flex-direction: column-reverse;
    margin: 0 auto 5px auto;
}

.femtecImg{
    width: 300px;
    margin: 0 auto 20px auto;
}

.femtecBody{
    width: 100%;
    margin: 0 auto 20px auto;
    font-size: 13px;
    line-height: 19px;
}

.femtecLeed{
    font-size: 13px;
    line-height: 19px;
}

/* archive */

.archive{
    width: 90%;
    margin: 0 auto;
    padding: 0 0 55px 0;
}

.archiveTtl{
    margin: 0 auto 45px auto;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-size: 24px;
    font-weight: 700;
    text-align: center;
    color: #333;
    letter-spacing: .5rem;
}

.archiveList{
    width: 100%;
    margin: 0 auto 40px auto;
}

.archiveUnit{
    width: 300px;
    margin: 0 auto 30px auto;
}

.archiveUnitImg{
    margin: 0 0 10px 0;
}

.archiveUnitTtl{
    margin: 0 0 15x 0;
    font-size: 13px;
    font-weight: 400;
    line-height: 19px;
}

.latest-posts__title{
    color: #333;
    font-size: 14px;
    line-height: 16px;
}

.timestamp{
    font-size: 12px;
    color: #e36273;
}

a.archives{
    position: relative;
    display: block;
    width: 200px;
    height: 44px;
    margin: 0 auto;
    border: 1px solid #e36273;
    border-radius: 22px;
    font-size: 17px;
    line-height: 42px;
    text-align: center;
    color: #e36273;
}

a.archives::after{
    position: absolute;
    display: block;
    content: "";
    top: 0;
    bottom: 0;
    right: 20px;
    width: 7px;
    height: 7px;
    margin: auto 0;
    border-top: 1px solid #e36273;
    border-right: 1px solid #e36273;
    transform: rotate(45deg);
}


/* faq */
.faqWpr{
    width: 100%;
    padding: 50px 0 20px 0;
    background-color: #fff6f7;
}

.faq{
    width: 90%;
    margin: 0 auto;
    font-weight: 400;
}

.faqTtl{
    margin: 0 auto 40px auto; 
}

.faqTtl h3{
    margin: 0 auto 20px auto;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-size: 33px;
    font-weight: 400;
    color: #e9acb4;
    text-align: center;
}

.faqTtl p{
    margin: 0 auto 20px auto;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-size: 13px;
    font-weight: 400;
    color: #333;
    text-align: center;
}

.qaItem {
	margin-bottom: 12px;
	padding: 5px 0;
	border-radius: 4px;
    background-color: #FFF;/*QとAの背景色*/
    border-radius: 8px;
}

.qaBox__q {
	position: relative !important;
	padding: 10px 50px 10px 57px;
	font-size: 13px;
	font-weight: 400;
	position: relative;
	color: #333;
	line-height: 20px;
}

.qaBox__q br{
    display: none;
}

.qaBox__q span{
	position: absolute;
	display: block;
    top: 0;
    bottom: 0;
	left: 17px;
    width: 20px;
    height: 20px;
    padding: 0;
    margin: auto 0;
    border-radius: 10px;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
	font-size: 27px;
	font-weight: 700;
	color: #e9acb4;
    text-align: center;
    line-height: 20px;
}

.qaBox__a {
	display: none;
}

.qaBox__content {
	position: relative;
	padding: 10px 50px 10px 57px;
	border-radius: 8px;
	font-size: 13px;
	line-height: 20px;
	font-style: normal;
	font-weight: 400;
	position: relative;
	color: #333;
}

.qaBox__content span{
	position: absolute;
	display: block;
	left: 17px;
    width: 20px;
    height: 20px;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    border-radius: 10px;
	font-size: 31px;
	font-weight: 700;
	color: #333;
    text-align: center;
}

.qaBox__icon {
	width: 30px;
	height: 20px;
	position: absolute;
	right: 3%;
	top: 50%;
	transform: translateY(-50%);
}

.qaBox__arw {
	position: absolute;
	top: 0;
	right: 10px;
	width: 12px;
	height: 12px;
	margin: 0;
	border-bottom: 2px solid #dadada;
	border-right: 2px solid #dadada;
	transform: rotate(45deg);
	transition: .3s;
}

.qaBox__icon.is-open .qaBox__arw {
	transform: rotate(225deg);
	transition: .3s;
	bottom: -3px;
}

/* footer */

footer{
    width: 100%;
    padding: 20px 0;
    border-bottom: 1px solid #e7e7e7;
}

.footerInner{
    width: 100%;
    margin: 0 auto;
}

.footerLogo{
    width: 100%;
    margin: 0 auto 1rem auto;
    border-bottom: 1px solid #e9e9e9;
    text-align: center;
}

.footerLogo img{
    display: block;
    width: 180px;
    height: auto;
    margin: 0 auto 20px auto;
}

.footerMenu ul{
    width: 100%;
}

.footerMenu ul li a{
    display: block;
    padding: 10px 0;
    font-size: 13px;
    color: #333;
    text-align: center;
}

.footerMenu ul li a span{
    font-size: 11px;
    line-height: 11px;
    font-weight: 400;
}

.cr{
    width: 100%;
    padding: 17px 0;
    font-size: 12px;
    text-align: center;
    color: #666666;
}


/* company */

.companyWpr{
    padding: 40px 0;
}

.companyTtl{
    margin: 0 auto 30px auto; 
}

.companyTtl h1{
    margin: 0 auto 10px auto;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-size: 23px;
    font-weight: 700;
    color: #e9acb4;
    text-align: center;
}

.companyTtl p{
    margin: 0 auto 20px auto;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-size: 12px;
    font-weight: 400;
    color: #333;
    text-align: center;
}

table.company{
    width: 90%;
    margin: 0 auto;
    border-top: 1px dotted #CCC;
}

table.company tr td{
    display: block;
    width: 100%;
    margin: 0 0 1px 0;
    padding: 10px 15px;
    border: 0px dotted #CCC;
    border-bottom: 1px dotted #CCC;
    color: #333;
    font-size: 13px;
    font-weight: 400;
}

table.company tr td:first-child{
    width: 100%;
    background-color: #f8f8f8;
    border-bottom: 1px dotted #FFF;
    font-weight: 700;
}

table.company tr:first-child td:first-child{
    border-top: 1px dotted #f8f8f8;
}

table.company tr td a{
    color: #e9acb4;
    font-weight: 700;
}

table.company tr td p{
    line-height: 20px;
    margin: 0 0 15px 0;
}

table.company tr td p span.payType{
    font-weight: 700;
}


/* privacy policy */

.ppLeed{
    margin: 0 auto 1.5rem auto;
    font-size: 13px;
    line-height: 21px;
}

.ppOuter{
    width: 92%;
    margin: 0 auto;
    font-size: 13px;
}


ol.pp{
    padding: 0 0 0 10px;
}

ol.pp li{
    margin: 0 0 1rem 0;
}

ol.pp li::marker{
    display: block;
    position: relative;
    margin: 0 10px 0 0;
    width: 30px;
    height: 30px;
    font-size: 13px;
    font-weight: 700;
    color: #efb4b4;
}

ol.pp li ul{
    list-style-type: disc;
    margin: 0 0 10px 0;
    padding: 0 0 0 20px;
}

ol.pp li ul li::marker{
    display: block;
    position: relative;
    margin: 0 10px 0 0;
    width: 30px;
    height: 30px;
    font-size: 13px;
    font-weight: 700;
    color: #333 !important;
}

ol.pp li ul li{
    margin: 0;
    line-height: 23px;
    font-size: 13px;
}

ol.pp li p{
    margin: 0 0 10px 5px;
    font-size: 13px;
    font-weight: 700;
}

ol.pp li div{
    margin: 0 0 10px 5px; 
    font-size: 13px;
}

.listItemTag{
    font-weight: 700;
    margin: 0 0 10px 5px !important;
    font-size: 14px;
}


.listItemTag{
    font-weight: 700;
    margin: 0 0 10px 5px !important;
}

ul.numberingList{
    list-style: decimal !important;
    font-weight: 400;
}


ul.nonStyle{
    list-style: none !important;
}

ul.numberingList li::marker{
    font-weight: 400 !important;
}

ul.custam_hyphone{
    list-style: '-　' !important;
}


.fixHeader{
    position: fixed;
    bottom: 10px;
    left: 0;
    right: 0;
    width: 100%;
    height: 100px;
    text-align: center;
    z-index: 9999;
	margin: 0 auto;
	bottom: -80px;
	opacity: 0;
    
}

a.floater.sp{
    display: block;
    width: 350px;
    height: auto;
    margin: 0 auto;
    text-align: center;
    transition: .2s;
}

a.floater.pc{
    display: none;
}

.floaterWpr a.floater:hover{
    transform: translateY(2px);
    box-shadow: 0 3px 0 #0161c1;
    transition: .2s;
}

.pc{
    display: none;
}

}

@media screen and (min-width:1050px){

img{
	display: block;
	width: 100%;
	height: auto;
}

body{
	position: relative;
    padding: 0 0 0 0;
}

body.front{
    padding: 0 0 100px 0;
}

header{
    width: 100%;
    height: 89px;
    margin: 0 auto;
    padding: 34px 0; 
    box-shadow: 0 0 5px rgba(0,0,0,.2);
}

header .headerWpr{
    display: flex;
    justify-content: space-between;
    width: 1050px;
    margin: 0 auto;
}

header h1,
header div {
    width: 159px;
    height: 21px;
}

header h1 img,
header div img{
    width: 100%;
    height: auto;
}

.headerWpr nav{
    display: block;
    width: 830px;
    height: 21px;
}

.headerWpr nav ul{
    display: flex;
    justify-content: flex-end;
}

.headerWpr nav ul li a{
    display: block;
    height: 21px;
    padding: 0 13px;
    font-size: 14px;
    font-weight: 700;
    color: #333;
    text-align: center;
    line-height: 20px;
}

.fvWpr{
    position: relative;
    width: 100%;
    height: 685px;
    background: linear-gradient(to right, #eff0f4 0%, #e7ebee 100%);
}

.fv{
    position: relative;
    width: 1050px;
    height: 685px;
    margin: 0 auto;
    /*background-color: green;*/
}

.fvBody{
    width: 535px;
    margin: 0 0 0 auto;
    /*background-color: orange;*/
}

.mainImg{
    position: absolute;
    width: 495px;
    height: 630px;
    left: -10px;
    top: 35px;
    overflow: hidden;
}

.mainImg img{
    width: 100%;
    height: auto;
}

.mainCatch{
    width: 400px;
    margin: 0 auto 25px auto;
    padding: 60px 0 0 0;
}

/* fv */

.fvBody p{
    width: 425px;
    height: 85px;
    margin: 0 auto 10px auto;
    padding: 10px 0 0 43px;
    background-image: url('http://pinofleur.com/wp-content/uploads/2026/01/pine.webp');
    background-size: 43px 75px;
    background-repeat: no-repeat;
    font-size: 18px;
    font-weight: 400;
    line-height: 30px;
    text-align: center;
    /*background-color: pink;*/
}

.fvItemImg{
    width: 100%;
    text-align: center;
}

.fvItemImg img{
    display: block;
    width: 190px;
    height: auto;
    margin: 0 auto;
}

.fvCTA{
    display: block;
    width: 505px;
    margin: 0 auto;
}

.fvCTA img{
    width: 100%;
    height: auto;
}

.wave-rect{
    position: absolute;
    bottom: 0;
    --h: 95px;
    --period: 1500px;
    --fill: #FFF;      /* 矩形の塗り */

    width: 100%;
    height: var(--h);
    background: var(--fill);

    /* マスクを横に繰り返す */
    -webkit-mask-repeat: repeat-x;
    mask-repeat: repeat-x;

    -webkit-mask-size: var(--period) var(--h);
    mask-size: var(--period) var(--h);

    /* 重要：白=表示、黒=非表示。
        波より下を白で塗りつぶしたマスク（上辺が波の形になる） */
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 65' preserveAspectRatio='none'%3E%3Cpath d='M0 32.5 Q150 0 300 32.5 T600 32.5 L600 65 L0 65 Z' fill='white'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 65' preserveAspectRatio='none'%3E%3Cpath d='M0 32.5 Q150 0 300 32.5 T600 32.5 L600 65 L0 65 Z' fill='white'/%3E%3C/svg%3E");
}

/* intro */

.introWpr{
    width: 100%;
    padding: 45px 0 0 0;
    background: linear-gradient(to bottom, #FFF 0%, #fde8ea 100%);
}

.intro{
    width: 730px;
    height: 100px;
    margin: 0 auto 45px auto;
}

.intro h2{
    width: 100%;
    margin: 0 0 22px 0;
    text-align: center;
}

.intro h2 img{
    display: inline;
    width: 285px;
    height: auto;
}

.intro h2 span{
    font-size: 32px;
    font-weight: 400;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    color: #333;
}

.gradLine{
    width: 525px;
    height: 2px;
    margin: 0 auto 22px auto;
    background: linear-gradient(to right, #FFF, #f2aeb7 50%, #FFF 100%);
}

.intro p{
    font-size: 17px;
    font-weight: 400;
    text-align: center;
}

.introBody{
    position: relative;
    width: 1010px;
    margin: 0 auto;
    padding: 0 0 270px 0;
}

.imgWpr{
    position: relative;
    width: 1000px;
    height: 360px;
    z-index: 100;
}

.introImg{
    position: absolute;
    width: 260px;
}

.introImg.ls_1{
    top: 0;
    left: 0;
    z-index: 50;
}

.introImg.ls_2{
    top: 20px;
    left: 240px;
    z-index: 60;
}

.introImg.ls_3{
    top: 0;
    right: 240px;
    z-index: 70;
}

.introImg.ls_4{
    top: 20px;
    right: 0;
    z-index: 80;
}

.introLeed{
    position: absolute;
    width: 805px;
    left: 0;
    right: 0;
    top: 340px;
    margin: 0 auto;
    padding: 45px 0;
    border: 5px solid #f7e4e6;
    background-color: #FFF;
    font-size: 16px;
    line-height: 26px;
    text-align: center;
    box-shadow: 0 0 15px rgba(190,100,110,.3);
    z-index: 110;
}

.introLeed span{
    font-weight: 700;
    color: #e36273;
}

/* news */

.newsWpr{
    width: 800px;
    margin: 0 auto;
    padding: 70px 0 140px 0;
}

.newsTtl{
    margin: 0 auto 55px auto;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    color: #999;
    font-size: 24px;
    text-align: center;
    letter-spacing: .6rem;
}

ul.news{
    width: 100%;
    border-top: 1px solid #e5e5e5;
}

ul.news li {
    border-bottom: 1px solid #e5e5e5;
    padding: 20px 0;
}

ul.news li a{
    display: flex;
    font-size: 16px;
    color: #333;
    line-height: 22px;
}

ul.news li span{
    display: inline-block;
    width: 140px;
    text-align: center;
    font-size: 16px;
    color: #ff9999;
}

ul.news li p{
    width: calc(100% -170px);
}

/* about */

.about{
    width: 880px;
    margin: 0 auto;
    padding: 0 0 95px 0;
}

.aboutTtlWpr{
    display: flex;
    justify-content: center;
    height: 123px;
    margin: 0 auto 40px auto;
}

.aboutTtlAdd{
    height: 123px;
}

.aboutTtlEql{
    margin: 0 0 0 25px;
    height: 123px;
    padding: 42px 0;
}

.aboutIntro{
    width: 800px;
    margin: 0 auto 75px auto;
    padding: 45px;
    font-size: 16px;
    line-height: 28px;
    text-align: center;
    box-shadow: 0 0 10px rgba(0,0,0,.1);
}

.aboutSubLeed{
    width: 800px;
    margin: 0 auto 75px auto;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-size: 25px;
    line-height: 37px;
    text-align: center;
}

.aboutSubLeed span{
    background: linear-gradient(to bottom, #FFF 0%, #FFF 50%, #fdeff0 50%, #fdeff0 100%);
}

.ecItemUnitWpr{
    display: flex;
    justify-content: space-between;
    width: 880px;
    margin: 0 auto 35px auto;
}

.ecItemUnit{
    width: 280px;
    border-radius: 10px;
    padding: 35px;
}

.ecItemUnit.shin{
    background-color: #f4fcea;
}

.ecItemUnit.teru{
    background-color: #feefee;
}

.ecItemUnit.rin{
    background-color: #f1f8fc;
}

.ecItemUnit .logo{
    width: 100%;
    height: 18px;
    margin: 0 0 25px 0;
    text-align: center;
}

.ecItemUnit .logo img{
    display: block;
    margin: 0 auto;
    width: auto;
    height: 100%;
}

.ecItemUnit .itemName{
    width: 100%;
    height: 55px;
    margin: 0 0 25px 0;
    text-align: center;
}

.ecItemUnit .itemName img{
    display: block;
    margin: 0 auto;
    width: auto;
    height: 100%;
}

.itemImg{
    width: 200px;
    height: 200px;
    border-radius: 100px;
    overflow: hidden;
    margin: 0 auto 20px auto;
}

.shin .itemImg{
    border: 7px solid #e9f5d9;
}
.teru .itemImg{
    border: 7px solid #ffdfe3;
}
.rin .itemImg{
    border: 7px solid #d5edff;
}

.ecItemUnit .itemLeed{
    margin: 0 auto 20px auto;
    font-size: 19px;
    font-weight: 700;
    line-height: 26px;
    text-align: center;
    color: #333;
}

.ecItemUnit .itemBody{
    margin: 0 auto 25px auto;
    font-size: 14px;
    line-height: 21px;
}

.ecItemUnit .price{
    font-size: 17px;
    line-height: 35px;
    text-align: center;
    margin: 0 auto 20px auto;
    padding: 0 0 0 40px;
}

.ecItemUnit .price span{
    font-family: "Oswald", sans-serif;
    font-size: 35px;  
    font-weight: 600;
    color: #333;
}

.ecItemUnit .price span span{
    font-size: 25px;  
}

.buyBtn{
    position: relative;
    display: block;
    width: 100%;
    height: 49px;
    padding: 0 10px 0 0;
    border-radius: 25px;
    background: linear-gradient(to bottom, #ffc8cf 0%, #ed9fa7 100%);
    font-size: 20px;
    font-weight: 700;
    color: #FFF;
    line-height: 49px;
    text-align: center;
}

.buyBtn::after{
    position: absolute;
    display: block;
    content: "";
    top: 0;
    bottom: 0;
    right: 18px;
    width: 10px;
    height: 10px;
    margin: auto 0;
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    transform: rotate(45deg);
}

.bottomNotice{
    font-size: 14px;
    text-align: center;
    line-height: 20px;
    color: #999999;
}

.itemInfoWpr{
    width: 100%;
    padding: 50px 0 0 0;
}

.itemInfoWprTtl{
    margin: 0 auto 55px auto;
    padding: 20px 0;
    font-size: 32px;
    font-weight: 400;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    color: #333;
    text-align: center;
    border-top: 1px solid #adadad;
    border-bottom: 1px solid #adadad;
}

.itemInfoWprTtl span{
    color: #eb8f9b;
}

.itemInfoWprBody{
    font-size: 16px;
    line-height: 28px;
    text-align: center;
    color: #333;
}

.itemInfoWprBody span{
    color: #eb8f9b;
    font-weight: 700;
}

/* belonavi */

.beloNaviWpr{
    position: relative;
    padding: 65px 0 100px 0;
    background-color: #fff6f7;
}

.beloWave{
    position: absolute;
    left: 0;
    right: 0;
    top: 215px;
    width: 1200px;
    margin: 0 auto;
}

.beloTtl{
    width: 210px;
    margin: 0 auto 60px auto;
}

.beloBodyWpr{
    position: relative;
    width: 720px;
    margin: 0 auto 100px auto;
    background-color: #FFF;
    border: 4px solid #f2acb6;
    padding: 35px;
}

.clipbord{
    position: absolute;
    top: -25px;
    right: 10px;
    width: 90px;
    height: 100px;
}

.beloBody{
    position: relative;
    width: 100%;
}

.beloNaviSS{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 218px;
    height: 233px;
}

.beloLeedWpr{
    margin: 0 auto 5px auto;
    padding: 0 10px 0 270px;
}

.beloLeedWpr p{
    font-size: 21px;
    font-weight: 900;
    color: #e6b7bd;
    margin: 0 0 30px 0;
}

.beloLeed{
    padding: 0 0 20px 0;
    font-size: 14px;
    line-height: 22px;
    color: #333;
}

table.beloChart{
    width: 100%;
    overflow: hidden;
}

table.beloChart tr > *{
    width: 32%;
    border: 2px solid #FFF;
}

table.beloChart tr th{
    padding: 18px 0;
    background-color: #e5f1dd;
    text-align: center;
    font-size: 18px;
    font-weight: 700;
    color: #6ab637;
}

table.beloChart tr th:first-child{
    background-color: #ddeaf1;
    border-radius: 10px 0 0 0;
    color: #2890c8;
}

table.beloChart tr th:last-child{
    background-color: #fce9e9;
    border-radius: 0 10px 0 0;
    color: #f294a0;
}

table.beloChart tr td{
    padding: 18px 0;
    font-size: 15px;
    font-weight: 700;
    text-align: center;
    background-color: #f1f8ee;
    color: #6ab637;
}

table.beloChart tr td:first-child{
    background-color: #eef4f8;
    color: #2890c8;
}

table.beloChart tr td:last-child{
    background-color: #fef4f4;
    color: #f294a0;
}

table.beloChart tr:last-child td:first-child{
    border-radius: 0 0 0 10px;
}

table.beloChart tr:last-child td:last-child{
    border-radius: 0 0 10px 0;
}

.beloUsageWpr{
    width: 930px;
    margin: 0 auto;
}

.beloUsageTtl{
    width: 630px;
    margin: 0 auto 75px auto;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-size: 30px;
    font-weight: 900;
    line-height: 41px;
    color: #e36273;
}

.beloUsageBodyWpr{
    position: relative;
    padding: 0 0 0 80px;
}

.beloUsageBody{
    position: absolute;
    top: 0;
    bottom: 0;
    left: -10px;
    margin: auto 0;
    width: 482px;
    height: 295px;
    padding: 30px 40px;
    background-color: #FFF;
    border-left: 6px solid #e36273;
    box-shadow: 0 0 10px rgba(0,0,0,.1);
}

.beloUsageBody p{
    margin: 0 0 20px 0;
    font-size: 16px;
    line-height: 28px;
    color: #333;
}

.beloUsageBody a{
    position: relative;
    display: block;
    width: 238px;
    height: 58px;
    padding: 0 10px 0 0;
    margin: 0 0 25px 0;
    border-radius: 29px;
    background-color: #6b7d91;
    font-size: 16px;
    font-weight: 700;
    color: #FFF;
    text-align: center;
    line-height: 55px;
}

.beloUsageBody a::after{
    position: absolute;
    display: block;
    content: "";
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto 0;
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    transform: rotate(45deg);
}

.beloCaution{
    font-size: 12px;
    line-height: 16px;
}

.grid{
    width: 100%;
    padding: 70px 0 30px 0;
    background-image: url('https://pinofleur.com/wp-content/uploads/2026/01/squareDots.webp');
}

.keyTitleWpr{
    width: 760px;
    margin: 0 auto 60px auto; 
}

.keyTitleImg{
    width: 65px;
    margin: 0 auto 50px auto;
}

.keyTitle{
    position: relative;
    width: 100%;
    height: 62px;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-size: 33px;
    font-weight: 900;
    text-align: center;
    color: #333;
    line-height: 62px;
}

.keyTitle::before{
    position: absolute;
    display: block;
    content: "";
    top: 0;
    bottom: 0;
    left: -10px;
    width: 28px;
    margin: auto 0;
    height: 62px;
    border: 4px solid #9d9d9d;
    border-right: 0px solid #9d9d9d;
}

.keyTitle::after{
    position: absolute;
    display: block;
    content: "";
    top: 0;
    bottom: 0;
    right: -10px;
    width: 28px;
    margin: auto 0;
    height: 62px;
    border: 4px solid #9d9d9d;
    border-left: 0px solid #9d9d9d;
}

.keyTitle span{
    color: #e36273;
}

.keyBodyWpr{
    display: flex;
    justify-content: space-between;
    width: 880px;
    margin: 0 auto 75px auto;
}

.redPine{
    width: 290px;
}

.keyBody{
    width: 550px;
}

.keyBody p{
    margin: 0 0 15px 0;
    width: 550px;
    font-size: 16px;
    line-height: 28px;
}

.keyBody p span{
    font-weight: 700;
    color: #e36273;
}

.keyBody div{
    font-size: 12px;
}

.containWpr{
    width: 880px;
    margin: 0 auto 120px auto;
}

.containTtl{
    margin: 0 auto 65px auto;
    font-size: 23px;
    font-weight: 700;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-weight: 700;
    text-align: center;
    color: #333;
    line-height: 62px;
    font-size: 23px;
    border-top: 2px solid #b2b2b2;
    border-bottom: 2px solid #b2b2b2;
}

.containTtl span{
    color: #e36273;
}

.containLeed p{
    margin: 0 auto 44px auto;
    font-size: 16px;
    line-height: 28px;
}

.containLeed p span{
    font-weight: 700;
    color: #e36273;
}

.containLeed p span.undeline{
    font-weight: 400;
    border-bottom: 1px solid #e36273;
}

.containLeed p span.large{
    display: inline-block;
    margin: 0 5px;
    padding: 3px 7px;
    font-size: 23px;
    font-weight: 700;
    color: #FFF;
    background-color: #e36273;
}

.graph{
    position: relative;
    margin: 0 auto;
    border: 2px solid #cecece;
    border-radius: 10px;
    background-color: #FFF;
}

.graph.extract{
    width: 780px;
    height: 415px;
}

.graph.vitamin{
    width: 780px;
    height: 540px;
    margin: 0 auto 65px auto;
    padding: 60px 27px 0 27px;

}

.graph.ageing{
    width: 780px;
    height: 650px;
    margin: 0 auto 40px auto;
    padding: 60px 27px 0 27px;
}

.extract .graphTtl{
    position: absolute;
    top: -17px;
    left: 0;
    right: 0;
    width: 245px;
    height: 34px;
    margin: 0 auto;
    background-color: #333333;
    font-size: 17px;
    line-height: 33px;
    color: #FFF;
    font-weight: 700;
    text-align: center;
    border-radius: 17px;
}

.component{
    position: absolute;
    top: 43px;
    left: 32px;
    width: 240px;
    height: 162px;
}

.existing_A{
    position: absolute;
    bottom: 42px;
    left: 24px;
    width: 231px;
    height: 115px;
}

.existing_B{
    position: absolute;
    bottom: 42px;
    left: 270px;
    width: 238px;
    height: 158px;
}

.pf_graph{
    position: absolute;
    bottom: 42px;
    right: -15px;
    width: 274px;
    height: 334px; 
}

.graphNotice{
    font-size: 13px;
    line-height: 40px;
    text-align: center;
    color: #333;
}

.vitamin .graphNotice{
    font-size: 13px;
    line-height: 30px;
    text-align: center;
    color: #999999;
}

.ageing .graphNotice{
    font-size: 13px;
    line-height: 30px;
    text-align: center;
    color: #999999;
}


.fleurTitleImg{
    width: 36px;
    height: 66px;
    margin: 0 auto 22px auto;
}

.herbalImg{
    width: 846px;
    margin: 0 auto;
}

.vitamin .graphTtl{
    position: absolute;
    top: -17px;
    left: 0;
    right: 0;
    width: 310px;
    height: 34px;
    margin: 0 auto;
    background-color: #333333;
    font-size: 17px;
    line-height: 33px;
    color: #FFF;
    font-weight: 700;
    text-align: center;
    border-radius: 17px;
}

.vitaminLeed{
    position: absolute;
    width: 510px;
    height: 53px;
    top: 57px;
    left: 165px;
    font-size: 17px;
    line-height: 26px;
}

.vitaminLeed span{
    font-size: 26px;
    font-weight: 700;
    color: #e36273;
}

.vitamin .diet{
    margin: 0 auto 1rem auto;
    text-align: center;
}

.ageing .diet{
    margin: 0 auto 1rem auto;
    text-align: center;
}


.ageing .graphTtl{
    position: absolute;
    top: -17px;
    left: 0;
    right: 0;
    width: 460px;
    height: 34px;
    margin: 0 auto;
    background-color: #333333;
    font-size: 17px;
    line-height: 33px;
    color: #FFF;
    font-weight: 700;
    text-align: center;
    border-radius: 17px;
}

.ageingLeed{
    position: absolute;
    width: 510px;
    height: 53px;
    top: 45px;
    left: 165px;
    font-size: 18px;
    font-weight: 700;
    line-height: 32px;
    text-align: center;
    color: #333;
}

.ageingLeed span{
    font-size: 26px;
    font-weight: 400;
    color: #333;
}

.ageingLeed span span{
    font-weight: 700;
    color: #e36273;
}

.perAgeWpr{
    display: flex;
    justify-content: space-between;
    width: 672px;
    margin: 0 auto 5px auto;
}

.perAge{
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin: 0 0 20px 0;
}

.vitMinTtem{
    width: 275px;
    height: 80px;
    padding: 10px 0;
    border: 1px solid #86c2de;
    font-size: 15px;
    font-weight: 700;
    line-height: 26px;
    color: #86c2de;
    text-align: center;
}

.vitMinTtem span{
    font-size: 23px;
    font-weight:900;
}

.perAge{
    width: 355px;
}

.renge{
    margin: 0 0 3px 0;
    width: 107px;
    height: 28px;
    font-size: 17px;
    font-weight: 700;
    text-align: center;
    color: #FFF;
}

.tw .renge{
    background-color: #ffd200;
}

.thi .renge{
    background-color: #94c35a;
}

.four .renge{
    background-color: #6ea2dc;
}

.decItems{
    width: 100%;
    margin: 0 auto 5px auto;
    padding: 5px 0 0 0;
    font-size: 15px;
    line-height:15px;
    font-weight: 400;
    text-align: center;
    color: #86c2de;
}

.perAge div p{
    width: 100%;
    font-size: 24px;
    line-height: 24px;
    font-weight: 900;
    text-align: center;
    color: #86c2de;
}

.nutriList{
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 780px;
    margin: 0 auto;
    border: 2px solid #cecece;
    border-radius: 10px;
    background-color: #FFF;
}

.nutriTtl{
    width: 205px;
    padding: 15px 0;
}

.nutriTtl p{
    font-size: 16px;
    font-weight: 400;
    color: #333;
    text-align: center;
}

.nutriTtl span{
    display: block;
    font-size: 12px;
    font-weight: 400;
    color: #333;
    text-align: center;
}

.nutriItemWpr{
    display: flex;
    justify-content: space-between;
    width: 575px;
}

.nutriItem{
    width: 20%;
    padding: 15px 0;
    text-align: center;
    border-left: 2px solid #cecece;
}

/* history */

.historyWpr{
    width: 860px;
    margin: 0 auto;
    padding: 90px 0 130px 0;
}

.historyTtlWpr{
    width: 100%;
    margin: 0 auto 80px auto;
}

.historyTtl{
    height: 32px;
    margin: 0 auto 20px auto;
    font-size: 32px;
    font-weight: 900;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    color: #333;
    text-align: center;
}

.historyTtlWpr span{
    display: block;
    width: 115px;
    height: 3px;
    margin: 0 auto;
    background-color: #0046a2;
}

.startingWpr{
    display: flex;
    justify-content: space-between;
    padding: 0 0 60px 0;
    margin: 0 auto 60px auto;
    border-bottom: 1px solid #e8e8e8;
}

.startingBody{
    width: 455px;
}

.startingBody p{
    margin: 0 0 45px 0;
    font-size: 16px;
    line-height: 28px;
}

.startingImg{
    width: 298px;
}

.femtecTtl{
    margin: 0 auto 80px auto;
    font-size: 21px;
    font-weight: 700;
}

.femtecBodyWpr{
    display: flex;
    justify-content: space-between;
    margin: 0 auto 5px auto;
}

.femtecImg{
    width: 300px;
}

.femtecBody{
    width: 525px;
    font-size: 16px;
    line-height: 28px;
}

.femtecLeed{
    font-size: 16px;
    line-height: 28px;
}

/* archive */

.archive{
    width: 960px;
    margin: 0 auto;
    padding: 0 0 55px 0;
}

.archiveTtl{
    margin: 0 auto 45px auto;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-size: 24px;
    font-weight: 700;
    text-align: center;
    color: #333;
    letter-spacing: .5rem;
}

.archiveList{
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin: 0 auto 70px auto;
}

.archiveUnit{
    width: 300px;
}

.archiveUnitImg{
    margin: 0 0 15px 0;
}

.archiveUnitTtl{
    margin: 0 0 10px 0;
    font-size: 15px;
    font-weight: 400;
    line-height: 22px;
}

.timestamp{
    font-size: 15px;
    color: #e36273;
}

.latest-posts__title{
    color: #333;
}

a.archives{
    position: relative;
    display: block;
    width: 300px;
    height: 44px;
    margin: 0 auto;
    border: 1px solid #e36273;
    border-radius: 22px;
    font-size: 17px;
    line-height: 42px;
    text-align: center;
    color: #e36273;
}

a.archives::after{
    position: absolute;
    display: block;
    content: "";
    top: 0;
    bottom: 0;
    right: 20px;
    width: 7px;
    height: 7px;
    margin: auto 0;
    border-top: 1px solid #e36273;
    border-right: 1px solid #e36273;
    transform: rotate(45deg);
}


/* faq */
.faqWpr{
    width: 100%;
    padding: 70px 0 80px 0;
    background-color: #fff6f7;
}

.faq{
    width: 1000px;
    margin: 0 auto;
}

.faqTtl{
    margin: 0 auto 40px auto; 
}

.faqTtl h3{
    margin: 0 auto 40px auto;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-size: 43px;
    font-weight: 400;
    color: #e9acb4;
    text-align: center;
}

.faqTtl p{
    margin: 0 auto 20px auto;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-size: 17px;
    font-weight: 400;
    color: #333;
    text-align: center;
}

.qaItem {
	margin-bottom: 12px;
	padding: 5px 0;
	border-radius: 4px;
    background-color: #FFF;/*QとAの背景色*/
    border-radius: 8px;
}

.qaBox__q {
	position: relative !important;
	padding: 17px 70px 17px 65px;
	font-size: 16px;
	font-weight: 400;
	position: relative;
	color: #333;
	line-height: 26px;
}

.qaBox__q br{
    display: none;
}

.qaBox__q span{
	position: absolute;
	display: block;
    top: 0;
    bottom: 0;
	left: 17px;
    width: 20px;
    height: 20px;
    padding: 0;
    margin: auto 0;
    border-radius: 10px;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
	font-size: 27px;
	font-weight: 700;
	color: #e9acb4;
    text-align: center;
    line-height: 20px;
}

.qaBox__a {
	display: none;
}

.qaBox__content {
	position: relative;
	padding: 17px 70px 17px 65px;
	border-radius: 8px;
	font-size: 16px;
	line-height: 26px;
	font-style: normal;
	font-weight: 400;
	position: relative;
	color: #333;
}



.qaBox__content span{
	position: absolute;
	display: block;
	left: 17px;
    width: 20px;
    height: 20px;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    border-radius: 10px;
	font-size: 31px;
	font-weight: 700;
	color: #333;
    text-align: center;
}

.qaBox__icon {
	width: 30px;
	height: 20px;
	position: absolute;
	right: 3%;
	top: 50%;
	transform: translateY(-50%);
}

.qaBox__arw {
	position: absolute;
	top: 0;
	bottom: 3px;
	right: 0;
	width: 12px;
	height: 12px;
	margin: auto 0;
	border-bottom: 2px solid #dadada;
	border-right: 2px solid #dadada;
	transform: rotate(45deg);
	transition: .3s;
}

.qaBox__icon.is-open .qaBox__arw {
	transform: rotate(225deg);
	transition: .3s;
	bottom: -3px;
}

/* footer */

footer{
    width: 100%;
    padding: 40px 0;
    border-bottom: 1px solid #e7e7e7;
}

.footerInner{
    display: flex;
    justify-content: space-between;
    width: 1000px;
    margin: 0 auto;
}

.footerLogo{
    width: 250px;

}

.footerMenu ul{
    display: flex;
    justify-content: space-between;
    width: 685px;
    padding: 8px 0 0 0;
}

.footerMenu ul li a{
    display: block;
    margin: 0 10px;
    font-size: 14px;
    line-height: 16px;
    color: #333;
    text-align: center;
}

.footerMenu ul li a span{
    display: inline-block;
    padding: 5px 0 0 0;
    font-size: 10px;
    font-weight: 400;
    line-height: 12px;
}

.cr{
    width: 100%;
    padding: 27px 0;
    font-size: 12px;
    text-align: center;
    color: #666666;
}

/* company */

.companyWpr{
    padding: 60px 0;
}

.companyTtl{
    margin: 0 auto 40px auto; 
}

.companyTtl h1{
    margin: 0 auto 15px auto;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-size: 33px;
    font-weight: 700;
    color: #e9acb4;
    text-align: center;
}

.companyTtl p{
    margin: 0 auto 20px auto;
    font-family: "Hiragino Mincho ProN", "游明朝体", "Yu Mincho", "MS PMincho", serif;
    font-size: 14px;
    font-weight: 400;
    color: #333;
    text-align: center;
}

table.company{
    width: 1050px;
    margin: 0 auto;
    border-top: 1px dotted #CCC;
}

table.company tr td{
    margin: 0 0 1px 0;
    padding: 20px 15px;
    vertical-align: top;
    border: 0px dotted #CCC;
    border-bottom: 1px dotted #CCC;
    color: #333;
}

table.company tr td:first-child{
    width: 250px;
    background-color: #f8f8f8;
    border-bottom: 1px dotted #FFF;
}

table.company tr:first-child td:first-child{
    border-top: 1px dotted #f8f8f8;
}

table.company tr td a{
    color: #e9acb4;
    font-weight: 700;
}

table.company tr td p{
    line-height: 24px;
    margin: 0 0 15px 0;
}

table.company tr td p span.payType{
    font-weight: 700;
}

/* privacy policy */

.ppLeed{
    margin: 0 auto 3rem auto;
    font-size: 16px;
    line-height: 25px;
}

.ppOuter{
    width: 850px;
    margin: 0 auto; 
}


ol.pp{
    padding: 0 0 0 10px;
}

ol.pp li{
    margin: 0 0 2rem 0;
}

ol.pp li::marker{
    display: block;
    position: relative;
    margin: 0 10px 0 0;
    width: 30px;
    height: 30px;
    font-size: 18px;
    font-weight: 700;
    color: #efb4b4;
}

ol.pp li ul{
    list-style-type: disc;
    margin: 0 0 20px 0;
    padding: 0 0 0 15px;
}

ol.pp li ul li ul li{
    padding: 0 0 0 60px;
}

ol.pp li ul li::marker{
    display: block;
    position: relative;
    margin: 0 10px 0 0;
    width: 30px;
    height: 30px;
    font-size: 18px;
    font-weight: 700;
    color: #333 !important;
}

ol.pp li ul li{
    margin: 0;
    line-height: 29px;
}

ol.pp li p{
    margin: 0 0 15px 5px;
    font-size: 17px;
    font-weight: 700;
}

ol.pp li div{
    margin: 0 0 15px 5px; 
}

.listItemTag{
    font-weight: 700;
    margin: 0 0 10px 5px !important;
}

ul.numberingList{
    list-style: decimal !important;
    font-weight: 400;
}


ul.nonStyle{
    list-style: none !important;
}

ul.numberingList li::marker{
    font-weight: 400 !important;
}

ul.custam_hyphone{
    list-style: '-　' !important;
}

.fixHeader{
    position: fixed;
    bottom: 10px;
    left: 0;
    right: 0;
    width: 100%;
    height: 110px;
    text-align: center;
    z-index: 9999;
	margin: 0 auto;
	bottom: -80px;
	opacity: 0;
}

a.floater.pc{
    display: block;
    width: 735px;
    height: 94px;
    margin: 0 auto;
    text-align: center;
    transition: .2s;
}

a.floater.sp{
    display: none;
}

.floaterWpr a.floater:hover{
    transform: translateY(2px);
    box-shadow: 0 3px 0 #0161c1;
    transition: .2s;
}
.modal{
    display: none !important;
}

.sp{
	display: none;
}

}