/*

Common

Main Color: #
Sub Color #

*/

:root {
	
/* Color */
	
	--main: #0677e1;
	--price_text: #cc7b1b;
	--price_bg: #f8f0a9;
	
/* Font Weight */
	
	--bold: 500;
	--bolder: 600;
	--webfont_bold: 700;
	
}

html {
	font-size: 15px;
}
body {
	position: relative;
	min-width: 1000px;
	min-width: 100%;
	width: 100%;
	height: 100%;
	font-family: 'Inter', 'Noto Sans JP',sans-serif;
	font-size: 15px;
	font-weight: 500;
	font-weight: 400;
	font-feature-settings: 'palt';
	letter-spacing: 0.08em;
	line-height: 1.85em;
	color: #111;
	background: #f5f5f5;
}
::selection {
	background: #ADB2BF;
}
::-moz-selection {
	background: #ADB2BF;
}
a {
	color: #434246 !important;
	text-decoration: none;
}
a:hover {
	color: #434246 !important;
	text-decoration: underline;
}
.inner {
	position: relative;
	margin: 0 auto;
	padding: 0 50px;
	max-width: 1200px;
	width: auto;
	box-sizing: border-box;
}
.inner.wider {
	padding: 0 50px;
	max-width: 1440px;
	width: 100%;
}
.inner.narrow {
	padding: 0 100px;
}
.inset {
	max-width: 70%;
	width: 70%;
}
.section {
	position: relative;
	margin: 0 auto 8em auto;
}
.main {
	width: 66%;	
}
.side {
	width: 22%;
}

h2.title {
	font-size: 2.1em;
	font-weight: var(--bold);
}
h3.title {
	margin-bottom: 1.5em;
	font-size: 1.8em;
	font-weight: var(--bold);
	line-height: 1.5em;
}
h4.title {
	margin-bottom: 1em;
	font-size: 1.15em;
	font-weight: var(--bold);
}
h5.title {
	margin-bottom: 1em;
	font-size: 1.05em;
	font-weight: var(--bold);
}
.summary p,
p.summary {
	font-size: 1.2em !important;
	line-height: 2.2em !important;
}
strong {
	font-weight: var(--bold) !important;
}
img {
	width: 100%;
	height: auto;
	-ms-interpolation-mode: bicubic;
	-ms-interpolation-mode: nearest-neighbor;
}
svg {
	width: 100%;
	height: auto;
}
.astarisc {
	margin-left: 0.3em;
	color: #888;
}
hr {
	display: block;
	margin-bottom: 2.5em;
	height: 1px;
	border: 0;
	background: #DDD;
}
.only_pc {
	display: block;
}
.only_pc.inline {
	display: inline-block;
}
.only_mobile,
.only_mobile.inline {
	display: none;
}
.webfont {
	font-family: 'Zen Kaku Gothic Antique', sans-serif;
	font-weight: 500;
	font-style: normal;
}
.webfont.poppins {
	font-family: "Poppins", sans-serif;
	font-weight: 400;
	font-style: normal;
}
.thin {
	font-weight: 300 !important;
}
.thinner {
	font-weight: 100 !important;
}
.bold {
	font-weight: var(--bold) !important;
}
.bolder {
	font-weight: var(--bolder) !important;
}
.webfont.bold {
	font-weight: var(--webfont_bold) !important;
}
.italic {
	font-style: italic !important;
}
.serif {
	font-family: 'Noto Serif JP',serif;
}
.sans {
	font-family: 'Noto Sans JP',sans-serif;
}
.centering {
	text-align: center !important;
}
.hide {
	display: none !important;
}
p.note,
.note li {
	clear: both;
	margin-top: 1.5rem;
	font-size: 0.8rem !important;
	color: #888;
	line-height: 1.5em;
}
.square {
	font-size: 0.7em;
	line-height: 1em;
	vertical-align: super;
}
p.empty {
	padding: 8em 0;
	text-align: center;
	color: #ddd;
	font-size: 1.1em;
}
.link.above {
	margin-top: 2.5em;
}
.link a {
	display: inline-block;
	position: relative;
	padding-left: 18px;
	font-size: 0.9em;
	line-height: 1.2em;
	transition: all 200ms linear;
	text-decoration: none;
	box-sizing: border-box;
}
.link a::before {
	position: absolute;
	top: 3px;
	left: 0;
	content: '';
	width: 11px;
	height: 11px;
	background: url(../images/common/icon_arrow.png) no-repeat center / 100%;
}
.link.external_link a::before {
	background: url(../images/common/icon_external_arrow.png) no-repeat center / 100%;
}
.link a:hover:before {
	animation: link_arrow 300ms ease-in-out;
}
@keyframes link_arrow {
	0% {
		left: 0;
	}
	50% {
		left: 3px;
	}
	100% {
		left: 0;
	}
}
.fading {
	padding-top: 24px;
		filter: alpha(opacity=0);
		-moz-opacity: 0;
	opacity: 0;
}
.clear {
	clear: both !important;
}

