@charset "UTF-8";
/*
CSS Document
Theme Name: KANEMANオリジナルテーマ
Description: KANEMAN オリジナルテーマ1.0
Author: KANETOMI
Detail of the version : Added application form
Date: 2026.03.01
Break Poibnt: 427px, 767px
*/



/*--------------------------------------------------------------

 Reset

--------------------------------------------------------------*/


html, 
body, 
div, 
span, 
applet, 
object, 
iframe,
h1, 
h2, 
h3, 
h4, 
h5, 
h6, 
p, 
blockquote, 
pre,
a, 
abbr, 
acronym, 
address, 
big, 
cite, 
code,
del, 
dfn, 
em, 
font, 
ins, 
kbd, 
q, 
s, 
samp,
small, 
strike, 
strong, 
sub, 
sup, 
tt, 
var,
dl, 
dt, 
dd, 
ol, 
ul, 
li,
fieldset, 
form, 
label, 
legend,
table, 
caption, 
tbody, 
tfoot, 
thead, 
tr, 
th, 
td,
article, 
aside, 
canvas, 
details, 
figcaption, 
figure,
footer, 
header, 
hgroup, 
menu, 
nav, 
section, 
summary,
time, 
mark, 
audio, 
video,
input {
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	/* font-weight: inherit; */
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}

:focus {
	outline: 0;
}

body {
	background: #fff;
	line-height: 1;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
}

blockquote,
q {
	quotes: "" "";
}

input,
textarea {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -webkit-appearance: none;
	width: 100%;
    max-width: 100%;
	padding: 10px 10px;
	border: solid 1px #CDCDCD;
}



/*--------------------------------------------------------------

 1.0 Initial settings

--------------------------------------------------------------*/


* {
	box-sizing: border-box;
}

html {
	font-size: 62.5%;
	-webkit-overflow-scrolling: touch;
}

body {
	height: 100%;
	font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Lucida Grande", Helvetica, Arial, Verdana, sans-serif;
	font-size: 1.4em;
	line-height: 1.8;
	color: #000000;
	font-synthesis: none;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
	line-break: strict;
	background: #FFFFFF;
}


/* Text-level semantics ------------------------------------- */

a {
	cursor: pointer;
	color: #000000;
	text-decoration: none;
}

a:hover {
	cursor: pointer;
	opacity: 0.4;
	text-decoration: none;
}


/* Embedded content ----------------------------------------- */

img {
	width: 100%;
	max-width: 100%;
	border: 0;
	vertical-align: bottom;
	-ms-interpolation-mode: bicubic;
}

iframe {
    vertical-align: bottom;
}


/* Table ---------------------------------------------------- */

table {
	width: 100%;
    border: solid 1px #333333;
	border-collapse: collapse;
}

tr {
	border: solid 1px #333333;
}

td,
th {
	/* padding: 20px 5%; */
	/* border: solid 1px #333333; */
	/* font-weight: normal; */
	/* text-align: center; */
}

.table-bordernone table,
.table-bordernone tr,
.table-bordernone td,
.table-bordernone th {
	padding: 2% 0 2% 4% !important;
	border: none !important;
}

.table-bordernone tr td:first-child {
	padding-right: 4%;
    white-space: nowrap;
}



/*--------------------------------------------------------------

 2.0 Common ID

--------------------------------------------------------------*/


#wrapper {
	margin: 0 auto;
	border-top: solid 5px #1f4069;
}

@media screen and (max-width:767px) {
	#wrapper {
		margin: 0 auto;
		border-top: none;
		min-height: 100vh;
	}
}



/*--------------------------------------------------------------

 3.0 Common class

--------------------------------------------------------------*/


.screen-reader-text {
	display: none;
}

.font-small {
	font-size: 1.2rem;
}

.color-kaneman {
	color: #1f4069;
}

.color-red {
	color: #e71122;
}


/* Two columns ---------------------------------------------- */

.two-columns {
    display: flex;
    justify-content: space-between;
}

.two-columns > div {
	width: 48%;
}

@media screen and ( max-width: 427px ) {
	
	.two-columns {
        display: block;
        justify-content: space-between;
    }

    .two-columns > div {
        width: 100%;
    }
	
	.two-columns > div:last-child {
		margin-top: 4%;
	}
	
}


/* Three columns -------------------------------------------- */

.three-columns {
    display: flex;
	width: 100%;
	flex-wrap: wrap;
    justify-content: flex-start;
	align-items: flex-start;
	gap: 2%;
}

