@import url(../../../../03_lp/240528_stylecheck/css/font-awesome.min.css);
@import url("https://fonts.googleapis.com/css?family=Open+Sans:400,600,400italic,600italic|Roboto+Slab:400,700");
@charset "UTF-8";

#body-inside{
	overflow-x: hidden;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
	background-image: -webkit-gradient(linear, left top, right top, from(#fff0fb), to(#ffd9b4));
	background-image: -webkit-linear-gradient(left, #fff0fb 0%, #ffd9b4 100%);
	background-image: linear-gradient(to right, #fff0fb 0%, #ffd9b4 100%);
    flex-direction: column;
}
#footer-inside{
	overflow-x: hidden;
	margin-top: 0rem;
	margin-bottom: 5rem;
}

* {
	color: #444444;
	/*font-family: 'Noto Sans JP',sans-serif;
	line-height: 1.7;
	font-family: kozuka-gothic-pro, sans-serif;*/
	font-family: a-otf-ryumin-pr6n, serif;
	font-weight: 200;
	font-style: normal;
	font-size: 3.125vw;
	line-height: 200%;
	width: auto;
	margin-left: 0px;
}

body {
}

section {
    margin: 0 0 5rem;
}

a {
	text-decoration: none;
}

a:hover {
	opacity: 0.7;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
}

img {
    vertical-align: bottom;
}

h1 {
	font-size: 2.3rem;
	font-weight: 600;
	font-style: normal;
	color: #444444;
	letter-spacing: .2rem;
}

h2 {
	font-size: 1.9rem;
	font-weight: 300;
	font-style: normal;
	line-height: 3rem;
    letter-spacing: .05em;
	margin-bottom: 2rem;
	
}

h3 {
	font-family: kozuka-gothic-pro, sans-serif;
	font-size: 1.4rem;
	color: #665B3D;
    text-align: center;
	letter-spacing: .15rem;
}

p {
	font-size: 1.2rem;
}



.mb20 {
	margin-bottom: 20rem;
}

.resizeimage img {
	margin: 0 auto;
}

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

    .resizeimage img {
    width: 100%;
    object-fit: cover;
    margin-left: 0px;/*トップの画像ずらす*/
    }
    
    }

.wrapper {
	max-width: 1000px;
	margin: 0 auto;
}

.inner {
	margin: 0 5%;
	padding: 1.9rem 0.8rem;
}

.inner img {
    width: 100%;
}

header h2,
.concept h2,
.concept h3
 {
	font-size: 2rem;
	color: #DFD9C5;
}

footer h2 {
	font-size: 2rem;
	color: #AB9567;
}

p.sub span {
	font-size: 2.1rem;
	font-weight: 600;
	letter-spacing: .2rem;
    background: linear-gradient(transparent 50%, #fff600 50%);
}

p.label {
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: .2rem;
}



p.line {
    font-weight: 600;
    letter-spacing: 0.05rem;
    font-size: 0.9rem;
    background-color: #FFFFFF;
    padding: 1.0rem;
    margin: 1.0rem 0;
}

p.date {
	font-weight: lighter;
    line-height: 2rem;
	font-size: 2rem;
	color: #444444;
	width: auto;
	text-indent: 0px;
    text-align: center;
    margin: 2rem 0 2rem;
}

.fukidashi {
	font-family: kozuka-gothic-pro, sans-serif;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	padding: 12px 16px 20px;
}
.fukidashi::before {
	content: "";
	width: 30px;
	height: 2px;
	transform: rotate(60deg);
	box-sizing: border-box;
	background-color: #b9232a;
}
.fukidashi::after {
	content: "";
	width: 30px;
	height: 2px;
	transform: rotate(-60deg);
	box-sizing: border-box;
	background-color: #b9232a;
}
.fukidashi .emphasis {
	font-family: kozuka-gothic-pro, sans-serif;
	font-size: 1.5rem;
	font-weight: 600;
	color: #b9232a;
	
}



.container {
    background: white;
    padding: 4rem 2.3rem;
	margin-bottom: 8rem;
    text-align: center;
    width: 100%;
    max-width: 1000px;
    box-sizing: border-box;
}

.content {
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 2.5rem;
	text-align: center;
}

.content .h2 {
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 4rem;
	letter-spacing: .1rem;
	text-shadow: 0 0 20px #AB9567;
	margin: 3rem 0 0;
}

.content p {
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 2.5rem;
}

.content .text {
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 2.5rem;
	text-align: justify;
	margin: 0 1rem;
}

.content .copy {
	margin: 1rem 0 3rem;
}

.content .copy span {
	font-family: kozuka-gothic-pro, sans-serif;
	color: #ffffff;
	font-size: 1.25rem;
	letter-spacing: .2rem;
	font-weight: 400;
	line-height: 2.5rem;
	margin: 1rem 0 3rem;
	background-color: #AB9567;
	padding: 0.5rem 2rem;
}

.content .lead {
	font-size: 1.2rem;
	line-height: 2.5rem;
	text-align: justify;
}

.content img {
    width: 100%;
    max-width: 500px;
    margin-bottom: 10px;
}


.backglound1 {
    background: #ffffff;
    margin: 10rem -200%;
    padding: 3rem 200%;
    text-align: center;
}

.backglound1 img {
    width: 100%;
    max-width: 500px;
    margin-bottom: 10px;
}

.corner {
    border-radius: 30px;
	max-width: 95%;
	margin: 0 auto 8rem;
}

.product h2 {
	font-size: 3rem;
}


.question {
	margin: 8rem 0;
	padding-top: 3rem;
	border-top: solid 2px #C1BCAE;
}
.question img {
    width: 100%;
    max-width: 600px;
    margin-bottom: 10px;
}

.question .item {
	margin: 3rem auto 0;
}

.circle {
	font-size: 2rem;
	padding: 0.9rem 1.9rem;
	margin: 0 auto;
	border-radius: 50%;
	background-color: #E6E1D5;
}

.question p {
	font-size: 2rem;
	letter-spacing: .1rem;
	margin: 3rem 0;
}



.item .sub {
	font-size: 2rem;
	letter-spacing: .2rem;
    background: linear-gradient(transparent 50%, #fff600 50%);
}



.result {
	margin: 8rem 0 0;
}
.result img {
    max-width: 80%;
	margin: 3rem 0 4rem;
}
.hidden {
    display: none;
}

input[type="radio"] {
    display: none;
}
input[type="radio"] + label {
    display: inline-block;
    background: #fff;
    border: 1px solid #AB9567;
	font-size: 1.5rem;
	font-weight: 400;
	letter-spacing: .1rem;
	width: 100%;
    padding: 20px;
    margin: 15px 0;
    cursor: pointer;
    border-radius: 50px;
    transition: background 0.3s, border-color 0.3s;
}
input[type="radio"]:checked + label {
    background: #E6E1D5;
    border-color: #AB9567;
}
button {
    background-color: #b9232a;
    color: white;
    border: none;
    padding: 2rem 2rem;
	max-width: 400px;
    cursor: pointer;
    transition: background 0.3s;
}
button:hover {
    background-color: #e36b70;
}
button p.btn1 {
	font-size: 1.7rem;
    color: #ffffff;
	letter-spacing: .1rem;
}


.img img {
	width: 100%;
    max-width: 450px;
}


#wave_link .img2 img {
	width: 100%;
	margin-bottom: 3rem;
}

#straight_link .img2 img {
	width: 100%;
	margin-bottom: 3rem;
}

#wave_link img {
	width: 100%;
    max-width: 450px;
}