/* Button */

.button.above {
	margin-top: 4.7em;
}
.button a {
	display: inline-block;
	position: relative;
	padding: 1.6em 3em 1.68em 75px;
	line-height: 1.2em;
	letter-spacing: 0.18em;
	color: #fff !important;
	background: var(--main);
	border: 2px solid var(--main);
	border-radius: 17px;
	text-decoration: none;
	transition: all 300ms ease-in-out;
}
.button a:hover {
	color: var(--main) !important;
	background: transparent;
}
.button a::before {
	position: absolute;
	top: 50%;
	left: 30px;
	transform: translateY(-50%);
	content: '';
	width: 20px;
	height: 20px;
	background: url(../images/common/icon_arrow_white.png) no-repeat center / 100%;
}
.button a:hover::before {
	animation: button_arrow 300ms ease-in-out forwards;
}
@keyframes button_arrow {
	0% {
		left: 30px;
		background: url(../images/common/icon_arrow_white.png) no-repeat center / 100%;
	}
	50% {
		left: 35px;
		background: url(../images/common/icon_arrow_color.png) no-repeat center / 100%;
	}
	100% {
		left: 30px;
		background: url(../images/common/icon_arrow_color.png) no-repeat center / 100%;
	}
}

/* More */

.more.above {
	margin-top: 4.7em;
}
.more a {
	display: inline-block;
	position: relative;
	padding-left: 45px;
	line-height: 1.2em;
	letter-spacing: 0.18em;
	text-decoration: none;
	transition: all 300ms ease-in-out;
}
.more a::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	content: '';
	width: 20px;
	height: 20px;
	background: url(../images/common/icon_arrow.png) no-repeat center / 100%;
}
.more a:hover::before {
	animation: more_arrow 300ms ease-in-out forwards;
}
@keyframes more_arrow {
	0% {
		left: 0;
	}
	50% {
		left: 5px;
	}
	100% {
		left: 0;
	}
}

/* Splide Overflow */

.splide_overflow {
	overflow: hidden;
}
.splide_overflow .splide {
	visibility: visible;
}
.splide_overflow .splide__track {
	overflow: visible;
}

/* Splide Titles */

.splide_title {
	font-size: 5.3em;
	font-weight: 700;
	letter-spacing: 0.18em;
	line-height: 1em;
	color: #fff;
	will-change: transform;
	transform: translateZ(0);
	backface-visibility: hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.splide_title_outlined {
	color: transparent !important;
	-webkit-text-stroke: 2px #fff;
}
.splide_title.invert {
	color: #111 !important;
}
.splide_title.invert .splide_title_outlined,
.splide_title_outlined.invert {
	color: transparent !important;
	-webkit-text-stroke: 2px #111;
}


/** Switch **/

#menu_switch {
	position: fixed;
	top: 80px;
	right: 50px;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent !important;
	z-index: 10001;
}
#menu_switch p {
	position: relative;
	width: 40px;
	height: 10px;
}
.switch_bar {
	position: absolute;
	left: 0;
	width: 40px;
	height: 2px;
	background: #111;
}
#switch_top {
	top: 0;
}
#switch_bottom {
	bottom: 0;
}
.expanded #menu_switch #switch_top {
	top: 5px;
	transform: rotate(40deg);
	transition: all 120ms ease-in;
}
.expanded #menu_switch #switch_bottom {
	bottom: 5px;
	transform: rotate(-40deg);
	transition: all 120ms ease-in;
}


