@charset "utf-8";
/*
---------------------------------------
common
---------------------------------------
*/

.h2-box h1,
#wrapper > header h1 {
	color: #fff;
}

#wrapper {
	z-index: 0;
	background: transparent;
	overflow: hidden;
}

#wrapper > header {
	background: transparent;
	z-index: 0;
}

.page #wrapper > header,
.h2-box {
	background-size: cover !important;
}

.page #wrapper > header .inner-box {
	position: relative;
	z-index: 1;
}

.page #wrapper > header:before,
.page .h2-box:before {
	content: "";
	background: url(../img/common/bg-dot.gif) repeat;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.h2-box {
	position: relative;
	height: 350px;
	width: 100%;
	box-sizing: border-box;
	display: table;
	/*padding:75px 0;*/
	text-align: center;
	z-index: 1;
}

.h2-box > * {
	display: table-cell;
	width: 100%;
	height: 100%;
	vertical-align: middle;
	z-index: 1;
	position: relative;
}

.h2-box h2 {
	color: #fff;
	font-size: 6.5rem;
	letter-spacing: 1.6px;
	font-weight: bold;
	line-height: 1.3;
	margin: 40px auto 10px auto;
}

.h2-box h2 span {
	display: block;
	margin: 0 auto;
	text-align: center;
	font-family: "Poppins", sans-serif;
	letter-spacing: 18px;
	font-size: 1.8rem;
	font-weight: 600;
}

#contents section .icon-comment {
	font-size: 3rem;
}

#contents section .icon-mail-alt {
	font-size: 2.2rem;
	position: relative;
	top: -3px;
	display: inline-block;
	margin-right: 7px;
}

.h3-box-01 {
	background: #000;
	padding: 25px 0;
	margin-bottom: 50px;
}

.h3-box-01 h3 {
	color: #fff;
	font-weight: bold;
	font-size: 6rem;
	line-height: 1.4;
	text-align: center;
	letter-spacing: 1.6px;
	text-indent: 0.8px;
	margin-bottom: 7px;
}

.h3-box-01 h3 span {
	display: block;
	font-size: 1.8rem;
}

.tel-bnr {
	width: 95%;
	margin: 55px auto;
	max-width: 1038px;
	position: relative;
	box-sizing: border-box;
	padding: 10px 10px 10px 150px;
	border: 3px solid #333;
	background: #fff url(../img/common/bnr-tel-img.png) no-repeat left bottom;
	border-radius: 5px;
}

.tel-bnr p {
	font-size: 1.7rem;
}

.tel-bnr h3 {
	font-weight: bold;
	font-size: 3rem;
	text-align: center;
	margin-bottom: 12px;
}

.tel-bnr h3 i {
	border-bottom: 6px solid #f7da18;
	display: inline-block;
	line-height: 1.2;
}

.tel-bnr .tel {
	border-right: 2px solid #333;
}

.tel-bnr .tel a {
	line-height: 1.2;
	letter-spacing: 0;
	font-weight: bold;
	font-size: 5.5rem;
	font-family: Arial, Helvetica, sans-serif;
}

.tel-bnr .tel a i:before {
	margin: 0;
}

.tel-bnr .tbl > * {
	text-align: center;
	vertical-align: bottom;
}

.wp_social_bookmarking_light {
	border: 0 !important;
	padding: 10px 0 20px 0 !important;
	margin: 0 !important;
}

.wp_social_bookmarking_light div {
	float: left !important;
	border: 0 !important;
	padding: 0 !important;
	margin: 0 5px 0px 0 !important;
	min-height: 30px !important;
	line-height: 18px !important;
	text-indent: 0 !important;
}

.wp_social_bookmarking_light img {
	border: 0 !important;
	padding: 0;
	margin: 0;
	vertical-align: top !important;
}

.wp_social_bookmarking_light_clear {
	clear: both !important;
}

#fb-root {
	display: none;
}

.wsbl_twitter {
	width: 100px;
}

.wsbl_facebook_like iframe {
	max-width: none !important;
}

.wsbl_pinterest a {
	border: 0px !important;
}

/*
---------------------------------------
ec
---------------------------------------
*/
.btn-07 {
	width: 95%;
	margin: 0 auto;
	max-width: 453px;
	text-align: center;
	max-width: 772px;
	margin-top: 35px;
}

.btn-07 a {
	position: relative;
	display: block;
	background: #f7da18;
	color: #000;
	text-decoration: none !important;
	font-size: 1.8rem;
	padding: 6px 0;
	border: 2px solid #000;
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	box-shadow: 0 0 1px transparent;
	position: relative;
	-webkit-transition-property: color;
	transition-property: color;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	z-index: 2;
}

.btn-07 a:before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #fff;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: 0 50%;
	transform-origin: 0 50%;
	-webkit-transition-property: transform;
	transition-property: transform;
	-webkit-transition-duration: 0.4s;
	transition-duration: 0.4s;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
}

.btn-07 a i.icon-cart {
	display: inline-block;
	width: 20px;
	height: 18px;
	background: url(../img/common/ico-cart-black.png) no-repeat 50% 50%;
	vertical-align: text-bottom;
	margin-right: 15px;
}

.btn-07 i.arw {
	position: absolute;
	top: 50%;
	right: 0;
	vertical-align: middle;
}

.btn-07 i.arw:before {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	right: 20px;
	width: 28px;
	height: 1px;
	background: #000;
}

.btn-07 i.arw:after {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	right: 23px;
	width: 13px;
	height: 13px;
	border-top: 1px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.ec .h2-box {
	background: #000 url(../img/ec/bg.jpg) no-repeat top center;
}

.ec #sec-01 {
	margin-bottom: 5%;
}

.ec #sec-01 .bg-01 .bg-child {
	width: 75%;
	height: 80%;
	top: 9%;
	left: 25%;
}

.ec #sec-01 .btn-01 a i.icon-cart {
	display: inline-block;
	width: 20px;
	height: 18px;
	background: url(../img/common/ico-cart.png) no-repeat 50% 50%;
	vertical-align: text-bottom;
	margin-right: 15px;
}

.ec #sec-01 .bg-01 .tbl figure {
	width: 50%;
	text-align: center;
}

.ec #sec-01 ul.inline {
	margin-bottom: 35px;
	text-align: center;
}

.ec #sec-01 ul.inline li {
	text-align: center;
	padding: 0 28px;
}

.ec #sec-01 .btn-01 {
	max-width: 772px;
	margin-top: 35px;
}

.ec .top-video iframe {
	width: 100%;
	height: 100%;
	aspect-ratio: 16/9;
}

.ec #howto {
	padding-bottom: 1px;
}

.ec #howto .h-05 {
	margin-bottom: 40px;
}

.ec #howto .h-05:after {
	content: "";
	width: 100%;
	height: 2px;
	border-bottom: 2px solid #333;
	position: absolute;
	bottom: -15px;
	left: -4px;
}

.ec #howto .h-11 {
	margin-bottom: 1em;
}

.ec #howto section {
	margin-bottom: 50px;
}

.ec #howto section dl {
	margin-top: 2em;
}

.ec #howto section dl.inline {
	margin-top: 0;
}

.ec #howto section .caution_rito {
	font-size: 1.6rem;
	margin-top: 10px;
}

/*
---------------------------------------
shop
---------------------------------------
*/
.shop .h2-box,
.shop-list .h2-box {
	background: url(../img/shop/bg.jpg) no-repeat top center;
}

.shop-list #search {
	padding-bottom: 60px;
	background: url(../img/common/bg-seigaiha-04.png) repeat-x bottom;
}

.shop-list .area .child-list {
	margin-bottom: 50px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px 0;
}

.shop-list .area .btn-04 {
	width: 25%;
	padding: 0 10px;
	margin: 0;
}

.shop #info {
	padding-bottom: 55px;
}

.shop #info .info-top > * {
	margin-bottom: 25px;
	float: left;
}

.shop #info .info-top > .btn-list {
	float: right;
}

.shop #info .info-top > .btn-list * {
	display: block;
}

.shop #info .info-top > .btn-list > * {
	margin-left: 20px;
}

.shop #info dl {
	border: 3px solid #e34141;
	border-radius: 10px;
	padding: 15px;
}

.shop #info dl dt {
	text-align: center;
	width: 105px;
}

.shop #info dl dt span {
	font-size: 1.6rem;
	background: #e34141;
	color: #fff;
	display: inline-block;
	width: 100%;
	vertical-align: top;
	letter-spacing: 1.6px;
}

.shop #info dl dd {
	color: #e34141;
	font-weight: bold;
	padding-left: 20px;
}

.shop #info dl dd ul {
	max-height: 150px;
	overflow: auto;
}

.shop #info dl dd ul li {
	font-size: 1.6rem;
	color: #e34141;
	margin: 0 0 5px 0;
	font-weight: bold;
}

/*
.shop #info{
	padding:35px 0;
}*/
.shop #info .clearfix > table {
	width: 48%;
}

.shop #info .imgs-slider-2 {
	margin: 40px auto 55px auto;
}

.shop #info .imgs-slider-2 .slick-prev:before,
.shop #info .imgs-slider-2 .slick-next:before {
	font-weight: bold;
	font-size: 50px;
	color: #eee;
	margin-top: -0.5em;
	top: 50%;
}

.shop #info .imgs-slider-2 .slick-slide img {
	display: block;
	margin: 0 auto;
}

.shop #mao .h-05 {
	margin-bottom: 0.5em;
}

.shop #map .map {
	margin-bottom: 35px;
}

.shop #map {
	margin-bottom: 75px;
}

.shop #whats-new .inner-box {
	padding-left: 15px;
	padding-right: 15px;
	border-bottom: 1px solid #c3c3c3;
	margin-bottom: 50px;
}

.shop #whats-new .box {
	width: 50%;
	float: left;
	padding: 0 15px;
	margin-bottom: 30px;
}

.shop #staff .tbl {
	padding: 0 0 40px 0;
	margin-bottom: 40px;
	background: url(../img/common/line-01.png) repeat-x bottom;
}

.shop #staff .tbl > figure {
	width: 20%;
}

.shop #staff .tbl > .box {
	width: 80%;
	padding-left: 40px;
}

.shop #staff .tbl > .box p {
	font-size: 1.6rem;
}

.shop .slick-slide {
	padding: 0 10px;
}

.shop .btn-03 {
	margin: 15px auto;
}

.shop .select2 a {
	background: #fb7c19;
}

.shop .select1 a {
	background: #45a6e4;
}

/*
---------------------------------------
menu
---------------------------------------
*/
.menu .h2-box {
	background: url(../img/menu/bg.jpg) no-repeat top center;
}

.menu .h2-box h1 {
	font-size: 2.5rem;
}

.menu .menu-list > * {
	width: 33.3333%;
	padding: 0 13px;
}

.menu.menu--takeout {
	margin-bottom: 40px;
}

/*
---------------------------------------
ABURA
---------------------------------------
*/
.abura.menu .h2-box {
	background: url(/wp/wp-content/uploads/2018/06/ed1dbb31e61cb169bea9f266205159ec.jpg) no-repeat top center;
}

.abura.menu .h2-box::before {
	z-index: 2;
}

.abura.menu .h2-box::after {
	content: "";
	background: rgba(0, 0, 0, 0.6);
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.abura.menu .h2-box > * {
	position: relative;
	z-index: 3;
}

/*
---------------------------------------
recruit
---------------------------------------
*/
.recruit-more .h2-box,
.recruit-list .h2-box {
	background: url(../img/recruit/bg.jpg) no-repeat top center;
}

.recruit-list #sec-01 {
	margin: 45px auto 80px auto;
}

.recruit-list #sec-01 .box {
	width: 70%;
}

.recruit-list #sec-01 figure {
	width: 30%;
	z-index: 1;
	position: relative;
	left: -45px;
}

.recruit-list #sec-01 .h-04 i {
	width: 0.5em;
	display: inline-block;
}

.recruit-more #info {
	margin: 35px auto;
}

.recruit-more #info h3 {
	border: 2px solid #000;
	width: 90%;
	text-align: center;
	font-size: 2.9rem;
	padding: 15px 0;
	margin: 0 auto 50px auto;
	max-width: 618px;
}

.recruit-more #info table {
	margin-top: 25px;
}

.recruit-more .info-slider {
	width: 50%;
	box-sizing: border-box;
	padding-right: 20px;
	float: left;
}

.recruit-more .info-box {
	width: 50%;
	box-sizing: border-box;
	padding-left: 20px;
	float: right;
}

.recruit-more #map {
	margin-bottom: 50px;
}

.recruit-more #map p {
	margin-top: 1em;
}

#map .iframe-map {
	width: 100%;
	height: 300px;
	position: relative;
	background: #333;
	margin: 25px auto 10px auto;
}

#map .map,
#map .acf-map {
	width: 100%;
	height: 300px;
	position: relative;
	padding: 40px 0;
	background: #333;
	margin: 25px auto 10px auto;
}

#map .iframe-map iframe {
	width: 100%;
	height: 100%;
	display: block;
}

/*#map iframe,*/
#map .acf-map > * {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.recruit-more #message {
	margin-bottom: 50px;
}

.recruit-more #message .tbl {
	margin: 30px auto;
}

.recruit-more #message .tbl figure {
	width: 18%;
	padding-right: 2%;
}

.recruit-more #message .tbl .box {
	width: 86%;
	padding-left: 2%;
}

.recruit-more #message .tbl .box h4 {
	font-weight: bold;
	font-size: 3.3rem;
	letter-spacing: 10px;
	line-height: 1.2;
}

.recruit-more #message .tbl .box p {
	margin-top: 1em;
}

.recruit-more #entry {
	margin-bottom: 5%;
}

.recruit__btn {
	margin-top: 3rem;
}

/*
---------------------------------------
aburasoba
---------------------------------------
*/
.aburasoba .h2-box {
	background: url(../img/aburasoba/bg.jpg) no-repeat top center;
	background-size: cover;
}

.aburasoba #sec-01 {
	margin-bottom: 100px;
}

.aburasoba #sec-01 p {
	font-size: 2.7rem;
	letter-spacing: 6px;
	font-weight: bold;
}

.aburasoba #sec-01 .box {
	width: 65%;
}

.aburasoba #sec-01 > figure {
	width: 35%;
	position: absolute;
	top: 0;
	right: 0;
}

.aburasoba #point .box {
	margin-bottom: 200px;
	position: relative;
}

.aburasoba #point .box:after {
	content: "+";
	font-size: 7.6rem;
	display: block;
	width: 100%;
	height: 200px;
	line-height: 200px;
	margin: 0 auto;
	position: absolute;
	bottom: -200px;
	left: 0;
	text-align: center;
}

.aburasoba #point > #point-04 .ttl h3 span {
	padding-left: 40px;
	letter-spacing: 0;
}

.aburasoba #point > #point-04 .ttl h3 {
	font-size: 10.3rem;
	font-weight: bold;
	line-height: 1.1;
	letter-spacing: -20px;
	text-indent: 0;
	margin-left: -20px;
	left: -20px;
	position: relative;
}

.aburasoba #point > #point-04 .box:after {
	display: none;
}

.aburasoba #point .ttl h3,
.aburasoba #point .box figure {
	width: 40%;
}

.aburasoba #point .box figure {
	text-align: left;
	padding: 10px;
}

.aburasoba #point .ttl > * {
	vertical-align: bottom;
	padding-bottom: 10px;
}

.aburasoba #point .box > * {
}

.aburasoba #point .ttl h4,
.aburasoba #point .box p {
	padding-left: 20px;
	width: 60%;
}

.aburasoba #point .ttl h3 {
	font-size: 10.3rem;
	font-weight: bold;
	line-height: 1.1;
}

.aburasoba #point .ttl h3 span {
	font-size: 2.8rem;
	display: block;
	text-indent: 1.6px;
	font-weight: 600;
	margin-bottom: 20px;
	font-family: "Poppins", sans-serif;
}

.aburasoba #point .ttl h4 {
	font-size: 2.7rem;
	letter-spacing: 6px;
	font-weight: bold;
}

.aburasoba #howto {
	padding-bottom: 5%;
}

.icon-attention {
	display: inline-block;
	margin-right: 5px;
	background: url(../img/aburasoba/ico-attention.png) no-repeat center center;
	vertical-align: text-bottom;
	width: 34px;
	height: 30px;
}

.icon-attention2 {
	display: inline-block;
	margin-right: 5px;
	background: url(../img/common/ico-att.png) no-repeat center center;
	vertical-align: text-bottom;
	width: 60px;
	height: 52px;
	background-size: contain;
}

.aburasoba #howto .h3-box-01 {
	padding: 50px 0;
	background: #000 url(../img/aburasoba/bg-h3-box-01.jpg) no-repeat top center;
	background-size: cover;
}

.aburasoba #howto .h3-box-01 h3 {
	font-size: 6.5rem;
	line-height: 1.5;
}

.aburasoba #howto .h3-box-01 h3 span {
	margin-top: 5px;
	font-size: 2.8rem;
}

.aburasoba #howto section {
	position: relative;
}

.aburasoba #howto section:before {
	content: "";
	width: 100%;
	height: 14px;
	background: #f2f2f2;
	position: absolute;
	top: 36px;
	left: 0;
}

.aburasoba #howto section > * {
	position: relative;
	z-index: 1;
}

.aburasoba #howto #step-01:after,
.aburasoba #howto #step-02:after,
.aburasoba #howto #step-03:after {
	font-family: "fontello";
	content: "\e807";
	display: block;
	font-size: 15.4rem;
	line-height: 1.1;
	text-align: center;
	color: #cdcdcd;
	margin: 15px auto 35px auto;
}

.aburasoba #howto h4 {
	font-size: 8.2rem;
	font-weight: bold;
	position: relative;
	line-height: 1.3;
	margin-bottom: 20px;
}

.aburasoba #howto h4 span {
	color: #da2626;
}

.aburasoba #howto h4 i {
	width: 176px;
	height: 58px;
	display: block;
	padding-right: 10px;
	margin-bottom: 25px;
}

.aburasoba #howto #step-01 h4 i {
	background: #fff url(../img/aburasoba/ico-step-01.png) no-repeat top left;
}

.aburasoba #howto #step-02 h4 i {
	background: #fff url(../img/aburasoba/ico-step-02.png) no-repeat top left;
}

.aburasoba #howto #step-03 h4 i {
	background: #fff url(../img/aburasoba/ico-step-03.png) no-repeat top left;
}

.aburasoba #howto #step-04 h4 i {
	background: #fff url(../img/aburasoba/ico-step-04.png) no-repeat top left;
}

.aburasoba #howto p {
	font-size: 2.4rem;
	font-weight: bold;
}

.aburasoba #howto .inner-box .tbl figure {
	width: 40%;
}

.aburasoba #howto #step-01 p span.line {
	border-bottom: 6px solid #f7da18;
}

.aburasoba #howto #step-01 p span.bg {
	background: #333;
	color: #fff;
	display: inline-block;
	padding: 0 0 0 15px;
	margin-right: 15px;
	line-height: 1.5;
}

.aburasoba #howto #step-01 .check-box {
	border: 3px solid #333;
	border-radius: 10px;
	margin: 30px auto 5px auto;
}

.aburasoba #howto #step-01 .check-box dt,
.aburasoba #howto #step-01 .check-box dd {
	vertical-align: middle;
	padding: 10px 0;
}

.aburasoba #howto #step-01 .check-box dt img {
	vertical-align: middle;
}

.aburasoba #howto #step-01 .check-box dt {
	text-align: center;
	width: 141px;
	padding: 10px;
}

.aburasoba #howto #step-01 .check-box dd {
	font-size: 3.7rem;
	font-weight: bold;
	line-height: 1.5;
}

.aburasoba #howto #step-01 .check-box dd span {
	color: #da2626;
}

.aburasoba #howto #step-04 p i {
	color: #da2626;
	border-bottom: 6px solid #f7da18;
}

.aburasoba #sec-03 {
	padding: 2.5% 0;
	background: #000 url(../img/aburasoba/bg-sec-03.jpg) no-repeat top center;
	background-size: cover;
}

.aburasoba #sec-03 figure {
	width: 40%;
}

.aburasoba #sec-03 * {
	color: #fff;
}

.aburasoba #sec-03 .inner-box {
	position: relative;
	z-index: 1;
}

.aburasoba #sec-03 h3 {
	font-size: 6.2rem;
	font-weight: bold;
	letter-spacing: 12px;
	padding: 0 0 0 10px;
	margin-bottom: 10px;
	background: url(../img/aburasoba/bg-line.png) no-repeat bottom left;
}

/*
---------------------------------------
blog
---------------------------------------
*/
.blog-list .h2-box,
.blog .h2-box {
	background: url(../img/blog/bg.jpg) no-repeat top center;
}

.blog-list .list li:before {
	content: "";
	font-family: inherit;
	margin-top: -10px;
	width: 20px;
	height: 18px;
	background: url(../img/common/ico-pop-off.png) no-repeat center center;
	transition: all 0.4s;
}

.blog-list .list li:hover:before {
	background: url(../img/common/ico-pop-on.png) no-repeat center center;
}

/*
---------------------------------------
contact
---------------------------------------
*/
.contact .h2-box {
	background: url(../img/contact/bg.jpg) no-repeat top center;
}

.contact #sec-01 {
	margin: 50px auto;
}

.contact #sec-01 .box {
	width: 70%;
}

.contact #sec-01 figure {
	width: 30%;
	z-index: 1;
	position: relative;
	left: -45px;
}

.contact #entry {
	padding-bottom: 7.5%;
}

.contact .tbl-02 th {
	width: 30%;
}

/*
---------------------------------------
thanks
---------------------------------------
*/
#thanks .bg-01 figure img {
	display: block;
	margin: 0 auto;
}

#thanks .bg-01 .bg-child {
	width: 100%;
	height: 80%;
	position: absolute;
	top: 5%;
	left: 0;
}

#thanks .top-btn {
	margin: 25px auto;
}

/*--recruit--*/
.recruit #thanks .bg-01 .bg-child {
	height: 90%;
}

.recruit #thanks .bg-01 {
	margin-bottom: 0;
}

/*
---------------------------------------
menu
---------------------------------------
*/
.menu .h2-box {
	background: url(../img/menu/bg.jpg) no-repeat top center;
}

.menu #campaign {
	padding: 25px 0;
	border-bottom: 1px solid #ccc;
	margin: 25px auto;
}

.menu #topping .topping-slide {
	padding: 0 15px;
	box-sizing: border-box;
	float: left;
	width: 20%;
	margin-bottom: 50px;
}

.menu #topping .topping-slide figure {
	position: relative;
}

.menu #topping .topping-slide figure img {
	border-radius: 100%;
	left: 0;
}

.menu #topping .topping-slide h3 {
	font-weight: bold;
	font-size: 1.8rem;
	text-align: center;
	margin-top: 5px;
}

.menu #topping .imgs-slider-2 .slick-list {
	border-top-left-radius: 90px;
	border-top-right-radius: 90px;
}

.menu #topping .inner-box {
	max-width: 1040px;
}

.menu #pickup .inner-box,
.menu #sidemenu .inner-box {
	max-width: 1160px;
}

.menu #pickup .slick-slider {
	margin-bottom: 62px;
}

.menu #pickup .pick-slide {
	padding: 0 35px;
	box-sizing: border-box;
	float: left;
	width: 33.3333%;
	margin-bottom: 65px;
}

.menu #pickup .pick-slide h3 {
	font-size: 2.7rem;
	line-height: 1.5;
	margin: 10px 0;
	font-weight: bold;
	border-bottom: 1px solid #333;
}

.menu #pickup .pick-slide figure {
	text-align: center;
	position: relative;
}

.menu #pickup .pick-slide figure img {
	border-radius: 100%;
}

.menu #pickup .pick-slide p {
	font-size: 1.5rem;
}

.menu #pickup .pick-slide p.com_topping {
	padding-bottom: 25px;
	box-sizing: content-box;
}

.menu #pickup .pick-slide p.com {
	padding: 10px 0 15px 0;
	border-top: 1px dashed #ccc;
	box-sizing: content-box;
	position: relative;
	height: 4em;
	overflow: hidden;
}

.menu #pickup .pick-slide p.shop {
	background: #f3f3f3;
	box-sizing: content-box;
	padding: 10px 15px;
}

.menu #pickup .pick-slide p.com_topping,
.menu #pickup .pick-slide p.shop span {
	display: block;
}

.menu #pickup .pick-slide .price {
	text-align: right;
	padding-top: 7px;
	margin-top: 15px;
}

.menu #pickup .pick-slide .price > * {
	display: inline;
	line-height: 1.6;
	letter-spacing: 6px;
	vertical-align: middle;
}

.menu #pickup .pick-slide div.price dl {
	display: block;
}

.menu #pickup .pick-slide .price dt {
	display: inline-block;
	padding: 0 20px;
	font-size: 1.6rem;
	color: #fff;
	text-align: center;
	background: #000;
	margin: 0 5px 0 0;
}

.menu #pickup .pick-slide .price dd {
	font-size: 2.4rem;
	display: inline-block;
}

/* サイドメニュー */
.sidemenu-wrap {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 30px;
	max-width: 1160px;
	margin: 0 auto;
	padding: 0 20px;
}
@media screen and (max-width: 768px) {
	.sidemenu-wrap {
		grid-template-columns: 1fr 1fr;
		padding: 0 15px;
	}
}

.sidemenu-wrap p {
	font-size: 1.8rem;
}
@media screen and (max-width: 750px) {
	.sidemenu-wrap p {
		font-size: 1.5rem;
	}
}

.sidemenu-wrap figure {
	text-align: center;
	position: relative;
	max-width: 350px;
	max-height: 350px;
}

.sidemenu-wrap figure img {
	width: 100%;
	height: 100%;
}

.sidemenu-item {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
}

.sidemenu-wrap h3 {
	font-size: 2.1rem;
	line-height: 1.5;
	margin: 10px 0 5px;
	font-weight: bold;
	border-bottom: 1px solid #333;
}
@media screen and (max-width: 1050px) {
	.sidemenu-wrap h3 {
		font-size: 1.8rem;
		margin: 10px 0 0;
	}
}
@media screen and (max-width: 750px) {
	.sidemenu-wrap h3 {
		font-size: 1.6rem;
	}
}

.sidemenu-wrap figure img {
	border-radius: 100%;
}

.menu #aburasoba .bg-01 {
}

.menu #aburasoba .bg-01 .bg-child {
	width: 100%;
	height: 85%;
	top: 5px;
	left: 5%;
}

.menu #aburasoba section {
	margin-bottom: 5%;
}

.menu #aburasoba section figure {
	width: 42%;
	position: relative;
	z-index: 1;
}

.menu #aburasoba section .box {
	width: 55%;
}

.menu #aburasoba section .mori-list li {
	font-size: 2.5rem;
	width: 50%;
	line-height: 1.5;
	margin-bottom: 15px;
	font-weight: bold;
	letter-spacing: 1.8px;
}

.menu #aburasoba section .mori-list li:before {
	display: inline-block;
	content: "";
	width: 62px;
	height: 62px;
	vertical-align: middle;
	margin-right: 5px;
}

.menu #aburasoba section .mori-list li.nami:before {
	background: url(../img/menu/ico-nami.png) no-repeat 50% 50%;
}

.menu #aburasoba section .mori-list li.dai:before {
	background: url(../img/menu/ico-dai.png) no-repeat 50% 50%;
}

.menu #aburasoba section .mori-list li.bai:before {
	background: url(../img/menu/ico-bai.png) no-repeat 50% 50%;
}

.menu #aburasoba section .mori-list li.dera:before {
	background: url(../img/menu/ico-dera.png) no-repeat 50% 50%;
}

.menu #aburasoba section .alnR {
	font-size: 1.4rem;
}

.menu #aburasoba section .mori-list li span {
	border-bottom: 6px solid #f7da18;
	display: inline-block;
}

.menu #aburasoba section .mori-list li small {
	font-size: 1.8rem;
}

.menu #aburasoba #soba-01 .box {
	position: static;
	width: 60%;
}

.menu #aburasoba #soba-02 .box {
	position: static;
	width: 55%;
	margin-left: 45%;
}

.menu #aburasoba #soba-01 figure {
	position: absolute;
	right: 0;
	top: 0;
}

.menu #aburasoba #soba-02 figure {
	position: absolute;
	left: 0;
	top: 0;
}

.menu #aburasoba #soba-01 .bg-child {
	width: 50%;
	height: 100%;
	left: 10%;
	top: 0;
}

.menu #aburasoba #soba-02 .bg-child {
	width: 50%;
	height: 100%;
	left: 50%;
	top: 0;
}

.menu #aburasoba #soba-01 .mori-list li,
.menu #aburasoba #soba-02 .mori-list li {
	width: auto;
	margin-right: 1em;
}

.menu #aburasoba #soba-01 .mori-list li.bai,
.menu #aburasoba #soba-02 .mori-list li.bai {
	clear: left;
}

.menu #aburasoba .first {
	text-align: center;
	font-size: 5.5rem;
	font-weight: bold;
	letter-spacing: 0;
	line-height: 1.4;
}

.menu #aburasoba .topping {
	text-align: center;
	font-size: 6rem;
	font-weight: bold;
	letter-spacing: 0;
}

.menu #aburasoba .first:after,
.menu #aburasoba .topping-box:after {
	font-family: "fontello";
	content: "\e807";
	display: block;
	font-size: 7.8rem;
	line-height: 1.1;
	text-align: center;
	color: #cdcdcd;
	margin: 15px auto 35px auto;
}

.menu #aburasoba .first span,
.menu #aburasoba .topping span {
	color: #f53838;
}

.menu #aburasoba .topping-list {
	text-align: center;
}

.menu #aburasoba .topping-list img {
	margin: 0 5px;
}

.menu .h3-box-01 {
	background: #000;
	padding: 25px 0;
	margin-bottom: 50px;
}

.menu .h3-box-01 h3 {
	color: #fff;
	font-weight: bold;
	font-size: 6rem;
	line-height: 1.4;
	text-align: center;
	letter-spacing: 1.6px;
	text-indent: 0.8px;
	margin-bottom: 7px;
}

.menu .h3-box-01 h3 span {
	font-size: 1.8rem;
	font-weight: 600;
	font-family: "Poppins", sans-serif;
	display: block;
	margin: 0 auto;
	letter-spacing: 18px;
	text-indent: 9px;
	color: #747474;
}

.menu .h3-box-01 p {
	text-align: center;
	color: #fff;
	font-size: 1.6rem;
}

.menu .com {
}

.menu .onhidden {
	width: 100%;
	height: 250px;
	overflow-y: hidden;
}

.menu #pickup .pick-slide p.com.show {
	height: auto;
}

.menu .com .readmore {
	position: absolute;
	bottom: 0;
	width: 100%;
	padding: 10px 0;
	text-align: right;
	background: rgba(0, 0, 0, 0) linear-gradient(180deg, rgba(255, 255, 255, 0.7), white) repeat scroll 0 0;
	font-weight: bold;
	cursor: pointer;
	z-index: 999;
	left: 0;
}

.menu .readmore i {
	border-radius: 2px;
	background-color: #dd4b39;
	color: #fff;
	display: inline-block;
	padding: 0;
	text-align: center;
	width: 2rem;
	height: 2rem;
	line-height: 2rem;
}

/*
---------------------------------------
company
---------------------------------------
*/
.company .h2-box {
	background: url(../img/company/bg.jpg) no-repeat top center;
}

.company #sec-01 h3 {
	margin-bottom: 2.5%;
}