.three-columns > div {
	padding-top: 2%;
	width: 32%;
}

.three-columns > div:nth-child(-n+3) {
	padding-top: 0;
}

@media screen and ( max-width: 767px ) {
	
	.three-columns > div {
        padding-top: 2%;
		width: calc( ( 100% - 2% ) / 2 );
    }
	
	.three-columns > div:nth-child(-n+3) {
        padding-top: 2%;
    }
	
	.three-columns > div:nth-child(-n+2) {
        padding-top: 0;
    }
	
}


/* Additional CSS class ------------------------------------- */

.title-cormorant {
	font-size: 30px !important;
    font-size: 3.0rem !important;
    line-height: 1 !important;
	font-family: 'Cormorant Infant', serif !important;
	text-align: center !important;
	color: #1f4069 !important;
}

.is-hidden {
    display: none !important;
}

.not-decoration {
    text-decoration: none !important;
}

.margin-top-none {
	margin-top: 0 !important;
}

.button a {
	border-radius: 5px !important;
	border-width: 1px !important;
    font-size: inherit !important;
	text-decoration: none !important;
	color: #000000;
}

@media screen and ( max-width:767px ) {
	
	.button {
		display: block;
		width: 100% !important;
	}
	
}



/*--------------------------------------------------------------
 3.1 Common class - Post lists
--------------------------------------------------------------*/

.post-lists .list-title {
	margin-top: 4%;
    line-height: 2;
}

.post-lists ul {
	margin-top: 20px;
}

.post-lists ul li {
	list-style-type: none;
}

.post-lists ul li a {
	display: flex;
	/* flex-flow: wrap; */
    justify-content: flex-start;
	align-items: center;
    padding: 20px 0;
    border-bottom: solid 1px #DCDCDC;
    white-space: normal;
    line-height: 1.4 !important;
    color: #333333;
}

.post-lists ul li:first-child a {
	border-top: solid 1px #DCDCDC;
}

.post-lists .image-area {
	margin-right: 4%;
	width: 25%;
	min-width: 25%;
}

.post-lists .image-area img {
	border: solid 1px #F2F2F2;
}

.post-lists .text-area p {
	margin-top: 10px !important;
	/* line-height: 1 !important; */
	font-size: 1.2rem;
}

.post-lists .text-area p span.list-category {
	padding-right: 10px;
	color: #1f4069;
}

.post-lists .text-area p span.list-postdate {
	color: #707070;
}


/* If single page foot -------------------------------------- */

.post .post-lists {
	margin-top: 80px;
}


/*--------------------------------------------------------------
 3.1 Common class - Pagenation
--------------------------------------------------------------*/

.pagenation {
	margin-top: 4%;
	margin: 4% auto 0 auto;
	text-align: center;
}

.pagenation a,
.pagenation span {
	display: inline-block;
	padding: 5px 13px;
	border: solid 1px #DCDCDC;
}

.pagenation .current {
	background: #333333;
	color: #FFFFFF;
}


/*--------------------------------------------------------------
 3.3 Common class - Google map
--------------------------------------------------------------*/

.gmap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}
 
.gmap iframe, .gmap object, .gmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}



/*--------------------------------------------------------------

 4.0 Header

--------------------------------------------------------------*/


header {
	letter-spacing: 0.05em;
}

header ul,
header ol {
	list-style-type: none;
}

header a {
	text-decoration: none;
	color: #000000;
}

@media screen and ( min-width:768px ) {
	header {
		clear: both;
		overflow:hidden;
		margin: 0 auto;
		padding: 40px 20px;
		width: 1000px;
		box-sizing: border-box;
	}
	header #header-logo {
		display: block;
		float: left;
		font-size: 26px;
		font-size: 2.6rem;
		line-height: 1;
	}
	header #header-logo h1 {
		font-size: 0;
	}
	header nav {
		float: right;
		height: 26px;
	}
	header nav ul {
		margin-top: 8px;
		font-size: 0;
	}
	header nav ul li {
		display: inline-block;

	}
	header nav ul li a {
		display: block;
		margin-left: 25px;
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 1;
	}
	.menu-children {
		display: none !important;
	}
	.sub-nav {
		display: none;
	}
	.en a {
		font-size: 1.4rem !important;
		font-weight: bolder !important;
	}
}