/** Post **/

.post p {
	margin-bottom: 1em;
}
.post ol {
	margin: 2em 0 !important;
}
.post li {
	list-style-position: inside !important;
	list-style: decimal;
}
.post ul {
	margin: 2em 0 !important;
}
.post a {
	text-decoration: underline;
}
.post ul li {
	list-style: disc;
	list-style-position: inside !important;
}
.post img {
		filter: alpha(opacity=0);
		-moz-opacity: 0;
	opacity: 0;
}
.post img.fit {
	width: 100% !important;
	height: auto;
}
.post img.nonfit {
	width: auto;
	height: auto;
}
.post b,
.post strong {
	font-weight: bold;
}
.post em {
	font-style: italic;
}
.post .issue_image {
	margin: 1em 0;
}
.post h4.heading {
	margin-bottom: 0.75em !important;
	padding: 0 !important;
	font-size: 1.35em;
	font-weight: var(--bold);
}
.post h5.heading {
	margin-bottom: 0.5em;
	padding: 0 !important;
	font-size: 1.2em;
	font-weight: var(--bold);
}
.post h6.heading {
	margin-bottom: 1em;
	padding: 0 !important;
	font-size: 1.05em;
	font-weight: var(--bold);
}


/** Paging **/

#paging {
	clear: both;
	margin-top: 2em;
}
#_paging ul {
	position: relative;
	float: left;
	left: 50%;
}
#paging_next {
	float: left;
}
#paging_prev {
	float: right;
}
#_paging li {
	position: relative;
	left: -50%;
	float: left;
	margin: 0 0.6em;
	overflow: hidden;
}
#paging li a {
	display: block;
	padding: 0.3em 1.2em;
	text-align: center;
	font-weight: var(--bold);
	font-size: 1.1em;
	color: #000 !important;
	text-decoration: none !important;
	background: #FFF;
}
#paging li.active a {
	color: #FFF !important;
	background: #000;
}
#paging .prev {
	width: 40px;
	height: 40px;
	background: url(../images/common/icon_arrow_prev.png) no-repeat center / cover;
}
#paging .next {
	width: 40px;
	height: 40px;
	background: url(../images/common/icon_arrow_next.png) no-repeat center / cover;
}

/* Header */

#header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 160px;
	transition: all 100ms ease-in-out;
	z-index: 10000;
}
#header_inner {
	position: relative;
	padding: 47px 130px 46px 40px;
}
#header_faq {
	float: left;
	position: relative;
	padding-right: 75px;
	padding: 20px 75px 20px 18px;
	width: 450px;
	background: #fff;
	border-radius: 50vh;
}
#header_faq::before {
	position: absolute;
	top: 45%;
	right: 20px;
	transform: translateY(-50%);
	content: '';
	width: 35px;
	height: 35px;
	background: url(../images/common/icon_faq.png) no-repeat center / 100%;
}
.header_faq_slide a {
	display: block;
	text-decoration: none;
}
.header_faq_slide a span {
	line-height: 1.2em;
}
.header_faq_category {
	float: left;
	display: block;
	padding: 0.5em 0.8em;
	width: 90px;
	font-size: 0.85em;
	font-weight: var(--bold);
	text-align: center;
	background: #ccc;
	border-radius: 50vh;
}
.header_faq_q {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-line-clamp: 1;
	float: right;
	margin-top: 5px;
	font-weight: var(--bold);
	width: calc(100% - 110px);
}
.header_faq_icon {
	width: 16px;
	height: 16px;
	margin-left: 10px;
}