.company .nav-wrap {
	background: #000;
	padding: 30px 0;
	margin: 5% auto 0 auto;
}

.company .nav-wrap .tbl {
	table-layout: fixed;
}

.company .nav-wrap li {
	text-align: center;
}

.company .nav-wrap li i {
	color: #fff;
}

.company .nav-wrap .h-14 {
	color: #fff;
	font-size: 2.8rem;
}

.company .fun-box {
	padding: 80px 0 1px 0;
	margin: 45px auto;
}

.company .fun-box h4 {
	font-size: 3.9rem;
	font-weight: bold;
	letter-spacing: 12px;
}

.company #fun-01 .tbl figure {
	width: 50%;
	padding-top: 5px;
}

.company #fun-01 .tbl figure img {
	border: 5px solid #000;
}

.company #fun-02 {
	padding: 80px 0;
	background: #000 url(../img/company/bg-01.jpg) no-repeat top center;
	background-size: cover;
}

.company #fun-02 .h-10 {
	color: #fff;
}

.company #fun-02 .btn-02 {
	margin: 25px 0 0 0;
}

.company #fun-02 .box > * {
	color: #fff;
}

.company #fun-02 i.yel {
	color: #f7da18;
}

.company #fun-02 i.small {
	position: relative;
	font-size: 6.6rem;
	letter-spacing: 0;
}

/*
.company #fun-02 i.small:before{
	content:"";
	width:202px;
	height:60px;
	position:absolute;
	top:-70px;
	left:0;
	background:url(../img/company/ico-shinka.png) no-repeat center bottom;
}*/
.company #fun-02 i.small::before {
	content: "";
	width: 100%;
	height: 1em;
	position: absolute;
	top: -1.2em;
	left: 0;
	background: url(../img/company/ico-shinka.png) no-repeat center bottom;
	background-size: contain !important;
}

.company #fun-02 .insta {
	width: 40%;
	vertical-align: middle;
	padding: 0 10px;
}

.company #fun-03 .fun-03 .tbl figure {
	width: 50%;
	padding: 25px 0 0 0;
}

.company #fun-03 .fun-03-01 {
	margin-bottom: 5%;
}

.company #fun-03 .fun-03-01 h5,
.company #fun-03 .fun-03-02 h5 {
	text-align: center;
	font-weight: bold;
	font-size: 3.5rem;
}

.company #fun-03 .fun-03-01 ol,
.company #fun-03 .fun-03-02 ol {
	margin: 5% auto;
	table-layout: fixed;
}

.company #fun-03 .fun-03-01 h5 i {
	font-size: 4.5rem;
	font-weight: normal;
}

.company #fun-03 .fun-03-01 h5 i.s1 {
	transform: rotate(-25deg);
	display: inline-block;
}

.company #fun-03 .fun-03-01 h5 i.s2 {
	transform: rotate(25deg);
	display: inline-block;
}

.company #fun-03 .fun-03-02 h5 span,
.company #fun-03 .fun-03-01 h5 span {
	color: #da2626;
}

.company #fun-03 .fun-03-01 ol li,
.company #fun-03 .fun-03-02 ol li {
	float: none;
}

.company #fun-03 .fun-03-01 ol {
	width: 100%;
}

.company #fun-03 .fun-03-01 ol li {
	width: 25%;
}

.company #fun-03 .fun-03-02 ol li {
	width: 33.3333%;
}

.company #fun-03 .fun-03-01 ol li figure,
.company #fun-03 .fun-03-02 ol li figure {
	position: relative;
}

.company #fun-03 .fun-03-01 ol li figure:before,
.company #fun-03 .fun-03-02 ol li figure:before {
	font-family: "fontello";
	content: "\e801";
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -0.5em;
	font-size: 3.6rem;
	margin-right: -0.3em;
}

.company #fun-03 .fun-03-02 ol li:last-child figure:before {
	display: none;
}

.company #fun-03 .fun-03-01 ol li,
.company #fun-03 .fun-03-02 ol li {
	position: relative;
	text-align: center;
}

.company #fun-03 .fun-03-01 ol li h6,
.company #fun-03 .fun-03-02 ol li h6 {
	position: relative;
	text-align: center;
	margin: 10px auto 0 auto;
	max-width: 140px;
}

.company #fun-03 .fun-03-01 ol li h6 span,
.company #fun-03 .fun-03-02 ol li h6 span {
	display: inline-block;
	background: #fff;
	padding: 0 5px;
	position: relative;
	z-index: 1;
}

.company #fun-03 .fun-03-01 ol li h6:before,
.company #fun-03 .fun-03-02 ol li h6:before {
	content: "";
	width: 100%;
	height: 2px;
	background: #333;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -2px;
}

.company #fun-03 .fun-03-01 ol p,
.company #fun-03 .fun-03-02 ol p {
	font-size: 1.6rem;
}

.company #history .h3-box-01 {
	background: url(../img/company/bg-h3-history.jpg) no-repeat top center;
	background-size: cover;
}

.company #history ol {
	max-width: 1000px;
	margin: 0 auto;
}

.company #history li {
	padding: 0 0 0 50px;
	background: url(../img/company/ico-arw.png) no-repeat top left;
	margin-bottom: 5%;
}

.company #history li h4 {
	font-size: 4rem;
	font-weight: bold;
}

.company #history li h4 span img {
	vertical-align: text-bottom;
	margin-right: 30px;
}

.company .fun-box .at-content {
	border: 4px solid #000;
	border-radius: 10px;
	padding: 24px 48px 24px 194px;
	box-sizing: border-box;
	background: url(../img/app/lab-attention.png) no-repeat center left 48px / 120px;
	margin-bottom: 50px;
}

.company .fun-box .at-content .textbox {
	position: relative;
}

.company .fun-box .at-content .textbox .read {
	font-size: 28px;
	font-weight: bold;
	letter-spacing: 0.22em;
}

.company .fun-box .at-content .textbox .read span {
	color: #da2626;
}

.company .fun-box .at-content .textbox a {
	position: absolute;
	right: 50px;
	bottom: 0;
	font-size: 18px;
	letter-spacing: 0.15em;
	font-weight: bold;
}

.company .fun-box .at-content .textbox a::before {
	content: "";
	position: absolute;
	height: 2px;
	width: 100%;
	background: #000;
	bottom: 0;
}

.company .fun-box .at-content .textbox a::after {
	content: "";
	position: absolute;
	width: 30px;
	height: 8px;
	border-bottom: 2px solid #000;
	border-right: 3px solid #000;
	transform: skewX(50deg);
	bottom: 14px;
	right: -40px;
	transition: all 0.2s;
}

.company .fun-box .at-content .textbox a:hover::after {
	right: -50px;
}

@media screen and (max-width: 780px) {
	.company .fun-box .at-content {
		padding: 95px 20px 20px;
		background-position: top 15px center;
		background-size: 70px;
		margin-bottom: 20px;
	}

	.company .fun-box .at-content .textbox .read {
		font-size: 18px;
		line-height: 1.6;
		margin-bottom: 10px;
	}

	.company .fun-box .at-content .textbox a {
		position: relative;
		right: auto;
		display: block;
		text-align: right;
		padding-right: 32px;
		font-size: 14px;
	}

	.company .fun-box .at-content .textbox a::before {
		width: 145px;
	}

	.company .fun-box .at-content .textbox a::after {
		right: 0;
		bottom: 12px;
		width: 24px;
		height: 6px;
	}

	.company .fun-box .at-content .textbox a:hover::after {
		right: 0;
	}
}

/*
---------------------------------------
fc
---------------------------------------
*/
.fc .h2-box {
	background: url(../img/fc/bg.jpg) no-repeat top center;
	height: 600px;
}

@media screen and (max-width: 1050px) {
	.fc .h2-box {
		height: 500px;
		padding-bottom: 0;
		padding-top: 60px;
	}
}

@media screen and (max-width: 767px) {
	.fc .h2-box {
		background: url(../img/fc/bg-sp.jpg) no-repeat top center;
		height: 450px;
		padding-bottom: 0;
		padding-top: 80px;
	}
}

@media screen and (max-width: 480px) {
	.fc .h2-box {
		height: 340px;
		padding-bottom: 0;
		padding-top: 70px;
	}
}

.fc .h2-box h2 span {
	font-size: 4.8rem;
	letter-spacing: 0;
	text-align: left;
}

@media screen and (max-width: 1050px) {
	.fc .h2-box h2 span {
		font-size: 4.4rem;
	}
}

@media screen and (max-width: 767px) {
	.fc .h2-box h2 span {
		font-size: 3rem;
	}
}

.h2-box .fc-inner h2 {
	margin-top: 0;
	font-size: 7.45rem;
}

@media screen and (max-width: 1050px) {
	.fc .h2-box h2 {
		font-size: 6.5rem;
	}
}

@media screen and (max-width: 767px) {
	.fc .h2-box h2 {
		letter-spacing: 0em;
		font-size: 4.2rem;
	}

	.area-fc.fc .h2-box h2 {
		font-size: 4rem;
	}
}

.h2-box .fc-inner h2,
.h2-box .fc-inner h1 {
	text-align: left;
}

.fc-inner {
	display: block;
	position: relative;
	max-width: 1240px;
	margin: 0px auto 0;
	padding: 165px 30px 0;
}

@media screen and (max-width: 1050px) {
	.fc-inner {
		padding: 35px 30px 0;
	}
}

@media screen and (max-width: 767px) {
	.fc-inner {
		padding: 0 15px;
	}
}

@media screen and (max-width: 480px) {
	.fc-inner {
		padding-top: 15px;
	}
}

.fc-inner::before,
.fc-inner::after {
	content: "";
	position: absolute;
	width: 263px;
	height: 169px;
	background-repeat: no-repeat;
	background-size: contain;
}

@media screen and (max-width: 767px) {
	.fc-inner::before,
	.fc-inner::after {
		width: 133px;
		height: 85px;
	}
}

.fc-inner::before {
	background-image: url(../img/fc/point1.png);
	left: 0;
	bottom: 0;
	left: 30px;
}

@media screen and (max-width: 767px) {
	.fc-inner::before {
		left: 15px;
	}
}

.fc-inner::after {
	background-image: url(../img/fc/point2.png);
	left: 322px;
	bottom: 0;
}

@media screen and (max-width: 767px) {
	.fc-inner::after {
		left: 165px;
	}
}

@media screen and (max-width: 1050px) {
	.fc .h-nav .logo {
		padding: 3%;
	}
}

.fc .h2-box h2 .num {
	display: inline-block;
	font-size: 10.937rem;
	letter-spacing: 0.01em;
	font-family: "Antonio", sans-serif;
	font-weight: 700;
}

@media screen and (max-width: 1050px) {
	.fc .h2-box h2 .num {
		font-size: 8.5rem;
	}
}

@media screen and (max-width: 767px) {
	.fc .h2-box h2 .num {
		font-size: 5.5rem;
	}
}

.fc .h2-box h2 .text {
	display: inline-block;
	letter-spacing: 0.2em;
	font-size: 7.45rem;
}

@media screen and (max-width: 1050px) {
	.fc .h2-box h2 .text {
		font-size: 6.5rem;
	}
}

@media screen and (max-width: 767px) {
	.fc .h2-box h2 .text {
		display: inline-block;
		letter-spacing: 0.1em;
		font-size: 4.2rem;
	}
}

.fc .h2-box h2 .percent {
	display: inline-block;
	font-family: "Antonio", sans-serif;
	margin-right: 9px;
	font-size: 6rem;
}

@media screen and (max-width: 767px) {
	.fc .h2-box h2 .percent {
		margin-right: 2px;
		font-size: 3.4rem;
	}
}

.fc .h2-box a {
	position: absolute;
	right: 100px;
	bottom: 25px;
	width: 170px;
	height: 170px;
	z-index: 2;
}

@media screen and (max-width: 1050px) {
	.fc .h2-box a {
		right: 50px;
	}
}

@media screen and (max-width: 767px) {
	.fc .h2-box a {
		width: 120px;
		height: 120px;
		right: 15px;
		bottom: 30px;
	}
}

.fc .h2-box .batch {
	background-image: url(../img/fc/batch.png);
	background-size: contain;
	background-repeat: no-repeat;
	width: 100%;
	height: 100%;
}

.fc .badge-01 {
	width: 169px;
	height: 170px;
	position: absolute;
	bottom: -50px;
	left: 0;
	margin-top: -85px;
}

.fc .badge-01 > * {
	width: 100%;
	vertical-align: middle;
	line-height: 1.3;
	font-weight: bold;
	padding-bottom: 15px;
	padding-left: 5px;
}

.fc .badge-01 i {
	font-size: 3rem;
	display: block;
	font-weight: normal;
	margin: 0 auto;
}

.fc .badge-01:before {
	background: url(../img/fc/bg-badge-01.png) no-repeat center center;
}

.fc .badge-02 {
	position: absolute;
	bottom: -50px;
	right: 0;
	margin-top: -103px;
	width: 206px;
	height: 206px;
	background: url(../img/fc/bg-badge-02.png) no-repeat center center;
}

.fc .badge-02 > * {
	vertical-align: bottom;
	font-size: 1.7rem;
	font-weight: bold;
	line-height: 1.2;
	padding-left: 5px;
	line-height: 1.1;
	padding-left: 5px;
}

.fc .badge-02 i {
	font-size: 2rem;
	display: block;
	font-weight: normal;
	margin: 0 auto;
	line-height: 1.9;
}

.fc .badge-02 > *:hover i {
	color: #f7da18;
}

.fc .open-box {
	margin-bottom: 65px;
	max-width: 640px;
	margin: 0 auto 65px;
}

.fc .open-box dt {
	font-weight: bold;
	font-size: 3rem;
	text-align: center;
	border-bottom: 2px solid #000;
	padding-bottom: 10px;
}

.fc .open-box dd {
	border-bottom: 2px solid #000;
}

.fc .open-box dd a {
	padding: 5px 10px;
	display: block;
}

.fc #reason {
	padding: 0 0 40px 0;
}

.fc #reason h3 {
	text-align: center;
}

.fc #reason .h-13 {
	letter-spacing: 6px;
	padding-left: 3px;
}

.fc #reason ul {
	table-layout: fixed;
	text-align: center;
}

.fc #reason ul li a {
	display: block;
}

.fc .h3-box-01 {
	background: #000;
	padding: 34px 0;
	margin-bottom: 50px;
}

.fc .h3-box-01 > * {
	position: relative;
	z-index: 1;
}

.fc .h3-box-01 h3 {
	color: #fff;
	font-weight: bold;
	font-size: 7.4rem;
	line-height: 1.5;
	text-align: center;
	letter-spacing: 1.6px;
	text-indent: 0.8px;
	padding: 0 5%;
}

.fc .h3-box-01 h3 span {
	font-size: 1.8rem;
	font-weight: 600;
	font-family: "Poppins", sans-serif;
	display: block;
	margin: 0 auto;
	letter-spacing: 18px;
	text-indent: 9px;
}

.fc .h3-box-01 h3 i {
	display: inline-block;
	vertical-align: middle;
	margin-right: 15px;
	top: -5px;
	position: relative;
}

.fc #aburasoba .h3-box-01 h3 i {
	width: 68px;
	height: 68px;
	background: url(../img/fc/ico-h3-01.png) no-repeat center center;
}

.fc #training .h3-box-01 h3 i {
	width: 72px;
	height: 68px;
	background: url(../img/fc/ico-h3-02.png) no-repeat center center;
}

.fc #training ol li {
	text-align: center;
	color: #61442b;
}

.fc #training ol li.step-01:after,
.fc #training ol li.step-03:after,
.fc #training ol li.step-04:after,
.fc #training ol li.step-05:after {
	font-family: "fontello";
	content: "\e807";
	display: block;
	margin: 0 auto;
	font-size: 5.5rem;
	line-height: 1.1;
	color: #61442b;
}

.fc #training ol li.step-03 ul {
	margin-top: 30px;
}

.fc #training ol .s-01 {
	display: block;
	color: #fff;
	background: #61442b;
	font-size: 2.3rem;
	margin: 25px auto 12px auto;
	border-radius: 3em;
	padding: 6px 0;
}

.fc #training ol .s-02 {
	width: 100%;
	font-size: 2.3rem;
	margin: 25px auto 12px auto;
	border-radius: 3em;
	overflow: hidden;
}

.fc #training ol .s-02 .bg01 {
	width: 50%;
	background: #fff;
	padding: 6px 0;
	border: 3px solid #61442b;
	border-top-left-radius: 3em;
	border-bottom-left-radius: 3em;
}

.fc #training ol .s-02 .bg02 {
	position: relative;
	width: 50%;
	color: #fff;
	background: #61442b;
	padding: 6px 0;
	border: 3px solid #61442b;
	border-top-right-radius: 3em;
	border-bottom-right-radius: 3em;
}

.fc #training ol li.li-3,
.fc #training ol li.li-4 {
	margin-bottom: 30px;
}

.fc #training ol li.li-3 {
	width: 33%;
	text-align: center;
	box-sizing: border-box;
	padding: 0 20px;
}

.fc #training ol li.li-4 {
	width: 25%;
	text-align: center;
	box-sizing: border-box;
	padding: 0 20px;
}

.fc #training ol .s-03 {
	display: block;
	background: #fff;
	color: #61442b;
	padding: 6px 15px;
	border: 3px solid #61442b;
	border-radius: 3em;
}

.fc #training ol .s-02 .bg02:before {
	content: "";
	width: 25px;
	height: 200%;
	background: #61442b;
	position: absolute;
	left: -18px;
	top: -50%;
	transform: rotate(25deg);
}

/* fc サポート */
.fc #point-02 #support {
	margin-bottom: 5%;
}

.fc #point-02 #support h4 {
	color: #da2626;
	font-size: 6.3rem;
	font-weight: bold;
	text-align: center;
}

.fc #point-02 #support h4 i {
	content: "";
	width: 89px;
	height: 77px;
	vertical-align: middle;
	margin-right: 5px;
	background: url(../img/fc/ico-point.png) no-repeat 50% 50%;
	display: inline-block;
}

.center {
	text-align: center;
}

@media screen and (min-width: 768px) {
	.area-fc-graph__inner h4 {
		color: #da2626;
		font-size: 6rem;
		font-weight: bold;
		text-align: center;
	}
}

@media only screen and (max-width: 767px) {
	.area-fc-graph__inner h4 {
		color: #da2626;
		font-size: 3.2rem;
		font-weight: bold;
		text-align: center;
	}
}

.support_open-detail {
	display: flex;
	justify-content: center;
	flex-direction: column;
	gap: 20px;
	margin: 30px auto;
}

@media screen and (min-width: 840px) {
	.support_open-detail {
		flex-direction: unset;
		gap: 40px;
		margin: 50px auto 20px;
	}
}

.support_open-detail-box {
	border: 4px solid #000;
	width: 100%;
	box-sizing: border-box;
	padding: 20px;
}

@media screen and (min-width: 761px) {
	.support_open-detail-box {
		width: calc(100% / 3.5);
	}
}

@media screen and (min-width: 1050px) {
	.support_open-detail-box {
		width: calc(100% / 3.3);
	}
}

.support_open-detail-box h5 {
	font-size: 2rem;
	font-weight: 700;
	text-align: center;
	margin-bottom: 20px;
	position: relative;
}

.support_open-detail-box h5::before {
	content: "";
	position: absolute;
	bottom: -3px;
	height: 2px;
	width: 25px;
	background: #000;
	margin: auto;
	left: 0;
	right: 0;
}

@media screen and (min-width: 761px) {
	.support_open-detail-box h5 {
		margin-bottom: 27px;
	}

	.support_open-detail-box h5::before {
		bottom: -6px;
		height: 2px;
		width: 35px;
	}
}

.support_open-detail-box li {
	font-size: 1.5rem;
	line-height: 1.8;
}

/* FC media */

.media-inner {
	margin-bottom: 50px;
}
@media screen and (min-width: 1400px) {
	.media-inner {
		max-width: 1400px;
		margin: 50px auto;
	}
}

.media-list li {
	margin: 0 20px;
}

.media-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	text-align: center;
	gap: 50px 20px;
}

.media-list-vertical {
	display: grid;
	grid-template-columns: 1fr;
	margin-top: 40px;
}

@media screen and (min-width: 768px) {
	.media-list li {
		width: 45%;
	}

	.media-list-vertical.media-list li {
		width: 100%;
	}

	.media-list li {
		margin: 0;
	}
	.media-list-vertical {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		margin-top: 40px;
		padding: 0 20px;
	}
}

.media-img img {
	object-fit: contain;
}

@media screen and (min-width: 768px) {
	.media-img img {
		max-height: 350px;
	}
	.media-list-vertical.media-list li .media-img img {
		max-height: 300px;
	}
}
@media screen and (min-width: 1100px) {
	.media-list-vertical.media-list li .media-img img {
		max-height: 350px;
	}
}

@media screen and (min-width: 1400px) {
	.media-list-vertical.media-list li .media-img img {
		max-height: 450px;
	}
}

.fc #initial-cost .h3-box-01 h3 i {
	width: 85px;
	height: 63px;
	background: url(../img/fc/ico-h3-03.png) no-repeat center center;
}

.fc section .h3-box-01 {
	position: relative;
}

.fc section .h3-box-01:before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: url(../img/common/bg-dot.gif) repeat;
}

.fc section .h3-box-01 > * {
	position: relative;
	z-index: 1;
}

.fc #aburasoba .h3-box-01 {
	background: url(../img/fc/bg-point-01.jpg) no-repeat center center;
	background-size: cover !important;
}

.fc #training .h3-box-01 {
	background: url(../img/fc/bg-point-02.jpg) no-repeat center center;
	background-size: cover !important;
}

.fc #initial-cost .h3-box-01 {
	background: url(../img/fc/bg-point-03.jpg) no-repeat center center;
	background-size: cover !important;
}

.fc #precious {
	margin-bottom: 35px;
}

.fc #about .h3-box-01 {
	background: url(../img/fc/bg-about.jpg) no-repeat center center;
	background-size: cover !important;
}

.fc .point figure .bob {
	cursor: default;
}

.fc .point .label span {
	display: inline-block;
	background: #f7da18;
	padding: 0 25px;
	vertical-align: middle;
	line-height: 1.8;
	letter-spacing: 1px;
	margin: 0 0 10px 0;
	font-weight: 600;
	font-family: "Poppins", sans-serif;
}

.fc .point figure {
	position: absolute;
	top: 0;
	right: 0;
}

.fc #point-01 figure {
	width: 40%;
}

/*.fc .point h4{
	font-weight:bold;
	font-size:4.4rem;
	line-height:1.5;
	letter-spacing:.8px;
	position:relative;
	z-index:10;
    display: inline-block;
	margin-bottom: 1em;
	width:70%;
}
.fc .point h4 span{
	line-height:1.1;
	letter-spacing:1.6px;
}
.fc .point h4 i{
	color:#da2626;
}
.fc .point h4 .ttl-01{
	font-size:8.5rem;
	display:block;
}
.fc .point h4 .ttl-02{
	font-size:13.8rem;
	white-space: nowrap;
}*/
.fc .point .bg-01 .bg-child {
	width: 70%;
	height: 80%;
	top: 100px;
	left: 30%;
}

.fc #point-01 figure img,
.fc #point-02 figure img,
.fc #point-03 figure img {
	width: 100%;
}

.fc #point-01 #feature-01,
.fc #point-01 #feature-02 {
	margin: 70px auto 140px auto;
}

.fc #point-01 section h5 {
	font-size: 3.3rem;
}

.fc #point-01 section h5 > span {
	font-weight: bold;
	font-size: 5.8rem;
	display: block;
}

.fc #point-01 section h5 span i {
	position: relative;
}

.fc #point-01 section h5 span i:before {
	content: "";
	width: 100%;
	height: 16px;
	position: absolute;
	bottom: -5px;
	left: 0;
	background: #f7da18;
	z-index: -1;
}

.fc #point-01 section h5 span small {
	font-size: 3.5rem;
}

.fc #point-01 section h5 .icon {
	width: 81px;
	height: 101px;
	vertical-align: middle;
	display: inline-block;
	margin-right: 30px;
	position: relative;
	top: -1.2rem;
}

.fc #point-01 #feature-01 h5 .icon {
	background: url(../img/fc/ico-feat-01.png) no-repeat center center;
}

.fc #point-01 #feature-02 h5 .icon {
	background: url(../img/fc/ico-feat-02.png) no-repeat center center;
}

.fc #point-01 #feature-03 h5 .icon {
	background: url(../img/fc/ico-feat-03.png) no-repeat center center;
}

.fc #point-01 #feature-02 figure {
	width: 55%;
	min-height: 220px;
}

.fc #point-01 #feature-02 figure img {
	position: relative;
}

.fc #point-01 #feature-02 figure .topping-01 img {
	top: 25px;
}

.fc #point-01 #feature-02 figure .topping-02 img {
	top: 115px;
	left: 18px;
}

.fc #point-01 #feature-02 figure .topping-03 img {
	left: 3px;
}

.fc #point-01 #feature-02 figure .topping-04 img {
	top: 148px;
	left: -52px;
}

.fc #point-01 #feature-02 figure .topping-05 img {
	top: 33px;
	left: -43px;
}

.fc #before-after {
	margin: 25px auto 25px auto;
}

.fc #before-after .tbl {
	width: 100%;
}

.fc #before-after .before {
	text-align: center;
	width: 45%;
	font-weight: bold;
}

.fc #before-after .before > span,
.fc #before-after .after > span {
	display: block;
	font-size: 2.3rem;
	line-height: 1.2;
}

.fc #before-after .before > i {
	position: absolute;
	top: 50%;
	right: -0.5em;
	font-size: 5rem;
	margin-top: -0.5em;
	transform: rotate(-90deg);
	color: #7b7b7b;
}

.fc #before-after .before p {
	font-size: 7.7rem;
	line-height: 1.2;
}

.fc #before-after .before p i {
	font-size: 4.1rem;
	transform: unset;
}

.fc #before-after .after p {
	font-size: 7.7rem;
	line-height: 1.2;
	color: #f12b2b;
}

.fc #before-after .after p span {
	display: inline-block;
	border-bottom: 6px solid #f7da18;
}

.fc #before-after .after p i {
	font-size: 4.1rem;
}

.fc #before-after .after p i.f2 {
	font-size: 5.3rem;
}

.fc #before-after .after {
	text-align: center;
	font-weight: bold;
	width: 55%;
}

.fc #before-after .bg-01 .bg-child {
	position: relative;
	width: 100%;
	height: 20px;
	top: 0;
	left: 0;
	margin: 15px auto 50px auto;
}

.fc #minori {
	position: relative;
	background: #000 url(../img/fc/bg-minori.jpg) no-repeat top center;
	background-size: cover;
	padding: 50px 0;
}

.fc #minori:before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: url(../img/common/bg-dot.gif) repeat;
}

.fc #minori * {
	position: relative;
	z-index: 1;
	color: #fff;
	text-align: center;
}

.fc #minori h3 {
	text-align: center;
	font-size: 3rem;
	letter-spacing: 1.6px;
	margin-bottom: 15px;
}

.fc #minori p.open {
	font-size: 7.6rem;
	font-weight: bold;
	color: #f7da18;
}

.fc #minori p.open span {
	font-size: 8rem;
	color: #f7da18;
}

.fc #minori p.open i {
	display: inline-block;
	vertical-align: baseline;
	width: 107px;
	height: 93px;
	margin-right: 10px;
	background: url(../img/fc/ico-minori.png) no-repeat center center;
}

.fc #minori p.zero {
	font-size: 3.3rem;
}

.fc #minori p.zero span {
	color: #f7da18;
}

.fc #minori ul {
	max-width: 1000px;
	margin: 0 auto;
	table-layout: fixed;
}

.fc #minori ul li p {
	padding: 10px 28px 0 28px;
	text-align: left;
}

.fc #minori ol {
	max-width: 780px;
	margin: 0 auto 50px auto;
}

.fc #minori ol li {
	font-size: 2.3rem;
	font-weight: bold;
	text-align: center;
}

.fc #minori ol li small {
	font-size: 2.3rem;
	color: #fff;
}

.fc #minori ol li span {
	color: #333;
	margin: 25px auto 12px auto;
	display: block;
	border-radius: 3em;
	background: #fff;
	padding: 6px 0;
}

.fc #minori ol li.step-01:after,
.fc #minori ol li.step-02:after {
	font-family: "fontello";
	content: "\e807";
	display: block;
	margin: 0 auto;
	font-size: 5.5rem;
	line-height: 1.1;
}

/* インタビュー */

.fc #interview .interview-box {
	table-layout: fixed;
}

.fc #interview .interview-box figure {
	width: 212px;
}

.fc #interview .interview-box .box {
	padding-left: 20px;
}

.fc #interview .interview-box .label span {
	display: inline-block;
	margin-right: 10px;
	padding: 0 15px;
	line-height: 1.8;
	font-size: 1.6rem;
}

.fc #interview .interview-box .label {
	margin-bottom: 15px;
}

.fc #interview .interview-box .label .label-1 {
	background: #fb750b;
	color: #fff;
}

.fc #interview .interview-box .label .label-2 {
	background: #ae580c;
	color: #fff;
}

.fc #interview .interview-box .label .label-3 {
	background: #578b1f;
	color: #fff;
}

.fc #interview .interview-box .label .name {
	font-weight: bold;
	padding: 0;
}

.fc #interview .interview-box {
	border-bottom: 1px dotted #ccc;
	margin-bottom: 15px;
}

.fc #interview section {
	margin-bottom: 40px;
}

.fc #interview section.tbl {
	padding-left: 0;
}

.fc #interview .btn-01 {
	margin-bottom: 15px;
	text-indent: 15px;
	max-width: 750px;
}

.fc #interview .btn-01 i {
	text-indent: 0;
	border: 1px solid #fff;
	border-radius: 100%;
	width: 15px;
	height: 15px;
	line-height: 11px;
	text-align: center;
	display: inline-block;
	font-size: 13px;
	vertical-align: middle;
	padding: 2px 0px 0px 2px;
	box-sizing: content-box;
	margin-left: 5px;
}

.owner-item-contents {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 10px;
}

@media screen and (min-width: 900px) {
	.owner-item-contents {
		gap: 60px;
	}
}

.owner-item {
	max-width: 100%;
	padding: 0 10px;
	margin-bottom: 30px;
}

@media screen and (min-width: 560px) {
	.owner-item {
		max-width: 270px;
	}
}

@media screen and (min-width: 900px) {
	.owner-item {
		max-width: 400px;
	}
}

.owner-item-contents .strong-text {
	font-size: 2rem;
	font-weight: 700;
}

.owner-item-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fc #about ul.tbl {
	margin-top: 50px;
}

.fc #about ul.tbl li {
	text-align: center;
	position: relative;
}

.fc #about ul.tbl li:after {
	content: "";
	width: 25%;
	margin: 30px auto 45px auto;
	height: 6px;
	background: #333;
	display: block;
}

.fc #about ul.tbl li h5 {
	font-size: 3rem;
	font-weight: bold;
	text-align: center;
	margin: 0 auto;
	line-height: 1.5;
	letter-spacing: 0;
}

#profile {
	margin-top: 4%;
}

#profile h4 {
	background: #333;
	padding: 7px 25px;
	font-size: 1.8rem;
	text-align: center;
	color: #fff;
	letter-spacing: 18px;
	text-indent: 9px;
	font-weight: bold;
	font-family: "Poppins", sans-serif;
	font-weight: 600;
}

#profile .tbl-03 {
	margin: 25px auto;
}

