@charset "UTF-8";

* {margin: 0px;padding: 0px;}
html {scroll-behavior: smooth;}
body{font-family:'Zen Kaku Gothic New', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;font-weight: 500;font-size:16px;line-height:1.6;color:#333;background:#fff;padding:0;}

a{color:#e95454;text-decoration: none;}
a:hover{text-decoration: underline;}
.nobr{display:none;}
.sub-txt{text-align: center;color: #f8b500;font-weight: bold;}

header{
	width: 100%;
	background: #fff;
	padding:0;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
}


header h1 img{
	width:200px;
	padding: 25px 0;
	display: flex;
}

header .inner{
	width:90%;
	margin: 0 auto;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content:space-between;
}

header .inner a.btn{
	position:absolute;
	background: #E8BF36;
    text-align: center;
    color: #fff;
    padding: 25px 50px 25px 80px;
    font-weight: 700;
	right: 0;
	top:0;
}

header .inner a.btn:before{
content: '';
display: block;
width: 30px; 
height: 30px;
background-image:url("../images/icon_soudan.png");
background-size: contain;
background-repeat:no-repeat;
position:absolute;
top:25px;
left:40px;}

header .inner a.btn:hover{
	background: #c59905;
	text-decoration: none;
}

.main{
	width: 100%;
	padding:75px 0px 0px;
	position: relative;
}

.main a.btn02{
	width: 50%;
    position: absolute;
    font-weight: 700;
    left: 10%;
    top: 83%;
}

header .inner a.btn02 img{
    width: 90%;
    height: auto;
}

.main a.btn02 img:hover {
    filter: brightness(105%);
}

.main img{
	width: 100%;
	padding:  0;
	margin: 0;
	vertical-align:bottom;
}



#layerbox{
	width: 100%;
	padding: 40px 0;
}


#layerbox .inner{
	width:1000px;
	margin: 0 auto;
	padding: 0;
}

.pcimg{ display:block !important;}
.spimg{display: none !important;}

.pcimg02{ display:block !important;}
.spimg02{display: none !important;}


.cont01{
	width: 100%;
}

.cont01 .inner{
	width:1000px;
	margin: 0 auto;
	padding:60px 0;
}

.cont01 .inner h2 img{
	width: 60%;
	display:block;
	margin:0 auto 20px;
}

.cont01 .inner p.sub-ttl{
	text-align: center;
	margin-bottom: 60px;
}

.about-box{
	margin-bottom: 30px;
}

.about-l-img{
	width:40%;
	float: left;
}

.about-l-img img{
	width:100%;
}

.about-r-txt{
	width:55%;
	float: right;
}


.about-r-img{
	width:40%;
	float: right;
}

.about-r-img img{
	width:100%;
}

.about-l-txt{
	width:55%;
	float: left;
}

.cont01 .inner p.num{
	font-size: 50px;
	color: #ffffff;
	-webkit-text-stroke: 1px #333; /* ベンダープレフィックス */
	text-stroke: 1px #333;
	font-weight: 900;
}

.cont01 .inner h3{
	color: #f7b500;
	font-size: 24px;
	margin-bottom: 15px;
}


.btn-area{width: 100%;padding: 40px 0;background: #fdf7e7;text-align: center;}
.btn-area .inner{width:1000px;margin: 0 auto;padding:60px 0;}
.btn-area .inner p.btn-area-txt img{width:50%;display: block; margin: 0 auto 15px;}
.btn-area .inner p.btn-area-btn img{width:70%;display: block; margin: 0 auto;}
.btn-area .inner p.btn-area-btn img:hover {filter: brightness(105%);}


.flow-area{width: 100%;background: #fdf7e7;}
.flow-area img.messageimg{ vertical-align:bottom;width:100%;}
.flow-area .inner{width:1000px;margin: 0 auto;padding:60px 0;}
.flow-area .inner h2{
	font-size: 34px;
	text-align: center;
	margin-bottom: 30px;
}

.flow-box{
	width: 100%;
	background:#fff;
	padding: 20px;
	border: 1px solid #dfdfdf;
	border-radius:10px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.flow-l-img{
	width:30%;
}

.flow-l-img img{
	width:100%;
}

.flow-r-txt{
	width:64%;
}

.flow-r-txt h4{
	font-size: 26px;
	margin-bottom: 15px;
}

.flow-r-txt ul{
	font-size: 18px;
	list-style-type:none;
}

.flow-r-txt ul li{
	margin-bottom:10px;
}

.flow-r-txt ul li span{
	color: #cc0000;
}

.flow-r-txt ul li{
  background:url("../images/icon_check.jpg") no-repeat left center;
  background-size:auto 17px;
  padding-left: 30px;
}

.flow-box p.flow-txt{font-size: 18px;}
.flow-box p.flow-txt02{font-size: 20px; font-weight: bold; margin-top: 15px;}

.flow-box p span{color:#e95454}
.icon-arrow{text-align:center; padding: 30px 0;}

.cont02{
	width: 100%;
	background: url("../images/bg_line01.jpg") repeat;
}

.cont02 .inner{
	width:1000px;
	margin: 0 auto;
	padding:40px 0;
}

.cont02 .inner h3{
	font-size: 46px;
	text-align: center;
	margin-bottom: 30px;
}

.cont02 .inner p.txt-sup{
	font-size: 18px;
	text-align: center;
	margin-bottom: 30px;
}

.cont02 .inner p.txt-sup02{
	font-size: 32px;
	text-align: center;
	font-weight: bold;
	margin-bottom: 30px;
}

.cont02 .inner p.txt-sup02 span{color:#e95454}
.cont02 .inner .supportbox{
	background: #efefef;
	padding: 40px;
	margin-bottom:30px;
}

.supportbox-in{margin-bottom: 30px;}
	
.cont02 .inner ul{
	font-size: 18px;
	list-style-type:none;
	display: flex;
 	justify-content: center;
	gap:10px 40px; 
}

.cont02 .inner ul li{
	width: 16%;
	font-weight: bold;
	text-align: center;
}

.cont02 .inner ul li img{
	width: 100%;
}

.marker-normal {
  background: linear-gradient(transparent 75%, #ffff7f 75%);
}

.bgimg{
	width: 100%;
}


.cont03-1{
	width: 100%;
	background:#fefefe;
}

.cont03-1 .inner{
	width:1000px;
	margin: 0 auto;
	padding:40px 0;
}

.cont03-1 .inner h2{
	font-size: 34px;
	text-align: center;
	margin-bottom: 30px;
}

.cataloglist{
	width: auto;
	border: 1px solid #ccc;
	padding:35px 25px;
}

.cataloglist dl dt{
	font-size: 21px;
	font-weight: bold;
	margin-bottom: 10px;
    color: #f7b500;
}

.cataloglist dl dd{
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px dotted #ccc;
}

.cataloglist dl dd:last-child{
	margin-bottom: 0px;
	padding-bottom: 0px;
	border-bottom:none;
}

.txt-catalog {
	text-align: center;
	margin-bottom: 35px;
	font-size: 21px;
	font-weight: bold;
	color: #e95454;
}

.cataloglist dl dt.icon_dink:before {
    font-family: "Font Awesome 5 Free";
    content: "\f72f";
    width: 1em;
    height: 1.2em;
    margin-right: 0.5em;
    color: #f7b500;
}

.cataloglist dl dt.icon_protein:before {
    font-family: "Font Awesome 5 Free";
    content: "\f7a0";
    width: 1em;
    height: 1.2em;
    margin-right: 0.5em;
    color: #f7b500;
}

.cataloglist dl dt.icon_pet:before {
    font-family: "Font Awesome 5 Free";
    content: "\f6d3";
    width: 1em;
    height: 1.2em;
    margin-right: 0.5em;
    color: #f7b500;
}

.cataloglist dl dt.icon_aroma:before {
    font-family: "Font Awesome 5 Free";
    content: "\f043";
    width: 1em;
    height: 1.2em;
    margin-right: 0.5em;
    color: #f7b500;
}

.cataloglist dl dt.icon_cbd:before {
    font-family: "Font Awesome 5 Free";
    content: "\f043";
    width: 1em;
    height: 1.2em;
    margin-right: 0.5em;
    color: #f7b500;
}

.cataloglist dl dt.icon_coseme:before {
    font-family: "Font Awesome 5 Free";
    content: "\f5d0";
    width: 1em;
    height: 1.2em;
    margin-right: 0.5em;
    color: #f7b500;
}


.cataloglist dl dt.icon_soap:before {
    content: "\e06a";
    font-family: "Font Awesome 5 Free";
    width: 1em;
    height: 1.2em;
    margin-right: 0.5em;
    color: #f7b500;
	font-wigth: 400;
}

.cataloglist dl dt.icon_wax:before {
    content: "\f0a3";
    font-family: "Font Awesome 5 Free";
    width: 1em;
    height: 1.2em;
    margin-right: 0.5em;
    color: #f7b500;
	font-wigth: 400;
}




.cont03{
	width: 100%;
	background:#fdf7e7;
}

.cont03 .inner{
	width:1000px;
	margin: 0 auto;
	padding:40px 0;
}

.cont03 .inner h2{
	font-size: 34px;
	text-align: center;
	margin-bottom: 30px;
}

.cont03 .inner div.productlist{
	display: flex;
	align-items:flex-start;
	justify-content:space-between;
}

.cont03 .inner div.productlist.line{
	padding-bottom: 30px;
	margin-bottom: 30px;
	border-bottom: 1px dotted #ccc;
}

.cont03 .inner div.productlist .l-box{width: 20%;}
.cont03 .inner div.productlist .l-box img{width: 100%; border-radius: 10px; margin-bottom: 5px;}
.cont03 .inner div.productlist .r-box{width: 75%;}

.r-box h3{ font-size: 24px; color: #f7b500;margin-bottom: 10px;}
.r-box h3 br{ display: none;}

.cont04{width: 100%;}

.cont04 .inner{
	width:1000px;
	margin: 0 auto;
	padding:40px 0;
}

.cont04 .inner h2{
	font-size: 34px;
	text-align: center;
	margin-bottom: 30px;
}

.cont04 .inner dl{
	font-size: 18px;
}

.cont04 .inner dl dt{
	background:url("../images/icon_q.jpg") no-repeat left top;
  background-size:auto 30px;;
	padding-left: 45px;
	margin-bottom: 15px;
}

.cont04 .inner dl dd{
  background:url("../images/icon_a.jpg") no-repeat left top;
  background-size:auto 30px;
  padding-left: 45px;
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px dotted #ccc;
}


.cont04 .inner dl dd:last-child{
	border-bottom:none;
}

.cont04 p img{width:100%; text-align: center;display: block;margin: 0 auto;}


.cont04-2{
	width: 100%;
	background:#f8f8f8;
}

.cont04-2 .inner{
	width:1000px;
	margin: 0 auto;
}

.cont04-2 .inner img{
	width:100%;
	vertical-align: bottom;
}


.cont05{
	width: 100%;
	background:#fdf7e7;
}

.cont05 .inner{
	width:1000px;
	margin: 0 auto;
	padding:40px 0;
}

.cont05 .inner h2{
	font-size: 34px;
	text-align: center;
	margin-bottom: 30px;
}

.cont06{
	width: 100%;
	background: url("../images/bg_line01.jpg") repeat;
}

.cont06 .inner{
	width:1000px;
	margin: 0 auto;
	padding:40px 0;
}

.cont06 .inner h2{
	font-size: 34px;
	text-align: center;
	margin-bottom: 30px;
}

.cont06 .inner p{
	margin-bottom: 14px;
}

.cont06 .inner p:last-child{
	margin-bottom: 0px;
}

.cont07{
	width: 100%;
	background: #048cbe;
}

.cont07 .inner{
	width:1000px;
	margin: 0 auto;
	padding:0;
}

.cont07 .inner img{
	width:80%;
	display: block;
	margin: 0 auto;
}


footer{
	padding: 20px 10px;
	text-align:center;
	font-size: 12px;
}

/******フォーム*******/

table.formTB{
	width:100%;
	text-align:left;
	border-collapse:collapse;
	margin-bottom:40px;
}

table.formTB th{
	width:25%;
    padding:20px 20px;
	text-align:left;
}

table.formTB td{
    padding:20px 20px;
}

.musttxt{
	background:#e95454;
	padding:5px 5px;
	font-size:10px;
	color:#ffffff;
	margin-left: 5px;
	border-radius: 4px;		/* CSS3草案 */
	-webkit-border-radius: 4px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 4px;	/* Firefox用 */
}

input {
    vertical-align : middle;
	text-indent: 1em;
	font-size: 16px;
}

input[type="text"],input[type="email"],input[type="tel"]{
	border: 1px solid #efefef;
	background: #fff;
	width: 80%;
	padding: 8px;
}

input[type="text"]:focus,input[type="email"]:focus,input[type="tel"]:focus{
	background: #ffe6b7;
	border: 1px solid #e95454;
}

textarea {
	width: 80% !important;
	height: 150px !important;
	background: #fff;
	border: 1px solid #efefef;
	text-indent: 0.2em;
	padding:2%;
	font-size: 16px;
}

textarea:focus {
	background: #ffe6b7;
	border: 1px solid #e95454;
}


.btn_form{
	width:50%;
    background:#e95454;
	color: #fff;
	border: 2px solid #d32929;
	display:block;
	padding:15px 0;
	text-align:center;
	margin:0 auto;
	font-size: 18px;
    overflow: hidden;
	-moz-transition-duration:1s;
	-webkit-transition-duration:1s;
	-o-transition-duration:1s;
	-ms-transition-duration:1s;
	border-radius:40px;
	font-weight: bold;
text-indent: inherit;
}

.btn_form:hover{
	color: #e95454;
    background:#fff;
	border: 2px solid #d32929;
}

.pcimg{display:block;}
.spimg{display:none;}
.txt-c{ text-align:center;}
.mb10{margin-bottom:10px;}
.mb20{margin-bottom:20px;}
.mb30{margin-bottom:30px;}
.f12{font-size:12px;}

.thanksbox{
	text-align:center;
	line-height: 1.8;
}

.ex_txt{display:block;font-size: 12px; text-align: center;}


.selectbox-002 {
    position: relative;
}

.selectbox-002::before,
.selectbox-002::after {
    position: absolute;
    content: '';
    pointer-events: none;
}

.selectbox-002::before {
    right: 0;
    display: inline-block;
    width: 3.0em;
    height: 2.5em;
    border-radius: 0 3px 3px 0;
    background-color: #f7b500;
    content: '';
}

.selectbox-002::after {
    position: absolute;
    top: 50%;
    right: 1.4em;
    transform: translate(50%, -50%) rotate(45deg);
    width: 6px;
    height: 6px;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    content: '';
}

.selectbox-002 select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    min-width: 230px;
    height: 2.5em;
    padding: .25em 3.6em .25em .8em;
    border: 1px solid #f7b500;
    border-radius: 3px;
    color: #333333;
    font-size: 16px;
    cursor: pointer;
	background: #fff;
}

.selectbox-002 select:focus {
    outline: 1px solid #f7b500;
}


.contact-ttlbox{
	text-align: center;
}

.contact-ttl{
	font-size: 21px;
	font-weight: bold;
	text-align: center;
	padding: 7px 20px;
	background: #e95454;
	margin:0 auto 15px;
	display:inline-block;
	color: #fff;
	border-radius: 8px;
}

.privacytxt {text-align:center;margin-bottom: 20px; font-size: 12px;}


input[type="submit"] {appearance: none;-webkit-appearance: none;}


@media screen and (max-width: 999px) {
.cont01 .inner,.cont02 .inner,.cont03 .inner,.cont04 .inner,.cont05 .inner,.cont03-1 .inner,.cont06 .inner,.btn-area .inner,.flow-area .inner{width:auto; padding:40px 20px 40px;}
.cont04-2 .inner,.cont07 .inner{width:auto; padding:0;}
.flow-box {width: auto;}
}

@media screen and (max-width: 980px) {
.cont01 .inner p.num{font-size: 36px;}
.cont01 .inner h3{font-size: 20px;}
.about-r-txt p,.about-l-txt p{font-size: 14px;}
.cont02 .inner h3 {font-size: 40px;}
.cont02 .inner p.txt-sup02{font-size: 30px;}
}

@media screen and (max-width: 870px) {

table.briefingTB th,table.briefingTB td{
	display: block;
}

table.briefingTB{
	border-top: 1px solid #cccccc;	
}	
	
table.briefingTB th {
    padding:10px 3%;
	width: 94%;
	border-bottom: none;
	border-top: none;
}

table.briefingTB td {
    padding:10px 3%;
	width: 94%;

}

#cont-briefingform .inner{
	padding: 30px 15px 30px;
}

	
table.formTB th,table.formTB td{
	display: block;
}
	
table.formTB th {
    padding:20px 3% 10px;
	width: 94%;
	border-bottom: none;
	border-top: none;
}

table.formTB td {
    padding:10px 3%;
	width: 94%;
}

input[type="text"],input[type="email"],input[type="tel"]{
	width: 94%;
	padding: 2%;
}

textarea {
	width: 94% !important;
}

	
.btn_form{
	width:90%;
}
	
}
	
@media screen and (max-width: 840px) {
.cont01 .inner p.num{font-size: 32px;line-height: normal;}
.cont01 .inner h3{font-size: 18px;}
.cont01 .inner h3{margin-bottom: 10px;}
.about-l-img{width:34%;}
.about-r-txt{width:63%;}
.about-r-img{width:34%;}
.about-l-txt{width:63%;}
.cont02 .inner h3 {font-size: 36px;}
.cont02 .inner p.txt-sup{font-size: 16px;}
.cont02 .inner p.txt-sup02{font-size: 30px;}
.flow-l-img{width:37%;}
.flow-r-txt{width:58%;}
.flow-r-txt ul {font-size: 16px;}
.flow-r-txt p {font-size: 14px;}
.flow-box p.flow-txt{font-size: 16px;}
.flow-box p.flow-txt{font-size: 18px;}
.flow-r-txt h4 {font-size: 24px;}

}

@media screen and (max-width: 768px) {
.pcimg{display:none !important;}
.spimg{display:block !important;}
	
.main a.btn02{
	width: 80%;
    position: absolute;
    font-weight: 700;
    left: 10%;
    top: 90%;
}

header .inner a.btn02 img{
    width: 90%;
    height: auto;
}

.about-l-img,.about-r-img,.about-l-txt,.about-r-txt{
	width:100%;
	float: none;
}

.about-l-img img,.about-r-img img{border-radius: 10px;}
	
.about-box{
	border-bottom: 1px dotted #ccc;
	margin-bottom: 30px;
	padding-bottom: 30px;
}

.btn-area .inner p.btn-area-txt img{width:70%;}
.btn-area .inner p.btn-area-btn img{width:90%;}	
.flow-box{display:block;}
.flow-l-img{width:45%;margin: 0 auto;}
.flow-l-img img{width:100%;}
.flow-r-txt{width:auto;}
.flow-r-txt h4{text-align: center;}	
.icon-arrow img{width: 60%; margin: 0 auto;}
	
	
.cont02 .inner h3{font-size: 32px;}		
.cont02 .inner p.txt-sup02{font-size: 24px;}

	
.cont03-1 .inner h2{font-size: 28px;}
.txt-catalog {font-size: 18px;}
.cataloglist{padding:25px 20px;}
	
.cont03 .inner h2{font-size: 28px;}
.cont03 .inner div.productlist .l-box{width:auto; margin-bottom: 10px;}
.cont03 .inner div.productlist .l-box img{width:95%; margin: 0 auto 5px;display: block;}
.cont03 .inner div.productlist{display:block;}
.cont03 .inner div.productlist .r-box{width:auto;font-size: 16px;}

.r-box h3{text-align: center;font-size: 21px;}
.cont04 .inner h2{font-size: 28px;}
.cont04 .inner dl{font-size: 16px;}
	
.cont06 .inner h2{font-size: 28px;}
	
.thanksbox{
	text-align:left;
	line-height: 1.8;
}

}







@media screen and (max-width: 768px) {
	
.pcimg{ display:none;}
.spimg{display: block;}

.about-l-img img,.about-r-img img{margin-bottom:10px;}	

.cont02 .inner ul{
	font-size: 18px;
}

.cont02 .inner ul li{
	width: 20%;
}


	

}

@media screen and (max-width: 680px) {

.cont01 .inner p.sub-ttl {margin-bottom: 30px;}
.cont02 .inner h3{font-size: 30px;}
.cont02 .inner p.txt-sup{font-size: 14px;}
.cont02 .inner p.txt-sup02{font-size: 22px;}
.cont02 .inner ul{font-size: 16px;}
.cont02 .inner ul li{width: 21%;}
.flow-l-img{width:60%;margin: 0 auto;}
.icon-arrow{padding: 20px 0;}
.flow-r-txt h4 {font-size: 23px;}
}

@media screen and (max-width: 580px) {
header .inner a.btn{font-size: 14px;}
header .inner a.btn{padding: 27px 50px 27px 80px;}
.cont01 .inner p.sub-ttl {font-size: 14px;}
.cont02 .inner h3{font-size: 28px;}	
.cont02 .inner p.txt-sup02{font-size: 20px;}
.nobr{display:block;}
.cont02 .inner .supportbox { padding: 25px;}
.cont02 .inner ul{font-size: 14px;}
.flow-r-txt ul {font-size: 14px;}
.flow-r-txt p {font-size: 12px;}
.flow-box p.flow-txt{font-size: 14px;}
.flow-box p.flow-txt02{font-size: 14px;}
.flow-r-txt h4 {font-size: 21px;}
}


@media screen and (max-width: 480px) {
.pcimg02{display:none !important;}
.spimg02{display:block !important;}

.flow-area .inner{width:auto; padding:40px 20px 20px;}
	
.cont01 .inner h2 img {width: 80%;}
.cont01 .inner p.sub-ttl {text-align: left;margin-bottom: 20px;}
.cont02 .inner h3{font-size: 24px;}	
.cont02 .inner p.txt-sup02{font-size: 18px;}
.cont02 .inner .supportbox { padding: 20px 15px;}
.cont02 .inner ul{font-size: 14px;}	
.flow-r-txt h4 {font-size: 18px;}
	
	
.cataloglist{
	width: auto;
	border:none;
	padding:15px 0;
	border-top:1px dotted #ccc;
	border-bottom:1px dotted #ccc;
}
.txt-catalog {text-align: left;margin-bottom: 15px;}
.cataloglist dl dt{font-size: 18px;}
	
.cont03 .inner div.productlist .l-box img{width:90%;}
.cont03 .inner div.productlist .r-box{font-size: 14px;}

.cont07 .inner img{width:90%;}	
	
	
}


@media screen and (max-width: 480px) {
header h1 img{width:140px;}
header .inner a.btn,header .inner a.btn:hover{font-size: 12px;}
header .inner a.btn{padding: 24px 30px 24px 50px;}

header .inner a.btn:before{
width: 20px; 
height: 20px;
top:25px;
left:20px;}

.btn-area{padding:20px 0;}
	
.cont01 .inner,.cont02 .inner,.cont03 .inner,.cont04 .inner,.cont05 .inner,.cont03-1 .inner,.cont06 .inner{width:auto; padding:40px 20px 40px;}
.btn-area .inner{width:auto; padding:20px;}
.main{padding:68px 0px 0px;}
.btn-area .inner p.btn-area-txt img{width:85%;}
.btn-area .inner p.btn-area-btn img{width:95%;}	


}


@media screen and (max-width: 480px) {
.privacytxt {font-size: 10px;}
.contact-ttl{font-size: 16px; width: auto;}
.cont02 .inner p.txt-sup{text-align: left;}
.cont02 .inner p.txt-sup02{text-align: left;}
.cont02 .inner p.txt-sup02 br{display: none;}
.flow-l-img{width:70%;margin: 0 auto;}
}

@media screen and (max-width: 420px) {
.cont02 .inner .supportbox {padding: 20px 10px;}
.cont02 .inner ul{gap:10px 35px; }
.cont02 .inner ul {font-size: 12px;}
.r-box h3 br{ display: block;}
}

@media screen and (max-width: 380px) {
header h1 img{width:120px;}
header .inner a.btn,header .inner a.btn:hover{font-size: 11px;}
.main{padding:66px 0px 0px;}
.cont02 .inner h3{font-size: 22px;}
.cont02 .inner ul{-webkit-flex-wrap: wrap;flex-wrap: wrap;}
.cont02 .inner ul li{width: 30%;}
.supportbox-in{margin-bottom:15px;}
.flow-l-img{width:90%;margin: 0 auto;}
.icon-arrow{padding: 10px 0;}
}

@media screen and (max-width: 325px) {
header h1 img{width:100px;}
header .inner a.btn,header .inner a.btn:hover{font-size: 10px;}

header .inner a.btn:before{
top:25px;
left:20px;}

.cont01 .inner h2 img {width: 90%;}
.cont02 .inner h3{font-size: 20px;}	
}


.banner {
    display: none;
    position: fixed;
    margin: 15px 20px;
    z-index: 99998;
    bottom: 0;
    right: 0;
}
.banner a {
    text-decoration: none;
}

.banner-icon {
    color: #f8f8f8;
    font-size: 40px;
}

.banner-back {
    width: 300px;
    background-color: #fff;
    border-radius: 25px;
}

.banner-top {
    padding: 20px;
    border-radius: 25px 25px 0px 0px;
    background:#E8BF36;
}

.banner-copy {
    font-size: 18px;
    position: relative;
}
.banner-copy::after {
    font-family: 'Font Awesome 6 Free';
    font-size: 20px;
    content: '\f054';
    color: #E8BF36;
    position: absolute;
    margin-top: 11px;
    top: 0;
    right: 18px;
}

.banner-bottom {
    padding: 25px 0px 30px 0px;
    line-height: 1.6;
}

.banner-body {
    width: 300px;
    background: #f8f8f8;
    color: #202121;
    font-weight: bold;
    text-align: center;
    border-radius: 25px;
    -webkit-box-shadow: 0 0 7px rgb(0 0 0 / 40%);
    box-shadow: 0 0 7px rgb(0 0 0 / 40%);
}
.banner-body:hover {
    transition: opacity 0.3s ease;
    opacity: 0.7;
}

.banner-close {
    font-weight: bold;
    position: absolute;
    top: -2px;
    right: -4px;
    z-index: 99999;
    padding: 4px 8px;
    border: none;
    background-color: #f8f8f8;
    border-radius: 25px;
    cursor: pointer;
    -webkit-box-shadow: 0 0 7px rgb(0 0 0 / 40%);
    box-shadow: 0 0 7px rgb(0 0 0 / 40%);
}

@media screen and (max-width: 1000px) {
    .banner {
        width: 100%;
        margin: 0px;
    }
    .banner-icon {
        font-size: 28px;
    }
    .banner-body {
        width: 100%;
        border-radius: 0px;
    }
    .banner-back {
        width: 100%;
        margin: 0px;
        border-radius: 0px;
    }
    .banner-top {
        padding: 5px;
        border-radius: 0px;
        background: #E8BF36;
    }
    .banner-bottom {
        padding: 10px 10px 18px 10px;
    }
    .banner-copy {
        font-size: 15px;
    }
    .banner-copy::after {
        font-size: 12px;
        margin-top: 1.4px;
        margin-left: 12px;
        top: initial;
        right: initial;
    }
    .banner-close {
        top: 8px;
        right: 15px;
    }
    .banner-copy-br {
        display: none;
    }
}


.balloon5 {
  width: 100%;
  margin: 1.5em 0;
  overflow: hidden;
}

.balloon5 .faceicon {
  float: left;
  margin-right: -90px;
  width: 80px;
}

.balloon5 .faceicon img{
  width: 100%;
  height: auto;
}

.balloon5 .chatting {
  width: 100%;
}

.says {
  display: inline-block;
  position: relative; 
  margin: 5px 0 0 105px;
  padding: 17px 20px;
  border-radius: 12px;
  background: #efefef;
}

.says:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px; 
  left: -24px;
  border: 12px solid transparent;
  border-right: 12px solid #efefef;
}

.says p {
  margin: 0;
  padding: 0;
}


@media screen and (max-width: 550px) {
.balloon5 .faceicon {
  width: 55px;
}
	
.says {
    margin: 5px 0 0 70px;
    font-size: 14px;
}

}

.clearfix::after {
   content: "";
   display: block;
   clear: both;
}


@media screen and (max-width: 290px) {
header .inner a.btn{padding: 24px 15px 25px 35px;}
header .inner a.btn:before{top:25px;left:10px;}
.cont02 .inner h3{font-size: 18px;}	
}

@media screen and (max-width: 250px) {
header .inner a.btn{display: none;}
.cont02 .inner h3{font-size: 16px;}}


 @keyframes shiny {
  0% { left: -20%; }
  10% { left: 120%; }
  100% { left: 120%; }
}

.shiny-btn {
  display: block;
  width: 100%;
  line-height: 40px;
  text-align: center;
  text-decoration: none;
  color: #ffffff;
  overflow: hidden;
	position: relative;
}


.shiny-btn::after {
	content: '';
	position: absolute;
	top: -50%;
	left: -50%;
	width: 100%;
	height: 100%;
	transform: scale(2) rotate(320deg);
	background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 20%, white 45%, white 50%, white 55%, rgba(255, 255, 255, 0) 80%, rgba(255, 255, 255, 0) 100%);
	animation-name: shiny;
	animation-duration: 2.8s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: infinite;
}

.sp-fixed {
  background-color:rgba(255,255,255,0.8);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 40px 20px;
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
  left: 0;
}

	
.sp-fixed .btn{text-align: center;}
.sp-fixed .btn img{width:70%;}	
.pos-r{position: relative;width: 600px;margin: 0 auto;}



.cta_poptxt{
	position: absolute;
	width: 20vw;
	height: 20vw;
	max-width: 100px;
	max-height: 100px;
	border-radius: 50%;
	margin: -2px auto 10px;
	padding:0;
	background: #e7518c;
	text-align: center;
	z-index: 10;
	color: #fff;
	font-weight: bold;
	top: -22%;
	left: 11%;
	font-size: 14px;
}

.cta_poptxt::before{
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	bottom: 11px;
	left: calc(50% - -29px);
	border-top: 15px solid #e7518c;
	border-left: 14px solid transparent;
	border-right: 14px solid transparent;	
	transform: rotate(312deg);
}

.sp-fixed .btn a:hover img{opacity: 70%;}
.cta_poptxt p{padding: 30px 0 0;}


@media (max-width: 800px) {
.cta_poptxt{
		width: 80px;
		height: 80px;
		font-size: 12px;
}

.cta_poptxt::before{
	bottom: 5px;
	left: calc(50% - -21px);
}

.cta_poptxt p{padding: 20px 0 0;}

.cta_poptxt::before{
		border-top: 8px solid #e7518c;
		border-left: 8px solid transparent;
		border-right: 8px solid transparent;
}

.cta_poptxt_fv {top: -10%;}
}

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

 * 上下ふわふわ

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



.fuwafuwa {
	animation-name:fuwafuwa;   /* アニメーション名の指定 */
	animation-delay:0s;   /* アニメーションの開始時間指定 */
	animation-duration: 1s;   /* アニメーション動作時間の指定 */
	animation-timing-function: ease-in-out;  /* アニメーションの動き指定（徐々に早く）*/
	animation-iteration-count: infinite; 
	}

	@keyframes fuwafuwa {

	0% {
	transform: translateY(0);
	}
	50% {
	transform: translateY(3px);
	}

	100% {
	transform: translateY(0);
	}

	}

@media (max-width: 800px) {
.sp-fixed .btn img{width:55%;}	
	.sp-fixed{padding:20px;}
	.cta_poptxt{left:20%;}
}

@media (max-width: 600px) {
.cta_poptxt{
		width: 70px;
		height: 70px;
		font-size: 12px;
}
.cta_poptxt p{padding: 15px 0 0;}
.cta_poptxt::before{
	left: calc(50% - -20px);
}
}

@media (max-width: 540px) {
.cta_poptxt{
		width: 65px;
		height: 65px;
		font-size: 11px;
}
.cta_poptxt p{padding: 13px 0 0;}
.cta_poptxt::before{
	left: calc(50% - -19px);
}
}

@media (max-width: 510px) {
.sp-fixed .btn img{width:68%;}
.cta_poptxt {left: 14%;}
}

@media (max-width: 450px) {
	.cta_poptxt{left:5%;}
.sp-fixed .btn img {width: 80%;}
}

@media (max-width: 350px) {
	.cta_poptxt{left:2%;}
.sp-fixed .btn img {width: 90%;}
}

@media (max-width: 320px) {
	.cta_poptxt{left:-2%;}
.sp-fixed .btn img {width: 95%;}
}

@media (max-width: 300px) {
	.cta_poptxt{display: none;}
}