@media screen and (max-width:767px) {
	header {
		clear: both;
		overflow:hidden;
		margin: 0 auto;
		padding: 26px 0 24px;
		width: 100%;
		height: 66px;
		box-sizing: border-box;
	}
	header #header-logo {
		display: block;
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 1;
		text-align: center;
	}
	header #header-logo h1 {
		font-size: 0;
	}
	header nav ul {
		overflow: hidden;
	}
	header nav ul li {
		padding: 0 25px;
	}
	header nav ul li a {
		display: block;
		padding: 25px 0;
		border-bottom: solid 1px #dcdcdc;
		font-size: 18px;
		font-size: 1.8rem;
		line-height: 1;
		box-sizing: border-box;
	}
	.font-ja {
		font-size: 16px;
		font-size: 1.6rem;
	}
	.has-children {
		position: relative;
	}
	.has-children:before {
		position: absolute;
		top: 25px;
		right: 0;
		opacity: 0.8;
		content: '\f078';
		font-family: "Font Awesome 5 Free";
		z-index: -1;
		transition: all 0.1s ease-out;
	}
	.has-children-active:before {
		transform: rotate(-180deg);
	}
	.menu-children li {
		padding: 0;
	}
	.menu-children li a {
		position: relative;
		display: block;
		padding: 25px 0;
		border-bottom: solid 1px #f9f9f9;
		font-size: 14px;
		font-size: 1.4rem;
		line-height: 1;
		box-sizing: border-box;
	}
	.menu-children li a:before {
		position: absolute;
		top: 25px;
		right: 0;
		opacity: 0.2;
		content: '\f054';
		font-family: "Font Awesome 5 Free";
		z-index: -1;
	}
	.menu-children li.viewall a {
		position: relative;
		display: block;
		padding: 25px 0;
		border-top: solid 2px #f9f9f9;
		border-bottom: solid 3px #f9f9f9;
		font-size: 14px;
		font-size: 1.4rem;
		line-height: 1;
		color: #1f4069;
		box-sizing: border-box;
	}
	.menu-children li.viewall a:before {
		position: absolute;
		top: 25px;
		right: 0;
		opacity: 0.8;
		content: '\f054';
		font-family: "Font Awesome 5 Free";
		z-index: -1;
	}
	.link-estore {
		text-align: center;
	}
	.sns-icon {
		padding-top: 25px;
		font-size: 18px;
		font-size: 1.8rem;
		line-height: 1;
		text-align: center;
	}
	.sns-icon a {
		display: inline-block;
		border: none;
		font-size: 30px;
		font-size: 3.0rem;
		line-height: 1;
	}
	.sub-nav {
		display: block;
		
	}
	.en a {
		border-top: solid 1px #dcdcdc !important;
		border-bottom: none !important;
		font-weight: bolder;
		text-align: center;
	}
	.copyright {
		padding: 20px;
		font-size: 10px;
		font-size: 1.0rem;
		color: #ffffff;
		text-align: center;
		background: #1f4069;
	}
}



/*--------------------------------------------------------------

 5.0  Footer

--------------------------------------------------------------*/


footer {
	width: 100%;
	background: #1f4069;
}
#footer {
	position: relative;
	margin: 0 auto ;
	padding: 40px 20px;
	width: 1000px;
	color: #FFFFFF;
	box-sizing: border-box;
}
#footer:after,
#footer:before {
    content: "";
    clear: both;
    display: block;
}
#scroll-top {
	position: absolute;
	top: -50px;
	right: 20px;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	width: 50px;
	height: 50px;
	background: #1f4069;
	text-align: center;
	box-sizing: border-box;
}
#scroll-top a {
	display: block;
	width: 100%;
	height: 100%;
	color: #FFFFFF;
}
#scroll-top a i {
	line-height: 50px;
}
#footer ul {
	float: left;
	overflow: hidden;
}
#footer ul li {
	display: inline-block;
	vertical-align: top;
}
#footer ul li a {
	padding: 0 20px 0 0;
	font-size: 12px;
	font-size: 1.2rem;
	color: #ffffff;
}
#footer .copyright {
	float: right;
	font-size: 12px;
	font-size: 1.2rem;
}

@media screen and (max-width:767px) {
	#footer {
		display: none;
	}
}



/*--------------------------------------------------------------

 6.0 Content

--------------------------------------------------------------*/


#content {
	margin: 0 auto 80px auto;
	padding: 0 4% 0 4%;
	width: 100%;
}

#main-content {
	margin: 0 auto;
    width: 660px;
}

#main-content h1 {
	font-size: 2.3rem;
}

@media screen and ( min-width: 1001px ) {
	
    #content {
        margin: 0 auto 80px auto;
        padding: 0 20px 0 20px;
        width: 1000px;
        /* text-align: center; */
        /* box-sizing: border-box; */
    }
	
}