.fc #entry .pc.alnC {
	max-width: 953px;
	margin: 0 auto 45px;
}

.fc #entry .btn-sub {
	position: relative;
	top: -35px;
	margin-left: 20%;
}

.fc #entry .tel-box {
	position: relative;
	top: -15px;
	padding-left: 20%;
}

.fc #entry .tel-box p {
	text-align: center;
}

.fc #entry .tel-box p.tel {
	letter-spacing: 1.6px;
	font-weight: bold;
	font-size: 2rem;
}

.fc #entry .tel-box p.tel a {
	letter-spacing: 0;
	border-bottom: 6px solid #f7da18;
	font-weight: bold;
	font-size: 3.6rem;
	font-family: Arial, Helvetica, sans-serif;
}

.fc #entry .tbl-02 td {
	padding-right: 15%;
}

.fc .mugendai {
	font-size: 9.4rem;
	text-align: center;
	font-weight: bold;
	letter-spacing: 1.6px;
	line-height: 1.1;
	position: relative;
	margin: 1em auto 0.5em auto;
}

.fc .mugendai i {
	border-bottom: 0.25em solid #f7da18;
	display: inline-block;
	line-height: 1.2;
}

.fc .mugendai i {
	-webkit-text-emphasis: filled dot #000;
	-ms-text-emphasis: filled dot #000;
	text-emphasis: filled dot #000;
}

.fc #fix-img {
	display: block;
	position: fixed;
	bottom: 190px;
	right: 0;
	width: 70px;
	z-index: 9999999;
}

/*
---------------------------------------
question
---------------------------------------
*/
.question .h2-box {
	background: url(../img/question/bg.jpg) no-repeat top center;
}

.question #sec-01 {
	margin: 45px auto 0 auto;
}

.question #sec-01 .bg-01 {
	margin-bottom: 0;
}

.question #sec-01 h3 {
	font-size: 6.1rem;
	letter-spacing: 4px;
}

.question #sec-01 .bg-child {
	width: 50%;
	left: 45%;
	top: 0;
}

.question #sec-01 .box {
	width: 72%;
}

.question #sec-01 figure {
	width: 28%;
	text-align: left;
}

.question #sec-01 figure img {
	position: relative;
	left: -10px;
	top: -40px;
}

.question #sec-02 {
	border-top: 1px solid #ccc;
	margin: 0 auto 55px auto;
	padding: 25px 0 0 0;
}

.question #sec-02 .tbl > * {
	vertical-align: middle;
}

.question #sec-02 .tbl figure {
	width: 180px;
}

.question #sec-02 .tbl h3 {
	font-size: 3.2rem;
	font-weight: bold;
	padding-left: 1em;
}

.question #sec-02 .tbl h3 span {
	color: #f12b2f;
}

.question #sec-02 p {
	padding: 15px;
}

.question select.month,
.question select.time,
.question select.daily {
	width: auto !important;
	min-width: inherit;
}

.question .tbl-02 th {
	width: 45%;
}

.question .tbl-02 td {
	vertical-align: middle;
}

.question #entry {
	padding-bottom: 5%;
}

/*
---------------------------------------
404
---------------------------------------
*/
.not-found #wrapper > header,
.not-found .h2-box {
	height: 150px;
	background: #000;
}

.not-found #thanks .bg-01 {
	padding-top: 5%;
}

.not-found #thanks {
	padding-top: 35px;
}

.not-found #thanks .bg-01 .bg-child {
	width: 70%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 30%;
}

.not-found dl {
	margin: 25px auto;
}

.not-found dl dt {
	background: #000;
	color: #fff;
	text-align: center;
	font-size: 1.8rem;
	line-height: 2;
	border-radius: 3em;
	position: relative;
	margin: 0 auto 20px auto;
	max-width: 80%;
	padding: 5px 0;
}

.not-found dl dt:before {
	content: "";
	position: absolute;
	bottom: -14px;
	left: 50%;
	margin-left: -11px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 14px 11px 0 11px;
	border-color: #000000 transparent transparent transparent;
}

.not-found dl dd ul li {
	width: 33.3333%;
	padding: 10px;
}

/*
---------------------------------------
overview - 会社概要
---------------------------------------
*/
.overview #sec-01 .inner {
	max-width: 1180px;
	margin: 0 auto;
	position: relative;
	min-height: 567px;
	height: 567px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.overview #sec-01 .inner .bg-child {
	position: absolute;
	top: 84px;
	right: 88px;
	bottom: 115px;
	left: auto;
	width: 620px;
	height: auto;
}

.overview #sec-01 .inner .title {
	font-size: 5.6rem;
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: -1px;
	text-indent: -3rem;
}

.overview #sec-01 .inner .description {
	max-width: 700px;
}

.overview #sec-01 .inner::after {
	content: "";
	width: 40vw;
	height: 40vw;
	max-width: 500px;
	max-height: 450px;
	background: url("../img/overview/bg-sec-01.png") center / contain no-repeat;
	position: absolute;
	top: 50px;
	right: 0;
}

/**
 * 歌志軒が大切にしていること
 **/
.overview #sec-policy .sec-policy__header {
	background: url("../img/overview/bg-sec-policy.jpg") center / cover no-repeat;
	color: white;
	text-align: center;
	padding: 75px 0;
	margin-bottom: 80px;
}

.overview #sec-policy .sec-policy__header__title-en {
	font-family: "Poppins", sans-serif;
	font-size: 2rem;
	letter-spacing: 18px;
	padding-left: 18px;
	font-weight: 600;
}

.overview #sec-policy .sec-policy__header__title-ja {
	font-size: 5.6rem;
	font-weight: bold;
	position: relative;
	line-height: 1.5;
	padding-bottom: 25px;
	margin-bottom: 25px;
}

.overview #sec-policy .sec-policy__header__title-ja br {
	display: none;
}

.overview #sec-policy .sec-policy__header__title-ja::after {
	content: "";
	position: absolute;
	width: 60px;
	height: 4px;
	background-color: #d72f2f;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}

.overview #sec-policy .sec-policy__header__description {
	font-size: 2rem;
	padding: 16px;
}

.overview .inner {
	max-width: 1180px;
	margin: 0 auto;
}

.overview .sec-point {
	display: flex;
	padding-bottom: 40px;
	margin-bottom: 80px;
}

.overview .sec-point:nth-child(2n) {
	flex-direction: row-reverse;
}

.overview .sec-point .bg-child {
	left: 120px;
	right: 120px;
	width: auto;
	top: 40px;
	bottom: 0;
	height: auto;
}

.overview .sec-point__img {
	flex: 0 1 56%;
}

.overview .sec-point:nth-child(2n) .sec-point__img {
	text-align: right;
}

.overview .sec-point__img img {
	max-width: 90%;
}

.overview .sec-point__text {
	flex: 0 1 44%;
	padding-top: 100px;
}

.overview .sec-point__point {
	font-size: 2.4rem;
	color: #d72f2f;
	font-family: "Poppins", sans-serif;
	letter-spacing: 6px;
	font-weight: 600;
	margin-bottom: 20px;
}

.overview .sec-point__title {
	font-size: 4.5rem;
	font-weight: bold;
	letter-spacing: -3px;
	line-height: 1.3;
	margin-bottom: 30px;
}

.overview .sec-point__title em {
	font-size: 6.6rem;
	font-style: normal;
	margin-left: -4rem;
}

/**
 * 代表挨拶
 **/
.overview #sec-greeting {
	position: relative;
	padding-bottom: 100px;
}

.overview #sec-greeting .bg {
	position: absolute;
	width: 80%;
	padding-top: 50%;
	bottom: 0;
	background: url(../img/common/bg-seigaiha-02.png) repeat;
	z-index: -1;
}

.overview #sec-greeting .bg::after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	background: linear-gradient(to top right, rgba(255, 255, 255, 0) 50%, white 50%) no-repeat top left/100% 100%;
}

.overview .sec-greeting__header {
	text-align: center;
	margin-bottom: 75px;
}

.overview .sec-greeting__header__title-en {
	font-size: 2rem;
	color: #d72f2f;
	font-family: "Poppins", sans-serif;
	letter-spacing: 6px;
	font-weight: 600;
	line-height: 1;
}

.overview .sec-greeting__header__title-ja {
	font-size: 5.2rem;
	font-weight: bold;
	display: flex;
	align-items: center;
}

.overview .sec-greeting__header__title-ja::before,
.overview .sec-greeting__header__title-ja::after {
	content: "";
	display: block;
	height: 4px;
	flex: 1 0 0px;
	background-color: #e6e6e6;
}

.overview .sec-greeting__header__title-ja span {
	display: block;
	padding: 0 37px;
}

.overview .sec-greeting-main {
	display: flex;
	justify-content: space-between;
}

.overview .sec-greeting-main__img {
	flex: 0 0 40%;
	text-align: center;
}

.overview .sec-greeting-main__text {
	flex: 0 0 58%;
	padding: 60px 45px 0;
}

.overview .sec-greeting-main__title {
	font-size: 4.2rem;
	font-weight: bold;
	letter-spacing: -1px;
	line-height: 1.4;
	margin-bottom: 30px;
}

.overview .sec-greeting-main__description {
	margin-bottom: 45px;
}

.overview .sec-greeting-main__name {
	font-size: 2.2rem;
	text-align: right;
}

/**
 * 今後の方針
 **/
.overview .profile-plan {
	text-align: center;
	margin-bottom: 70px;
}

.overview .profile-plan__title-en {
	font-size: 2rem;
	color: #d72f2f;
	font-family: "Poppins", sans-serif;
	letter-spacing: 6px;
	font-weight: 600;
	line-height: 1;
	margin-bottom: 15px;
}

.overview .profile-plan__title-ja {
	font-size: 5.2rem;
	font-weight: bold;
	display: inline-block;
	padding: 0 28px 20px;
	line-height: 1;
	box-shadow: 0 -4rem 0 #f2f2f2 inset;
	margin-bottom: 30px;
}

.overview .profile-plan__description {
	font-size: 2rem;
}

/*
---------------------------------------
1600px以上
---------------------------------------
*/
@media screen and (min-width: 1600px) {
	/*--ここから記述--*/
	.h2-box {
		background-size: cover !important;
	}

	/*--ここまで--*/
}

/*
---------------------------------------
1080px以上
---------------------------------------
*/
@media screen and (min-width: 1080px) {
	/*--ここから記述--*/
	/*--fc--*/
	.fc .badge-03 {
		display: none;
	}

	.tel-bnr {
		display: block;
	}

	.tel-bnr-sp {
		display: none;
	}

	/*--ここまで--*/
}

/*
---------------------------------------
1080px以下
---------------------------------------
*/
@media screen and (max-width: 1080px) {
	/*--ここから記述--*/
	.tel-bnr {
		display: none;
	}

	.tel-bnr-sp {
		display: block;
		width: 100%;
		margin: 40px auto 30px;
		box-sizing: border-box;
	}

	.tel-bnr-sp p {
		font-size: 1.6rem;
		text-align: center;
	}

	.tel-bnr-sp h3 {
		font-weight: bold;
		font-size: 4vw;
		text-align: center;
		margin-bottom: 20px;
	}

	.tel-bnr-sp h3 i {
		border-bottom: 4px solid #f7da18;
		display: inline-block;
		line-height: 1.2;
	}

	.tel-bnr-sp a img {
		max-width: 90%;
	}

	.tel-bnr-sp .tel {
		text-align: center;
		padding: 0 0 15px;
	}

	.tel-bnr-sp .mail {
		text-align: center;
	}

	/*--company--*/
	.company #history ol {
		max-width: 95%;
	}

	.company #history li > * {
		float: none !important;
		text-align: left;
	}

	/*--aburasoba--*/
	.aburasoba #howto #step-01 .check-box dd br {
		display: none;
	}

	/*--fc--*/
	.fc .badge-01,
	.fc .badge-02 {
		display: none;
	}

	.fc .badge-03 {
		display: table;
		margin: 15px auto;
		display: table;
		margin: 0;
		position: absolute;
		bottom: 0;
		left: 2.5%;
		table-layout: fixed;
		width: 95%;
	}

	.fc .badge-03 > * {
		padding: 0 2px;
	}

	.fc .mugendai {
		font-size: 8vw;
		margin-bottom: 1em;
	}

	.fc #point-01 > figure {
		position: absolute;
		top: 0;
		right: 0;
		width: 30%;
	}

	.fc #point-01 > h4 i {
		display: block;
	}

	.fc #point-01 p br {
		display: none;
	}

	.fc #point-01 > h4 {
		width: 70%;
		padding-right: 10px;
	}

	.fc #point-01 section h5 span {
		font-size: 3.8rem;
	}

	.fc #point-01 #feature-02 figure {
		text-align: center;
	}

	.fc #point-01 #feature-02 figure a {
		display: inline;
	}

	.fc #point-01 #feature-02 figure img {
		position: relative;
		width: 45px;
		top: inherit !important;
		left: inherit !important;
		right: inherit !important;
		bottom: inherit !important;
		display: inline;
	}

	.fc #point-01 figure img,
	.fc #point-02 figure img,
	.fc #point-03 figure img {
		width: 100%;
	}

	.fc .tbl-l {
		display: table;
		width: 100%;
		table-layout: fixed;
	}

	.fc .tbl-l > * {
		display: table-cell;
		vertical-align: top;
	}

	.fc .tbl-l figure {
		width: 25%;
		position: relative;
		top: inherit;
		right: inherit;
	}

	.fc .tbl-l .box {
		width: 75%;
		padding-right: 10px;
		vertical-align: top;
	}

	.fc .tbl-l .box > * {
		width: 100%;
	}

	.fc .point h4 {
		font-size: 4vw;
	}

	/*.fc .point h4 br{
	display:none;
}*/
	.fc .point h4 .ttl-02,
	.fc .point h4 .ttl-01 {
		font-size: 8vw;
	}

	.fc #point-01 h4 .ttl-02,
	.fc #point-01 h4 .ttl-01 {
		display: inline;
	}

	.fc #point-03 h4 .ttl-01,
	.fc #point-03 h4 .ttl-02 {
		display: inline;
		white-space: normal;
	}

	.fc #training ol .s-01,
	.fc #training ol .s-02 {
		font-size: 2rem;
	}

	.fc #training ol .s-02,
	.fc #training ol .s-02 > * {
		display: block;
		width: 100%;
	}

	.fc #training ol .s-02 {
		width: 100%;
		border-radius: 1em;
		border: 3px solid #61442b;
	}

	.fc #training ol .s-02 .bg01 {
		width: 100%;
		background: #fff;
		padding: 6px 0;
		border: none;
		border-radius: 0;
	}

	.fc #training ol .s-02 .bg02 {
		position: relative;
		width: 100%;
		color: #fff;
		background: #61442b;
		padding: 6px 0;
		border: none;
		border-radius: 0;
	}

	.fc #training ol .s-02 .bg02:before {
		display: none;
	}

	.fc #training ol li.li-3,
	.fc #training ol li.li-4 {
		width: 100%;
		text-align: center;
		box-sizing: border-box;
		padding: 0 5px;
		margin: 0 0 10px 0;
	}

	.fc #training ol li.li-4 {
		width: 50%;
	}

	.fc #point-02 #support p {
		width: 100%;
	}

	.fc #before-after {
		margin-top: 75px;
	}

	.fc #before-after,
	.fc #before-after .before,
	.fc #before-after .after {
		display: block;
		width: 100%;
	}

	.fc #before-after p {
		width: 100%;
	}

	.fc #before-after .before p,
	.fc #before-after .after p {
		white-space: nowrap;
		font-size: 11vw;
	}

	.fc #before-after .before > i {
		position: relative;
		top: 0;
		right: 0;
		font-size: 6vw;
		margin-top: 0;
		transform: rotate(0deg);
		color: #7b7b7b;
	}

	.fc #before-after .after p i,
	.fc #before-after .after p i.f2 {
		font-size: 8vw;
	}

	.fc #before-after .before > i {
		position: relative;
		right: 0;
	}

	.fc #fix-img {
		width: 100%;
		bottom: 0;
		left: 0;
		right: 0;
		margin: 0 auto;
	}

	.fc #fix-img img {
		width: 100%;
	}

	/*--ec--*/
	.ec #sec-01 ul.inline li {
		padding: 0 5px;
	}

	/*--company--*/
	.company .fun-box h4 {
		font-size: 2.9rem;
	}

	/*--recruit--*/
	.recruit-list #sec-01 .h-04 {
		font-size: 9vw;
	}

	.recruit-list #sec-01 .h-02 {
		font-size: 3vw;
	}

	.recruit-list #sec-01 figure {
		left: 0;
	}

	.recruit-list #sec-01 .box p {
		padding-right: 1em;
	}

	/*--aburasoba--*/
	.aburasoba #sec-01 p br {
		display: none;
	}

	.aburasoba #sec-01 p {
		font-size: 2.2rem;
		margin-bottom: 1em;
		letter-spacing: 3px;
	}

	.aburasoba #howto h4 {
		font-size: 6.2rem;
	}

	/*
---------------------------------------
overview - 会社概要
---------------------------------------
*/
	.overview #sec-01 .inner {
		min-height: auto;
		padding: 10vw 16px;
		height: auto;
	}

	.overview #sec-01 .inner::after {
		width: 30vw;
		height: 30vw;
		top: -20px;
		right: 16px;
	}

	.overview #sec-01 .inner .bg-child {
		right: 0;
		width: 60vw;
		bottom: 30px;
	}

	.overview #sec-01 .inner .title {
		font-size: 5vw;
		text-indent: 0;
	}

	.overview #sec-01 .inner .description {
		max-width: none;
	}

	/**
 * 歌志軒が大切にしていること
 */
	.overview #sec-policy .sec-policy__header__title-ja {
		font-size: 4.6rem;
	}

	.overview #sec-policy .sec-policy__header__title-ja br {
		display: inline;
	}

	.overview .sec-point {
		flex-wrap: wrap;
	}

	.overview .sec-point .bg-child {
		top: 100px;
		right: 0;
	}

	.overview .sec-point__img {
		flex: 0 0 100%;
		padding: 30px;
		text-align: center;
	}

	.overview .sec-point:nth-child(2n) .sec-point__img {
		text-align: center;
	}

	.overview .sec-point__text {
		flex: 0 0 100%;
		padding: 0 20px;
	}

	/**
 * 代表挨拶
 */
	.overview .sec-greeting-main {
		flex-wrap: wrap;
	}

	.overview .sec-greeting-main__img {
		flex: 0 0 100%;
	}

	.overview .sec-greeting-main__text {
		flex: 0 0 100%;
		padding-left: 16px;
		padding-right: 16px;
	}

	.overview .sec-greeting-main__title {
		font-size: 3.3rem;
	}

	.menu .h2-box h1 {
		font-size: 2rem;
	}

	/*--ここまで--*/
}

/*
---------------------------------------
780px以下
---------------------------------------
*/
@media screen and (max-width: 780px) {
	/*--ここから記述--*/
	/*--company--*/
	.company #fun-03 .fun-03-01 ol,
	.company #fun-03 .fun-03-02 ol {
		display: block;
		width: 100%;
	}

	.company #fun-03 .fun-03-01 ol li,
	.company #fun-03 .fun-03-02 ol li {
		display: block;
		width: 50%;
		float: left;
	}

	/*--ここまで--*/
}

/*
---------------------------------------
768px以下(タブレットサイズ)
---------------------------------------
*/
@media screen and (max-width: 768px) {
	/*--ここから記述--*/
	.h2-box h2 {
		font-size: 8vw;
	}

	/*--menu--*/
	.menu .menu-list > * {
		padding: 0 5px;
	}

	.menu .btn-04 a {
		font-size: 1.7rem;
		text-indent: -0.5em;
	}

	.menu #topping .topping-slide {
		padding: 0 9px;
		width: 33.3333%;
		margin-bottom: 30px;
	}

	.menu #pickup .pick-slide {
		padding: 0 15px;
		width: 50%;
		margin-bottom: 35px;
	}

	.menu .topping-box .alnC {
		text-align: left !important;
	}

	.menu #aburasoba #soba-01 figure,
	.menu #aburasoba #soba-02 figure {
		position: relative;
		right: 0;
		top: 0;
		width: 100%;
	}

	.menu #aburasoba #soba-01 .box {
		position: static;
		width: 100%;
	}

	.menu #aburasoba #soba-02 .box {
		position: static;
		width: 100%;
		margin-left: 0;
	}

	.menu #aburasoba #soba-01 figure img,
	.menu #aburasoba #soba-02 figure img {
		width: 70%;
		max-width: 350px;
		margin: 0 auto 1em auto;
	}

	.menu #aburasoba #soba-01 .bg-child,
	.menu #aburasoba #soba-02 .bg-child {
		width: 90%;
		left: 5%;
	}

	.menu #aburasoba .topping {
		font-size: 5vw;
	}

	.menu #aburasoba .topping-list {
		text-align: center !important;
	}

	.menu #aburasoba .topping-list img {
		margin: 0 3px;
		width: 35px;
	}

	/*--shop--*/
	.shop #info .info-top > .btn-list > * {
		margin: 0 10px 0 0;
	}

	.shop #info .info-top > .btn-list {
		float: none;
		display: inline-block;
	}

	.shop #info .clearfix > table {
		width: 100%;
		border-bottom: none;
	}

	.shop #map {
		margin-top: 45px;
	}

	.shop #info .clearfix > table {
		border-bottom: 1px solid #d3d3d3;
	}

	.fc #before-after {
		margin-top: 25px;
	}

	.fc #minori ul,
	.fc #minori ul li {
		display: block;
		width: 100%;
	}

	.fc #about ul.tbl li {
		padding: 0 20px;
	}

	.fc #about ul.tbl li h5 {
		font-size: 1.5rem;
	}

	.fc #interview section {
		padding-left: 0;
	}

	.fc #entry .tel-box {
		margin: 15px auto;
	}

	.fc #entry .tel-box p {
		line-height: 1.5;
		margin-bottom: 5px;
	}

	.fc #entry .tel-box p span {
		display: block;
	}

	.fc #point-01 section h5 > span span {
		display: block;
	}

	.fc #point-03 .tbl-l,
	.fc #point-03 .tbl-l > * {
		display: block;
		width: 100%;
	}

	.fc #point-03 .tbl-l .box {
		width: 100%;
		padding-right: 0;
		vertical-align: top;
	}

	.fc #point-03 .tbl-l figure {
		width: 100%;
		display: block;
	}

	.company #fun-03 .fun-03-01 h5 i.s1,
	.company #fun-03 .fun-03-01 h5 i.s2 {
		display: none;
	}

	.company #fun-03 .fun-03-02 h5 br {
		display: none;
	}

	.company #fun-03 .fun-03-01 h5,
	.company #fun-03 .fun-03-02 h5 {
		font-size: 5vw;
	}

	.company #fun-03 .fun-03-02 .alnR {
		font-size: 3vw;
	}

	.company #history li h4 span img {
		width: 66px;
		display: block;
	}

	/*--question--*/
	.question #sec-01 .bg-child {
		width: 80%;
		height: 90%;
		left: 20%;
		top: 10%;
	}

	.question #sec-01 h3 {
		font-size: 6vw;
		line-height: 1.5;
	}

	.question #sec-02 .tbl h3 {
		font-size: 3vw;
	}

	.question #sec-02 .tbl h3,
	.question #sec-02 .tbl h3 span {
		letter-spacing: inherit;
		line-height: 1.5;
	}

	.question #sec-02 .tbl h3 br {
		display: none;
	}

	.question .tbl-02 tr,
	.question .tbl-02 th,
	.question .tbl-02 td {
		width: 100%;
		display: block;
		text-align: left;
	}

	.question .tbl-02 td {
		font-size: 1.8rem;
		border-bottom: 1px solid #ccc;
		padding-bottom: 24px;
	}

	.question .btn-sub {
		margin-left: auto;
	}

	.question .tbl-02 td select {
		width: 100% !important;
		display: block;
		max-width: 100% !important;
		width: 95% !important;
		box-sizing: border-box;
	}

	.question .tbl-02 td select.month,
	.question .tbl-02 td select.time,
	.question .tbl-02 td select.daily {
		width: auto !important;
		display: inline-block !important;
		max-width: inherit !important;
	}

	/*--aburasoba--*/
	.aburasoba #sec-01 .bg-child {
		width: 90%;
		left: 5%;
		top: 0;
		height: 100%;
	}

	.aburasoba #sec-01 .box {
		width: 100%;
	}

	.aburasoba #sec-01 > figure {
		width: 100%;
		position: relative;
		top: 0;
		padding: 10px 0;
		right: 0;
	}

	.aburasoba #point .tbl,
	.aburasoba #point .box,
	.aburasoba #point figure,
	.aburasoba #point .ttl h4,
	.aburasoba #point .box p,
	.aburasoba #point > .tbl,
	.aburasoba #point > .tbl > *,
	.aburasoba #point > .tbl .ttl {
		display: block;
		width: 100%;
	}

	.aburasoba #point > #point-04 .ttl h3,
	.aburasoba #point > .tbl .ttl h3 {
		font-size: 7.5rem;
		letter-spacing: inherit;
	}

	.aburasoba #point > .tbl .ttl > *,
	.aburasoba #point > .tbl .box > * {
		height: auto !important;
	}

	.aburasoba #point > .tbl .box h4 {
		font-size: 2rem;
		line-height: 2.1;
		letter-spacing: 4px;
		margin-top: 0;
	}

	.aburasoba #point > .tbl .ttl figure {
		padding: 10px 0;
	}

	.aburasoba #point > .tbl .ttl figure img {
		width: 100%;
	}

	.aburasoba #point > .tbl .box {
		width: 100%;
	}

	.aburasoba #point .ttl > *,
	.aburasoba #point .box > * {
		width: 100% !important;
		height: auto !important;
	}

	.aburasoba #point .ttl h3 {
		font-size: 20vw;
	}

	.aburasoba #point .ttl h4 br {
		display: none;
	}

	.aburasoba #point > #point-04 .ttl h3 {
		margin-left: 0;
		left: 0;
	}

	.aburasoba #point .ttl h4,
	.aburasoba #point .box p {
		padding-left: 0;
	}

	.aburasoba #point .box figure {
		padding: 0;
	}

	.aburasoba #point .box figure img {
		width: 100%;
	}

	.aburasoba #point > #point-04 .ttl h3 span {
		padding-left: 0;
	}

	.aburasoba #howto h4 {
		font-size: 4.2rem;
	}

	/*--404--*/
	.not-found #thanks .h-09 {
		font-size: 4vw;
	}

	.not-found #thanks .h-09 i {
		display: block;
		margin: 0 auto 10px auto;
	}

	.not-found dl dd ul li {
		width: 50%;
	}

	.contact .tbl-02 th {
		width: 100%;
	}

	.tbl-02 span.wpcf7-list-item {
		width: 50%;
		margin: 0 0 0.5em 0;
	}

	/**
 * overview - 会社概要
 **/
	.overview .sec-point__title {
		font-size: 3.6rem;
	}

	/*--ここまで--*/
}

/*
---------------------------------------
580px以下
---------------------------------------
*/
@media screen and (max-width: 580px) {
	/*--ここから記述--*/
	/*--aburasoba--*/
	.aburasoba #sec-03 .tbl,
	.aburasoba #sec-03 .tbl > *,
	.aburasoba #howto section .tbl,
	.aburasoba #howto section .tbl > * {
		display: block;
	}

	.aburasoba #howto .inner-box .tbl figure {
		padding-top: 15px;
		width: 100%;
	}

	.aburasoba #sec-03 figure {
		width: 100%;
		padding: 10px 0;
	}

	.aburasoba #sec-03 figure img {
		width: 70%;
	}

	.aburasoba #howto #step-01 .check-box {
		padding: 10px;
	}

	.aburasoba #howto #step-01 .check-box,
	.aburasoba #howto #step-01 .check-box dt,
	.aburasoba #howto #step-01 .check-box dd {
		display: block;
		width: 100%;
	}

	.aburasoba #howto #step-01 .check-box dd {
		font-size: 2.4rem;
	}

	.aburasoba #howto #step-01 .check-box dd br {
		display: none;
	}

	.aburasoba #howto #step-01:after,
	.aburasoba #howto #step-02:after,
	.aburasoba #howto #step-03:after {
		font-size: 9.4rem;
	}

	/*--ここまで--*/
}