#straight_link img {
	width: 100%;
    max-width: 450px;
}


#result button {
	background-image: -webkit-gradient(linear, left top, right top, from(#ffb4eb), to(#ffb165));
	background-image: -webkit-linear-gradient(left, #ffb4eb 0%, #ffb165 100%);
	background-image: linear-gradient(to right, #ffb4eb 0%, #ffb165 100%);
    color: white;
    border: none;
    padding: 2rem 2rem;
	max-width: 400px;
    cursor: pointer;
    transition: background 0.3s;
    border-radius: 80px;
}

.familia button {
	background-image: -webkit-gradient(linear, left top, right top, from(#ffb4eb), to(#ffb165));
	background-image: -webkit-linear-gradient(left, #ffb4eb 0%, #ffb165 100%);
	background-image: linear-gradient(to right, #ffb4eb 0%, #ffb165 100%);
    color: white;
    border: none;
    padding: 2rem 5rem;
	margin: 5rem 0 0;
	max-width: 500px;
    cursor: pointer;
    transition: background 0.3s;
    border-radius: 80px;
}

.event button {
	background-image: -webkit-gradient(linear, left top, right top, from(#a8caf9), to(#db94ce));
	background-image: -webkit-linear-gradient(left, #a8caf9 0%, #db94ce 100%);
	background-image: linear-gradient(to right, #a8caf9 0%, #db94ce 100%);
    color: white;
    border: none;
    padding: 2rem 3.5rem;
	margin: 5rem 0 0;
	max-width: 500px;
    cursor: pointer;
    transition: background 0.3s;
    border-radius: 80px;
}


.catch {
	color: #ff3b6e;
	font-family: kozuka-gothic-pro, sans-serif;
	font-size: 1.5rem;
	font-weight: 600;
	background-color: #fff600;
	padding: 0.3rem 0.5rem;
	margin: 0 1rem;
}


.box {
	margin: 0 auto 2rem;
    max-width: 80%;
}

.box h4 {
	margin: 2rem 0;
}

.box h4 .category {
	font-size: 1.2rem;
	border: solid 1px;
	padding: 0.5rem;
}

.box h4 .label {
	font-size: 1.5rem;
	margin-top: 1rem;
}




.box2 {
	margin: 0rem auto 10rem;
    max-width: 90%;
}





.content ul {
	margin: 3rem 0 5rem;
	list-style:none;
}

.content li {
	font-size: 1.4rem;
	margin: 2rem 0;
}


.intro {
	background-color: #f3f3f3;
	padding: 3rem 3rem 2rem;
	margin-bottom: 3rem;
}

.intro h3 p {
	font-family: kozuka-gothic-pro, sans-serif;
	font-size: 1.6rem;
	color: #ffffff;
	background-color: #665B3D;
	padding: 1rem 2rem;
    border-radius: 80px;
}

.intro ul {
	margin: 3rem 0 2rem;
	list-style:none;
}

.content .list {
	font-family: kozuka-gothic-pro, sans-serif;
	font-size: 1.7rem;
	font-weight: 600;
	margin: 4rem 0;
}

.content .list span {
	color: #b9232a;
	font-size: 2rem;
	font-weight: 600;
	background-color: #fffb8c;
	padding: 0.3rem 0.5rem;
	margin: 0 0 0 0.5rem;
}



/* ------------ ヘッダー ------------ */

header {
	text-align: center;
}

header img {
    width: 11.0rem;
    margin: 1.2rem 0 ;
}

p.top_cap {
	font-family: 'Cinzel','Noto Serif JP', serif;
	font-weight: lighter;
	font-size: 1.4rem;
	line-height: 1.5rem;
	color: #444444;
	padding: 0.5rem 0 0;
	width: auto;
    text-align: center;

	letter-spacing: 0.1rem;
	background: #E6E1D5;
}

p.top_cap img {
	margin-top: 0.9rem;
}

img.logo {
	width: 30%;
	margin: 2rem 0 3rem;
}


/* -- TOPに戻るボタン -- */

#page_top {
    position: fixed;
    right: 0px;
    bottom: 0px;
    margin: 0;
	z-index: 999;
    color: #FFFFFF
    
}

#page_top a{
    position: relative;
    display: flex;
    width: 65px;
    height: 65px;
    justify-content: center;
    background:#AB9567;/*背景の色を変える*/
    transition: opacity .6s ease;
    color: #FFFFFF;/*アイコンの色を変える*/
    align-items: center;
    text-decoration: none;
    font-size: 32px;
	text-align: center;
   
}

#page_top .fas {
    color: #FFFFFF;
	line-height: 1.5rem;
	
}

/* -- フォローするボタン -- */

.button {
	padding-top: 30px;
	margin-bottom: 2rem;
    text-align: center;
}

.button span {
	border-radius: 50px;
    font-size: 1.3rem;
    color: #FFFFFF;
    background-color: #b9232a;
    font-weight: 600;
    letter-spacing: .2rem;
    padding: 1.2rem 3rem;
	
}



/* -- フェードイン -- */

.scroll-up {
    opacity: 0; 
    visibility: hidden;
    transform: translateY(50px);
    transition: all 1s;
}

.scroll-up.is-show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0px);
}


/* ------------ 背景色 ------------ */


.backglound {
	background: #ffffff;
    margin: 0 -200% 0rem;
    padding: 0 200% 4rem;
    text-align: center;
}




/* ------------------------------------------------------------------- 
 * ## footer
 * ------------------------------------------------------------------- */

footer {
	text-align: center;
}
footer h2 {
	font-size: 1.8rem;
    font-family: a-otf-ryumin-pr6n, serif;
	margin: 8rem 0 1rem;
}
footer .english {
	font-size: 1.3rem;
	letter-spacing: .08rem;
}
a.contact {
	display: inline-block;
	width: 5rem;
	height: 5rem;
	border: 1px solid #665B3D;
	border-radius: 50%;
	margin: 2rem 0.5rem;
}
footer i.fa {
	font-size: 1.9rem;
	color: #665B3D;
	line-height: 5rem;
}
p.tel {
    font-family: a-otf-ryumin-pr6n, serif;
	font-size: 1.8rem;
	margin-bottom: 1rem;
}
footer span{
	font-size: 1.4rem;
	font-weight: 600;
	letter-spacing: .1rem;
	color: #665B3D;
	padding: 0.5rem 1rem;
	border: solid 1px #665B3D;
}
p.tel_no {
    font-family: a-otf-ryumin-pr6n, serif;
	font-size: 3rem;
	font-weight: 600;
	letter-spacing: .3rem;
	color: #665B3D;
}
p.mail {
	font-size: 1.3rem;
	margin-bottom: 0.6rem;
}
footer .logo {
	width: 50%;
}
p.copyright {
	font-size: 1rem;
}


@media screen and (min-width: 560px) {
	
* {
    font-size: 16px;
	line-height: 200%;
}

.question img {
    width: 80%;
}
button {
    width: 100%;
}
	
.inner img {
    width: 40%;
}
    
img.logo {
	width: 10rem;
	margin-top: 2rem;
	margin-right: 0;
	margin-left: 0;
}

}


/* ===================================================================
 * # min-width: 960px
 *
 *
 * ------------------------------------------------------------------- */

@media screen and (min-width: 960px) {
    
.resizeimage img {
	width: 80%;
	object-fit: cover;
}
	
.inner img {
    width: 40%;
}
    
img.logo {
	width: 10rem;
	margin-top: 2rem;
	margin-right: 0;
	margin-left: 0;
}
	
/* --------------------------------------------------------------------
 * ## footer　min-width: 960px
 * -------------------------------------------------------------------- */

footer .logo {
	width: 20rem;
}

}