@media screen and ( max-width: 767px ) {
	
	#main-content {
		margin: 0 0 0 0;
        width: 100%;
    }
	
}



/*--------------------------------------------------------------

7.0  Content Head

--------------------------------------------------------------*/


.content-head {
	display: table;
	margin: 0 0 80px 0;
	width: 100%;
	height: 380px;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	background-position: center center !important;
	text-align: center;
}

.content-head-wrap {
	display: table-cell;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, .5);
	color: #ffffff;
	vertical-align: middle;
}

.content-head-wrap h1 {
	font-size: 40px;
	font-size: 4.0rem;
}

.content-head-wrap p {
	font-size: 12px;
	font-size: 1.2rem;
}

@media screen and ( min-width:768px ) and ( max-width:1000px ) {
	
	.content-head {
		width: 1000px;
	}
	
}

@media screen and ( max-width:767px ) {
	
	.content-head {
		margin: 0 0 50px 0;
		width: 100%;
		height: 260px;
	}
	
	.content-head-wrap h1 {
		font-size: 30px;
		font-size: 3.0rem;
	}
	
	.content-head-wrap p {
		font-size: 9px;
		font-size: 0.9rem;
	}
	
	.content-box {
		padding: 0 0 50px 0;
		width: 100%;
		box-sizing: border-box;
	}
	
}

@media screen and ( min-width:503px ) and ( max-width:767px ) {
	
	.content-head {
		margin: 0 0 50px 0;
		width: 100%;
		height: 280px;
	}
	
	.content-head-wrap h1 {
		font-size: 40px;
		font-size: 4.0rem;
	}
	
	.content-head-wrap p {
		font-size: 11px;
		font-size: 1.1rem;
	}
	
}



/*--------------------------------------------------------------

 8.0  Content Foot

--------------------------------------------------------------*/


#content-foot {
	margin: 0 auto 80px auto;
	padding: 0 4% 0 4%;
	width: 100%;
}

#content-foot .banner {
    width: 100%;
	position: relative;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center center !important;
    text-align: center;
}

#content-foot .banner::before {
    content: '';
    display: block;
    padding-top: 56.25%;
    background-color: rgba(0, 0, 0, 0.4);
}

#content-foot .banner-inner {
    position: absolute;
    top: 0;
	display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: #ffffff;
    vertical-align: middle;
}

#content-foot .banner-title-brands,
#content-foot .banner-title-shops {
	font-size: 3.0rem;
}

@media screen and ( min-width: 1001px ) {
	
    #content-foot {
        margin: 0 auto 80px auto;
        padding: 0 20px 0 20px;
        width: 1000px;
        /* text-align: center; */
        /* box-sizing: border-box; */
    }
	
}

@media screen and ( max-width:767px ) {
	
	#content-foot {
        width: 100%;
    }
	
}

@media screen and (max-width:427px) {
	
	#content-foot {
        width: 100%;
    }
	
}



/*--------------------------------------------------------------

 9.0  POST

--------------------------------------------------------------*/


.post {
	margin: 0 auto;
    width: 660px;
	text-align: left;
}

/* .post-area > *:not( :first-child ) {
	margin-top: 4%;
	line-height: 2;
} */

.post-area > * {
	margin-top: 4%;
	line-height: 2;
}

.post-area h1 {
	font-size: 2.3rem !important;
}

.post-area .post-category-date {
	margin-top: 10px !important;
	line-height: 1 !important;
	font-size: 1.2rem;
}

.post-area .post-category-date .post-category {
	padding-right: 10px;
	color: #1f4069;
}

.post-area .post-category-date .post-date {
	color: #707070;
}


/* Exceptionally overwrite ---------------------------------- */

.post-area .margin-top-none {
	margin-top: 4px !important;
}

.post-area ul.has-list-style {
	padding-left: 20px !important;
}

.post-area ul.reference-mark {
	list-style-type: none !important;;
	padding-left: 0 !important;
}

.post-area ul.reference-mark li:before {
	content: '※ ' !important;
}

.wp-social-link-instagram,
.wp-social-link-facebook {
    background-color: #333333 !important;
}



/*--------------------------------------------------------------

 10.0  PAGE

--------------------------------------------------------------*/


.page {
	margin: 0 auto;
	width: 660px;
}


/* BRANDS | Page -------------------------------------------- */

.stockist table,
.stockist thead,
.stockist tr,
.stockist th,
.stockist td {
	padding: 2% 3% !important;
	border: solid 1px #DCDCDC !important;
}