/*
---------------------------------------
480px以下
---------------------------------------
*/
@media screen and (max-width: 480px) {
	/*--ここから記述--*/
	#wrapper > header {
		background-attachment: fixed;
	}

	.h2-box {
		height: auto;
		min-height: 300px;
		padding-top: 60px;
		padding-bottom: 40px;
	}

	.h2-box h2 span {
		font-size: 1.4rem;
		letter-spacing: 11px;
	}

	.h2-box h1,
	#wrapper > header h1 {
		padding: 0 5%;
	}

	.h3-box-01 h3 {
		color: #fff;
		font-weight: bold;
		font-size: 4rem;
		line-height: 1.4;
		text-align: center;
		letter-spacing: 0.8px;
		text-indent: 0.4px;
		margin-bottom: 7px;
	}

	/*--question--*/
	.question #sec-01 h3 {
		font-size: 4rem;
	}

	.question #sec-01 h3 br {
		display: none;
	}

	.question #sec-01 figure {
		display: none;
	}

	.question #sec-01 figure img {
		left: 0;
		top: 0;
		width: 30%;
	}

	.question #sec-02 .tbl figure {
		width: 100%;
		text-align: center;
	}

	.question #sec-02 .tbl h3 {
		font-size: 2.8rem;
		padding-left: 0;
	}

	.question #sec-02 .tbl h3 br {
		display: none;
	}

	.question #sec-02 p {
		padding: 0;
	}

	/*--contact--*/
	.contact #sec-01 .box,
	.contact #sec-01 figure {
		width: 100%;
	}

	.contact #sec-01 figure {
		left: 0;
		text-align: center;
	}

	.contact #sec-01 figure img {
		width: 60%;
	}

	.contact #sec-01 .box h3 br {
		display: none;
	}

	/*--recruit-list--*/
	.recruit-list #sec-01 .box {
		width: 100%;
	}

	.recruit-list #sec-01 figure {
		width: 100%;
		text-align: center;
		left: 0;
		padding-top: 25px;
	}

	.recruit-list #sec-01 figure img {
		width: 80%;
	}

	/*--recruit--*/
	.recruit-more .h-05 span {
		display: block;
	}

	.recruit-more .info-box {
		width: 100%;
		box-sizing: border-box;
		padding-left: 0;
		float: none;
		margin: 25px auto;
	}

	.recruit-more .info-slider {
		width: 100%;
		padding-right: 0;
		float: none;
	}

	.recruit-more #message .tbl figure {
		width: 100%;
		padding-right: 0;
	}

	.recruit-more #message .tbl .box {
		width: 100%;
		padding: 5% 0 0 0;
	}

	.recruit-more #message .tbl .box h4 {
		font-size: 3rem;
		line-height: 1.5;
		letter-spacing: 5px;
	}

	/*--shop--*/
	.shop #info .info-top > .btn-list > * {
		margin: 0 0 10px 0;
		float: none !important;
	}

	.shop #info .clearfix > table {
		width: 100%;
		table-layout: fixed;
	}

	.shop #info .clearfix > table.fR {
		border-bottom: none;
	}

	.shop #info .info-top > * {
		float: none;
	}

	/*--company--*/
	.company #history ol {
		padding: 0 5%;
	}

	.company #fun-01 .tbl figure {
		width: 100%;
	}

	.company #fun-02 .insta {
		width: 100%;
		vertical-align: middle;
		padding: 0;
		margin: 5% auto;
	}

	.company #fun-02 .btn-02 {
		width: 100%;
	}

	.company #fun-02 .btn-02 a .arw {
		display: none;
	}

	.company #fun-03 .fun-03 .tbl figure {
		width: 100%;
	}

	.company .fun-box h4 {
		font-size: 5vw;
		letter-spacing: 6px;
	}

	.company #fun-02 i.small {
		font-size: 5vw;
	}

	.company #fun-03 .fun-03-01 ol li,
	.company #fun-03 .fun-03-02 ol li {
		display: block;
		width: 100%;
		float: none;
	}

	.company #fun-03 .fun-03-01 ol li figure:before,
	.company #fun-03 .fun-03-02 ol li figure:before {
		display: none;
	}

	.company #fun-03 .fun-03-01 ol li:after,
	.company #fun-03 .fun-03-02 ol li:after {
		font-family: "fontello";
		content: "\e804";
		position: relative;
		top: 0;
		right: 0;
		margin-top: 0;
		font-size: 3.6rem;
		display: block;
		margin: 1em auto;
	}

	.company #fun-03 .fun-03-02 ol li:last-child:after {
		display: none;
	}

	/*--shop-list--*/
	.shop-list #search {
		background-size: 42.5px auto !important;
	}

	.shop-list .area .btn-04 {
		width: 100%;
		padding: 0 0 10px 0;
	}

	/*--aburasoba--*/
	.aburasoba #sec-01 > figure img {
		width: 333px;
	}

	.aburasoba #sec-01.tbl,
	.aburasoba #sec-01.tbl > * {
		display: block;
		width: 100% !important;
	}

	.aburasoba #sec-01 p {
		font-size: 2rem;
	}

	.aburasoba #sec-01 .box figure {
		margin: 1em auto;
	}

	.aburasoba #howto h4 {
		font-size: 4.2rem;
	}

	.aburasoba #sec-03 h3 {
		font-size: 3.6rem;
		letter-spacing: 6px;
		padding: 0 0 10px 10px;
		background-size: contain !important;
	}

	/*--fc--*/
	.fc .h3-box-01 h3 {
		font-size: 4.8rem;
	}

	.fc #feature-03 h5 {
		font-size: 4rem;
	}

	.fc #feature-03 h5 i {
		width: 50px;
		height: 47px;
		margin-right: 5px;
		background-size: contain;
	}

	.fc #training ol .s-01,
	.fc #training ol .s-02 {
		font-size: 2rem;
	}

	.fc #training ol .s-02 {
		width: 100%;
		border-radius: 1em;
		border: 3px solid #61442b;
	}

	.fc #training ol .s-02 i {
		display: block;
	}

	.fc #training ol .s-02 .bg01 {
		width: 100%;
		background: #fff;
		padding: 6px 0;
		border: none;
		border-radius: 0;
	}

	.fc #training ol .s-02 .bg02 {
		position: relative;
		width: 100%;
		color: #fff;
		background: #61442b;
		padding: 6px 0;
		border: none;
		border-radius: 0;
	}

	.fc #training ol .s-02 .bg02:before {
		display: none;
	}

	.fc #minori ol li,
	.fc #minori ol li small {
		font-size: 1.8rem;
	}

	.fc #minori p.open {
		font-size: 3.6rem;
		position: relative;
	}

	.fc #minori p.open i {
		position: absolute;
		left: 0;
		top: -10px;
		width: 67px;
		height: 60px;
		background-size: contain !important;
	}

	.fc #training ol li.li-3,
	.fc #training ol li.li-4 {
		width: 100%;
		text-align: center;
		box-sizing: border-box;
		padding: 0 5px;
		margin: 0 0 10px 0;
	}

	.fc #training ol li.li-4 {
		width: 50%;
	}

	.fc #point-02 #support h4 {
		font-size: 4rem;
	}

	.fc #point-02 #support h4 i {
		display: block;
		margin: 0 auto;
		border-radius: 100%;
		width: 77px;
		height: 77px;
		background-position: top left !important;
		background-color: #da2626;
	}

	.fc .h3-box-01 h3 i {
		display: block;
		margin: 0 auto;
	}

	.fc #point-02 #support p {
		padding: 0;
	}

	.fc #point-02 p,
	.fc #point-03 p {
		width: 100%;
		padding-right: 0;
	}

	.fc #point-01 section h5 {
		font-size: 2.2rem;
	}

	.fc #point-01 section h5 .icon {
		background-size: contain !important;
		width: 60px;
		height: 75px;
	}

	.fc #point-02 #support h4 {
		font-size: 7vw;
		margin: 1em auto;
	}

	.fc .h3-box-01 h3 span {
		font-size: 1.2rem;
		letter-spacing: 10px;
		text-indent: 6px;
	}

	.fc .point h4,
	.fc .point h4 * {
		letter-spacing: inherit;
	}

	.fc #point-02 h4 .ttl-01,
	.fc .point h4 .ttl-02 {
		white-space: normal;
	}

	.fc #minori h3 {
		font-size: 5vw;
	}

	.fc #minori h3 span {
		display: block;
		font-size: 6vw;
	}

	.fc #minori p.zero {
		font-size: 5vw;
	}

	.fc #interview .interview-box figure {
		width: 100%;
		margin-bottom: 20px;
	}

	.fc #interview .interview-box .box {
		padding-left: 0;
	}

	.fc #interview .btn-01 a span {
		display: none;
	}

	.fc #entry h3 span {
		display: none;
	}

	.fc #entry .tbl-02 th {
		padding: 12px 12px 6px 12px;
	}

	.fc #entry .tbl-02 td {
		padding: 6px 12px 12px 12px;
	}

	.fc #entry .btn-sub {
		position: relative;
		top: 0;
		margin-left: 0;
		margin-top: 25px;
	}

	.fc #entry .tel-box {
		top: 0;
		padding-left: 0;
	}

	.fc #point-03 .tbl-l figure img {
		width: 168px;
	}

	/*--ec--*/
	.ec #sec-01 ul.inline li img {
		width: 87px;
	}

	.ec #sec-01 .bg-01 .tbl,
	.ec #sec-01 .bg-01 .tbl > * {
		display: block;
		width: 100% !important;
	}

	.ec #sec-01 .bg-01 .tbl figure img {
		position: relative;
		top: 15px;
		width: 55%;
	}

	.ec #sec-01 .bg-01 .tbl figure img {
		position: relative;
		top: 0;
		width: auto;
		height: 150px;
	}

	/*.ec #sec-01 .btn-01 a i{
	display:none !important;
}*/
	.ec #sec-01 {
		margin-bottom: 15%;
	}

	.ec #howto section dl {
		margin-top: 0;
	}

	.ec #howto section dl dt,
	.ec #howto section dl dd.tbl figure {
		margin-top: 2em;
	}

	/*--menu--*/
	.menu .menu-list > * {
		width: 100%;
		padding: 0 0 15px 0;
		display: block;
	}

	#contents .menu.menu--takeout .tbl {
		display: table;
	}

	#contents .menu.menu--takeout .menu-list > * {
		width: 50%;
		padding: 0 8px;
		display: table-cell;
	}

	.menu #aburasoba .bg-01 .bg-child {
		width: 80%;
		height: 77%;
		top: 7.5%;
		left: 5%;
	}

	.menu #aburasoba .first {
		font-size: 5vw;
	}

	.menu #aburasoba .topping {
		font-size: 3rem;
	}

	.menu #aburasoba section {
		position: relative;
	}

	.menu #aburasoba section figure {
		position: absolute;
		top: -25px;
		right: 0;
		width: 33.3333%;
		z-index: 1;
	}

	.menu #aburasoba section .mori-list li {
		font-size: 2rem;
		width: 100%;
	}

	.menu #aburasoba section .mori-list li small {
		font-size: 1.5rem;
	}

	.menu #aburasoba section .mori-list li:before {
		width: 32px;
		height: 32px;
		background-size: contain !important;
	}

	.menu #aburasoba .topping-list img {
		margin: 0;
		width: 22.5px;
	}

	.menu #aburasoba section .box {
		width: 100%;
	}

	.menu #aburasoba .first:after,
	.menu #aburasoba .topping-box:after {
		font-size: 3.8rem;
	}

	/*--blog--*/
	.blog-list .address {
		display: none;
	}

	.blog-list h4 span {
		display: block;
	}

	/*--shop--*/
	.shop #whats-new .box {
		width: 100%;
		float: none;
		padding: 0;
		margin-bottom: 10%;
		height: auto !important;
	}

	.shop #staff .tbl > figure {
		width: 100%;
	}

	.shop #staff .tbl > .box {
		width: 100%;
		padding: 5% 0 0 0;
	}

	/*--404--*/
	.not-found dl dt {
		font-size: 1.6rem;
		max-width: 100%;
	}

	.not-found dl dd ul li {
		padding: 5px;
	}

	.not-found #thanks .h-09 i {
		display: block;
		margin: 0 auto 10px auto;
		width: 30px;
		height: 30px;
	}

	/*--overview--*/
	.overview #sec-greeting .bg {
		background-size: 225px;
	}

	/*--ここまで--*/
}

/*
---------------------------------------
375px以下
---------------------------------------
*/
@media screen and (max-width: 375px) {
	/*--ここから記述--*/
	/*--menu--*/
	.menu #pickup .pick-slide figure {
		max-width: 200px;
		margin-left: auto;
		margin-right: auto;
	}

	.menu #topping .topping-slide {
		padding: 0 5%;
		width: 50%;
	}

	.menu #pickup .pick-slide {
		padding: 0 5%;
		width: 100%;
	}

	.question .tbl-02 td ul.inline > *.time {
		display: block;
		padding: 15px 0 0 0;
	}

	/*--ここまで--*/
}

/*---------------------------------------
Default style for WP-PageNavi plugin

http://wordpress.org/extend/plugins/wp-pagenavi/
---------------------------------------*/
.wp-pagenavi {
	clear: both;
}

.wp-pagenavi a,
.wp-pagenavi span {
	text-decoration: none;
	border: 1px solid #bfbfbf;
	padding: 3px 5px;
	margin: 2px;
}

.wp-pagenavi a:hover,
.wp-pagenavi span.current {
	border-color: #000;
}

.wp-pagenavi span.current {
	font-weight: bold;
}

.c_attention {
	border: 1px solid #000;
	padding: 30px;
	margin-bottom: 40px;
}

@media screen and (min-width: 769px) {
	.custom-fc-form .txt {
		text-align: center;
		margin: 30px auto;
	}

	.custom-fc-form .num {
		color: #006eff;
		font-weight: bold;
		font-size: 3rem;
	}

	.tbl-fc td {
		padding-right: 0 !important;
		width: 600px;
	}

	.btn-07 a:hover {
		color: #000;
	}

	.btn-07 a:hover i:before {
		background: #000;
	}

	.btn-07 a:hover i:after {
		border-color: #000;
	}

	.btn-07 a:hover:before {
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}

@media screen and (max-width: 768px) {
	.btn-07 {
		margin: auto 0;
		width: 100%;
	}

	.btn-07 a {
		padding: 20px;
	}

	.btn-07 i.arw {
		display: none;
	}

	.custom-fc-form .txt {
		text-align: center;
		margin: 30px auto;
	}

	.custom-fc-form .num {
		color: #006eff;
		font-weight: bold;
		font-size: 3.8rem;
	}

	.tbl-fc td {
		padding-right: 0 !important;
	}
}

@font-face {
	font-family: "IonIcons";
	src: url("//code.ionicframework.com/ionicons/2.0.1/fonts/ionicons.eot?v=2.0.1");
	src: url("//code.ionicframework.com/ionicons/2.0.1/fonts/ionicons.eot?v=2.0.1#iefix") format("embedded-opentype"),
		url("//code.ionicframework.com/ionicons/2.0.1/fonts/ionicons.ttf?v=2.0.1") format("truetype"), url("//code.ionicframework.com/ionicons/2.0.1/fonts/ionicons.woff?v=2.0.1") format("woff"),
		url("//code.ionicframework.com/ionicons/2.0.1/fonts/ionicons.svg?v=2.0.1#Ionicons") format("svg");
	font-weight: normal;
	font-style: normal;
}

.custom-fc-form #content-1,
.custom-fc-form #content-2,
.custom-fc-form #content-3 {
	float: left;
	display: none;
	width: 100px;
	height: 100px;
	text-align: center;
	vertical-align: middle;
}

.custom-fc-form #content-1 {
	background-color: #f88;
}

.custom-fc-form #content-2 {
	background-color: #8f8;
}

.custom-fc-form #content-3 {
	background-color: #88f;
}

.select-wrap {
	position: relative;
}

.select-wrap:before {
	z-index: 1;
	position: absolute;
	right: 15px;
	top: 0;
	content: "\f123";
	font-family: "IonIcons";
	line-height: 43px;
	color: #7f878c;
	pointer-events: none;
}

.custom-fc-form select {
	outline: none;
	-moz-appearance: none;
	text-indent: 0.01px;
	text-overflow: "";
	background: none transparent;
	vertical-align: middle;
	font-size: inherit;
	color: inherit;
	-webkit-appearance: button;
	-moz-appearance: button;
	appearance: button;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	height: 40px;
	padding: 8px 12px;
	border: 1px solid #000 !important;
	color: #828c9a;
	width: 100%;
	border-radius: 0 !important;
	color: #000;
	padding: 10px 20px !important;
	background-image: url(../img/common/dd-arrow.jpg) !important;
	-webkit-background-size: 14px !important;
	background-size: 14px !important;
	background-repeat: no-repeat !important;
	background-position-y: 25px !important;
	background-position-x: 300px !important;
	width: 300px !important;
}

.custom-fc-form select option {
	background-color: #fff;
	color: #333;
}

.custom-fc-form select::-ms-expand {
	display: none;
}

.custom-fc-form select:-moz-focusring {
	color: transparent;
	text-shadow: 0 0 0 #828c9a;
}

.custom-fc-form .select-wrap.select-primary:before {
	color: #fff;
}

.custom-fc-form .select-wrap.select-primary > select {
	background: #0084b4;
	color: #fff;
	border-color: #0084b4;
}

.custom-fc-form .select-wrap.select-primary > select:-moz-focusring {
	color: transparent;
	text-shadow: 0 0 0 #fff;
}

.custom-fc-form .select-wrap.select-inverse:before {
	color: #fff;
}

.custom-fc-form .select-wrap.select-inverse > select {
	color: #fff;
	border-color: #fff;
}

.custom-fc-form .select-wrap.select-inverse > select:-moz-focusring {
	color: transparent;
	text-shadow: 0 0 0 #fff;
}

.custom-fc-form #output {
	display: none;
}

.tbl-fc th {
	width: 240px;
	padding: 24px 10px;
}

.tbl-fc .p-postal-code {
	width: 130px !important;
}

.tbl-fc .yn {
	padding: 24px;
}

.mb0 {
	margin-bottom: 0;
}

section#sec-history {
	margin-bottom: 40px;
}

dl.dl-stripe {
	width: 100%;
	line-height: 1.5;
}

dl.dl-stripe dt {
	font-weight: bold;
	padding: 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

dl.dl-stripe dd {
	padding: 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

dl.dl-stripe dd:after {
	content: "";
	clear: both;
}

dl.dl-stripe dd:nth-of-type(even) {
	background: #f7f7f7;
}

dl.dl-stripe-inv {
	width: 100%;
	line-height: 1.5;
}

dl.dl-stripe-inv dt {
	font-weight: bold;
	padding: 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

dl.dl-stripe-inv dd {
	padding: 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

dl.dl-stripe-inv dd:after {
	content: "";
	clear: both;
}

dl.dl-stripe-inv dd:nth-of-type(odd) {
	background: #f7f7f7;
}

@media only screen and (min-width: 768px) {
	section#sec-history .inner {
		width: 960px;
		margin: auto;
	}

	section#sec-history h2 {
		font-size: 32px;
		clear: both;
		font-weight: bold;
		margin: 4% 0% 4% 0%;
		text-align: center;
	}

	dl.dl-stripe dt {
		float: left;
		display: inline;
		width: 25%;
		padding-right: 50px;
		text-align: right;
	}

	dl.dl-stripe dd {
		padding-left: 25%;
	}

	dl.dl-stripe-inv dt {
		float: left;
		display: inline;
		width: 25%;
		padding-right: 50px;
		text-align: right;
	}

	dl.dl-stripe-inv dd {
		padding-left: 25%;
	}
}

@media only screen and (max-width: 767px) {
	section#sec-history .inner {
		margin: 10px;
	}

	dl.dl-stripe dt:nth-of-type(even) {
		background: #f7f7f7;
	}

	section#sec-history h2 {
		font-size: 20px;
		clear: both;
		font-weight: bold;
		margin: 4% 0% 4% 0%;
		text-align: center;
	}

	dl.dl-stripe dt {
		padding-bottom: 0px;
	}

	dl.dl-stripe dd {
		padding-top: 10px;
	}
}

.fc .point h3 span {
	line-height: 1.2;
	letter-spacing: 1.6px;
}

.fc.page .h2-box h1 {
	font-size: 1.8rem;
	letter-spacing: 0;
}

@media screen and (max-width: 767xpx) {
	.fc.page .h2-box h1 {
		font-size: 1.6rem;
	}
}

@media screen and (max-width: 480px) {
	.fc.page .h2-box h1 {
		padding: 0;
		font-size: 1.3rem;
	}
}

.shop.fc.page .h2-box h1:nth-of-type(1) {
	display: none;
}

.fc.page .h3-box-01 h2 {
	color: #fff;
	font-weight: bold;
	font-size: 6rem;
	line-height: 1.4;
	text-align: center;
	letter-spacing: 1.6px;
	text-indent: 0.8px;
	margin-bottom: 7px;
}

.fc.page .h3-box-01 h3 span {
	font-size: 1.8rem;
	font-weight: 600;
	font-family: "Poppins", sans-serif;
	display: block;
	margin: 0 auto;
	letter-spacing: 18px;
	text-indent: 9px;
}

.fc.page .point h3 {
	font-weight: bold;
	font-size: 4.4rem;
	line-height: 1.8;
	letter-spacing: 0.8px;
	position: relative;
	z-index: 10;
	display: inline-block;
	margin-bottom: 1em;
	width: 70%;
}

.fc.page .point h3.inner-box {
	font-weight: bold;
	font-size: 7.4rem;
	line-height: 1.5;
	letter-spacing: 0.8px;
	position: relative;
	z-index: 10;
	display: block;
	margin: auto;
	width: 70%;
}

.fc #advantage .inner-box #point-01 #feature-01 h3 {
	font-size: 3.3rem;
	z-index: 99999999;
	display: block;
	margin-bottom: 0;
	width: auto;
}

.fc.page #advantage.point h2.inner-box {
	font-weight: bold;
	font-size: 7.4rem;
	line-height: 1.5;
	letter-spacing: 0.8px;
	position: relative;
	z-index: 10;
	display: block;
	margin: auto;
	width: 70%;
}

.fc.page .h3-box-01 h2 span {
	font-size: 1.8rem;
	font-weight: 600;
	font-family: "Poppins", sans-serif;
	display: block;
	margin: 0 auto;
	letter-spacing: 18px;
	text-indent: 9px;
}

.fc.page .point h3 .ttl-01 {
	font-size: 8.5rem;
	display: block;
}

.fc.page .point h3 .ttl-02 {
	font-size: 13.8rem;
	white-space: nowrap;
}

.fc.page .point h3 i {
	color: #da2626;
}

.fc.page #point-01 section h4 {
	font-size: 3.3rem;
	z-index: 99999999;
}

.fc #point-01 section h4 {
	font-size: 3.3rem;
}

.fc #point-01 section h4 > span {
	font-weight: bold;
	font-size: 5.8rem;
	display: block;
}

.fc #point-01 section h4 span i {
	position: relative;
}

.fc #point-01 section h4 span i:before {
	content: "";
	width: 100%;
	height: 16px;
	position: absolute;
	bottom: -5px;
	left: 0;
	background: #f7da18;
	z-index: -1;
}

.fc #point-01 section h4 span small {
	font-size: 3.5rem;
}

.fc #point-01 section h4 .icon {
	width: 81px;
	height: 101px;
	vertical-align: middle;
	display: inline-block;
	margin-right: 30px;
	position: relative;
	top: -1.2rem;
}

.fc #point-01 #feature-01 h4 .icon {
	background: url(../img/fc/ico-feat-01.png) no-repeat center center;
}

.fc #point-01 #feature-02 h4 .icon {
	background: url(../img/fc/ico-feat-02.png) no-repeat center center;
}

.fc #point-01 #feature-03 h4 .icon {
	background: url(../img/fc/ico-feat-03.png) no-repeat center center;
}

@media screen and (max-width: 1080px) {
	.fc.page .point h3 {
		font-size: 4vw;
	}

	.fc.page .point h3 .ttl-02,
	.fc.page .point h3 .ttl-01 {
		font-size: 8vw;
	}

	.fc #point-01 section h4 span {
		font-size: 3.8rem;
	}
}

@media screen and (max-width: 768px) {
	.c_attention {
		padding: 20px;
		margin-bottom: 20px;
	}

	.c_attention p {
		font-size: 12px;
	}

	.fc #point-01 section h4 .icon {
		background-size: contain !important;
		width: 60px;
		height: 75px;
	}

	.fc.page .h3-box-01 h3 {
		font-size: 2.8rem;
	}

	.fc.page .h3-box-01 h3 span {
		font-size: 1.2rem;
		letter-spacing: 10px;
		text-indent: 6px;
	}

	.fc.page #advantage.point h2.inner-box span {
		font-size: 1.2rem;
		letter-spacing: 10px;
		text-indent: 6px;
	}

	.fc.page #point-01 section h4 {
		font-size: 2.2rem;
	}
}