#header_logo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#header_logo a {
	display: block;
	width: 190px;
	height: 59px;
	background: url(../images/common/aozora-home.co.jp.png) no-repeat center / 100%;
}

#contact_direct {
	position: fixed;
	top: 25px;
	right: 20px;
	padding-right: 35px;
	font-weight: var(--bold);
	background: url(../images/common/icon_direct.png) no-repeat center right / 25px;
	cursor: pointer;
	z-index: 10001;
}
#header_menu {
	float: right;
	margin-top: 25px;
}
#header_menu li {
	float: left;
}
#header_menu li:not(:last-of-type) {
	margin-right: 1.9em;
}
#header_menu li a {
	font-size: 1.04rem;
	font-weight: var(--bold);
	text-decoration: none !important;
}

/* Waist */

#waist {
	margin-top: 160px;
}

/* Faq */

.faq_pane {
	display: block;
    position: relative;
    border-bottom: solid 1px #111;
    transition: all 200ms ease-in-out;
}
.faq_q a {
	display: block;
	position: relative;
	padding: 2.1em 0;
	padding-left: 80px;
	text-decoration: none;
}
.faq_q a::before {
	position: absolute;
	top: 2.1rem;
	left: 0;
	content: 'Q.';
	font-family: "Poppins", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 1.8em;
	letter-spacing: 0.1em;
}
.faq_q a::after {
	position: absolute;
	top: 2.1rem;
	right: 10px;
	content: '';
	width: 25px;
	height: 25px;
	-webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 100%;
    mask-size: 100%;
	-webkit-mask-image: url(../images/common/icon_arrow.png);
    mask-image: url(../images/common/icon_arrow.png);
    background: #111;
}
.faq_q a:hover::after {
	animation: faq_arrow 300ms ease-in-out forwards;
}
@keyframes faq_arrow {
	0% {
		right: 10px;
	}
	50% {
		right: 5px;
	}
	100% {
		right: 10px;
	}
}
.faq_q h4 {
	font-size: 1.4em;
	letter-spacing: 0.1em;
}


/* Footer */

#footer {
	margin: 8.5em 0 0 0;
	padding: 5em 0 9.7em 0;
	background: #fff;
}
#footer .inner {
	padding: 0 150px;
}
#footer_company {
	text-align: center;
	margin-bottom: 3.8em;
}
#footer_company h1 {
	font-size: 1.4rem;
	letter-spacing: 0.18em;
	margin-bottom: 2em;
}
#footer_company_contact {
	margin: 0 auto 3em auto;
	width: 55%;
	width: 65%;
}
.footer_company_contact_pane {
	float: left;
	width: 32%;
}
.footer_company_contact_pane:nth-of-type(3n - 1) {
	margin: 0 2%;
}
.footer_company_contact_image {
	margin: 0 auto 1.5em auto;
	width: 50%;
}
.footer_company_contact_pane h4 {
	font-size: 0.9em;
}
#footer_company_calendar {
	text-align: center;
}
#footer_company_calendar table {
	display: inline-block;
	margin-bottom: 0.8em;
}
#footer_company_calendar thead th {
	padding: 5px 15px;
	font-size: 0.9em;
	line-height: 1em;
	text-align: center;
}
#footer_company_calendar tbody td {
	padding: 5px 15px;
	width: 50px;
	height: 30px;
}
#footer_company_calendar tbody td img {
	display: block;
}
#footer_company_calendar_time {
	font-size: 0.9em;
}