/* ORIGIN | Page -------------------------------------------- */

.company-pres {
	text-align: center;
}

.company-pres figure {
	margin: 0 0 0 4% !important;
}

.company-pres figcaption {
	font-size: 1.2rem;
    line-height: 1.6;
}


/*--------------------------------------------------------------
  10.1  Page - Aside
--------------------------------------------------------------*/

aside .brands-list,
aside .shops-list,
aside .company-list {
	margin: 80px auto 0 auto;
	width: 660px;
}

aside .brands-list h1,
aside .shops-list h1,
aside .company-list h1 {
	margin-bottom: 4%;
	text-align: center;
}

aside .company-list h1 {
	font-size: 2.3rem !important;
}

aside .brands-list .list-title,
aside .shops-list .list-title {
	font-size: 30px !important;
    font-size: 3.0rem !important;
    line-height: 1 !important;
    font-family: 'Cormorant Infant', serif !important;
    text-align: center !important;
    color: #1f4069 !important;
}

aside .brands-list .brand a {
	display: block;
	border: solid 1px #DDDDDD;
	border-radius: 5px;
}

aside .brands-list .brand img {
	/* border: solid 1px #f2f2f2; */
	border-radius: 5px;
}

aside .shops-list h2 {
	font-size: 1.6rem;
}

aside .shops-list h2:not(:first-of-type) {
	margin-top: 4%;
}

aside .shops-list ul li a {
	display: block !important;
}

aside .shops-list ul li a .shops-list-address {
	padding-left: 25px;
	color:#767676;
}

@media screen and ( max-width: 767px ) {
	
	aside .brands-list,
	aside .shops-list,
	aside .company-list {
		float: none;
		margin: 40px 0 0 0;
		width: 100%;
	}
	
	aside .shops-list ul li a .shops-list-address {
		display: block;
		padding: 5px 0 0 0 !important;
		font-size: 1.1rem;
	}
	
}



/*--------------------------------------------------------------

 11.0  Search

--------------------------------------------------------------*/


#search {
	margin: 0 auto 80px auto;
	width: 660px;
}

#search .search-form {
	margin-top: 20px;
}

@media screen and ( max-width: 767px ) {
	
	#search {
        margin: 0 auto 80px auto;
		padding: 0 4% 0 4%;
        width: 100%;
    }
	
}


/*--------------------------------------------------------------
 11.1 Search - Search form
--------------------------------------------------------------*/

.search-form {
	letter-spacing: -0.5em;
}

.search-form input[type="search"] {
	padding: 0 0 0 2%;
    border: 1px solid #696969;
    border-radius: 0;
	width: calc(100% - 42px);
    outline: none;
    background: none;
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
	line-height: 40px !important;
	box-sizing: border-box;
	vertical-align: top;
}

.search-form input::placeholder {
	/* padding: 2%; */
}

.search-form .search-submit {
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
	border-top: 1px solid #696969;
	border-right: 1px solid #696969;
	border-bottom: 1px solid #696969;
	border-left: none !important;
	border-radius: 0;
	cursor: pointer;
	text-decoration: none;
	padding: 0 !important;
	width: 42px;
	height: 42px;
	background: none !important;
	box-sizing: border-box;
	vertical-align: top;
}

.search-form .icon-search {
	width: 20px !important;
	height: 20px !important;
	line-height: 40px !important;
	display: inline;
	margin: 0 !important;
}

@media screen and ( max-width:768px ) {
	
	.search-form input[type="search"] {
		width: 94%;
		width: -webkit-calc(100% - 42px);
		width: calc(100% - 42px);
	}
	
}


/*--------------------------------------------------------------
 11.2 Search - Search Result
--------------------------------------------------------------*/

.search-results .search-lists ul li a {
	/* display: block !important; */
}

.search-results .search-lists ul li a .post-title {
    font-weight: bolder;
}
	
.search-results .search-lists ul li a .post-excerpt {
    /* display: block; */
    padding: 5px 0 0 0 !important;
    font-size: 1.2rem;
}



/*--------------------------------------------------------------

 12.0  404 Not Foound

--------------------------------------------------------------*/

.not-found .not-found-area h1 {
	margin: 4% 0;
    line-height: 2;
    font-size: 5.0rem !important;
    line-height: 1 !important;
    font-family: 'Cormorant Infant', serif !important;
    text-align: center !important;
    color: #1f4069 !important;
}

.not-found .not-found-area {
	text-align: center;
}