@media only screen and (min-width: 768px) {
	.fc .secnav {
		display: flex;
		width: 1200px;
		margin: 0 auto 40px;
		align-items: center;
		justify-content: center;
	}

	.fc .secnav li {
		flex: 1;
		justify-content: space-around;
		border: 3px solid #000;
		background: #f7da18;
		border-radius: 5px;
		height: 70px;
		position: relative;
		margin: 10px;
	}

	.fc .secnav li::before {
		content: "";
		position: absolute;
		width: 8px;
		height: 8px;
		right: 15px;
		border-top: 1px solid #292929;
		border-right: 1px solid #292929;
		-webkit-transform: rotate(45deg);
		transform: rotate(135deg);
		top: 40%;
	}

	.fc .secnav li a {
		display: block;
		text-align: center;
		line-height: 1.2;
		vertical-align: middle;
		position: absolute;
		height: fit-content;
		font-weight: bold;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
	}

	.fc #advantage #point-01 section h4 > span {
		font-size: 7.8rem;
		line-height: 11rem;
	}

	.fc #advantage .inner-box #point-01 #feature-01 h3 > span {
		font-size: 7.8rem;
		line-height: 11rem;
	}

	.fc #advantage #point-01 section .tagline {
		font-size: 3.8rem;
		font-weight: bold;
		line-height: 1.6;
		margin-bottom: 20px;
	}

	.fc #advantage .inner-box #point-01 #feature-01 > p {
		width: 680px;
	}

	.fc #advantage .inner-box #point-01 #feature-01 {
		margin: 70px 320px 140px 0;
	}

	.fc #advantage .inner-box #point-01 .bg-child {
		z-index: -1;
		width: 84%;
		height: 62%;
		top: 72px;
		left: 18%;
	}

	.fc #advantage .point figure {
		top: 150px;
	}

	.fc #courses .courselist {
		display: flex;
		width: 1000px;
	}

	.fc #courses .courselist li {
		position: relative;
		flex: 1;
		border: 4px solid #000;
		margin: 30px;
	}

	.fc #courses .courselist li::after {
		content: "";
		position: absolute;
		background: url(//www.kajiken.biz/wp/wp-content/themes/ecco/img/fc/course-point.png) no-repeat;
		width: 128px;
		height: 100px;
		left: 0;
		right: 0;
		margin: auto;
		top: -54px;
	}

	.fc #courses .courselist li::before {
		content: "";
		position: absolute;
		width: 80px;
		height: 10px;
		background: #fff;
		top: -7px;
		left: 0;
		right: 0;
		margin: auto;
	}

	.fc #courses .courselist li h4 {
		position: relative;
		font-size: 3.8rem;
		font-weight: bold;
		text-align: center;
		margin-top: 60px;
		padding-bottom: 25px;
		line-height: 1.4;
	}

	.fc #courses .courselist li h4 span {
		display: block;
		font-size: 1.8rem;
		color: #c3c3c3;
		margin-top: 10px;
	}

	.fc #courses .courselist li h4::after {
		content: "";
		position: absolute;
		bottom: 4px;
		height: 6px;
		width: 84px;
		background: #000;
		margin: auto;
		left: 0;
		right: 0;
	}

	.fc #courses .advice {
		margin: 40px;
	}

	.fc #courses .advice dt {
		padding: 2px 10px;
		background: #f7da18;
		font-size: 1.8rem;
		font-weight: bold;
		width: fit-content;
		padding-right: 35px;
		position: relative;
		margin-bottom: 10px;
	}

	.fc #courses .advice dt:before {
		position: absolute;
		content: "";
		right: -18px;
		top: -2px;
		border: none;
		border-right: solid 40px white;
		border-bottom: solid 80px transparent;
		z-index: 1;
	}

	.fc #courses .advice dd {
		margin: 0 12px;
	}

	.fc #courses {
		position: relative;
		padding-bottom: 150px;
	}

	.fc #courses:after {
		content: "";
		position: absolute;
		width: 40px;
		height: 40px;
		right: 0;
		left: 0;
		border-top: 10px solid #bbbbbb;
		border-right: 10px solid #bbbbbb;
		-webkit-transform: rotate(45deg);
		transform: rotate(135deg);
		bottom: 50px;
		margin: auto;
	}

	.fc #training .h4-box-01 {
		text-align: center;
		margin: 0 auto 40px;
		position: relative;
	}

	.fc #training .h4-box-01:after {
		content: "";
		position: absolute;
		width: 1200px;
		height: 2px;
		background: #000;
		left: 0;
		right: 0;
		top: 43px;
		margin: auto;
	}

	.fc #training .h4-box-01 h4 {
		font-weight: bold;
		font-size: 5.4rem;
		line-height: 1.5;
		letter-spacing: 0.8px;
		z-index: 10;
		display: block;
		margin: auto;
		width: fit-content;
		position: relative;
		background: #fff;
		padding-left: 110px;
		padding-right: 20px;
	}

	.fc #training .h4-box-01 h4 i {
		width: 72px;
		height: 68px;
		background: url(../img/fc/ico-h4-01.png) no-repeat center center;
		background-size: cover;
		position: absolute;
		left: 20px;
		top: 10px;
	}

	.fc #training .inner-box.box_01 .point h3 {
		margin: 60px 0;
	}

	.fc #training .h4-box-02 {
		text-align: center;
		margin: 0 auto 40px;
		position: relative;
	}

	.fc #training .h4-box-02:after {
		content: "";
		position: absolute;
		width: 1200px;
		height: 2px;
		background: #000;
		left: 0;
		right: 0;
		top: 43px;
		margin: auto;
	}

	.fc #training .h4-box-02 h4 {
		font-weight: bold;
		font-size: 5.4rem;
		line-height: 1.5;
		letter-spacing: 0.8px;
		z-index: 10;
		display: block;
		margin: auto;
		width: fit-content;
		position: relative;
		background: #fff;
		padding-left: 110px;
		padding-right: 20px;
	}

	.fc #training .h4-box-02 h4 i {
		width: 72px;
		height: 68px;
		background: url(../img/fc/ico-h4-02.png) no-repeat center center;
		background-size: cover;
		position: absolute;
		left: 20px;
		top: 10px;
	}

	.fc #training .inner-box .p_comparison p {
		width: 1080px;
		margin: 30px auto;
	}

	.fc #training .inner-box .p_comparison img {
		margin: auto;
		display: block;
	}

	.fc #training #before-after > p {
		width: 940px;
		margin: auto;
	}

	.fc #training .dl-stripe-inv {
		width: 940px;
		margin: auto;
	}

	.fc #training .annual-sales {
		text-align: center;
		font-weight: bold;
		margin-bottom: 40px;
	}

	.fc #training .annual-sales > span {
		display: block;
		font-size: 2.3rem;
		line-height: 1.2;
	}

	.fc #training .annual-sales p {
		font-size: 7.7rem;
		line-height: 1.2;
		color: #f12b2b;
	}

	.fc #training .annual-sales p > span {
		display: inline-block;
		border-bottom: 12px solid #f7da18;
	}

	.fc #training .annual-sales p i {
		font-size: 4.1rem;
	}

	.fc #training .salestrends > h5 {
		text-align: center;
		font-size: 18px;
		font-weight: bold;
		padding: 20px;
	}

	.fc #training .salestrends > dl {
		display: flex;
	}

	.fc #training .salestrends > dl > dt {
		padding: 30px;
		background: #fff;
		font-weight: normal;
		font-size: 20px;
		flex: 1;
		text-align: center;
	}

	.fc #training .salestrends > dl > dd {
		width: auto;
		float: left;
		text-align: left;
		padding: 30px;
		background: #fff;
		flex: 2;
	}

	.fc #training .salestrends > dl > dd ul li {
		width: fit-content;
		position: relative;
		font-size: 20px;
	}

	.fc #training .salestrends > dl > dd .percent {
		font-weight: bold;
		position: absolute;
		left: 120px;
	}

	.fc #training .salestrends .bottom-text {
		margin-left: 12%;
		font-size: 14px;
		font-weight: bold;
	}

	.fc #training .salestrends .bottom-text .red {
		color: #da2626;
	}

	.fc #training .salestrends h4.point {
		color: #da2626;
		font-size: 6rem;
		font-weight: bold;
		text-align: center;
	}

	.fc #training .salestrends h4.point i {
		content: "";
		width: 89px;
		height: 77px;
		vertical-align: middle;
		margin-right: 5px;
		background: url(../img/fc/ico-point.png) no-repeat 50% 50%;
		display: inline-block;
	}

	.fc #training .inner-box .box h3 {
		margin: 60px 0px;
	}

	.fc #norencourse .h4-box-01 {
		text-align: center;
		margin: 0 auto 40px;
		position: relative;
	}

	.fc #norencourse .h4-box-01:after {
		content: "";
		position: absolute;
		width: 1200px;
		height: 2px;
		background: #000;
		left: 0;
		right: 0;
		top: 43px;
		margin: auto;
	}

	.fc #norencourse .h4-box-01 h2 {
		font-weight: bold;
		font-size: 5.4rem;
		line-height: 1.5;
		letter-spacing: 0.8px;
		z-index: 10;
		display: block;
		margin: auto;
		width: fit-content;
		position: relative;
		background: #fff;
		padding-left: 20px;
		padding-right: 20px;
	}

	.fc #norencourse .h4-box-02 {
		text-align: center;
		margin: 60px auto 40px;
		position: relative;
	}

	.fc #norencourse .h4-box-02:after {
		content: "";
		position: absolute;
		width: 1200px;
		height: 2px;
		background: #000;
		left: 0;
		right: 0;
		top: 43px;
		margin: auto;
	}

	.fc #norencourse .h4-box-02 h4 {
		font-weight: bold;
		font-size: 5.4rem;
		line-height: 1.5;
		letter-spacing: 0.8px;
		z-index: 10;
		display: block;
		margin: auto;
		width: fit-content;
		position: relative;
		background: #fff;
		padding-left: 110px;
		padding-right: 20px;
	}

	.fc #norencourse .h4-box-02 h4 i {
		width: 72px;
		height: 72px;
		background: url(../img/fc/img-point-05.png) no-repeat center center;
		background-size: cover;
		position: absolute;
		left: 20px;
		top: 10px;
	}

	.fc #norencourse .h4-box-03 {
		text-align: center;
		margin: 60px auto 40px;
		position: relative;
	}

	.fc #norencourse .h4-box-03:after {
		content: "";
		position: absolute;
		width: 1200px;
		height: 2px;
		background: #000;
		left: 0;
		right: 0;
		top: 43px;
		margin: auto;
	}

	.fc #norencourse .h4-box-03 h2 {
		font-weight: bold;
		font-size: 5.4rem;
		line-height: 1.5;
		letter-spacing: 0.8px;
		z-index: 10;
		display: block;
		margin: auto;
		width: fit-content;
		position: relative;
		background: #fff;
		padding-left: 110px;
		padding-right: 20px;
	}

	.fc #norencourse .h4-box-03 h2 i {
		width: 72px;
		height: 72px;
		background: url(../img/fc/img-point-07.png) no-repeat center center;
		background-size: cover;
		position: absolute;
		left: 20px;
		top: 10px;
	}

	.fc #norencourse .point h3 .ttl-01 i span {
		font-size: 12rem;
	}

	.fc #norencourse .inner-box .box img {
		margin: auto;
		display: block;
	}

	.fc #norencourse .dl-stripe-inv {
		width: 1000px;
		margin: 0 auto 80px;
	}

	.fc #interview .h2-box-01 {
		background: #000;
		padding: 34px 0;
		margin-bottom: 50px;
		position: relative;
	}

	.fc #interview .h2-box-01 .inner-box {
		font-weight: bold;
		font-size: 5.4rem;
		line-height: 1.5;
		letter-spacing: 0.8px;
		position: relative;
		z-index: 10;
		display: block;
		margin: auto;
		width: 70%;
		color: #fff;
		text-align: center;
	}

	.fc #interview .h2-box-01 .inner-box span {
		font-size: 1.8rem;
		font-weight: 600;
		font-family: "Poppins", sans-serif;
		display: block;
		margin: 0 auto;
		letter-spacing: 18px;
		text-indent: 9px;
	}

	.fc #newopen .h3-box-01 {
		padding: 24px;
	}

	.fc #newopen .h3-box-01 h2 {
		position: relative;
		font-size: 30px;
		width: fit-content;
		margin: auto;
	}

	.fc #newopen .h3-box-01 h2::before {
		content: "";
		background: url(../img/fc/img-point-08.png) repeat;
		width: 40px;
		height: 30px;
		background-size: cover;
		position: absolute;
		left: -54px;
		top: 5px;
	}

	.fc #newopen .open-list {
		width: 840px;
		margin: auto;
		margin-bottom: 80px;
	}

	.fc #newopen .open-list li:first-child {
		border-top: 1px solid #bfbfbf;
	}

	.fc #newopen .open-list li {
		padding: 10px;
		border-bottom: 1px solid #bfbfbf;
	}

	.fc #company .h3-box-01 {
		padding: 24px;
	}

	.fc #company .h3-box-01 h2 {
		position: relative;
		font-size: 30px;
		width: fit-content;
		margin: auto;
	}

	.fc #company .h3-box-01 h2::before {
		content: "";
		background: url(../img/fc/img-point-09.png) repeat;
		width: 24px;
		height: 24px;
		background-size: cover;
		position: absolute;
		left: -42px;
		top: 10px;
	}

	.fc #company .tbl-03 {
		width: 840px;
		margin: auto;
		margin-bottom: 80px;
	}

	.sp {
		display: none;
	}
}

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

	.fc #point-02 #support h4 i {
		display: block;
		margin: 0 auto;
		border-radius: 100%;
		width: 40px;
		height: 40px;
		background-position: top left !important;
		background-color: #da2626;
		background-size: cover;
	}

	.fc #point-01 #feature-01,
	.fc #point-01 #feature-02 {
		margin: 70px auto;
	}

	.fc.page .point h3 {
		width: auto;
	}

	dl.dl-stripe-inv dt:nth-of-type(odd) {
		background: #f7f7f7;
	}

	dl.dl-stripe-inv dd {
		padding: 0 15px 10px;
	}

	dl.dl-stripe-inv dt {
		padding: 10px 15px 0;
	}

	.fc h3.inner-box {
		width: 100%;
		padding: 0;
	}

	.fc.page .point h3.inner-box {
		font-size: 2.8rem;
	}

	.fc.page #advantage.point h2.inner-box {
		font-size: 2.8rem;
	}

	.fc .h3-box-01 {
		padding: 20px 0;
	}

	.fc .secnav {
		display: block;
		margin: 0 auto 20px;
		align-items: center;
		justify-content: center;
		text-align: center;
	}

	.fc .secnav li {
		display: inline-block;
		justify-content: space-around;
		border: 3px solid #000;
		background: #f7da18;
		border-radius: 5px;
		height: 70px;
		position: relative;
		margin: 3px;
		width: 30%;
	}

	.fc .secnav li::before {
		content: "";
		position: absolute;
		width: 8px;
		height: 8px;
		right: 0;
		left: 0;
		border-top: 1px solid #292929;
		border-right: 1px solid #292929;
		-webkit-transform: rotate(45deg);
		transform: rotate(135deg);
		bottom: 10px;
		margin: auto;
	}

	.fc .secnav li a {
		display: block;
		text-align: center;
		line-height: 1.2;
		vertical-align: middle;
		position: absolute;
		height: fit-content;
		font-weight: bold;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		font-size: 1.6rem;
		padding-bottom: 10px;
	}

	.fc #aburasoba h3.inner-box {
		padding-left: 32px;
	}

	.fc #aburasoba .h3-box-01 h3 i {
		width: 33px;
		height: 38px;
		background: url(../img/fc/ico-h3-01.png) no-repeat center center;
		position: absolute;
		background-size: contain;
		left: 0;
	}

	.fc #advantage #point-01 section h4 > span {
		font-size: 3.8rem;
	}

	.fc #advantage .inner-box #point-01 #feature-01 h3 > span {
		font-size: 3.8rem;
	}

	.fc #advantage #point-01 section .tagline {
		font-size: 2.2rem;
		font-weight: bold;
		line-height: 1.6;
		margin-bottom: 20px;
	}

	.fc .h3-box-01 {
		margin-bottom: 20px;
	}

	.fc #advantage .inner-box #point-01 #feature-01 {
		margin: 20px 0 0;
	}

	.fc #aburasoba #point-01 > figure {
		position: absolute;
		top: 7%;
		right: 8%;
		width: 44%;
	}

	.fc #advantage .inner-box #point-01 .bg-child {
		z-index: -1;
		width: 84%;
		height: 62%;
		top: 72px;
		left: 18%;
	}

	.fc #advantage .point figure {
		position: relative;
		width: 100%;
	}

	.fc #courses .courselist {
		display: flex;
		width: 100%;
		max-width: 100%;
	}

	.fc #courses .courselist li {
		position: relative;
		flex: 1;
		border: 4px solid #000;
		margin: 40px 10px 60px;
	}

	.fc #courses .courselist li::after {
		content: "";
		position: absolute;
		background: url(//www.kajiken.biz/wp/wp-content/themes/ecco/img/fc/course-point.png) no-repeat;
		background-size: cover;
		width: 60px;
		height: 62px;
		left: 0;
		right: 0;
		margin: auto;
		top: -34px;
	}

	.fc #courses .courselist li::before {
		content: "";
		position: absolute;
		width: 80px;
		height: 10px;
		background: #fff;
		top: -7px;
		left: 0;
		right: 0;
		margin: auto;
	}

	.fc #courses .courselist li h4 {
		position: relative;
		font-size: 2rem;
		font-weight: bold;
		text-align: center;
		margin-top: 60px;
		padding-bottom: 25px;
		line-height: 1.4;
	}

	.fc #courses .courselist li h4 span {
		display: block;
		font-size: 1rem;
		color: #c3c3c3;
		margin-top: 10px;
	}

	.fc #courses .courselist li h4::after {
		content: "";
		position: absolute;
		bottom: 4px;
		height: 2px;
		width: 84px;
		background: #000;
		margin: auto;
		left: 0;
		right: 0;
	}

	.fc #courses .advice {
		margin: 15px 10px;
	}

	.fc #courses .advice dt {
		padding: 2px 10px;
		background: #f7da18;
		font-size: 1rem;
		font-weight: bold;
		width: fit-content;
		padding-right: 25px;
		position: relative;
		margin-bottom: 10px;
	}

	.fc #courses .advice dt:before {
		position: absolute;
		content: "";
		right: -6px;
		top: -2px;
		border: none;
		border-right: solid 25px white;
		border-bottom: solid 40px transparent;
		z-index: 1;
	}

	.fc #courses .advice dd {
		margin: 0 12px;
		font-size: 1.2rem;
	}

	.fc #courses {
		position: relative;
		padding-bottom: 50px;
	}

	.fc #courses:after {
		content: "";
		position: absolute;
		width: 30px;
		height: 30px;
		right: 0;
		left: 0;
		border-top: 10px solid #bbbbbb;
		border-right: 10px solid #bbbbbb;
		-webkit-transform: rotate(45deg);
		transform: rotate(135deg);
		bottom: 50px;
		margin: auto;
	}

	.fc #training .h4-box-01 {
		text-align: center;
		margin: 0 auto 20px;
		position: relative;
	}

	.fc #training .h4-box-01:after {
		content: "";
		position: absolute;
		height: 1px;
		background: #000;
		left: 0;
		right: 0;
		top: 20px;
		margin: auto;
	}

	.fc #training .h4-box-01 h4 {
		font-weight: bold;
		font-size: 3.4rem;
		line-height: 1.5;
		letter-spacing: 0.8px;
		z-index: 10;
		display: block;
		margin: auto;
		width: fit-content;
		position: relative;
		background: #fff;
		padding-left: 60px;
		padding-right: 10px;
	}

	.fc #training .h4-box-01 h4 i {
		width: 42px;
		height: 38px;
		background: url(../img/fc/ico-h4-01.png) no-repeat center center;
		background-size: cover;
		position: absolute;
		left: 10px;
	}

	.fc #training .inner-box.box_01 .point h3 {
		margin: 60px 0;
	}

	.fc #training .h4-box-02 {
		text-align: center;
		margin: 0 auto 20px;
		position: relative;
	}

	.fc #training .h4-box-02:after {
		content: "";
		position: absolute;
		width: 1200px;
		height: 2px;
		background: #000;
		left: 0;
		right: 0;
		top: 20px;
		margin: auto;
	}

	.fc #training .h4-box-02 h4 {
		font-weight: bold;
		font-size: 3.4rem;
		line-height: 1.5;
		letter-spacing: 0.8px;
		z-index: 10;
		display: block;
		margin: auto;
		width: fit-content;
		position: relative;
		background: #fff;
		padding-left: 60px;
		padding-right: 10px;
	}

	.fc #training .h4-box-02 h4 i {
		width: 42px;
		height: 38px;
		background: url(../img/fc/ico-h4-01.png) no-repeat center center;
		background-size: cover;
		position: absolute;
		left: 10px;
	}

	.fc #training .inner-box .p_comparison p {
		width: 1080px;
		margin: 30px auto;
	}

	.fc #training .inner-box .p_comparison img {
		margin: auto;
		display: block;
	}

	.fc #training #before-after > p {
		width: 90%;
		margin: auto;
	}

	.fc #training .dl-stripe-inv {
		margin: auto;
	}

	.fc #training .annual-sales {
		text-align: center;
		font-weight: bold;
		margin-bottom: 40px;
	}

	.fc #training .annual-sales > span {
		display: block;
		font-size: 2.3rem;
		line-height: 1.2;
	}

	.fc #training .annual-sales p {
		font-size: 5.4rem;
		line-height: 1.2;
		color: #f12b2b;
	}

	.fc #training .annual-sales p > span {
		display: inline-block;
		border-bottom: 12px solid #f7da18;
	}

	.fc #training .annual-sales p i {
		font-size: 4.1rem;
	}

	.fc #training .salestrends > h5 {
		text-align: center;
		font-size: 18px;
		font-weight: bold;
		padding: 20px;
	}

	.fc #training .salestrends > dl {
	}

	.fc #training .salestrends > dl > dt {
		background: #fff;
		font-weight: normal;
		font-size: 16px;
		font-weight: bold;
	}

	.fc #training .salestrends > dl > dd {
		width: auto;
		text-align: left;
		background: #fff;
	}

	.fc #training .salestrends > dl > dd ul li {
		position: relative;
		font-size: 16px;
	}

	.fc #training .salestrends > dl > dd .percent {
		font-weight: bold;
		position: absolute;
		left: 120px;
	}

	.fc #training .salestrends .bottom-text {
		font-size: 12px;
		font-weight: bold;
		margin: 10px;
	}

	.fc #training .salestrends .bottom-text .red {
		color: #da2626;
	}

	.fc #training .salestrends h4.point {
		color: #da2626;
		font-size: 3.2rem;
		font-weight: bold;
		text-align: center;
	}

	.fc #training .salestrends h4.point i {
		content: "";
		width: 50px;
		height: 43px;
		vertical-align: middle;
		margin-right: 5px;
		background: url(../img/fc/ico-point.png) no-repeat 50% 50%;
		display: inline-block;
		background-size: cover;
	}

	.fc #training .inner-box .box h3 {
		margin: 20px 0px;
		width: auto;
	}

	.fc #norencourse .h4-box-01 {
		text-align: center;
		margin: 0 auto 40px;
		position: relative;
	}

	.fc #norencourse .h4-box-01:after {
		content: "";
		position: absolute;
		width: 1200px;
		height: 2px;
		background: #000;
		left: 0;
		right: 0;
		top: 43px;
		margin: auto;
	}

	.fc #norencourse .h4-box-01 h2 {
		font-weight: bold;
		font-size: 3.2rem;
		line-height: 1.5;
		letter-spacing: 0.8px;
		z-index: 10;
		display: block;
		margin: auto;
		width: fit-content;
		position: relative;
		background: #fff;
		padding-left: 10px;
		padding-right: 10px;
	}

	.fc #norencourse .h4-box-02 {
		text-align: center;
		margin: 40px auto 20px;
		position: relative;
	}

	.fc #norencourse .h4-box-02:after {
		content: "";
		position: absolute;
		height: 1px;
		background: #000;
		left: 0;
		right: 0;
		top: 20px;
		margin: auto;
	}

	.fc #norencourse .h4-box-02 h4 {
		font-weight: bold;
		font-size: 3.2rem;
		line-height: 1.5;
		letter-spacing: 0.8px;
		z-index: 10;
		display: block;
		margin: auto;
		width: fit-content;
		position: relative;
		background: #fff;
		padding-left: 54px;
		padding-right: 10px;
	}

	.fc #norencourse .h4-box-02 h4 i {
		width: 34px;
		height: 34px;
		background: url(../img/fc/img-point-05.png) no-repeat center center;
		background-size: cover;
		position: absolute;
		left: 10px;
		top: 5px;
	}

	.fc #norencourse .h4-box-03 {
		text-align: center;
		margin: 40px auto 20px;
		position: relative;
	}

	.fc #norencourse .h4-box-03:after {
		content: "";
		position: absolute;
		height: 1px;
		background: #000;
		left: 0;
		right: 0;
		top: 20px;
		margin: auto;
	}

	.fc #norencourse .h4-box-03 h2 {
		font-weight: bold;
		font-size: 3.2rem;
		line-height: 1.5;
		letter-spacing: 0.8px;
		z-index: 10;
		display: block;
		margin: auto;
		width: fit-content;
		position: relative;
		background: #fff;
		padding-left: 60px;
		padding-right: 10px;
	}

	.fc #norencourse .h4-box-03 h2 i {
		width: 42px;
		height: 38px;
		background: url(../img/fc/img-point-07.png) no-repeat center center;
		background-size: cover;
		position: absolute;
		left: 10px;
	}

	.fc #norencourse .point h3 .ttl-01 i span {
		font-size: 6rem;
	}

	.fc #norencourse .inner-box .box img {
		margin: auto;
		display: block;
	}

	.fc #norencourse .dl-stripe-inv {
	}

	.fc #interview .h2-box-01 {
		background: #000;
		padding: 34px 0;
		margin-bottom: 50px;
		position: relative;
	}

	.fc #interview .h2-box-01 .inner-box {
		font-weight: bold;
		font-size: 2.8rem;
		line-height: 1.5;
		letter-spacing: 0.8px;
		position: relative;
		z-index: 10;
		display: block;
		margin: auto;
		width: 70%;
		color: #fff;
		text-align: center;
	}

	.fc #interview .h2-box-01 .inner-box span {
		font-size: 1.2rem;
		letter-spacing: 10px;
		text-indent: 6px;
	}

	.fc #newopen .h3-box-01 {
		padding: 24px;
	}

	.fc #newopen .h3-box-01 h2 {
		position: relative;
		font-size: 2.8rem;
		width: fit-content;
		margin: auto;
	}

	.fc #newopen .h3-box-01 h2::before {
		content: "";
		background: url(../img/fc/img-point-08.png) repeat;
		width: 40px;
		height: 30px;
		background-size: cover;
		position: absolute;
		left: -54px;
		top: 0;
	}

	.fc #newopen .open-list {
		margin: auto;
		margin-bottom: 40px;
	}

	.fc #newopen .open-list li:first-child {
		border-top: 1px solid #bfbfbf;
	}

	.fc #newopen .open-list li {
		padding: 10px;
		border-bottom: 1px solid #bfbfbf;
	}

	.fc #company .h3-box-01 {
		padding: 24px;
	}

	.fc #company .h3-box-01 h2 {
		position: relative;
		font-size: 2.8rem;
		width: fit-content;
		margin: auto;
	}

	.fc #company .h3-box-01 h2::before {
		content: "";
		background: url(../img/fc/img-point-09.png) repeat;
		width: 24px;
		height: 24px;
		background-size: cover;
		position: absolute;
		left: -42px;
		top: 5px;
	}

	.fc #company .tbl-03 {
		margin: auto;
		margin-bottom: 40px;
	}
}

@media screen and (min-width: 768px) {
	.ec.ec_renew .sp {
		display: none;
	}

	.ec.ec_renew #sec-02 .box > a {
		position: relative;
		color: #000;
		vertical-align: middle;
		text-decoration: none;
		font-size: 2rem;
		border: 2px solid #000;
		padding: 8px;
		width: 280px;
		text-align: center;
		border-radius: 8px;
		margin: 20px 0 0 auto;
		display: block;
	}

	.ec.ec_renew #sec-02 .box > a::after {
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
		right: 20px;
		width: 8px;
		height: 8px;
		border-top: 1px solid #8c8c8c;
		border-right: 1px solid #8c8c8c;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	.ec.ec_renew #sec-02 h3 {
		color: #fff;
		font-weight: bold;
		font-size: 6.4rem;
		line-height: 1.5;
		text-align: center;
		letter-spacing: 1.6px;
		text-indent: 0.8px;
		padding: 2%;
		background: url(../img/ec_renew/ttl-bg_01.png);
		margin: 0;
	}

	.ec.ec_renew #sec-02 h3 .en {
		font-size: 1.8rem;
		font-weight: 600;
		font-family: "Poppins", sans-serif;
		display: block;
		margin: 0 auto;
		letter-spacing: 18px;
		text-indent: 9px;
		color: #adadad;
	}

	.ec.ec_renew #sec-02 h3 .tagline {
		font-size: 1.8rem;
		display: block;
		margin: 0 auto;
		line-height: 3.6;
		text-indent: 9px;
		font-weight: normal;
	}

	.ec.ec_renew #sec-02 .popular-set-list {
		display: flex;
		margin: 60px 0;
		flex-wrap: wrap;
	}

	/* .ec.ec_renew #sec-02 .popular-set-list .popular-set:not(:last-child) {
    margin-right: 40px;
} */
	.ec.ec_renew #sec-02 .popular-set-list .popular-set {
		/* flex: 1; */
		padding: 20px;
		width: calc(100% / 3);
	}

	.ec.ec_renew #sec-02 .popular-set-list .popular-set .set-title {
		font-size: 2.4rem;
		font-weight: bold;
		margin: 10px 0;
		border-bottom: 1px solid #000;
		padding-bottom: 10px;
	}

	.ec.ec_renew #sec-02 .popular-set-list .popular-set .price-area {
		text-align: right;
		margin-bottom: 10px;
		font-size: 2.4rem;
	}

	.ec.ec_renew #sec-02 .popular-set-list .popular-set .price-area p {
		font-size: 2.2rem;
		letter-spacing: 4px;
	}

	.ec.ec_renew #sec-02 .about-aburasoba {
		margin: 120px 0 60px;
	}

	.ec.ec_renew #sec-02 .about-aburasoba figure {
		z-index: 9999;
	}

	.ec.ec_renew #sec-02 .about-aburasoba .bg-child {
		left: -94%;
		width: 110%;
		top: 30px;
	}

	.ec.ec_renew #sec-03 h3 {
		color: #fff;
		font-weight: bold;
		font-size: 6.4rem;
		line-height: 1.5;
		text-align: center;
		letter-spacing: 1.6px;
		text-indent: 0.8px;
		padding: 2%;
		background: url(../img/ec_renew/ttl-bg_02.png);
		margin: 0;
	}

	.ec.ec_renew #sec-03 .more img {
		margin: 10px 20px 10px 10px;
		display: inline-block;
	}

	.ec.ec_renew #sec-03 .howto-list {
		display: flex;
		margin: 60px 0;
	}

	.ec.ec_renew #sec-03 .howto-list .single-howto {
		flex: 1;
	}

	.ec.ec_renew #sec-03 .howto-list .single-howto:not(:last-child) {
		margin-right: 40px;
	}

	.ec.ec_renew #sec-03 .howto-list .single-howto .howto-title {
		position: relative;
		font-size: 2.4rem;
		font-weight: bold;
		text-align: center;
		line-height: 3.4;
		margin: 10px auto 20px;
	}

	.ec.ec_renew #sec-03 .howto-list .single-howto .howto-title::after {
		content: "";
		width: 40%;
		height: 5px;
		background: #000;
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
	}

	.ec.ec_renew #sec-03 .howto-list .single-howto .text {
		font-size: 16px;
		line-height: 1.8;
	}

	.ec.ec_renew #sec-03 .reproduction .tagline {
		background: #000;
		color: #fff;
		font-size: 2.4rem;
		padding: 10px;
	}

	.ec.ec_renew #sec-03 .reproduction .tagline p {
		font-size: 3.2rem;
		display: block;
		margin: auto;
		width: fit-content;
		font-weight: bold;
		position: relative;
		padding-left: 64px;
	}

	.ec.ec_renew #sec-03 .reproduction .tagline p::before {
		content: "";
		position: absolute;
		background: url(../img/ec_renew/noodles-ico.png);
		left: 0;
		width: 45px;
		height: 45px;
		top: 0;
		background-size: cover;
		bottom: 0;
		margin: auto;
	}

	.ec.ec_renew #sec-03 ul.reproduction-list {
		display: flex;
		margin: 60px 0 120px;
	}

	.ec.ec_renew #sec-03 ul.reproduction-list .single-reproduction {
		flex: 1;
	}

	.ec.ec_renew #sec-03 ul.reproduction-list .single-reproduction:not(:last-child) {
		position: relative;
		margin-right: 70px;
	}

	.ec.ec_renew #sec-03 h5.reproduction-title {
		font-size: 2.4rem;
		font-weight: bold;
		line-height: 1.6;
		height: 84px;
		padding: 10px 0 10px 100px;
		display: table-cell;
		vertical-align: middle;
		position: relative;
		box-sizing: initial;
	}

	.ec.ec_renew #sec-03 ul.reproduction-list .single-reproduction:first-child h5::before {
		content: "";
		background: url(../img/ec_renew/clock-ico_01.png);
		position: absolute;
		width: 56px;
		height: 64px;
		background-size: cover;
		left: 20px;
		bottom: 20px;
	}

	.ec.ec_renew #sec-03 ul.reproduction-list .single-reproduction:nth-child(2) h5::before {
		content: "";
		background: url(../img/ec_renew/clock-ico_02.png);
		position: absolute;
		width: 56px;
		height: 64px;
		background-size: cover;
		left: 20px;
		bottom: 20px;
	}

	.ec.ec_renew #sec-03 ul.reproduction-list .single-reproduction:nth-child(3) h5::before {
		content: "";
		background: url(../img/ec_renew/clock-ico_03.png);
		position: absolute;
		width: 56px;
		height: 64px;
		background-size: cover;
		left: 20px;
		bottom: 20px;
	}

	.ec.ec_renew #sec-03 ul.reproduction-list .single-reproduction:not(:last-child)::after {
		content: "";
		background: url(../img/ec_renew/arrow-right.png);
		width: 47px;
		height: 73px;
		background-size: cover;
		position: absolute;
		right: -56px;
		top: 52%;
		margin: auto;
	}

	.ec.ec_renew #sec-03 .bottom-video {
		margin-bottom: 120px;
	}

	#sec-03 .bottom-video iframe {
		width: 100%;
		height: 100%;
		aspect-ratio: 16/9;
	}

	.ec.ec_renew #sec-03 .reproduction .sideline .topping-head-title {
		font-size: 3.6rem;
		font-weight: bold;
		text-align: center;
		margin-bottom: 40px;
	}

	.ec.ec_renew #sec-03 .reproduction .sideline {
		position: relative;
		background: #fff;
		z-index: 1;
	}

	.ec.ec_renew #sec-03 .reproduction .sideline::after {
		content: "";
		height: 1px;
		width: 100px;
		position: absolute;
		background: #000;
		left: 0;
		top: 0;
		bottom: 0;
		margin: auto;
		z-index: -1;
	}

	.ec.ec_renew #sec-03 .reproduction .sideline::before {
		content: "";
		height: 1px;
		width: 100px;
		position: absolute;
		background: #000;
		right: 0;
		top: 0;
		bottom: 0;
		margin: auto;
		z-index: -1;
	}

	.ec.ec_renew #sec-03 .reproduction .sideline .topping-head-title::after {
		content: "";
		background: url(../img/ec_renew/topping-ico.png);
		position: absolute;
		top: -64px;
		left: 0;
		right: 0;
		margin: auto;
		width: 184px;
		height: 51px;
		background-size: cover;
	}

	.ec.ec_renew #sec-03 .reproduction .sideline .topping-head-title span {
		background: linear-gradient(transparent 60%, #f7da18 60%);
	}

	.ec.ec_renew #sec-03 ul.topping-list {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}

	.ec.ec_renew #sec-03 ul.topping-list li {
		width: 33%;
		padding: 30px;
	}

	.ec.ec_renew #sec-03 ul.topping-list li .topping-title {
		font-size: 2.4rem;
		font-weight: bold;
		margin-top: 20px;
		border-bottom: 1px solid #000;
		padding-bottom: 6px;
	}

	.ec.ec_renew #sec-03 ul.topping-list li .provides {
		line-height: 1.8;
		margin: 10px 0;
	}

	.ec.ec_renew #sec-03 .sb_instagram_header {
		display: none;
	}

	.ec.ec_renew #instagram {
		background: url(../img/ec_renew/ttl-bg_04.png);
		background-size: cover;
		margin-bottom: 108px;
	}

	.ec.ec_renew #instagram .inner-box {
		z-index: 999;
	}

	.ec.ec_renew #instagram h3 {
		color: #fff;
		font-weight: bold;
		font-size: 6.4rem;
		line-height: 1.5;
		text-align: center;
		letter-spacing: 1.6px;
		text-indent: 0.8px;
		padding: 6% 2% 2%;
	}

	.ec.ec_renew #instagram h3 .en {
		font-size: 1.8rem;
		font-weight: 600;
		font-family: "Poppins", sans-serif;
		display: block;
		margin: 0 auto;
		letter-spacing: 18px;
		text-indent: 9px;
		color: #adadad;
	}

	.ec.ec_renew #instagram h3 .tagline {
		font-size: 1.8rem;
		display: block;
		margin: 0 auto;
		line-height: 2;
		text-indent: 9px;
		font-weight: normal;
		margin: 15px 0;
	}

	.ec.ec_renew #instagram .inner-box > a {
		position: relative;
		color: #000;
		vertical-align: middle;
		text-decoration: none;
		font-size: 2rem;
		border: 2px solid #000;
		padding: 8px;
		width: 280px;
		text-align: center;
		border-radius: 8px;
		margin: auto;
		display: block;
	}

	.ec.ec_renew #instagram .inner-box > a::after {
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
		right: 20px;
		width: 8px;
		height: 8px;
		border-bottom: 1px solid #8c8c8c;
		border-right: 1px solid #8c8c8c;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	.ec.ec_renew #sec-04 figure {
		width: 40%;
		position: relative;
	}

	.ec.ec_renew #sec-04 figure::after {
		content: "";
		width: 174px;
		height: 174px;
		position: absolute;
		z-index: 999;
		left: -50px;
		background: url(../img/ec_renew/popular-label.png);
		background-size: cover;
	}

	.ec.ec_renew #sec-04 .h-02 {
		letter-spacing: 4px;
		font-size: 3.2rem;
		margin-bottom: 0;
	}

	.ec.ec_renew #sec-04 .h-02 span {
		line-height: 3;
	}

	.ec.ec_renew #sec-04 .price-area {
		text-align: right;
		margin-bottom: 30px;
	}

	.ec.ec_renew #sec-04 .price-area p {
		font-size: 2.6rem;
		letter-spacing: 5px;
	}

	.ec.ec_renew #sec-04 span.main-price {
		position: relative;
	}

	.ec.ec_renew #sec-04 .price-area .red strong {
		font-size: 3.4rem;
	}

	.ec.ec_renew #sec-04 .price-area .main-price strong {
		font-size: 4.8rem;
		font-weight: bold;
		letter-spacing: 5px;
	}

	.ec.ec_renew #sec-04 span.main-price::after {
		content: "";
		position: absolute;
		background: #f7da18;
		width: 240px;
		height: 10px;
		left: 0;
		bottom: -28px;
	}

	.ec.ec_renew #sec-04 .price-area .red {
		color: #e41a1a;
	}

	.ec.ec_renew #sec-04 a i.icon-cart {
		display: inline-block;
		width: 20px;
		height: 18px;
		background: url(../img/common/ico-cart.png) no-repeat 50% 50%;
		vertical-align: text-bottom;
		margin-right: 15px;
	}

	.ec.ec_renew #sec-04 .btn-01 {
		margin-right: 0;
	}

	.ec.ec_renew #sec-05 h3 {
		text-align: center;
		font-size: 4.8rem;
	}

	.ec.ec_renew #sec-05 h3 .large {
		font-size: 6.4rem;
		font-weight: bold;
		letter-spacing: 5px;
	}

	.ec.ec_renew #sec-05 h3 .red {
		color: #da2626;
	}

	.ec.ec_renew #sec-05 h3 .point {
		color: #fff;
		text-stroke: 1px #060606;
		-webkit-text-stroke: 1px #060606;
		background: linear-gradient(transparent 60%, #f7da18 60%);
	}

	.ec.ec_renew #sec-05 .bg-child {
		right: 0;
		left: auto;
		top: 30px;
		height: 80%;
	}

	.ec.ec_renew #sec-05 {
		margin-top: 120px;
	}

	.ec.ec_renew #sec-05 .point-list {
		display: flex;
		width: 1000px;
		margin: 20px auto;
	}

	.ec.ec_renew #sec-05 .point-list li:not(:last-child) {
		margin-right: 40px;
	}

	.ec.ec_renew #sec-05 .point-list li {
		flex: 1;
		padding: 20px;
	}

	.ec.ec_renew #sec-05 .point-list li .howto-title {
		font-size: 3rem;
		text-align: center;
		font-weight: bold;
		margin-top: 10px;
	}

	.ec.ec_renew #sec-05 .point-list li .howto-title .en {
		font-family: "Poppins", sans-serif;
		display: block;
		color: #a0a0a0;
		letter-spacing: 6px;
		font-size: 1.4rem;
	}

	.ec.ec_renew #sec-05 .point-list li .text {
		line-height: 2;
		font-size: 1.6rem;
		margin: 10px 0;
	}

	.ec.ec_renew #instagram h3 img {
		width: 70px;
		margin-bottom: -10px;
		margin-right: 10px;
	}
}