#footer_menu {
	padding-top: 2.5em;
	margin-bottom: 3.5em;
	border-top: 1px solid #111;
}
.footer_menu_column {
	float: left;
	width: 31%;
}
#footer_menu_second {
	margin: 0 6%;
}
#footer_menu_third {
	float: right;
	width: 26%;
}
.footer_menu_pane:not(:last-of-type) {
	margin-bottom: 2em;
}
.footer_menu_pane h4 {
	margin-bottom: 1em;
	font-size: 0.9em;
	line-height: 1.5em;
}
.footer_menu_pane h4 a {
	display: block;
	text-decoration: none;
}
.footer_menu_pane h4 span {
	display: inline-block;
	margin-left: 10px;
	font-size: 0.85em;
	color: #889dab;
}
.footer_menu_pane ul li {
	position: relative;
	padding-left: 1em;
	font-size: 0.9em;
	line-height: 1.5em;
}
.footer_menu_pane ul li:not(:last-of-type) {
	margin-bottom: 0.8em;
}
.footer_menu_pane ul li::before {
	position: absolute;
	top: 0;
	left: 0;
	content: '-';
}
.footer_menu_pane ul li a {
	display: inline-block;
	text-decoration: none;
}
.footer_menu_pane ul li a span {
	margin-left: 10px;
	font-size: 0.85em;
	line-height: 1.5em;
	color: #889dab;
}

.footer_sub_menu_page {
	float: left;
	margin-right: 1.5em;
}
.footer_sub_menu_page li {
	float: left;
}
.footer_sub_menu_page li:not(:last-of-type)::after {
	content: '｜';
	color: #909090;
}
.footer_sub_menu_page li a {
	font-size: 0.9em;
	text-decoration: none;
}
.footer_sub_menu_sns {
	float: left;
}
.footer_sub_menu_sns li {
	float: left;
}
.footer_sub_menu_sns li:not(:last-of-type) {
	margin-right: 1em;
}
.footer_sub_menu_sns li a {
	display: block;
	width: 26px;
	height: 26px;
}
.footer_sub_menu_sns li a img {
	display: block;
}
.footer_sub_menu_sns_instagram img {
	margin: 3px;
	width: 20px;
	height: 20px;
}


/* Shoes */

#shoes {
	padding-bottom: 5em;
	background: #fff;
}
#shoes .inner {
	padding: 0 60px;
	max-width: 100%;
}
#shoes_achievements {
	margin-bottom: 2.8em;
}
#shoes_sdgs {
	float: left;
	margin-top: 18px;
	margin-right: 2.3em;
}
#shoes_sdgs p {
	padding: 0.8em 2em 0.75em 0.8em;
	background: #f5f5f5;
	border-radius: 200px;
}
#shoes_sdgs span {
	display: inline-block;
	vertical-align: middle;
}
.shoes_sdgs_icon {
	margin-right: 1.3em;
	width: 45px;
}
#shoes_award {
	float: left;
}
#shoes_award li {
	float: left;
	text-align: center;
}
#shoes_award li:not(:last-of-type) {
	margin-right: 1.5em;
}
#shoes_award li span {
	display: block;
}
.shoes_award_image {
	margin: 0 auto 0.8em auto;
	width: 75px;
}
.shoes_award_title {
	font-size: 0.7em;
	line-height: 1.5em;
}
#shoes_address {
	float: left;
	font-size: 0.9em;
}
#copyright {
	float: right;
	font-size: 0.8em;
}


/* Lightslider */

.lSSlideOuter .lSPager.lSpg > li a {
	background-color: #C3C0B6 !important;
}
.lSSlideOuter .lSPager.lSpg > li:hover a,
.lSSlideOuter .lSPager.lSpg > li.active a {
	background-color: #434246 !important;
}


@media screen and (max-width: 1068px) and (min-width: 768px) {



}

@media screen and (max-width: 767px) and (min-width: 601px) {



}

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

	html {
		min-height: 100vh;
		font-size: 18px !important;
	}
	body {
		min-width: 480px;
		min-height: 100vh;
		font-size: 18px !important;
	}
	.only_pc {
		display: none;
	}
	.only_mobile {
		display: block;
	}
	.only_mobile.inline {
		display: inline-block;
	}
	#menu_switch {
		display: block;
	}

}