/*--------------------------------------------------------------

 13.0  HOME

--------------------------------------------------------------*/

.home > div {
	margin-bottom: 80px;
}

.home .list-title {
	margin-bottom: 4% !important;
	font-size: 30px !important;
    font-size: 3.0rem !important;
    line-height: 1 !important;
    font-family: 'Cormorant Infant', serif !important;
    text-align: center !important;
    color: #1f4069 !important;
}

.home .viewall {
	display: none;
}

@media screen and ( max-width:767px ) {
	
	.home > div {
        margin-bottom: 50px;
    }
	
	.home .viewall {
        display: block;
		margin-top: 10px;
		border: solid 1px #DEDEDE;
		border-radius: 30px;
		text-align: center;
    }
	
	.home .viewall a {
        display: block;
        padding: 5px 5px;
        font-weight: bolder;
        line-height: 3;
        /* color: #FFFFFF; */
		/* font-family: 'Cormorant Infant', serif !important; */
		font-size: 1.6rem !important;
	}
	
}


/* BRANDS --------------------------------------------------- */

.home .brands-list .brand a {
	display: block;
	border: solid 1px #DDDDDD;
	border-radius: 5px;
}

.home .brands-list .brand img {
	/* border: solid 1px #f2f2f2; */
	border-radius: 5px;
}

@media screen and ( max-width:767px ) {
	
	.home .brand:nth-child(n + 9) {
		display: none;
	}
	
}


/* SHOPS ---------------------------------------------------- */

.home .shops-list .three-columns {
	justify-content: center;
    align-items: center;
}


/*--------------------------------------------------------------
 13.1  Change the style of swipers (jquery-plugin)
--------------------------------------------------------------*/

.swiper-area {
	margin: 0 auto 80px auto;
	padding: 0 20px 0 20px;
	width: 1000px;
	box-sizing: border-box;
}
.swiper-container {
	overflow: hidden;
	height: 540px;
}
.swiper-container img {
	max-width: 100%;
}
.swiper-button-black {
	opacity: 0.4 !important;
}
.swiper-pagination-bullet-active {
	opacity: 0.7 !important;
	background: #333 !important;
}
@media screen and (max-width:767px) {
	.swiper-area {
		margin-bottom: 50px;
		padding: 0 0 0 0;
		width: 100%;
	}
	.swiper-container {
		overflow: hidden;
		height: 56.3vw;
		max-width: 100%;
		max-height: 563px;
	}
}



/*--------------------------------------------------------------

 14.0  Widget - Contact Form 7

--------------------------------------------------------------*/

.post-area .widget-contactform7 {
	padding: 4%;
	background: #F2F2F2;
}

.post-area .widget-contactform7 p {
	display: block;
	margin-top: 4%;
}

.post-area .widget-contactform7 p a {
	text-decoration: underline !important;
	color: #1f4069 !important;
}

.post-area .widget-contactform7 label {
	display: block;
	margin-bottom: 4%;
}

.post-area .widget-contactform7 select {
	padding: 10px 10px;
    width: 100%;
    max-width: 100%;
    height: 40px;
    border: solid 1px #CDCDCD;
}

.post-area .widget-contactform7 textarea {
	font-size: 1.5rem;
}

.post-area .widget-contactform7 input[type="submit"] {
	border-radius: 5px;
	font-weight: bolder;
	line-height: 3;
	color: #FFFFFF;
	background: #000000;
}

.post-area .widget-contactform7 .wpcf7-spinner {
	display: none;
}






/*--------------------------------------------------------------

 15.0  Add style

--------------------------------------------------------------*/


/*--------------------------------------------------------------
 Google fonts
--------------------------------------------------------------*/

.PT-Serif {
	font-family: 'PT Serif', serif;
}
.Cormorant {
	font-family: 'Cormorant', serif;
}
.EB-Garamond {
	font-family: 'EB Garamond', serif;	
}
.Cormorant-Infant{
	font-family: 'Cormorant Infant', serif;
}


/*--------------------------------------------------------------
 Hamberger
--------------------------------------------------------------*/

@media screen and (min-width:768px) {
	.hamberger,
	.hamberger span {
		display: none;
	}
}

@media screen and (max-width:767px) {
	.hamberger {
		display: table;
		width: 100%;
		height: 100%;
		text-align: center;
	}
	.hamberger span {
		display: table-cell;
		vertical-align: middle;
		color: #1f4069;
	}
}


/*--------------------------------------------------------------
 Drawer
--------------------------------------------------------------*/