@media screen and (max-width: 767px) {
	/*.btn-01 i.arw {
		display: block;
	}

	.btn-01 i.arw:before, .btn-01-b i.arw:before {
	    right: 10px;
	    width: 20px;
	    height: 1px;
	    background: #fff;
	}

	.btn-01 i.arw:after, .btn-01-b i.arw:after {
    right: 11px;
    width: 10px;
    height: 10px;
    border-top: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}*/
	.ec.ec_renew #sec-01 .btn-01 {
		margin-top: 0;
	}

	.ec.ec_renew .pc {
		display: none;
	}

	.ec.ec_renew #sec-01 {
		padding: 0 20px;
	}

	.ec.ec_renew #sec-01 .bg-01 .bg-child {
		left: 35%;
	}

	.ec.ec_renew #sec-01 .bg-01 .tbl figure img {
		width: 100%;
		height: auto;
	}

	.ec.ec_renew #sec-01 .box {
		margin-bottom: 30px;
	}

	.ec.ec_renew #sec-01 .bg-01 {
		margin-bottom: 0;
	}

	.ec.ec_renew #sec-02 .btn-01 a i.icon-cart {
		display: inline-block;
		width: 20px;
		height: 18px;
		background: url(../img/common/ico-cart.png) no-repeat 50% 50%;
		vertical-align: text-bottom;
		margin-right: 15px;
	}

	.ec.ec_renew #sec-02 .box h4.h-02 {
		font-size: 3.6rem;
	}

	.ec.ec_renew #sec-02 .box h4.h-02 span {
		font-size: 1.2rem;
	}

	.ec.ec_renew #sec-02 .box > a {
		position: relative;
		color: #000;
		vertical-align: middle;
		text-decoration: none;
		font-size: 2rem;
		border: 2px solid #000;
		padding: 8px;
		width: 280px;
		text-align: center;
		border-radius: 8px;
		margin: 20px auto 0;
		display: block;
	}

	.ec.ec_renew #sec-02 .box > a::after {
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
		right: 20px;
		width: 8px;
		height: 8px;
		border-top: 1px solid #8c8c8c;
		border-right: 1px solid #8c8c8c;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	.ec.ec_renew #sec-02 h3 {
		color: #fff;
		font-weight: bold;
		font-size: 3.2rem;
		line-height: 1.5;
		text-align: center;
		letter-spacing: 1.6px;
		text-indent: 0.8px;
		padding: 4%;
		background: url(../img/ec_renew/ttl-bg_01.png);
		margin: 0;
	}

	.ec.ec_renew #sec-02 h3 .en {
		font-size: 1.2rem;
		font-weight: 600;
		font-family: "Poppins", sans-serif;
		display: block;
		margin: 0 auto;
		letter-spacing: 10px;
		text-indent: 9px;
		color: #adadad;
	}

	.ec.ec_renew #sec-02 h3 .tagline {
		font-size: 1.4rem;
		display: block;
		margin: 0 auto;
		line-height: 2.4;
		text-indent: 9px;
		font-weight: normal;
	}

	.ec.ec_renew #sec-02 .popular-set-list {
		display: block;
		margin: 30px 20px;
	}

	.ec.ec_renew #sec-02 .popular-set-list .popular-set:not(:last-child) {
		margin-bottom: 40px;
	}

	.ec.ec_renew #sec-02 .popular-set-list .popular-set {
	}

	.ec.ec_renew #sec-02 .popular-set-list .popular-set .set-title {
		font-size: 1.8rem;
		font-weight: bold;
		margin: 10px 0;
		border-bottom: 1px solid #000;
		padding-bottom: 10px;
	}

	.ec.ec_renew #sec-02 .popular-set-list .popular-set .price-area {
		text-align: right;
		margin-bottom: 10px;
		font-size: 2.4rem;
	}

	.ec.ec_renew #sec-02 .popular-set-list .popular-set .price-area p {
		font-size: 2rem;
		letter-spacing: 4px;
	}

	.ec.ec_renew #sec-02 .about-aburasoba {
		margin: 120px 0 60px;
		padding: 0 20px;
	}

	.ec.ec_renew #sec-02 .about-aburasoba figure {
		z-index: 9999;
		margin-bottom: 25px;
	}

	.ec.ec_renew #sec-02 .about-aburasoba .bg-child {
		left: -94%;
		width: 110%;
		top: 30px;
	}

	.ec.ec_renew #sec-02 .custom-desc {
		padding: 0 20px;
	}

	.ec.ec_renew #sec-03 h3 {
		color: #fff;
		font-weight: bold;
		font-size: 3.2rem;
		line-height: 1.5;
		text-align: center;
		letter-spacing: 1.6px;
		text-indent: 0.8px;
		padding: 2%;
		background: url(../img/ec_renew/ttl-bg_02.png);
		margin: 0;
	}

	.ec.ec_renew #sec-03 .more {
		position: relative;
		padding-left: 34px;
		height: 50px;
	}

	.ec.ec_renew #sec-03 .more::after {
		content: "";
		background: url(../img/ec_renew/more-balloon.png);
		width: 34px;
		height: 45px;
		display: inline-block;
		background-size: 34px auto;
		background-repeat: no-repeat;
		position: absolute;
		left: -8px;
	}

	.ec.ec_renew #sec-03 .howto-list {
		display: block;
		margin: 40px 20px;
	}

	.ec.ec_renew #sec-03 .howto-list .single-howto {
	}

	.ec.ec_renew #sec-03 .howto-list .single-howto:not(:last-child) {
		margin-bottom: 40px;
	}

	.ec.ec_renew #sec-03 .howto-list .single-howto .howto-title {
		position: relative;
		font-size: 2.4rem;
		font-weight: bold;
		text-align: center;
		line-height: 3.4;
		margin: 0 auto 20px;
	}

	.ec.ec_renew #sec-03 .howto-list .single-howto .howto-title::after {
		content: "";
		width: 40%;
		height: 5px;
		background: #000;
		position: absolute;
		bottom: 0;
		left: 5px;
		right: 0;
		margin: auto;
	}

	.ec.ec_renew #sec-03 .howto-list .single-howto figure img {
		width: 50%;
	}

	.ec.ec_renew #sec-03 .howto-list .single-howto .text {
		font-size: 14px;
		line-height: 1.8;
		text-align: center;
	}

	.ec.ec_renew #sec-03 .reproduction .tagline {
		background: #000;
		color: #fff;
		font-size: 2.4rem;
		padding: 10px;
	}

	.ec.ec_renew #sec-03 .reproduction .tagline p {
		font-size: 2.2rem;
		display: block;
		margin: auto;
		width: fit-content;
		font-weight: bold;
		position: relative;
		padding-left: 64px;
		line-height: 1.6;
	}

	.ec.ec_renew #sec-03 .reproduction .tagline p::before {
		content: "";
		position: absolute;
		background: url(../img/ec_renew/noodles-ico.png);
		left: 0;
		width: 45px;
		height: 45px;
		top: 0;
		background-size: cover;
		bottom: 0;
		margin: auto;
	}

	.ec.ec_renew #sec-03 ul.reproduction-list {
		display: block;
		margin: 20px 0 120px;
	}

	.ec.ec_renew #sec-03 ul.reproduction-list .single-reproduction {
	}

	.ec.ec_renew #sec-03 ul.reproduction-list .single-reproduction:not(:last-child) {
		position: relative;
		margin-bottom: 70px;
	}

	.ec.ec_renew #sec-03 h5.reproduction-title {
		font-size: 2rem;
		font-weight: bold;
		line-height: 1.6;
		height: 66px;
		padding: 10px 0 10px 80px;
		display: table-cell;
		vertical-align: middle;
		position: relative;
		box-sizing: initial;
	}

	.ec.ec_renew #sec-03 ul.reproduction-list .single-reproduction:first-child h5::before {
		content: "";
		background: url(../img/ec_renew/clock-ico_01.png);
		position: absolute;
		width: 44px;
		height: 50px;
		background-size: cover;
		left: 20px;
		bottom: 20px;
	}

	.ec.ec_renew #sec-03 ul.reproduction-list .single-reproduction:nth-child(2) h5::before {
		content: "";
		background: url(../img/ec_renew/clock-ico_02.png);
		position: absolute;
		width: 44px;
		height: 50px;
		background-size: cover;
		left: 20px;
		bottom: 20px;
	}

	.ec.ec_renew #sec-03 ul.reproduction-list .single-reproduction:nth-child(3) h5::before {
		content: "";
		background: url(../img/ec_renew/clock-ico_03.png);
		position: absolute;
		width: 44px;
		height: 50px;
		background-size: cover;
		left: 20px;
		bottom: 20px;
	}

	.ec.ec_renew #sec-03 ul.reproduction-list .single-reproduction:not(:last-child)::after {
		content: "";
		background: url(../img/ec_renew/arrow-right.png);
		width: 47px;
		height: 73px;
		background-size: cover;
		position: absolute;
		right: 0;
		left: 0;
		bottom: -84px;
		margin: auto;
		transform: rotate(90deg);
	}

	#sec-03 .bottom-video {
		margin-bottom: 100px;
	}

	#sec-03 .bottom-video iframe {
		width: 100%;
		height: 100%;
		aspect-ratio: 16/9;
	}

	.ec.ec_renew #sec-03 .reproduction .sideline .topping-head-title {
		font-size: 2.4rem;
		font-weight: bold;
		text-align: center;
		margin-bottom: 40px;
	}

	.ec.ec_renew #sec-03 .reproduction .sideline {
		position: relative;
		background: #fff;
		z-index: 1;
	}

	/*.ec.ec_renew #sec-03 .reproduction .sideline::after {
    content: "";
    height: 1px;
    width: 20px;
    position: absolute;
    background: #000;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: -1;
}

.ec.ec_renew #sec-03 .reproduction .sideline::before {
    content: "";
    height: 1px;
    width: 20px;
    position: absolute;
    background: #000;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: -1;
}*/
	.ec.ec_renew #sec-03 .reproduction .sideline .topping-head-title::after {
		content: "";
		background: url(../img/ec_renew/topping-ico.png);
		position: absolute;
		top: -64px;
		left: 0;
		right: 0;
		margin: auto;
		width: 140px;
		height: 39px;
		background-size: cover;
	}

	.ec.ec_renew #sec-03 .reproduction .sideline .topping-head-title span {
		background: linear-gradient(transparent 60%, #f7da18 60%);
	}

	.ec.ec_renew #sec-03 ul.topping-list {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}

	.ec.ec_renew #sec-03 ul.topping-list li {
		width: 50%;
		padding: 15px;
	}

	.ec.ec_renew #sec-03 ul.topping-list li .topping-title {
		font-size: 1.6rem;
		font-weight: bold;
		margin-top: 20px;
		border-bottom: 1px solid #000;
		padding-bottom: 6px;
	}

	.ec.ec_renew #sec-03 ul.topping-list li .provides {
		line-height: 1.6;
		font-size: 1.4rem;
		margin: 10px 0;
	}

	.ec.ec_renew #sec-03 .sb_instagram_header {
		display: none;
	}

	.ec.ec_renew #instagram {
		background: url(../img/ec_renew/ttl-bg_04.png);
		background-size: cover;
		margin-bottom: 60px;
	}

	.ec.ec_renew #instagram .inner-box {
		z-index: 999;
	}

	.ec.ec_renew #instagram h3 {
		color: #fff;
		font-weight: bold;
		font-size: 3.2rem;
		line-height: 1.5;
		text-align: center;
		letter-spacing: 1.6px;
		text-indent: 0.8px;
		padding: 6% 2% 2%;
	}

	.ec.ec_renew #instagram h3 img {
		width: 3.2rem;
		margin-bottom: -3px;
		margin-right: 10px;
	}

	.ec.ec_renew #instagram h3 .en {
		font-size: 1.2rem;
		font-weight: 600;
		font-family: "Poppins", sans-serif;
		display: block;
		margin: 0 auto;
		letter-spacing: 10px;
		text-indent: 9px;
		color: #adadad;
	}

	.ec.ec_renew #instagram h3 .tagline {
		font-size: 1.4rem;
		display: block;
		margin: 0 auto;
		line-height: 2.4;
		text-indent: 9px;
		font-weight: normal;
	}

	.ec.ec_renew #instagram .inner-box > a {
		position: relative;
		color: #000;
		vertical-align: middle;
		text-decoration: none;
		font-size: 2rem;
		border: 2px solid #000;
		padding: 8px;
		width: 280px;
		text-align: center;
		border-radius: 8px;
		margin: auto;
		display: block;
	}

	.ec.ec_renew #instagram .inner-box > a::after {
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		content: "";
		vertical-align: middle;
		right: 20px;
		width: 8px;
		height: 8px;
		border-bottom: 1px solid #8c8c8c;
		border-right: 1px solid #8c8c8c;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	.ec.ec_renew #sec-04 .box {
		margin: 0 20px;
	}

	.ec.ec_renew #sec-04 figure {
		width: 80%;
		margin: 0 auto 25px;
		position: relative;
	}

	.ec.ec_renew #sec-04 figure::after {
		content: "";
		width: 30vw;
		height: 30vw;
		position: absolute;
		z-index: 999;
		left: -30px;
		background: url(../img/ec_renew/popular-label.png);
		background-size: cover;
	}

	.ec.ec_renew #sec-04 .h-09 {
		font-size: 3.2rem;
	}

	.ec.ec_renew #sec-04 .h-02 {
		letter-spacing: 4px;
		font-size: 2.2rem;
		line-height: 2.2;
		margin-bottom: 0;
	}

	.ec.ec_renew #sec-04 .h-02 span {
		line-height: 3;
	}

	.ec.ec_renew #sec-04 .price-area {
		text-align: right;
		margin-bottom: 30px;
	}

	.ec.ec_renew #sec-04 .price-area p {
		font-size: 2rem;
		letter-spacing: 5px;
	}

	.ec.ec_renew #sec-04 span.main-price {
		position: relative;
	}

	.ec.ec_renew #sec-04 .price-area .red strong {
		font-size: 2.6rem;
	}

	.ec.ec_renew #sec-04 .price-area .main-price strong {
		font-size: 3.2rem;
		font-weight: bold;
		letter-spacing: 5px;
	}

	.ec.ec_renew #sec-04 span.main-price::after {
		content: "";
		position: absolute;
		background: #f7da18;
		width: 56vw;
		height: 10px;
		left: 0;
		bottom: -18px;
	}

	.ec.ec_renew #sec-04 .price-area .red {
		color: #e41a1a;
	}

	.ec.ec_renew #sec-04 a i.icon-cart {
		display: inline-block;
		width: 20px;
		height: 18px;
		background: url(../img/common/ico-cart.png) no-repeat 50% 50%;
		vertical-align: text-bottom;
		margin-right: 15px;
	}

	.ec.ec_renew #sec-04 .btn-01 {
		margin-right: 0;
	}

	.ec.ec_renew #sec-05 h3 {
		text-align: center;
		font-size: 3.2rem;
	}

	.ec.ec_renew #sec-05 h3 .large {
		font-size: 4.8rem;
		font-weight: bold;
		letter-spacing: 5px;
	}

	.ec.ec_renew #sec-05 h3 .red {
		color: #da2626;
	}

	.ec.ec_renew #sec-05 h3 .point {
		color: #fff;
		text-stroke: 1px #060606;
		-webkit-text-stroke: 1px #060606;
		background: linear-gradient(transparent 60%, #f7da18 60%);
	}

	.ec.ec_renew #sec-05 .bg-child {
		right: 0;
		left: auto;
		top: 30px;
		height: 80%;
	}

	.ec.ec_renew #sec-05 {
		margin-top: 60px;
	}

	.ec.ec_renew #sec-05 .point-list {
		display: block;
		margin: 10px 30px;
	}

	.ec.ec_renew #sec-05 .point-list li:not(:last-child) {
	}

	.ec.ec_renew #sec-05 .point-list li {
		padding: 20px 20px 0;
	}

	.ec.ec_renew #sec-05 .point-list li .howto-title {
		font-size: 3rem;
		text-align: center;
		font-weight: bold;
		margin-top: 10px;
	}

	.ec.ec_renew #sec-05 .point-list li .howto-title .en {
		font-family: "Poppins", sans-serif;
		display: block;
		color: #a0a0a0;
		letter-spacing: 6px;
		font-size: 1.4rem;
	}

	.ec.ec_renew #sec-05 .point-list li .text {
		line-height: 2;
		font-size: 1.6rem;
		margin: 10px 0;
		text-align: center;
	}
}

.ec.ec_renew #sec-02 .btn-01 a i.icon-cart {
	display: inline-block;
	width: 20px;
	height: 18px;
	background: url(../img/common/ico-cart.png) no-repeat 50% 50%;
	vertical-align: text-bottom;
	margin-right: 15px;
}

.ec.ec_renew #sec-02 .custom-desc {
	margin-bottom: 40px;
}

.ec.ec_renew #sec-02 .bg-01 {
	margin-bottom: 0px !important;
}

.page_about #app .h3-box-01 {
	background: url(../img/app/bg_app-ttl.png) no-repeat center center;
	background-size: cover !important;
}

.page_about #app .h3-box-01 h3 {
	font-size: 100px;
}

.page_about #app .sec_head .cont_01 {
	position: relative;
}

.page_about #app .sec_head .cont_01 {
	position: relative;
}

.page_about #app .sec_head .cont_01 .mainimg {
	position: absolute;
	right: 0;
	z-index: 1;
}

.page_about #app .sec_head .cont_01 .points {
	width: 740px;
	padding: 80px 0 20px;
}

.page_about #app .sec_head .cont_01 .points li {
	border-top: 14px solid #f2f2f2;
	padding: 50px 60px 50px 40px;
	position: relative;
}

.page_about #app .sec_head .cont_01 .points h4 {
	font-size: 58px;
	font-weight: bold;
}

.page_about #app .sec_head .cont_01 .points h4 i {
	position: relative;
}

.page_about #app .sec_head .cont_01 .points h4 i::before {
	content: "";
	width: 100%;
	height: 16px;
	position: absolute;
	bottom: -5px;
	left: 0;
	background: #f7da18;
	z-index: -1;
}

.page_about #app .sec_head .cont_01 .points li:nth-child(1)::after {
	content: "";
	position: absolute;
	background: url(../img/app/lab-point01.png) no-repeat center center;
	background-size: cover !important;
	width: 121px;
	height: 121px;
	top: -70px;
	left: -32px;
}

.page_about #app .sec_head .cont_01 .points li:nth-child(2)::after {
	content: "";
	position: absolute;
	background: url(../img/app/lab-point02.png) no-repeat center center;
	background-size: cover !important;
	width: 121px;
	height: 121px;
	top: -70px;
	left: -32px;
}

.page_about #app .bnr {
	border-bottom: 1px solid #000;
	padding-bottom: 80px;
	margin-bottom: 80px;
}

.page_about #app .sec_memberscard {
	margin-bottom: 200px;
}

.page_about #app .sec_memberscard .cont_01 {
	position: relative;
}

.page_about #app .sec_memberscard .cont_01 .mainimg {
	position: absolute;
	left: 0;
	z-index: 1;
}

.page_about #app .sec_memberscard .cont_01 .textbox {
	width: 560px;
	padding: 60px 0 100px;
	margin: 0 0 0 auto;
}

.page_about #app .sec_memberscard .cont_01 .textbox h4 {
	text-align: right;
	margin-bottom: 50px;
}

.page_about #app .sec_memberscard .cont_01 .textbox h4 span.ja {
	font-size: 74px;
	font-weight: bold;
	display: block;
	border-bottom: 40px solid #f2f2f2;
	line-height: 0;
	margin-bottom: 20px;
}

.page_about #app .sec_memberscard .cont_01 .textbox h4 span.en {
	font-size: 1.8rem;
	font-weight: 600;
	font-family: "Poppins", sans-serif;
	display: block;
	margin: 0 auto;
	letter-spacing: 18px;
	text-indent: 9px;
	border: none;
}

.page_about #app .sec_memberscard .cont_01 .textbox .read {
	font-size: 35px;
	font-weight: bold;
	text-align: right;
}

.page_about #app .sec_memberscard .cont_02 h4 {
	font-size: 35px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 20px;
}

.page_about #app .sec_memberscard .cont_02 h4 span {
	color: #da2626;
}

.page_about #app .sec_memberscard .cont_02 .benefits {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.page_about #app .sec_memberscard .cont_02 .benefits li {
	padding: 40px 70px;
}

.page_about #app .sec_memberscard .cont_02 .benefits li .bg-child {
	left: 0;
	top: 0;
	bottom: 0;
	width: 50%;
	height: 100%;
}

.page_about #app .sec_memberscard .cont_02 .benefits li .ttl {
	font-size: 40px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 20px;
}

.page_about #app .sec_memberscard .cont_02 .benefits li .textbox {
	font-size: 18px;
	margin-bottom: 40px;
}

.page_about #app .sec_mileage .cont_01 {
	position: relative;
	margin-bottom: 140px;
}

.page_about #app .sec_mileage .cont_01 .mainimg {
	position: absolute;
	right: 0;
	z-index: 1;
}

.page_about #app .sec_mileage .cont_01 .mainimg .bg-child {
	width: 690px;
	height: 270px;
	left: auto;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}

.page_about #app .sec_mileage .cont_01 .textbox {
	width: 900px;
	padding: 60px 0 100px;
	margin: 0 auto 0 0;
}

.page_about #app .sec_mileage .cont_01 .textbox h4 {
	margin-bottom: 50px;
}

.page_about #app .sec_mileage .cont_01 .textbox h4 span.ja {
	font-size: 74px;
	font-weight: bold;
	display: block;
	border-bottom: 40px solid #f2f2f2;
	line-height: 0;
	margin-bottom: 20px;
}

.page_about #app .sec_mileage .cont_01 .textbox h4 span.en {
	font-size: 1.8rem;
	font-weight: 600;
	font-family: "Poppins", sans-serif;
	display: block;
	margin: 0 auto;
	letter-spacing: 18px;
	text-indent: 9px;
	border: none;
}

.page_about #app .sec_mileage .cont_01 .textbox h5 {
	font-size: 35px;
	margin-bottom: 40px;
	font-weight: bold;
}

.page_about #app .sec_mileage .cont_01 .textbox h5 .sub {
	font-size: 20px;
	display: block;
	font-weight: normal;
}

.page_about #app .sec_mileage .cont_01 .textbox .st_text {
	font-size: 50px;
	color: #da2626;
	font-weight: bold;
	position: relative;
	z-index: 2;
}

.page_about #app .sec_mileage .cont_01 .textbox .st_text i {
	content: "";
	width: 81px;
	height: 60px;
	vertical-align: middle;
	margin-right: 5px;
	background: url(../img/fc/ico-point.png) no-repeat center / contain;
	display: inline-block;
}

.page_about #faq .faq-ttl {
	width: 1180px;
	margin: 0 auto 25px;
	font-size: 34px;
	font-weight: bold;
	position: relative;
	padding: 0 10px;
}

.page_about #faq .faq-ttl::before {
	position: absolute;
	height: 40px;
	width: 100%;
	background: #f2f2f2;
	bottom: 0;
	content: "";
	z-index: -1;
	left: 0;
}

.page_about #faq .faq-box .faq-item dt {
	padding: 10px 65px 10px 55px;
	cursor: pointer;
}

.page_about #faq .faq-box .faq-item dt::after {
	content: "";
	position: absolute;
	right: 25px;
	top: 25px;
	width: 15px;
	height: 15px;
	border-bottom: 1px solid #171717;
	border-right: 1px solid #171717;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin: auto;
}

.page_about #faq .faq-box .faq-item dt.open::after {
	border-top: 1px solid #171717;
	border-left: 1px solid #171717;
	border-bottom: none;
	border-right: none;
	top: 35px;
}

.page_about #faq .faq-box dd {
	background: none;
	margin-bottom: 20px;
}

.page_about #faq .faq-box .faq-item {
	background: url(../img/common/line-01.png) repeat-x bottom;
}

.page_about #faq .faq-box dt span {
	line-height: 2.6;
}

.page_about #faq .faq-box dd span {
	line-height: 1.6;
}

.page_about #faq .faq-box .faq-item dd {
	display: none;
}

@media screen and (max-width: 780px) {
	.page_about #app .h3-box-01 {
		margin-bottom: 20px;
	}

	.page_about #app .h3-box-01 h3 {
		font-size: 30px;
	}

	.page_about #app .sec_head .cont_01 .mainimg {
		width: 40%;
		max-width: 145px;
	}

	.page_about #app .sec_head .cont_01 .points {
		width: 100%;
		padding: 30px 0 0;
	}

	.page_about #app .sec_head .cont_01 .points li {
		padding: 20px 5px 30px 10px;
		border-top: 8px solid #f2f2f2;
	}

	.page_about #app .sec_head .cont_01 .points h4 {
		font-size: 20px;
		width: 60%;
	}

	.page_about #app .sec_head .cont_01 .points li:nth-child(1)::after,
	.page_about #app .sec_head .cont_01 .points li:nth-child(2)::after {
		width: 48px;
		height: 48px;
		top: -30px;
		left: -5px;
	}

	.page_about #app .bnr {
		margin-bottom: 40px;
		padding-bottom: 40px;
	}

	.page_about #app .sec_memberscard {
		margin-bottom: 0;
	}

	.page_about #app .sec_memberscard .cont_01 {
		margin-bottom: 20px;
	}

	.page_about #app .sec_memberscard .cont_01 .mainimg {
		width: 50%;
	}

	.page_about #app .sec_memberscard .cont_01 .textbox {
		width: 100%;
		padding: 30px 0 0;
	}

	.page_about #app .sec_memberscard .cont_01 .textbox h4 {
		width: 60%;
		margin: 0 0 25px auto;
	}

	.page_about #app .sec_memberscard .cont_01 .textbox h4 span.ja {
		font-size: 32px;
		border-bottom: 20px solid #f2f2f2;
		margin-bottom: 10px;
	}

	.page_about #app .sec_memberscard .cont_01 .textbox h4 span.en {
		font-size: 1.2rem;
		letter-spacing: 10px;
		text-indent: 6px;
	}

	.page_about #app .sec_memberscard .cont_01 .textbox .read {
		font-size: 20px;
	}

	.page_about #app .sec_memberscard .cont_02 h4 {
		margin-bottom: 10px;
		font-size: 12px;
	}

	.page_about #app .sec_memberscard .cont_02 .benefits {
		display: block;
	}

	.page_about #app .sec_memberscard .cont_02 .benefits li {
		padding: 20px;
		margin-bottom: 10px;
	}

	.page_about #app .sec_memberscard .cont_02 .benefits li .ttl {
		font-size: 28px;
		margin-bottom: 10px;
	}

	.page_about #app .sec_memberscard .cont_02 .benefits li .textbox {
		font-size: 16px;
		margin-bottom: 20px;
	}

	.page_about #app .sec_mileage .cont_01 {
		margin-bottom: 0;
	}

	.page_about #app .sec_mileage .cont_01 .mainimg .bg-child {
		display: none;
	}

	.page_about #app .sec_mileage .cont_01 .mainimg {
		width: 36%;
		top: 0;
	}

	.page_about #app .sec_mileage .cont_01 .textbox {
		width: 100%;
		padding: 108px 0 40px;
	}

	.page_about #app .sec_mileage .cont_01 .textbox h4 {
		margin-bottom: 20px;
	}

	.page_about #app .sec_mileage .cont_01 .textbox h4 span.ja {
		font-size: 32px;
		border-bottom: 20px solid #f2f2f2;
	}

	.page_about #app .sec_mileage .cont_01 .textbox h4 span.en {
		font-size: 1.2rem;
		letter-spacing: 10px;
		text-indent: 6px;
	}

	.page_about #app .sec_mileage .cont_01 .textbox h5 {
		font-size: 20px;
		margin: 0 0 10px;
	}

	.page_about #app .sec_mileage .cont_01 .textbox h5 .sub {
		font-size: 14px;
	}

	.page_about #app .sec_mileage .cont_01 .textbox .st_text {
		font-size: 24px;
	}

	.page_about #app .sec_mileage .cont_01 .textbox .st_text i {
		width: 35px;
		height: 30px;
	}

	.page_about #faq .faq-ttl {
		width: 100%;
		font-size: 24px;
		margin: 0 0 10px;
	}

	.page_about #faq .faq-ttl::before {
		height: 20px;
	}

	.page_about #faq .faq-box .faq-item dt {
		padding: 10px 65px 10px 35px;
	}

	.page_about #faq .faq-box .faq-item dt::after {
		top: 10px;
	}

	.page_about #faq .faq-box .faq-item dt.open::after {
		top: 20px;
	}

	.page_about #faq .faq-box .faq-item dt span,
	.page_about #faq .faq-box .faq-item dd span {
		font-size: 2.8rem;
		top: 12px;
		line-height: 5rem;
	}
}

.news__desc p {
	font-size: 16px;
	line-height: 1.8;
	margin: 1.5em 0;
}

.news__desc a {
	color: #0000ff;
	text-decoration: underline;
}

/* 2024.02.28 */
.salestrends.centering {
	padding-left: 20px;
	padding: 0 !important;
	background: #fff !important;
}

.salestrends.centering img {
	width: 100%;
	padding: 0;
	padding-top: 40px;
}

.salestrends.centering .bottom-text {
	margin-top: 20px;
}

.btn-06-x2.centering {
	max-width: 900px;
	margin: 0 auto 50px;
}

@media screen and (max-width: 750px) {
	.salestrends.centering img {
		padding-top: 20px;
	}

	.btn-06-x2.centering {
		margin: 0 auto 20px;
	}
}

.info-top-flex * {
	box-sizing: border-box;
}

.info-top-flex > * {
	gap: 5%;
	display: flex;
	width: 100%;
	justify-content: space-between;
	float: none !important;
}

.info-top-flex .shop-info-group {
	display: flex;
	width: 70%;
	gap: 20px;
	align-items: flex-start;
}

.info-top-flex .shop-info-group .h-05 {
	padding: 0 0 0 20px;
}

.info-top-flex .ico-list {
	display: flex;
	gap: 10px;
	align-items: center;
	font-size: 1.6rem;
}

.info-top-flex .ico-list > * {
	display: flex;
	align-items: center;
	flex-shrink: 0;
	gap: 10px;
}

.info-top-flex .ico-list > * > img {
	margin: 0;
}