@media screen and (max-width:767px) {
	body {
		position: relative;
		width: 100%;
	}
	.body-drawer {
		overflow: hidden;
		height: 100vh;
	}
	.drawer-overlay {
		display: none;
	}
	.drawer-overlay-show {
		position: fixed;
		top: 0;
		left: 0;
		display: block;
		width: 100%;
		height: 100%;
		background-color: rgba(0,0,0,.2);
		z-index: 1;
	}
	.drawer-trigger-wrap {
		position: absolute;
        top: 0;
		left: 0;
		width: 55px;
		height: 66px;
		z-index: 5;
		transition: all 0.2s ease-out;
	}
	.drawer-trigger-wrap .drawer-trigger .icon-hamburger {
		display: table-cell !important;
	}
	.drawer-trigger-wrap .drawer-trigger .icon-close {
		display: none !important;
	}
	.drawer-trigger-wrap-close {
		left: 85%;
		width: 15%;
		background: #fcfcfc;
	}
	.drawer-trigger-wrap-close .drawer-trigger .icon-hamburger {
		display: none !important;
	}
	.drawer-trigger-wrap-close .drawer-trigger .icon-close {
		display: table-cell !important;
	}
	.drawer-nav {
		position: absolute;
		top: 0;
		left: -100%;
		overflow: scroll;
		width: 85%;
		height: 100%;
		max-height: 100%;
		background: #ffffff;
		box-sizing: border-box;
		z-index: 999;
		transition: all 0.2s ease-out;
	}
	.drawer-nav-open {
		left: 0;
	}
	.body-drawer #wrapper {
		overflow: hidden !important;
		height: 100vh !important;
	}
}


/*--------------------------------------------------------------
 Accordion
--------------------------------------------------------------*/

@media screen and (max-width:767px) {
	.toggle-children {
		display:none;
	}
}



/*--------------------------------------------------------------

 Added in Sep.2022
 ファミリーセールページ

--------------------------------------------------------------*/

.emphasis { 
	font-size: 1.8rem;
	font-weight: bolder;
}

.family-sale-registration-flow-title {
	margin: 0 !important;
	font-size: 2.2rem;
	font-weight: bolder;
	text-align: center!important;
	background: #1f4069 !important;
    color: #ffffff;
}

.family-sale-registration-flow {
    display: table;
    box-sizing: border-box;
    /* margin: 0; */
	padding: 30px 30px;
    border: solid 5px #1f4069;
    border-radius: 20px;
    width: 100%;
}

.family-sale-registration-flow {
    box-sizing: border-box;
    /* margin: 0; */
    padding: 5%;
    border: solid 3px #1f4069;
    border-radius: 5px;
    width: 100%;
	background-color: #F7F7F7;
}

.family-sale-registration-flow-image {
    position: relative;
    display: table-cell;
    overflow: hidden;
    margin: 0;
    width: 33.3333%;
    width: calc(100%/3);
    height: auto;
    box-sizing: border-box;
}

.family-sale-registration-flow-image img {
	box-sizing: border-box;
	border: solid 1px #dcdcdc;
	width: 100%;
}

.family-sale-registration-flow-text {
    display: table-cell;
    overflow: hidden;
    padding: 0 0 0 30px;
    width: 66.6666%;
    width: calc(100%*2/3);
    height: auto;
    text-align: left;
    vertical-align: middle;
    box-sizing: border-box;
    word-break: break-all;
}

.family-sale-registration-flow-text .steps {
    display: inline-block;
	margin-bottom: 10px;
    padding-bottom: 5px;
	border-bottom: solid 3px #1f4069;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.0 !important;
    vertical-align: middle;
    box-sizing: border-box;
    color: #1f4069;
}

.family-sale-registration-flow .font-bold {
	font-weight: bolder !important;
}

.family-sale-registration-flow-arrow:after {
	content: '';
	display: inline-block;
	width: 100%;
    height: 60px;
	background-image: url("assets/images/fs/arrow.png");
	background-position: center center;
    background-size: contain;
	text-align: center;
    vertical-align: middle;
	background-repeat: no-repeat;
}

.family-sale-registration-flow h3 {
	margin-bottom: 5%;
    font-size: 1.6rem;
    font-weight: bolder;
	vertical-align: middle;
}

.family-sale-registration-flow .step-nav {
	display: inline-block;
	margin-right: 15px;
	padding: 5px;
	border: solid 1px #1f4069;
	border-radius: 50%;
    width: 50px;
    height: 50px;
	font-size: 1.2rem;
	font-weight: bolder;
	line-height: 50px;
    text-align: center;
	vertical-align: middle;
	color: #dfdfdf;
	background-color: #1f4069;
}