.info-top-flex .btn-list {
	width: 30%;
	display: flex;
	gap: 10px;
	justify-content: flex-end;
}

.info-top-flex .btn-list > a {
	display: block;
	width: 200px;
}

.info-top-flex .btn-list > a > img {
	width: 100%;
	display: block;
}

.info-top-flex .btn-list > a > img:nth-of-type(2) {
	display: none;
}

@media screen and (max-width: 1080px) {
	.info-top-flex > * {
		gap: 15px;
		flex-flow: column;
		align-items: flex-start;
	}

	.info-top-flex .shop-info-group {
		width: 100%;
		justify-content: flex-start;
		gap: 20px;
	}

	.info-top-flex .btn-list {
		width: 100%;
		flex-wrap: nowrap;
		justify-content: flex-start;
	}
}

@media screen and (max-width: 800px) {
	.info-top-flex .shop-info-group {
		flex-flow: column;
	}

	.info-top-flex .btn-list > a > img {
		display: none;
	}

	.info-top-flex .btn-list > a > img:nth-of-type(2) {
		display: block;
	}
}

#app_notice p {
	display: block;
	width: 100%;
	background: #ddd;
	padding: 15px 20px;
	border: 1px solid #000;
	color: #333;
	font-size: 0.9em;
}

@media screen and (max-width: 768px) {
	.tbl-02 #naiyo span.wpcf7-list-item {
		width: 100%;
	}

	#app_email th br {
		display: none;
	}
}

/**
 * 地域FCページ
 */
.area-fc .slick-next {
	width: 35px;
	height: 62px;
	right: -85px;
	transform: none;
	background: url("../img/area-fc/slider-right.png") center / contain no-repeat;
}

.area-fc .slick-next::before {
	content: none;
}

.area-fc .slick-prev {
	width: 35px;
	height: 62px;
	left: -85px;
	transform: none;
	background: url("../img/area-fc/slider-left.png") center / contain no-repeat;
}

.area-fc .slick-prev::before {
	content: none;
}

@media screen and (max-width: 1250px) {
	.area-fc .slick-next {
		right: -50px;
	}

	.area-fc .slick-prev {
		left: -50px;
	}
}

@media screen and (max-width: 1080px) {
	.area-fc .slick-next {
		right: -10px;
	}

	.area-fc .slick-prev {
		left: -10px;
	}
}

@media screen and (max-width: 767px) {
	.area-fc .slick-next {
		width: 15px;
		height: 27px;
		right: 0;
		background: url("../img/area-fc/slider-right-sp.png") center / contain no-repeat;
	}

	.area-fc .slick-prev {
		width: 15px;
		height: 27px;
		left: 0;
		background: url("../img/area-fc/slider-left-sp.png") center / contain no-repeat;
	}
}

.area-fc-inner {
	position: relative;
	max-width: calc(1200px);
	margin: 0 auto;
}

@media screen and (max-width: 1079px) {
	.area-fc-inner {
		padding: 0 2.5vw;
	}
}

@media screen and (max-width: 767px) {
	.area-fc-inner {
		padding: 0 18px;
	}
}

.area-fc.page .h3-box-01 .inner-box {
	font-size: 74px;
	letter-spacing: 0.11em;
	margin-bottom: 9px;
}

.area-fc.page .h3-box-01 .inner-box span {
	letter-spacing: 0.9em;
}

.area-fc.page .area-fc-model .h3-box-01 .inner-box {
	max-width: 1250px;
}

@media screen and (max-width: 767px) {
	.area-fc.page .h3-box-01 .inner-box {
		font-size: 2.8rem;
		margin-bottom: 0;
	}

	.area-fc.page .h3-box-01 .inner-box span {
		font-size: 1.2rem;
		letter-spacing: 10px;
	}
}

.area-fc-sec {
	position: relative;
}

.area-fc-sec__inner {
	display: flex;
	align-items: center;
}

.area-fc-sec__inner > .bg-01 {
	background-position: 358.1px 0px;
	position: absolute;
	padding: 0;
	margin: 0;
	top: 83px;
	left: 190px;
	right: 100px;
	bottom: 47px;
}

.area-fc-sec__inner > .bg-01 .bg-child {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.area-fc-sec__txt {
	position: relative;
	flex: 1 1 712px;
	padding-bottom: 10px;
}

.area-fc-sec__ttl {
	font-size: 97px;
	font-weight: 700;
	line-height: calc(135 / 97);
	letter-spacing: 0.025em;
	color: #262626;
	margin-right: -1em;
	position: relative;
	z-index: 1;
	text-shadow: 0 0 50px #fff;
}

.area-fc-sec__ttl-en {
	position: absolute;
	font-size: 17px;
	color: #d2d2d2;
	letter-spacing: 0.12em;
	transform: translate(9px, 3px);
}

.area-fc-sec__pic {
	flex: 1 1 425px;
	padding-right: 54px;
	position: relative;
}

.area-fc-sec--1 {
	padding-top: 47px;
	margin-bottom: 112px;
}

@media screen and (max-width: 1199px) {
	.area-fc-sec__inner > .bg-01 {
		top: 2.916vw;
		left: 15.83vw;
		right: 8.33vw;
		bottom: 3.916vw;
	}

	.area-fc-sec__ttl {
		font-size: 8.0833vw;
	}

	.area-fc-sec__pic {
		flex: 1 1 400px;
		padding-right: 4.5vw;
	}
}

@media screen and (max-width: 1079px) {
	.area-fc-inner .area-fc-sec {
		margin-left: -2.5vw;
		margin-right: -2.5vw;
		padding-left: 2.5vw;
		padding-right: 2.5vw;
	}
}

@media screen and (max-width: 767px) {
	.area-fc-sec__inner {
		display: block;
		min-height: 345px;
	}

	.area-fc-sec__inner > .bg-01 {
		top: 26px;
		left: 67px;
		right: 0;
		bottom: 87px;
	}

	.area-fc-sec__txt {
		margin-bottom: 0;
	}

	.area-fc-sec__ttl {
		font-size: 42px;
		line-height: calc(100 / 84);
	}

	.area-fc-sec__ttl-en {
		font-size: 12px;
		letter-spacing: 0.07em;
		transform: translate(0px, 14px);
	}

	.area-fc-sec__pic {
		width: 178px;
		height: 230px;
		padding-right: 0;
		position: absolute;
		top: 117px;
		right: 19px;
	}

	.area-fc-sec--1 {
		padding-top: 0;
		margin-bottom: 30px;
	}

	.area-fc-inner .area-fc-sec {
		margin-left: -18px;
		margin-right: -18px;
		padding-left: 18px;
		padding-right: 18px;
	}
}

.area-fc-power {
	padding: 0 0 153px;
	margin-bottom: 121px;
}

.area-fc-power .h3-box-01 {
	background: url(../img/area-fc/power-ttl-bg.jpg) no-repeat center center / cover;
	margin-bottom: 70px;
}

.area-fc-power__lead {
	font-size: 1.8rem;
	max-width: 970px;
	margin: 0 auto 78px;
	line-height: calc(35 / 18);
}

.area-fc-power__body {
	padding: 0 68px;
}

@media screen and (max-width: 959px) {
	.area-fc-power__body {
		padding: 0;
	}
}

@media screen and (max-width: 767px) {
	.area-fc-power {
		padding-bottom: 0;
		margin-bottom: 0;
	}

	.area-fc-power .h3-box-01 {
		margin-bottom: 20px;
	}

	.area-fc-power__lead {
		margin-bottom: 30px;
	}
}

.area-fc-point__body {
	display: flex;
	gap: 0 46px;
	position: relative;
}

.area-fc-point__body > .bg-01 {
	position: absolute;
	top: 195px;
	right: 10px;
	width: 689px;
	height: 265px;
	margin: 0;
	padding: 0;
}

.area-fc-point__body > .bg-01 .bg-child {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.area-fc-point__pic {
	position: relative;
	flex: 1 1 422px;
}

.area-fc-point__pic figure {
	text-align: left;
}

.area-fc-point__txt {
	position: relative;
	flex: 1 1 590px;
}

.area-fc-point__desc {
	font-size: 1.8rem;
	line-height: calc(35 / 18);
	letter-spacing: 0.08em;
	color: #202020;
}

.area-fc-point--1 {
	margin-bottom: 75px;
}

.area-fc-point--1 .area-fc-point-head {
	margin-bottom: 37px;
}

.area-fc-point--1 .area-fc-point__txt {
	padding-top: 27px;
}

.area-fc-point--2 {
	margin-bottom: 169px;
}

.area-fc-point--2 .area-fc-point-head {
	margin-bottom: 58px;
}

.area-fc-point--2 .area-fc-point__txt {
	padding-top: 6px;
}

.area-fc-point--3 .area-fc-point-head {
	margin-bottom: 38px;
}

.area-fc-point--3 .area-fc-point__txt {
	padding-top: 27px;
}

@media screen and (max-width: 767px) {
	.area-fc-point__body {
		display: block;
	}

	.area-fc-point__body > .bg-01 {
		top: 178px;
		right: -18px;
		width: 308px;
	}

	.area-fc-point__pic {
		margin-bottom: 28px;
	}

	.area-fc-point__pic figure {
		text-align: center;
	}

	.area-fc-point__desc {
		letter-spacing: 0.06em;
	}

	.area-fc-point--1,
	.area-fc-point--2,
	.area-fc-point--3 {
		margin-bottom: 40px;
	}

	.area-fc-point--1 .area-fc-point-head,
	.area-fc-point--2 .area-fc-point-head,
	.area-fc-point--3 .area-fc-point-head {
		margin-bottom: 18px;
	}

	.area-fc-point--1 .area-fc-point__txt,
	.area-fc-point--2 .area-fc-point__txt,
	.area-fc-point--3 .area-fc-point__txt {
		padding-top: 0;
	}
}

.area-fc-point1-pic {
	aspect-ratio: 0.778;
	position: relative;
}

.area-fc-point1-pic__pic {
	position: absolute;
}

.area-fc-point1-pic__pic img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	-o-object-fit: cover;
}

.area-fc-point1-pic__pic-01 {
	top: 0;
	left: 0;
	width: 87.5%;
	height: 49.3%;
	z-index: 1;
}

.area-fc-point1-pic__pic-02 {
	top: 41.3%;
	right: 0;
	width: 62%;
	height: 35%;
	z-index: 3;
}

.area-fc-point1-pic__pic-03 {
	bottom: 0;
	left: 0;
	width: 62.3%;
	height: 35%;
	z-index: 2;
}

@media screen and (max-width: 767px) {
	.area-fc-point1-pic {
		aspect-ratio: 0.919;
		max-width: 339px;
		margin: 0 auto;
	}

	.area-fc-point1-pic__pic-01 {
		width: 78.8%;
		height: 52.4%;
	}

	.area-fc-point1-pic__pic-02 {
		top: 37.3%;
		right: 3.2%;
		width: 56%;
		height: 37.5%;
	}

	.area-fc-point1-pic__pic-03 {
		width: 56%;
		height: 37.3%;
	}
}

.area-fc-point-head__num {
	font-size: 28px;
	font-weight: 700;
	font-family: "Poppins", sans-serif;
	letter-spacing: 0.14em;
	line-height: 1.2;
	margin-bottom: 19px;
	color: #101010;
}

.area-fc-point-head__ttl {
	font-size: 58px;
	font-weight: 700;
	letter-spacing: 0.065em;
	line-height: 1.2;
	margin-right: -70px;
	color: #262626;
}

.area-fc-point-head__strong {
	font-size: 110px;
	padding-bottom: 8px;
	background: linear-gradient(0, #f7da18 0, #f7da18 31px, transparent 31px);
	letter-spacing: 0.1em;
}

.area-fc-point-head__small {
	font-size: 67px;
	padding-left: 10px;
	padding-right: 17px;
	letter-spacing: 0.065em;
}

@media screen and (max-width: 1200px) {
	.area-fc-point-head__ttl {
		margin-right: 0;
	}

	.area-fc-point-head__strong {
		font-size: 58px;
		background: linear-gradient(0, #f7da18 0, #f7da18 16px, transparent 16px);
		padding-bottom: 4px;
	}

	.area-fc-point-head__small {
		font-size: 35px;
	}
}

@media screen and (max-width: 767px) {
	.area-fc-point-head__num {
		font-size: 15px;
		letter-spacing: 0.12em;
		margin-bottom: 2px;
	}

	.area-fc-point-head__ttl {
		font-size: 26px;
		line-height: 1.35;
		letter-spacing: 0.12em;
	}

	.area-fc-point-head__strong {
		font-size: 48px;
		letter-spacing: 0;
		background: linear-gradient(0, #f7da18 0, #f7da18 12px, transparent 12px);
		padding-bottom: 2px;
	}

	.area-fc-point-head__small {
		font-size: 28px;
		letter-spacing: 0;
		padding-left: 8px;
		padding-right: 7px;
	}
}

.area-fc-model {
	padding-bottom: 117px;
}

.area-fc-model .h3-box-01 {
	margin-bottom: 70px;
	background: url(../img/area-fc/model-ttl-bg.jpg) no-repeat center center / cover;
}

@media screen and (max-width: 767px) {
	.area-fc-model {
		padding-bottom: 40px;
	}

	.area-fc-model .h3-box-01 {
		margin-bottom: 20px;
	}
}

.area-fc-model__lead {
	font-size: 1.8rem;
	max-width: 970px;
	margin: 0 auto 78px;
	line-height: calc(35 / 18);
}

@media screen and (max-width: 767px) {
	.area-fc-model__lead {
		margin-bottom: 30px;
	}
}

.area-fc-model-point {
	padding: 0 70px;
	padding-bottom: 151px;
	margin-bottom: 122px;
}

.area-fc-model-point__point {
	font-size: 28px;
	font-weight: 700;
	font-family: "Poppins", sans-serif;
	letter-spacing: 0.1em;
	line-height: 1.2;
	margin-bottom: 19px;
	margin-left: -10px;
}

.area-fc-model-point__ttl {
	font-size: 58px;
	font-weight: 700;
	line-height: 1.2;
	margin: 0 -10px 38px -16px;
	letter-spacing: 0.1em;
	color: #262626;
}

.area-fc-model-point__strong {
	font-size: 67px;
	letter-spacing: 0.05em;
	background: linear-gradient(0, #f7da18 0, #f7da18 31px, transparent 0);
	padding-bottom: 14px;
}

.area-fc-model-point__num {
	font-size: 110px;
	letter-spacing: 0.1em;
	margin-right: -5px;
}

.area-fc-model-point__body {
	display: flex;
	gap: 0 46px;
	position: relative;
}

.area-fc-model-point__body > .bg-01 {
	position: absolute;
	top: 195px;
	right: 10px;
	width: 689px;
	height: 265px;
	margin: 0;
	padding: 0;
}

.area-fc-model-point__body > .bg-01 .bg-child {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.area-fc-model-point__pic {
	position: relative;
	flex: 1 1 422px;
}

.area-fc-model-point__pic figure {
	text-align: left;
}

.area-fc-model-point__txt {
	position: relative;
	flex: 1 1 590px;
	padding-top: 27px;
}

.area-fc-model-point__desc {
	font-size: 1.8rem;
	line-height: calc(35 / 18);
	letter-spacing: 0.08em;
}

@media screen and (max-width: 959px) {
	.area-fc-model-point__point {
		margin-left: 0;
	}

	.area-fc-model-point__ttl {
		margin-left: 0;
		margin-right: 0;
	}
}

@media screen and (max-width: 959px) {
	.area-fc-model-point {
		padding-left: 0;
		padding-right: 0;
	}
}

@media screen and (max-width: 767px) {
	.area-fc-model-point {
		padding-bottom: 0;
		margin-bottom: 40px;
	}

	.area-fc-model-point__point {
		font-size: 15px;
		margin-bottom: 12px;
	}

	.area-fc-model-point__ttl {
		font-size: 26px;
		line-height: 1.2;
		letter-spacing: 0.12em;
		margin-bottom: 18px;
	}

	.area-fc-model-point__strong {
		font-size: 28px;
		background: linear-gradient(0, #f7da18 0, #f7da18 12px, transparent 12px);
		padding-bottom: 2px;
	}

	.area-fc-model-point__num {
		font-size: 48px;
	}

	.area-fc-model-point__body {
		display: block;
	}

	.area-fc-model-point__body > .bg-01 {
		top: 178px;
		right: -18px;
		width: 308px;
	}

	.area-fc-model-point__pic {
		margin-bottom: 28px;
	}

	.area-fc-model-point__pic figure {
		text-align: center;
	}

	.area-fc-model-point__txt {
		padding-top: 0;
	}
}

.area-fc-uriage {
	padding: 121px 0 114px;
	position: relative;
}

.area-fc-uriage::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	height: 1px;
	width: calc(100% - 20px);
	background: #000;
}

.area-fc-uriage__inner .area-fc-sec {
	margin-bottom: 69px;
}

.area-fc-uriage__details {
	display: flex;
	gap: 0 90px;
	padding-left: 6px;
	padding-right: 54px;
}

@media screen and (max-width: 1200px) {
	.area-fc-uriage__details {
		gap: 0 30px;
		padding: 0 68px;
	}
}

@media screen and (max-width: 1079px) {
	.area-fc-uriage__details {
		padding: 0;
	}
}

@media screen and (max-width: 767px) {
	.area-fc-uriage {
		padding: 40px 0;
	}

	.area-fc-uriage__details {
		display: block;
	}

	.area-fc-uriage__inner .area-fc-sec {
		margin-bottom: 30px;
	}
}

.area-fc-uriage-detail__kingaku {
	font-size: 41px;
	font-weight: 700;
	line-height: 1;
	color: #f12b2b;
	letter-spacing: 0.175em;
	text-align: center;
}

.area-fc-uriage-detail__strong {
	background: linear-gradient(0, #f7da18 0, #f7da18 16px, transparent 16px);
	padding-bottom: 14px;
}

.area-fc-uriage-detail__kingaku-num {
	font-size: 77px;
}

.area-fc-uriage-detail--1 {
	flex: 1 1 473px;
}

.area-fc-uriage-detail--2 {
	flex: 1 1 573px;
}

.area-fc-uriage-detail__ttl {
	background: #61442b;
	color: #fff;
	text-align: center;
	font-size: 24px;
	font-weight: 700;
	line-height: 1;
	padding: 7px 0;
	letter-spacing: 0.1em;
}

.area-fc-uriage-detail--1 .area-fc-uriage-detail__ttl {
	margin-bottom: 28px;
}

.area-fc-uriage-detail--2 .area-fc-uriage-detail__ttl {
	letter-spacing: 0.3em;
	margin-bottom: 15px;
}

@media screen and (max-width: 1200px) {
	.area-fc-uriage-detail__kingaku {
		letter-spacing: 0.1em;
	}

	.area-fc-uriage-detail__kingaku-num {
		font-size: 60px;
	}
}

@media screen and (max-width: 959px) {
	.area-fc-uriage-detail__ttl {
		font-size: 20px;
	}

	.area-fc-uriage-detail__kingaku {
		font-size: 35px;
	}

	.area-fc-uriage-detail__kingaku-num {
		font-size: 42px;
	}
}

@media screen and (max-width: 767px) {
	.area-fc-uriage-detail__ttl {
		font-size: 18px;
	}

	.area-fc-uriage-detail__strong {
		background: linear-gradient(0, #f7da18 0, #f7da18 10px, transparent 10px);
		padding-bottom: 5px;
	}

	.area-fc-uriage-detail--1 .area-fc-uriage-detail__ttl {
		margin-bottom: 18px;
	}

	.area-fc-uriage-detail--2 {
		margin-top: 30px;
	}
}

.area-fc-uriage-ex {
	display: flex;
	padding: 0 23px;
}

.area-fc-uriage-ex__ttl {
	flex: 1 1 107px;
	line-height: 1.8;
	color: #373737;
}

.area-fc-uriage-ex__body {
	flex: 1 1 420px;
}

.area-fc-uriage-ex__tbl {
	display: grid;
	grid-template-columns: 85fr 149fr 158fr 30fr;
	font-size: 18px;
	margin-bottom: 6px;
}

.area-fc-uriage-ex__tbl-cell {
	line-height: 1.8;
	color: #373737;
}

.area-fc-uriage-ex__note {
	font-size: 12.6px;
	font-weight: 700;
	line-height: calc(24 / 12.6);
	margin-left: -3px;
	margin-right: -12px;
	color: #373737;
}

.area-fc-uriage-ex__note--important {
	color: #f00;
}

@media screen and (max-width: 959px) {
	.area-fc-uriage-ex {
		padding: 0 10px;
	}

	.area-fc-uriage-ex__ttl {
		font-size: 1.6rem;
	}

	.area-fc-uriage-ex__tbl {
		grid-template-columns: 75fr 119fr 158fr 30fr;
	}

	.area-fc-uriage-ex__tbl-cell {
		font-size: 1.6rem;
	}

	.area-fc-uriage-ex__note {
		font-size: 11px;
	}
}

@media screen and (max-width: 959px) {
	.area-fc-uriage-ex__ttl {
		flex-basis: 90px;
	}

	.area-fc-uriage-ex__tbl {
		grid-template-columns: 75fr 107fr 168fr 30fr;
	}
}

.area-fc-shop {
	padding-top: 120px;
	position: relative;
}

.area-fc-shop::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	height: 1px;
	width: calc(100% - 20px);
	background: #000;
}

.area-fc-shop__inner .area-fc-sec {
	margin-bottom: 59px;
}

.area-fc-shop__lead {
	font-size: 1.8rem;
	max-width: 1050px;
	padding-right: 80px;
	margin: 0 auto 44px;
	line-height: calc(35 / 18);
	letter-spacing: 0.09em;
	color: #262626;
}

@media screen and (max-width: 1200px) {
	.area-fc-shop__lead {
		padding-right: 0;
		max-width: 970px;
	}
}

@media screen and (max-width: 767px) {
	.area-fc-shop {
		padding: 40px 0 0;
	}

	.area-fc-shop__inner .area-fc-sec {
		margin-bottom: 30px;
	}

	.area-fc-shop__lead {
		margin-bottom: 30px;
	}
}

.area-fc-shop-list {
	max-width: 1070px;
	margin: 0 auto 114px;
}

.area-fc-shop-list .slick-prev,
.area-fc-shop-list .slick-next {
	top: 103px;
}

.area-fc-shop-list__slider {
	display: flex;
	justify-content: center;
}

@media screen and (max-width: 1250px) {
	.area-fc-shop-list {
		max-width: 920px;
	}
}

@media screen and (max-width: 767px) {
	.area-fc-shop-list {
		margin: 0 auto 40px;
	}
}

.area-fc-shop-item {
	flex: 0 0 calc(314px + 64px);
	width: calc(314px + 64px);
	padding: 0 32px;
}

.area-fc-shop-item__pic {
	aspect-ratio: calc(315 / 269);
	background: #d6d6d6;
	margin-bottom: 21px;
}

.area-fc-shop-item__pic img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	-o-object-fit: cover;
}

.area-fc-shop-item__name {
	font-size: 27px;
	font-weight: 700;
	text-align: center;
	line-height: 1.2;
}

@media screen and (max-width: 767px) {
	.area-fc-shop-item {
		flex: 0 0 calc(280px + 64px);
		width: calc(280px + 64px);
	}

	.area-fc-shop-item__pic {
		margin-bottom: 10px;
	}

	.area-fc-shop-item__name {
		font-size: 20px;
	}
}

.area-fc-interview {
	text-align: center;
}

.area-fc-interview__ttl {
	font-size: 62px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.1em;
	margin-bottom: 11px;
	color: #262626;
}

.area-fc-interview__ttl-en {
	font-size: 17px;
	color: #d2d2d2;
	letter-spacing: 0.1em;
	margin-bottom: 26px;
}

.area-fc-interview__list {
	max-width: 1076px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	gap: 26px 60px;
}

.area-fc-interview__list--center {
	justify-content: center;
}

@media screen and (max-width: 959px) {
	.area-fc-interview__list {
		gap: 25px;
	}
}

@media screen and (max-width: 767px) {
	.area-fc-interview .slick-prev,
	.area-fc-interview .slick-next {
		top: 204px;
	}

	.area-fc-interview__ttl {
		font-size: 36px;
		margin-bottom: 4px;
	}

	.area-fc-interview__ttl-en {
		font-size: 12px;
		margin-bottom: 10px;
	}

	.area-fc-interview__list {
		flex-wrap: nowrap;
	}
}

.area-fc-interview-item {
	flex: 0 1 min(calc(50% - 30px), 508px);
	text-align: left;
}

.area-fc-interview-item__inner {
	border: solid 3px #161716;
	border-radius: 10px;
	padding: 28px 36px 35px;
	height: 100%;
}

.area-fc-interview-item__head {
	display: flex;
	align-items: center;
	margin-bottom: 20px;
}

.area-fc-interview-item__icon {
	flex: 0 0 127px;
	width: 127px;
	height: 127px;
	margin-right: 20px;
}

.area-fc-interview-item__ttl {
	flex: 1 0 0px;
	font-size: 27px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
	color: #262626;
}

.area-fc-interview-item__desc {
	font-size: 15px;
	line-height: calc(32 / 15);
	padding: 0 9px;
	letter-spacing: 0.085em;
	color: #202020;
}

@media screen and (max-width: 959px) {
	.area-fc-interview-item {
		flex: 0 1 min(calc(50% - 12.5px), 508px);
	}
}

@media screen and (max-width: 767px) {
	.area-fc-interview-item {
		flex: 0 0 min(338px, 90.26vw);
		width: min(338px, 90.26vw);
		padding: 35px 22.5px 0;
	}

	.area-fc-interview-item__inner {
		border-width: 1.5px;
		border-radius: 6px;
		padding: 0 18px 23px;
	}

	.area-fc-interview-item__head {
		flex-direction: column;
		margin-top: -35px;
		margin-bottom: 11px;
	}

	.area-fc-interview-item__icon {
		margin-right: 0;
		flex: 0 0 64px;
		width: 64px;
		height: 64px;
		margin-bottom: 13px;
	}

	.area-fc-interview-item__ttl {
		font-size: 18px;
		text-align: center;
	}

	.area-fc-interview-item__desc {
		padding: 0;
		line-height: calc(48 / 28);
		font-size: 14px;
	}
}

.area-fc-cource {
	margin-bottom: 120px;
}

.area-fc-cource .h3-box-01 {
	padding: 30px 0;
	margin-bottom: 112px;
}

.area-fc-cource .h3-box-01 .inner-box {
	letter-spacing: 0.1em;
}

.area-fc-cource__body {
	max-width: 980px;
	margin: 0 auto;
}

.area-fc-cource__list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 90px;
}

@media screen and (max-width: 959px) {
	.area-fc-cource__list {
		gap: 0 30px;
	}
}

@media screen and (max-width: 767px) {
	.area-fc-cource {
		margin-bottom: 40px;
	}

	.area-fc-cource .h3-box-01 {
		margin-bottom: 50px;
	}

	.area-fc-cource__list {
		gap: 0 20px;
	}

	.area-fc-cource .area-fc-inner {
		padding: 0 10px;
	}
}

.area-fc-cource-item {
	border: solid 4px #202020;
	position: relative;
}

.area-fc-cource-item::before {
	content: "";
	position: absolute;
	top: -71px;
	left: 50%;
	transform: translateX(-50%) translateX(11px);
	width: 164px;
	height: 151px;
	background: url("../img/area-fc/cource-accent.png") center / contain no-repeat;
}

.area-fc-cource-item__inner {
	display: block;
	padding: 82px 10px 38px;
}

.area-fc-cource-item__head {
	position: relative;
	padding-bottom: 35px;
	margin-bottom: 31px;
}

.area-fc-cource-item__head::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 89px;
	height: 6px;
	background: #000;
}

.area-fc-cource-item__ttl {
	text-align: center;
	font-size: 40px;
	font-weight: 700;
	line-height: calc(51 / 40);
	letter-spacing: 0.1em;
	margin-bottom: 2px;
	color: #202020;
}

.area-fc-cource-item__ttl-en {
	text-align: center;
	font-size: 18px;
	font-weight: 700;
	font-family: "Poppins", sans-serif;
	opacity: 0.3;
	letter-spacing: 0.2em;
	color: #202020;
}

.area-fc-cource-item__points {
	font-size: 18px;
	max-width: 276px;
	margin: 0 auto 21px;
}

.area-fc-cource-item__point {
	line-height: 1.5;
	padding-left: 17px;
	letter-spacing: 0.08em;
	position: relative;
}

.area-fc-cource-item__point::before {
	content: "";
	position: absolute;
	top: 11px;
	left: 1px;
	width: 7px;
	height: 7px;
	background: #000;
	border-radius: 50%;
}

.area-fc-cource-item__point + .area-fc-cource-item__point {
	margin-top: 8px;
}

.area-fc-cource-item__more {
	max-width: 291px;
	margin: 0 auto;
	font-weight: 700;
	letter-spacing: 0.19em;
	padding-right: 32px;
	position: relative;
}

.area-fc-cource-item__more::after {
	content: "";
	position: absolute;
	top: 12px;
	right: 0;
	width: 29px;
	height: 9px;
	background: url("../img/area-fc/cource-arrow.png") center / contain no-repeat;
}

.area-fc-cource-item__more span {
	border-bottom: solid 1px #000;
	padding-bottom: 2px;
}

@media screen and (max-width: 767px) {
	.area-fc-cource-item::before {
		top: -41px;
		transform: translateX(-50%) translateX(1px);
		width: 84px;
		height: 78px;
	}

	.area-fc-cource-item__inner {
		padding: 40px 7px 20px;
	}

	.area-fc-cource-item__head {
		padding-bottom: 19px;
	}

	.area-fc-cource-item__head::after {
		height: 2px;
		width: 84px;
	}

	.area-fc-cource-item__ttl {
		font-size: 2rem;
		line-height: 1.4;
		margin-bottom: 8px;
	}

	.area-fc-cource-item__ttl-en {
		font-size: 1rem;
		letter-spacing: 0.15em;
	}

	.area-fc-cource-item__point {
		font-size: 1.2rem;
		padding-left: 8px;
	}

	.area-fc-cource-item__point::before {
		width: 2px;
		height: 2px;
		top: 6px;
	}

	.area-fc-cource-item__point + .area-fc-cource-item__point {
		margin-top: 5px;
	}

	.area-fc-cource-item__more {
		font-size: 1.5rem;
		letter-spacing: 0.03em;
		padding: 0 32px 0 6px;
	}

	.area-fc-cource-item__more::after {
		top: 18px;
		right: 5px;
		width: 24px;
		height: 8px;
	}
}

.area-fc-faq {
	margin-bottom: 120px;
}

.area-fc-faq .h-06 {
	padding: 23px 0;
	display: flex;
	justify-content: center;
	letter-spacing: 0.08em;
}

.area-fc-faq .h-06::before {
	content: "";
	flex: 0 0 32px;
	width: 32px;
	height: 28px;
	background: url("../img/area-fc/faq-icon.png") center / contain no-repeat;
	margin-top: 7px;
	margin-right: 6px;
	margin-left: 18px;
}

.area-fc-faq__body {
	max-width: 1060px;
	margin: 0 auto;
}

.area-fc-faq .faq-box dt {
	letter-spacing: 0.05em;
	margin-bottom: 13px;
	color: #262626;
}

.area-fc-faq .faq-box dd {
	letter-spacing: 0.09em;
	color: #202020;
}

.area-fc-faq .faq-box dt,
.area-fc-faq .faq-box dd {
	padding-left: 80px;
}

.area-fc-faq .faq-box dt span,
.area-fc-faq .faq-box dd span {
	left: 25px;
}

@media screen and (max-width: 767px) {
	.area-fc-faq {
		margin-bottom: 40px;
	}

	.area-fc-faq .h-06::before {
		flex: 0 0 24px;
		width: 23px;
		height: 21px;
		margin-top: 5px;
		margin-right: 8px;
		margin-left: 0;
	}

	.area-fc-faq .faq-box dt,
	.area-fc-faq .faq-box dd {
		padding-left: 35px;
		line-height: 1.5;
	}

	.area-fc-faq .faq-box dt span,
	.area-fc-faq .faq-box dd span {
		font-size: 2.8rem;
		top: -5px;
		left: 0;
	}
}

.area-fc-banner {
	margin-bottom: 34px;
}

.area-fc-banner__body {
	max-width: 1060px;
	margin: 0 auto;
}

.area-fc-banner__link {
	display: grid;
	grid-template-columns: 259px 1fr;
	grid-template-rows: auto auto;
	border: solid 3px #000;
	border-radius: 6px;
	min-height: 198px;
}

.area-fc-banner__pic {
	grid-row: 1 / 3;
	grid-column: 1 / 2;
	position: relative;
}

.area-fc-banner__pic img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	-o-object-fit: cover;
	display: block;
}

.area-fc-banner__ttl {
	align-self: end;
	font-size: 29px;
	font-weight: 700;
	line-height: 1.4;
	padding: 0 24px;
	margin-bottom: 25px;
	padding-top: 24px;
	letter-spacing: 0.125em;
	color: #121212;
}

.area-fc-banner__ttl span {
	padding-bottom: 4px;
	background: linear-gradient(0, #f7da18, 0, #f7da18 10px, transparent 10px);
}

.area-fc-banner__desc {
	align-self: start;
	line-height: calc(35 / 18);
	padding: 0 32px;
	font-weight: 700;
	letter-spacing: 0.08em;
	padding-bottom: 15px;
	color: #222222;
}

.area-fc-banner__desc::after {
	content: "";
	float: right;
	display: block;
	height: 21px;
	width: 97px;
	background: url(../img/area-fc/banner-arrow.png) left bottom / 29px 9px no-repeat;
}

@media screen and (max-width: 767px) {
	.area-fc-banner__ttl {
		padding-top: 0;
		align-self: center;
		margin-bottom: 0;
		font-size: 15px;
		line-height: calc(42 / 30);
		padding: 0 10px 0 15px;
		letter-spacing: 0.09em;
	}

	.area-fc-banner__ttl span {
		padding-bottom: 2px;
		background: linear-gradient(0, #f7da18, 0, #f7da18 5px, transparent 5px);
	}

	.area-fc-banner__link {
		grid-template-columns: 224fr 446fr;
		border-width: 1.5px;
		min-height: auto;
	}

	.area-fc-banner__pic {
		grid-row: 1 / 2;
		grid-column: 1 / 2;
		aspect-ratio: calc(112 / 63.5);
	}

	.area-fc-banner__desc {
		grid-row: 2 / 3;
		grid-column: 1 / 3;
		font-size: 12px;
		line-height: calc(36 / 24);
		padding: 10px 17px 13px;
	}

	.area-fc-banner__desc::after {
		content: none;
	}

	.area-fc-banner__more {
		text-align: right;
		display: block;
		margin-top: -3px;
		padding-right: 18px;
		letter-spacing: 0.04em;
		background: url(../img/area-fc/banner-arrow.png) right top 7px / 14.5px 4.5px no-repeat;
	}
}

/* 2024.06.25 add */
.delivery-service-box {
	display: flex;
	flex-flow: column;
	width: 100%;
	gap: 15px;
	padding: 10px;
}

.delivery-service-box > a {
	display: flex;
	width: 100%;
	justify-content: space-between;
	align-items: center;
	gap: 30px;
	max-width: 300px;
	position: relative;
}

.delivery-service-box > a > div {
	display: flex;
	align-items: center;
	width: 100%;
	gap: 20px;
}

.delivery-service-box > a > svg {
	width: 100%;
	flex-shrink: 0;
	max-width: 16px;
	position: absolute;
	right: 5px;
	top: 0;
	bottom: 0;
	margin: auto;
	transition: all ease 0.33s;
}

.delivery-service-box > a:hover > svg {
	right: 0px;
}

.delivery-service-box > a > div > figure {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 35px;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}

.delivery-service-box > a > div > figure > img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: all ease 0.33s;
}

.delivery-service-box > a > div > div {
	display: flex;
	gap: 10px;
	width: 100%;
	font-size: 1.6rem;
	font-weight: 500;
}

.delivery-service-box > a > div > div > span {
	width: 100%;
	line-height: 1.4;
	max-width: 90px;
}

@media screen and (max-width: 999px) {
	.delivery-service-box > a {
		gap: 20px;
	}

	.delivery-service-box > a > div {
		gap: 10px;
	}

	.delivery-service-box > a > div > div {
		font-size: 1.4rem;
	}
}

@media screen and (max-width: 750px) {
	.delivery-service-box {
		padding-left: 30px;
	}

	.delivery-service-box > a > div > div {
		font-size: 1.6rem;
	}
}

@media screen and (max-width: 480px) {
	.delivery-service-box {
		padding-left: 10px;
	}

	.delivery-service-box > a {
		margin: 0 auto;
	}

	.delivery-service-box > a > div > figure {
		max-width: 28px;
	}

	.delivery-service-box > a > div > div > span {
		max-width: 70px;
	}
}

/* 2024.10.04 add */
#recommended {
	width: 100%;
	margin-bottom: 110px;
	padding: 0 5%;
}

#recommended > h2 {
	max-width: 1200px;
	margin: 0 auto 55px;
	font-size: 3.8rem;
}

.recommended-grid {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 40px;
	position: relative;
}

.recommended-grid-item {
	width: 100%;
	border: 4px solid #000;
	padding: 80px 13.79231% 25px;
	position: relative;
}

.recommended-grid-item .rgi-heading {
	position: absolute;
	top: -19px;
	padding: 0 50px;
	left: 0;
	right: 0;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	text-align: center;
}

.recommended-grid-item .rgi-heading > h3 {
	display: flex;
	flex-flow: column;
	gap: 1.8rem;
	align-items: center;
	background: #fff;
	padding: 0 20px;
	line-height: 1;
}

.recommended-grid-item .rgi-heading > h3 > p {
	font-size: 4rem;
	line-height: 1;
	color: #262626;
	font-weight: bold;
	padding: 0 1rem;
	position: relative;
	z-index: 10;
}

.recommended-grid-item .rgi-heading > h3 > p::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 13px;
	left: 0;
	right: 0;
	margin: 0 auto;
	bottom: -3px;
	background: #f7da18;
	z-index: -1;
}

.recommended-grid-item .rgi-heading > h3 > span {
	font-size: 1.8rem;
	color: #b5b5b5;
	letter-spacing: 0.16em;
	font-weight: bold;
}

.recommended-grid-item .recommended-topping-list {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 25px;
	max-width: 420px;
	width: 100%;
	margin: 0 auto;
}

.recommended-topping-list.topping-cnt-4 {
	max-width: 270px;
	margin: 0 auto;
}

.topping-list-item {
	max-width: 120px;
	width: 100%;
	position: relative;
	display: flex;
	flex-flow: column;
	gap: 10px;
}

.topping-list-item > img {
	position: absolute;
	top: -4px;
	left: -7px;
	background: #fff;
	border-radius: 999px;
	width: 45px;
	height: auto;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}

.topping-list-item > figure {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: auto;
	aspect-ratio: 1 /1;
	max-width: 120px;
	overflow: hidden;
	border-radius: 9999px;
}

.topping-list-item > figure > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.topping-list-item > h4 {
	text-align: center;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 0.1em;
}

@media screen and (max-width: 1200px) {
	#recommended > h2 {
		font-size: 2.6rem;
	}

	.recommended-grid-item .rgi-heading > h3 > p {
		font-size: 3rem;
	}

	.recommended-grid-item .rgi-heading > h3 > span {
		font-size: 1.6rem;
	}
}