.family-sale-registration-flow-inner {
	display: table;
    box-sizing: border-box;
    width: 100%;
}

.family-sale-registration-flow-inner .steps {
	display: block;
	margin-bottom: 15px;
    padding-bottom: 5px;
	border-bottom: solid 1px #1f4069;
    font-size: 16px;
    font-size: 1.6rem;
	font-weight: bolder;
    line-height: 1.0 !important;
    vertical-align: middle;
    box-sizing: border-box;
    color: #1f4069;
}

.family-sale-registration-flow-inner a.button {
	display: block;
	margin-top: 15px;
	padding: 16px;
	max-width: 255px;
	line-height: 1;
	background: #333333;
	color: #d4d4d4 !important;
	text-decoration: none !important;
	text-align: center;
	font-weight: bolder;
	box-sizing: border-box;
}

.family-sale-registration-flow-next {
	position: relative;
    display: table-cell;
    overflow: hidden;
    margin: 0;
    width: 14%;
    height: auto;
    box-sizing: border-box;
	text-align: center;
	vertical-align: middle;
}

.family-sale-registration-flow-next:after {
	content: '';
	display: inline-block;
	width: 30px;
    height: 30px;
	background-image: url("assets/images/fs/triangle-right.png");
    background-size: contain;
    vertical-align: middle;
	background-repeat: no-repeat;
}

.family-sale-registration-flow-first,
.family-sale-registration-flow-second {
    position: relative;
    display: table-cell;
    overflow: hidden;
    margin: 0 ;
    width: 43%;
    height: auto;
    box-sizing: border-box;
}

.steps-image {
	margin-bottom: 15px;
	text-align: center;
}

.steps-image img {
	width: 80%;
}

.invitation-code {
	margin-bottom: 15px;
	padding: 5% 10%;
	text-align: center;
	background: #dcdcdc;
}

.invitation-code .emphasis {
	font-weight: bolder;
	color: #e71122;
}

.family-sale-dllink {
	width: 100%;
}

.family-sale-dllink a {
	display: block;
	width: 60%;
	margin: 0 auto;
	padding: 3%;
	border: solid 1px #1f4069;
	border-radius: 5px;
	box-sizing: border-box;
	text-align: center;
	line-height: 1;
	text-decoration: none !important;
	font-weight: bolder;
	background: #f7f7f7;
}

@media screen and (max-width:767px) {
	
	.family-sale-registration-flow .step-nav {
        display: block;
		box-sizing: border-box;
        margin-right: 0;
		margin-bottom: 10px;
        padding: 16px;
        border: solid 1px #1f4069;
        border-radius: 5px;
        width: 100%;
        height: auto;
        font-size: 1.4rem;
        font-weight: bolder;
        line-height: 1;
        text-align: center;
        vertical-align: middle;
        color: #dfdfdf;
        background-color: #1f4069;
    }
	
	.family-sale-registration-flow-inner {
        display: block;
        box-sizing: border-box;
        width: 100%;
    }
	
	.family-sale-registration-flow-inner a.button {
        display: block;
        margin-top: 15px;
        padding: 16px;
		width: 100%;
        max-width: 100%;
        line-height: 1;
        background: #333333;
        color: #d4d4d4 !important;
        text-decoration: none !important;
        text-align: center;
        font-weight: bolder;
    }
	
	.family-sale-registration-flow-next {
        position: relative;
        display: block;
        overflow: hidden;
        margin: 5% 0;
        width: 100%;
        height: auto;
        box-sizing: border-box;
        text-align: center;
        vertical-align: middle;
    }

    .family-sale-registration-flow-next:after {
        content: '';
        display: inline-block;
        width: 30px;
        height: 30px;
        background-image: url("assets/images/fs/triangle-down.png");
        background-size: contain;
        vertical-align: middle;
        background-repeat: no-repeat;
    }
	
	.family-sale-registration-flow-first,
    .family-sale-registration-flow-second {
        display: block;
        overflow: hidden;
        margin: 0 ;
        width: 100%;
        height: auto;
        box-sizing: border-box;
    }
	
	.steps-image img {
        width: 60%;
    }
	
	.family-sale-dllink a {
        width: 100%;
	}
	
}



/*--------------------------------------------------------------
 
Added in Apr.2024

reCAPTCHAバッジ（ロゴマーク）を消す

--------------------------------------------------------------*/

.grecaptcha-badge { visibility: hidden; }