@media screen and (max-width: 999px) {
	#recommended {
		margin-bottom: 60px;
	}

	.recommended-grid {
		grid-template-columns: repeat(1, 1fr);
	}

	.recommended-grid-item {
		padding: 70px 13.79231% 25px;
	}
}

@media screen and (max-width: 500px) {
	.recommended-grid-item .recommended-topping-list {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}

	.topping-list-item > img {
		width: 35px;
	}
}

.fc #aburasoba .point .bg-01 > p {
	max-width: 940px;
}

.fc .sec-cta-contact {
	width: 100%;
	height: 480px;
	position: relative;
	background: url("../img/fc/contact-cta-bg.png") center / cover no-repeat;
	padding: 70px 3%;
}

.fc .sec-cta-contact > div {
	display: flex;
	width: 100%;
	flex-flow: column;
	align-items: center;
	gap: 5rem;
}

.fc .sec-cta-contact .cta-ttl-box {
	display: flex;
	flex-flow: column;
	align-items: center;
	gap: 3rem;
	width: 100%;
	color: #fff;
}

.fc .sec-cta-contact .cta-ttl-box > h2 {
	font-size: 5.2rem;
	font-weight: bold;
	line-height: 1;
}

.fc .sec-cta-contact .cta-ttl-box > h2 span {
	color: #f7da18;
}

.fc .sec-cta-contact .cta-ttl-box > h2 br {
	display: none;
}

.fc .sec-cta-contact .cta-ttl-box > p {
	font-size: 3.2rem;
	font-weight: bold;
	line-height: 1;
}

.cta-btn-box {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 5%;
	max-width: 1200px;
	margin: 0 auto;
}

.cta-btn-box > a {
	color: #fff;
	width: 100%;
	border: 3px solid #fff;
	height: auto;
	padding: 30px 25px;
	display: flex;
	flex-flow: column;
	align-items: center;
	gap: 26px;
	justify-content: center;
	line-height: 1;
	transition: all ease 0.33s;
}

.cta-btn-box > a:hover {
	backdrop-filter: blur(10px);
}

.cta-tel {
	font-size: 5.2rem;
	font-weight: bold;
	line-height: 1;
	position: relative;
	display: flex;
	align-items: center;
	gap: 16px;
}

.cta-tel::before {
	content: "";
	background: url(../img/fc/icon-tel.svg) no-repeat;
	width: 34px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.cta-btn-box > a > p {
	font-size: 2rem;
	line-height: 1;
	font-weight: bold;
}

.cta-mail {
	font-size: 3rem;
	font-weight: bold;
	line-height: 1;
	position: relative;
	display: flex;
	align-items: center;
	gap: 10px;
}

.cta-mail::before {
	content: "";
	background: url(../img/fc/icon-mail.svg) no-repeat;
	width: 31px;
	height: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.cta-mail-txt {
	display: flex;
	align-items: center;
	gap: 8px;
}

@media screen and (max-width: 1200px) {
	.cta-tel {
		font-size: 4.2rem;
	}

	.cta-mail {
		font-size: 2.5rem;
	}

	.cta-btn-box {
		gap: 3%;
	}
}

@media screen and (max-width: 999px) {
	.fc .sec-cta-contact {
		margin-top: 52px;
		background: url("../img/fc/contact-cta-bg-sp.png") center / cover no-repeat;
		padding: 50px 3%;
		height: auto;
	}

	.fc .sec-cta-contact .cta-ttl-box > h2 {
		font-size: 2.8rem;
		text-align: center;
		line-height: 1.69;
	}

	.fc .sec-cta-contact .cta-ttl-box > h2 br {
		display: inline;
	}

	.fc .sec-cta-contact .cta-ttl-box > p {
		font-size: 1.6rem;
	}

	.cta-btn-box {
		gap: 20px;
		grid-template-columns: repeat(1, 1fr);
		max-width: 380px;
	}

	.cta-btn-box > a {
		padding: 25px 20px;
		gap: 16px;
	}

	.fc .sec-cta-contact .cta-ttl-box {
		gap: 1.7rem;
	}

	.cta-tel {
		font-size: 2.8rem;
		gap: 6.4px;
	}

	.cta-tel::before {
		background-size: contain;
		width: 20px;
		height: 27px;
	}

	.cta-btn-box > a > p {
		font-size: 1.4rem;
	}

	.cta-mail {
		font-size: 1.9rem;
	}

	.cta-mail::before {
		width: 29px;
		height: 22px;
		background-size: contain;
	}

	p.cta-mail-txt > svg {
		width: 16px;
	}
}

@media only screen and (max-width: 767px) {
	.fc .secnav li {
		width: 47%;
	}
}

/* 2025.07.11 add */
#google_review {
	width: 100%;
	padding-top: 60px;
	position: relative;
}

.google-review-area {
	width: 100%;
	display: flex;
	flex-flow: column;
	align-items: center;
	gap: 30px;
}

.google-review-area > h4 {
	width: 100%;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	padding-bottom: 10px;
	font-weight: bold;
}

.google-review-area > h4::after {
	content: "";
	width: 50px;
	height: 3px;
	background: #010101;
	position: absolute;
	bottom: 0;
}

.google-review-wrapper {
	width: 100%;
	padding: 0 20px;
}

/* fc blog */
.fc #fc_blog .h3-box-01 h2 {
	position: relative;
	font-size: 30px;
	width: fit-content;
	margin: auto;
}

.fc-blog-cont {
	width: 100%;
	display: flex;
	flex-flow: column;
	align-items: center;
	gap: 60px;
	margin-bottom: 80px;
	position: relative;
	overflow: hidden;
}

.fc-blog-slider-area {
	display: none;
}

.fc-blog-grid {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}

.card-fc-blog {
	width: 100%;
	display: flex;
	flex-flow: column;
	align-items: center;
	gap: 20px;
	position: relative;
	overflow: hidden;
}

.card-fc-blog > figure {
	width: 100%;
	height: auto;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	aspect-ratio: 373 / 249;
	background: #000;
}

.card-fc-blog > figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all ease-in-out 0.33s;
}

.card-fc-blog:hover > figure img {
	opacity: 0.75;
	transform: scale(1.1);
}

.card-fc-blog > div {
	width: 100%;
	display: flex;
	flex-flow: column;
	align-items: center;
	gap: 15px;
	padding: 0 10px 10px;
}

.card-fc-blog > div > h3 {
	font-size: 2.2rem;
	line-height: 1.5;
	font-weight: bold;
}

@media screen and (max-width: 999px) {
	.fc-blog-grid {
		display: none;
	}

	.fc-blog-slider-area {
		width: 100%;
		display: flex;
		flex-flow: column;
		align-items: center;
		gap: 15px;
		position: relative;
		padding: 0 20px;
	}

	.fc-blog-slider {
		width: 100%;
	}

	.fc-blog-slider-area .btn-slide-prev,
	.fc-blog-slider-area .btn-slide-next {
		position: absolute;
		background: #010101;
		top: 50%;
		z-index: 10;
		border-radius: 999px;
		width: 40px;
		height: auto;
		aspect-ratio: 1 / 1;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.fc-blog-slider-area .btn-slide-prev > svg,
	.fc-blog-slider-area .btn-slide-next > svg {
		fill: #fff;
	}

	.fc-blog-slider-area .btn-slide-prev {
		left: 0;
	}

	.fc-blog-slider-area .btn-slide-next {
		right: 0;
	}

	.card-fc-blog > div > p {
		font-size: 1.6rem;
	}
}

@media only screen and (max-width: 767px) {
	.fc #fc_blog .h3-box-01 h2 {
		position: relative;
		font-size: 2.8rem;
		width: fit-content;
		margin: auto;
	}

	.fc-blog-cont {
		gap: 40px;
		margin-bottom: 40px;
	}
}

#search.sec-fc-area {
	padding-top: 40px;
}

#search.sec-fc-area .fc-area-wrapper > .fL {
	float: right !important;
}

#search.sec-fc-area .fc-area-wrapper > .fR {
	margin-top: 0;
	float: left !important;
}

@media screen and (max-width: 1080px) {
	#search.sec-fc-area .fc-area-wrapper > .fL {
		float: none !important;
	}

	#search.sec-fc-area .fc-area-wrapper > .fR {
		margin-top: 0;
		float: none !important;
	}
}

#search.sec-fc-area .fR dl dd ul li a.is-disabled {
	cursor: default;
	opacity: 0.6;
}

#search.sec-fc-area .fR dl dd ul li a.is-disabled:hover {
	background: none;
	color: #000;
}

.owner-voices {
	background: #fff;
	padding-bottom: clamp(45px, 4.375vw, 70px);
}

.owner-voices-heading {
	background: #000;
	color: #fff;
	padding: 35px 20px 30px;
	text-align: center;
}

.owner-voices-heading h2 {
	font-size: clamp(24px, 4vw, 64px);
	font-weight: bold;
	line-height: 1.35;
	letter-spacing: 0;
}

.owner-voices-heading h2 span {
	font-size: clamp(12px, 1.125vw, 18px);
	font-weight: 600;
	font-family: "Poppins", sans-serif;
	display: block;
	margin: 0 auto;
	letter-spacing: clamp(10px, 1.125vw, 18px);
	text-indent: clamp(6px, 0.563vw, 9px);
	margin-top: 8px;
}

.owner-voices-inner {
	max-width: 1200px;
	padding-block: clamp(40px, 3.75vw, 60px) 0;
}
@media screen and (max-width: 1300px) {
	.owner-voices-inner {
		padding-inline: 5%;
	}
}

.owner-voices-lead {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: clamp(25px, 2.75vw, 44px);
	text-align: center;
}

.owner-voices-lead::before,
.owner-voices-lead::after {
	content: "";
	width: 100%;
	height: clamp(1px, 0.125vw, 2px);
	background: #000;
}

.owner-voices-lead h3 {
	flex: 0 0 auto;
	padding: 0 18px;
	font-size: clamp(18px, 2.5vw, 40px);
	line-height: 1.5;
	font-weight: bold;
}

.owner-voice-cards {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(20px, 2.5vw, 40px);
}

.owner-voice-card {
	border: clamp(1px, 0.125vw, 2px) solid #000;
	padding: clamp(20px, 2.5vw, 40px);
}

.owner-voice-card header {
	display: flex;
	align-items: center;
	gap: clamp(18px, 2vw, 32px);
	margin-bottom: 20px;
}

.owner-voice-card header figure {
	width: clamp(100px, 9.375vw, 150px);
	flex: 0 0 clamp(100px, 9.375vw, 150px);
	aspect-ratio: 1 / 1;
	border: 1px solid #e1e0e0;
	overflow: hidden;
	padding-top: 10px;
}

.owner-voice-card header figure img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

.owner-voice-card h4 {
	font-size: clamp(14px, 1.125vw, 18px);
	font-weight: 500;
}

.owner-voice-card header h4 {
	display: inline-block;
	border-radius: 999px;
	background: #000;
	color: #fff;
	min-height: clamp(25px, 1.875vw, 30px);
	padding-inline: clamp(15px, 1.875vw, 30px);
	display: flex;
	justify-content: center;
	align-items: center;
	width: max-content;
	line-height: 1;
}

.owner-voice-card header p {
	margin-top: clamp(6px, 0.75vw, 12px);
	font-size: clamp(12px, 1vw, 16px);
}

.owner-voice-comment {
	min-height: 90px;
	font-size: clamp(14px, 1vw, 16px);
	line-height: 1.9;
	margin-bottom: clamp(16px, 1.5vw, 24px);
	padding-bottom: clamp(16px, 1.5vw, 24px);
	border-bottom: 1px solid #ccc;
}

.owner-voice-numbers {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: clamp(16px, 1.5vw, 24px);
}

.owner-voice-numbers div {
	padding: clamp(13px, 1.25vw, 20px) 6px clamp(13px, 1vw, 16px);
	text-align: center;
	background: #f7f7f7;
	display: flex;
	flex-flow: column;
	align-items: center;
	gap: clamp(10px, 1.25vw, 20px);
}

.owner-voice-numbers dt {
	font-size: clamp(16px, 1.25vw, 20px);
	font-weight: bold;
	line-height: 1;
}

.owner-voice-numbers dd {
	font-size: clamp(13px, 1.25vw, 20px);
	font-weight: bold;
	color: #ff0000;
	text-decoration: underline;
	text-decoration-color: #f7da18;
	text-decoration-thickness: 5px;
}

.owner-voice-numbers dd strong {
	font-size: clamp(28px, 2.5vw, 40px);
	font-weight: bold;
	font-family: "Poppins", sans-serif;
	line-height: 1;
}

.owner-voice-challenges {
	margin-top: clamp(24px, 2.313vw, 37px);
	background: #f7f7f7;
	padding: clamp(20px, 2.063vw, 33px) clamp(20px, 3.125vw, 50px) clamp(20px, 3.125vw, 50px);
}

.owner-voice-challenges > h3 {
	border-bottom: clamp(1px, 0.125vw, 2px) solid #000;
	padding-bottom: clamp(14px, 1.25vw, 20px);
	text-align: center;
	font-size: clamp(18px, 1.75vw, 28px);
	font-weight: bold;
	line-height: 1.4;
}

.owner-voice-challenges > h3 strong {
	color: #ff0000;
	font-size: clamp(22px, 2.375vw, 38px);
}

.owner-voice-challenge-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px 42px;
	padding-top: 25px;
}

.owner-voice-challenge-grid h4 {
	position: relative;
	padding-left: clamp(22px, 2.625vw, 42px);
	font-size: clamp(16px, 1.5vw, 24px);
	font-weight: bold;
	line-height: 1;
}

.owner-voice-challenge-grid h4::before {
	content: "";
	position: absolute;
	left: 0;
	width: auto;
	height: 1lh;
	aspect-ratio: 29 / 26;
	background: url(../img/fc/icon-check-box.webp) no-repeat center / contain;
}

.owner-voice-challenge-grid p {
	margin-top: 10px;
	padding-left: clamp(22px, 2.625vw, 42px);
	font-size: clamp(14px, 1vw, 16px);
	line-height: 1.8;
}

@media screen and (max-width: 850px) {
	.owner-voice-cards,
	.owner-voice-challenge-grid {
		grid-template-columns: 1fr;
	}
}
@media screen and (max-width: 767px) {
	.owner-voice-card {
		padding: 20px;
	}

	.owner-voice-comment {
		min-height: 0;
	}
}

.fc #comparison .h3-box-01 {
	background: url(../img/fc/bg-comparison.webp) no-repeat center center;
	background-size: cover !important;
}

.fc #comparison .h3-box-01 h2 {
	color: #fff;
	font-weight: bold;
	font-size: 7.4rem;
	line-height: 1.5;
	text-align: center;
	letter-spacing: 1.6px;
	text-indent: 0.8px;
	padding: 0 5%;
}

.fc #comparison .h3-box-01 h2 span {
	font-size: 1.8rem;
	font-weight: 600;
	font-family: "Poppins", sans-serif;
	display: block;
	margin: 0 auto;
	letter-spacing: 18px;
	text-indent: 9px;
}

#comparison > .inner-box {
	max-width: 1000px;
}

.comparison-table-wrapper {
	width: 100%;
	padding-top: 40px;
	padding-bottom: 80px;
	overflow-x: scroll;
}

.comparison-table {
	width: 100%;
	border-collapse: separate;
}

.comparison-table thead th {
	height: 132px;
	position: relative;
}

.comparison-table thead th.th-r {
	border-right: 4px solid #f7da18;
	border-left: 4px solid #f7da18;
	background: #f7da18;
}

.comparison-table thead th.th-blank {
	border: none;
	background-color: #fff;
}

.comparison-table thead th > div {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 70px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1.5px solid #fff;
	padding: 25px;
	background: #e1e0e0;
}

.comparison-table thead th.th-r > div {
	border: none;
	flex-flow: column;
	height: 100%;
	gap: 10px;
	background: #f7da18;
}

.comparison-table thead th.th-r > div > figure {
	width: 50px;
	height: auto;
	aspect-ratio: 50 / 63;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	flex-shrink: 0;
}

.comparison-table thead th.th-r > div > figure img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.comparison-table thead th > div > p {
	width: 100%;
	text-align: center;
	font-size: 24px;
	line-height: 1;
	color: #373737;
	font-weight: bold;
}

.comparison-table tbody th {
	background: #fff;
	padding: 30px 40px;
	width: 23.2%;
	height: 90px;
	min-width: 232px;
	font-weight: bold;
	text-align: right;
	font-size: 18px;
	white-space: nowrap;
	vertical-align: middle;
	overflow: hidden;
	line-height: 1;
}

.comparison-table tbody tr:nth-of-type(odd) th {
	background: #f7f7f7;
}

.comparison-table tbody td {
	position: relative;
	background: #fff;
	width: 25.3%;
	height: 90px;
	padding: 20px 16px;
	vertical-align: middle;
}

.comparison-table tbody tr:nth-of-type(odd) td {
	background: #f7f7f7;
}

.comparison-table tbody td.td-r {
	width: 25.6%;
	min-width: 256px;
	border-right: 4px #f7da18 solid;
	border-left: 4px #f7da18 solid;
}

.comparison-table tbody tr:last-of-type td.td-r {
	border-bottom: 4px #f7da18 solid;
}

.comparison-table tbody td > p {
	font-size: 16px;
	line-height: 1.6;
	color: #373737;
	text-align: center;
	white-space: nowrap;
}

.comparison-table tbody td > p > span {
	font-weight: bold;
}

.comparison-table tbody td > p span {
	color: #00afff;
}

.comparison-table tbody td.td-r > p span {
	color: #d72f2f;
}

.comparison-table tbody td > p small {
	font-size: 12px;
}

@media screen and (max-width: 1080px) {
	.comparison-table tbody th {
		padding: 12px 15px;
		font-size: 16px;
	}

	.comparison-table tbody td > div {
		padding: 12px 7px;
	}

	.comparison-table thead th > div > p {
		font-size: 20px;
	}

	.comparison-table tbody td > p {
		font-size: 14px;
	}
}

.scroll-hint {
	display: none;
}

@media screen and (max-width: 770px) {
	.fc #comparison .h3-box-01 h2 {
		font-size: 2.8rem;
	}

	.fc #comparison .h3-box-01 h2 span {
		font-size: 1.8rem;
		font-weight: 600;
		font-family: "Poppins", sans-serif;
		display: block;
		margin: 0 auto;
		letter-spacing: 18px;
		text-indent: 9px;
	}

	.fc #comparison .h3-box-01 h2 span {
		font-size: 1.2rem;
		letter-spacing: 10px;
		text-indent: 6px;
	}

	.scroll-hint {
		display: flex;
		position: absolute;
		top: 240px;
		right: 10px;
		color: #fff;
		pointer-events: none;
		z-index: 10;
		display: flex;
		align-items: center;
		gap: 0.4em;
		animation: scroll-hint-fade 1.5s infinite alternate;
	}

	@keyframes scroll-hint-fade {
		from {
			opacity: 0.2;
		}

		to {
			opacity: 1;
		}
	}

	.comparison-table-wrapper {
		padding-bottom: 15px;
	}

	.comparison-table {
		width: 770px;
	}

	.area-fc .comparison {
		margin-bottom: 50px;
	}

	.comparison-table thead th {
		height: 92px;
	}

	.comparison-table thead th > div {
		height: 50px;
		padding: 7px;
	}

	.comparison-table thead th.th-r > div {
		gap: 8px;
	}

	.comparison-table thead th.th-r > div > figure {
		width: 36px;
	}

	.comparison-table tbody th {
		padding: 20px 17px;
		width: 120px;
		font-size: 15px;
		min-width: 0;
		height: 70px;
	}

	.comparison-table tbody td {
		width: 213px;
		height: 70px;
	}

	.comparison-table tbody td.td-r {
		width: 216px;
		min-width: 0px;
	}

	.comparison-table tbody td > p small {
		font-size: 11px;
	}

	.comparison-table thead tr th:nth-child(1),
	.comparison-table tbody tr th:nth-child(1),
	.comparison-table thead tr td:nth-child(1),
	.comparison-table tbody tr td:nth-child(1) {
		position: sticky;
		position: -webkit-sticky;
		z-index: 1;
	}

	.comparison-table thead tr th:nth-child(1),
	.comparison-table tbody tr th:nth-child(1),
	.comparison-table thead tr td:nth-child(1),
	.comparison-table tbody tr td:nth-child(1) {
		left: 0;
	}
}

/* 2026.01.29 */
.sec-advantage-achv {
	width: 100%;
	position: relative;
	margin-bottom: 140px;
}

.advantage-achv-area {
	width: 100%;
	display: flex;
	justify-content: space-between;
	gap: 5%;
	align-items: flex-start;
}

.advantage-achv-area-row-reverse {
	flex-direction: row-reverse;
}

.advantage-achv-area > figure {
	width: 40%;
	max-width: 472px;
	height: auto;
	aspect-ratio: 383 / 250;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	flex-shrink: 0;
}

.advantage-achv-area > figure img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.advantage-achv-body {
	width: 100%;
	display: flex;
	flex-flow: column;
	align-items: flex-start;
	gap: 25px;
}

.advantage-achv-body > h4 {
	font-size: 3.8rem;
	font-weight: bold;
	line-height: 1.6;
	width: 100%;
}

.advantage-achv-body > p {
	width: 100%;
}

.for-considering-sec h2 {
	font-size: 4.7rem;
	font-weight: bold;
	line-height: 1.6;
	width: 100%;
	text-align: center;
	margin-bottom: 40px;
}
.for-considering-sec h3 {
	font-size: 4rem;
	font-weight: bold;
	line-height: 1.6;
	width: 100%;
	text-align: center;
	margin: 60px 0 50px;
}

.for-considering_chance-contenst .advantage-achv-area:not(:last-child) {
	margin-bottom: 50px;
}

.over-contents {
	margin-left: calc((100vw - 1180px) / -2);
	padding-left: calc((100vw - 1180px) / 2);
	max-width: 100vw;
}
@media screen and (max-width: 1180px) {
	.over-contents {
		margin-left: auto;
		margin-right: 20px;
		padding-left: calc((100vw - 1180px) / 2);
		max-width: 100vw;
	}
}

.over-contents .advantage-achv-area > figure {
	max-width: 38%;
	width: 50%;
}

@media screen and (max-width: 999px) {
	.advantage-achv-body > h4 {
		font-size: 2.8rem;
	}
}

@media only screen and (max-width: 767px) {
	.sec-advantage-achv {
		margin-bottom: 40px;
	}

	.advantage-achv-area {
		flex-flow: column;
		align-items: center;
		gap: 20px;
		justify-content: flex-start;
	}

	.advantage-achv-area > figure {
		width: 100%;
		max-width: none;
	}

	.advantage-achv-body > h4 {
		font-size: 3.8rem;
	}

	.fc .advantage-achv-area .bg-child {
		z-index: -1;
		width: 84%;
		height: 29%;
		bottom: 10%;
		top: auto;
		left: 18%;
	}
	.for-considering-sec h2 {
		font-size: 3.7rem;
		margin-bottom: 30px;
	}
	.for-considering-sec h3 {
		font-size: 3.5rem;
		margin: 35px 0 25px;
	}
	.over-contents {
		max-width: 95%;
		padding: inherit;
		margin: 0 auto;
	}
	.over-contents .advantage-achv-area > figure {
		max-width: 100%;
		width: 100%;
	}
}

@media only screen and (max-width: 640px) {
	.advantage-achv-body > h4 {
		font-size: 3rem;
	}

	.advantage-achv-body {
		gap: 15px;
	}
}
