@CHARSET "UTF-8";



.string-content>h1 {
	text-align: center;
}

.body-area {
	color: #3d3d3d;
}

.btn-group-lg>.btn {
	padding: 10px 16px;
	font-size: 18px;
	line-height: 1.3333333;
	border-radius: 6px;
}

.mean-bar {
	display: none;
}

.btn-sm, .btn-group-sm>.btn {
	padding: 5px 10px;
	font-size: 12px;
	line-height: 1.5;
	border-radius: 3px;
}

.btn-xs, .btn-group-xs>.btn {
	padding: 1px 5px;
	font-size: 12px;
	line-height: 1.5;
	border-radius: 3px;
}

.btn-group, .btn-group-vertical {
	position: relative;
	display: inline-block;
	vertical-align: bottom;
}

.btn-group>.btn, .btn-group-vertical>.btn {
	position: relative;
	float: left;
}

.btn-group>.btn:hover, .btn-group-vertical>.btn:hover, .btn-group>.btn:focus,
	.btn-group-vertical>.btn:focus, .btn-group>.btn:active,
	.btn-group-vertical>.btn:active, .btn-group>.btn.active,
	.btn-group-vertical>.btn.active {
	z-index: 2;
}

.btn-group .btn+.btn, .btn-group .btn+.btn-group, .btn-group .btn-group+.btn,
	.btn-group .btn-group+.btn-group {
	margin-left: -1px;
}

.btn-toolbar {
	margin-left: -5px;
}

.btn-toolbar .btn-group, .btn-toolbar .input-group {
	float: left;
}

.btn-toolbar>.btn, .btn-toolbar>.btn-group, .btn-toolbar>.input-group {
	margin-left: 5px;
}

.btn-group
>
.btn
:not

(
:first-child

)
:not

(
:last-child

)
:not

(
.dropdown-toggle


)
{
border-radius
:

0;
}
.btn-group>.btn:first-child {

}

.btn-group
>
.btn
:first-child
:not

(
:last-child

)
:not

(
.dropdown-toggle

)
{
border-top-right-radius
:

0;
border-bottom-right-radius
:

0;
}
.btn-group
>
.btn
:last-child
:not

(
:first-child

),
.btn-group
>
.dropdown-toggle
:not


(
:first-child

)
{
border-top-left-radius
:

0;
border-bottom-left-radius
:

0;
}
.btn-group>.btn-group {
	float: left;
}

.btn-group>.btn-group:not (:first-child ):not (:last-child ) >.btn {
	border-radius: 0;
}

.btn-group>.btn-group:first-child:not (:last-child ) >.btn:last-child,
	.btn-group>.btn-group:first-child:not
	 (:last-child ) >.dropdown-toggle {
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}

.btn-group>.btn-group:last-child:not (:first-child ) >.btn:first-child {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}

.btn-group .dropdown-toggle:active, .btn-group.open .dropdown-toggle {
	outline: 0;
}

.btn-group>.btn+.dropdown-toggle {
	padding-right: 8px;
	padding-left: 8px;
}

.btn-group>.btn-lg+.dropdown-toggle {
	padding-right: 12px;
	padding-left: 12px;
}

.btn-group.open .dropdown-toggle {

}

.btn-group.open .dropdown-toggle.btn-link {
	-webkit-box-shadow: none;
	box-shadow: none;
}

.btn .caret {
	margin-left: 0;
}

.btn>.caret, .dropup>.btn>.caret {
	border-top-color: white !important;
}

.btn>.caret2, .dropup>.btn>.caret2 {
	border-top-color: #3d3d3d !important;
	transition: border .25s linear, color .25s linear, background-color .25s
		linear;
}

.btn:hover .caret2 {
	opacity: 0.8;
	border-top-color: #gray !important;
}

.caret {
	display: inline-block;
	width: 0;
	height: 0;
	margin-left: 2px;
	vertical-align: middle;
	border-top: 4px solid;
	border-right: 4px solid transparent;
	border-left: 4px solid transparent;
	margin-right: 4px;
	margin-bottom: 3px;
}

.dropup .caret, .navbar-fixed-bottom .dropdown .caret {
	content: "";
	border-top: 0;
	border-bottom: 4px solid;
}

.btn-lg .caret {
	border-width: 5px 5px 0;
	border-bottom-width: 0;
}

.dropup .btn-lg .caret {
	border-width: 0 5px 5px;
}

.btn-group-vertical>.btn, .btn-group-vertical>.btn-group,
	.btn-group-vertical>.btn-group>.btn {
	display: block;
	float: none;
	width: 100%;
	max-width: 100%;
}

.btn-group-vertical>.btn-group>.btn {
	float: none;
}

.btn-group-vertical>.btn+.btn, .btn-group-vertical>.btn+.btn-group,
	.btn-group-vertical>.btn-group+.btn, .btn-group-vertical>.btn-group+.btn-group
	{
	margin-top: -1px;
	margin-left: 0;
}

.btn-group-vertical
>
.btn
:not

(
:first-child

)
:not

(
:last-child

)
{
border-radius
:

0;
}
.btn-group-vertical
>
.btn
:first-child
:not

(
:last-child

)
{
border-top-right-radius
:

4
px
;


border-bottom-right-radius
:

0;
border-bottom-left-radius
:

0;
}
.btn-group-vertical
>
.btn
:last-child
:not

(
:first-child

)
{
border-top-left-radius
:

0;
border-top-right-radius
:

0;
border-bottom-left-radius
:

4
px
;


}
.btn-group-vertical>.btn-group:not (:first-child ):not (:last-child ) >.btn
	{
	border-radius: 0;
}

.btn-group-vertical>.btn-group:first-child:not (:last-child ) >.btn:last-child,
	.btn-group-vertical>.btn-group:first-child:not
	 (:last-child ) >.dropdown-toggle {
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}

.btn-group-vertical>.btn-group:last-child:not (:first-child ) >.btn:first-child
	{
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}

.btn-group-justified {
	display: table;
	width: 100%;
	table-layout: fixed;
	border-collapse: separate;
}

.btn-group-justified>.btn, .btn-group-justified>.btn-group {
	display: table-cell;
	float: none;
	width: 1%;
}

.btn-group-justified>.btn-group .btn {
	width: 100%;
}

.btn-group-justified>.btn-group .dropdown-menu {
	left: auto;
}

[data-toggle="buttons"]>.btn input[type="radio"], [data-toggle="buttons"]>.btn-group>.btn input[type="radio"],
	[data-toggle="buttons"]>.btn input[type="checkbox"], [data-toggle="buttons"]>.btn-group>.btn input[type="checkbox"]
	{
	position: absolute;
	clip: rect(0, 0, 0, 0);
	pointer-events: none;
}

.dropdown-menu {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 1000;
	display: none;
	float: left;
	min-width: 160px;
	padding: 5px 0;
	margin: 2px 0 0;
	font-size: 14px;
	text-align: left;
	list-style: none;
	background-color: gray;
	-webkit-background-clip: padding-box;
	background-clip: padding-box;
}

.dropdown-menu.pull-right {
	right: 0;
	left: auto;
}

.dropdown-menu .divider {
	height: 1px;
	margin: 9px 0;
	overflow: hidden;
	background-color: #e5e5e5;
}

.dropdown-menu>li>a {
	font-size: 16px;
	cursor: pointer;
	display: block;
	padding: 3px 20px;
	clear: both;
	font-weight: normal;
	line-height: 1.42857143;
	color: white;
	white-space: nowrap;
}

.dropdown-menu>li>a:hover, .dropdown-menu>li>a:focus {
	color: #262626;
	text-decoration: none;
	background-color: #f5f5f5;
}

.dropdown-menu>.active>a, .dropdown-menu>.active>a:hover, .dropdown-menu>.active>a:focus
	{
	color: #fff;
	text-decoration: none;
	background-color: #337ab7;
	outline: 0;
}

.dropdown-menu>.disabled>a, .dropdown-menu>.disabled>a:hover,
	.dropdown-menu>.disabled>a:focus {
	color: #777;
}

.dropdown-menu>.disabled>a:hover, .dropdown-menu>.disabled>a:focus {
	text-decoration: none;
	cursor: not-allowed;
	background-color: transparent;
	background-image: none;
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=  false);
}

.open>.dropdown-menu {
	display: block;
}

.open>a {
	outline: 0;
}

.dropdown-menu-right {
	right: 0;
	left: auto;
}

.dropdown-menu-left {
	right: auto;
	left: 0;
}

.dropdown-header {
	display: block;
	padding: 3px 20px;
	font-size: 12px;
	line-height: 1.42857143;
	color: #777;
	white-space: nowrap;
}

.dropdown-backdrop {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 990;
}

.pull-right>.dropdown-menu {
	right: 0;
	left: auto;
}

.dropup .caret, .navbar-fixed-bottom .dropdown .caret {
	content: "";
	border-top: 0;
	border-bottom: 4px solid;
}

.dropup .dropdown-menu, .navbar-fixed-bottom .dropdown .dropdown-menu {
	top: auto;
	bottom: 100%;
	margin-bottom: 2px;
}

html {
	height: 100%;
}

em {
	font-style: inherit;
}

body, input, select, textarea {
	font-family: "Noto Sans JP","Montserrat", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3",
		"Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 16px;
	margin: 0px;
}

textarea {
	height: 100%;
	display: inline-block;
	vertical-align: middle;
}

body {
	background: white;
}

a {
	text-decoration: none;
	color: cornflowerblue;
}

.center-content, .main-content {
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

.btn {
	margin-left: 7px;
	display: inline-block;
	width: 88px;
	text-align: center;
	font-size: 15px;
	border-radius: 3px;
	padding: 10px 5px;
	-webkit-font-smoothing: subpixel-antialiased;
	color: #3d3d3d;
	text-align: center;
	transition: border .25s linear, color .25s linear, background-color .25s
		linear;
	behavior: url("/PIE.htc");
}

.small-btn {
	font-size: 12px;
	height: 19px;
	padding-top: 11px;
	position: relative;
}

.small-btn:first-child {
	margin-left: 6px !important;
}

.top-btn {
	border: solid 1px;
	font-size: 15px;
	height: 20px;
	padding-top: 6px;
	padding-bottom: 8px;
	margin-top: 5px;
	border-radius: 0px;
}

.top-btn:hover {
	background: tomato;
	color: white;
}

.small-btn:hover {
	color: black;
}

.header-lay {
	display: table;
	height: 114px;
}

.header-v, .header-msg {
	width: 260px;
	float: left;
}

.header-msg {
	display: none;
}

.menu-g1, .menu-g2 {
	width: 550px;
	float: right;
	display: inline-block;
}

.header-msg {
	margin-bottom: 10px;
}

.menu-g1 {
	height: 68px;
}

.menu-btn {
	border-radius: 0px;
	color: #3d3d3d;
	font-size: 14px;
    padding: 15px 9.5px;
    width: auto;
	margin-left: 0px;
	font-weight: 500;

}

.menu-btn:hover {
	color: silver;
}

.top-btn1 {

}

.top-btn1:hover {

}

.top-btn2 {

}

.top-btn2:hover {

}

.top-message {
	text-align: center;
	font-size: 60px;
	text-align: center;
	font-weight: 900;
	color: white;
	position: absolute;
	z-index: 1;
	width: 100%;
	min-width: 940px;
}

.top-message .top-message-a{
height: 700px;
    line-height: 166.6px;
    text-shadow: 1px 1px 18px black;
    position: absolute;
    width: 100%;
    padding-top: 150px;
    font-weight: 100;
    min-width: 1100px;
    background: url(../../../image/dot.png) repeat !important;
    box-sizing: border-box;
}

.top-message video {
    width: 100%;
    height: 700px;
    object-fit: cover;
}


.logo {
	margin: 20px 0;
}

.top-message-img {
	width: 100%;
	height: 700px;
	object-fit: cover;
    filter: grayscale(100%);
	visibility: hidden;
}

.footer-lay {
	width: 100%;
	height: 100%;
	min-height: 100%;
	margin-top: 30px;
	background-color: #3d3d3d;
	display: inline-block;
	margin-top: 30px
}

body>.footer-lay {
	height: auto;
}

.footer-lay .left-lay {
	margin-top: 20px;
	width: 100%;
	display: inline-block;
}

.footer-lay .copy {
	padding-top: 18px;
	padding-left: 15px;
	color: white;
	display: inline-block;
	width: 100%;
	font-size: 14px;
}

.footer-lay .right-lay {
	margin-top: 65px;
	margin-bottom: 10px;
	width: 500px;
	display: inline-block;
	float: right;
}

.footer-lay iframe {
	border-radius: 6px;
}

.footer-lay .left-lay a {
	display: inline-block;
	padding-top: 10px;
	padding-left: 16px;
	font-size: 13px;
}

.footer-lay .left-lay a:hover {
	color: antiquewhite
}

.product .price {
	padding-right: 50px;
}

.product .left {
	padding-left: 50px !important;
}

table {
	border-spacing: 0px;
	margin-left: auto;
	margin-right: auto;
}

table th {
	padding-top: 4px;
	padding-bottom: 15px;
	text-align: left;
	font-size: 15px;
}

table td {
	padding: 8px;
	padding-top: 12px;
	padding-bottom: 12px;
}

.product-table td {
	padding-top: 0px;
	padding-bottom: 0px;
}

.cate-name {
	font-size: 26px;
	margin-top: 20px;
	margin-bottom: 20px;
	margin-left: 168px;
}

.cate table th {
	text-align: center;
}

.cate table td:last-child {
	text-align: right;
	width: 150px;
}

.cate table td:first-child {
	width: 400px;
}

.cate table th:after {
	border: 0px;
}

.input-lay, .msg-panel {
	background-color: #3d3d3d;
	white-space: normal;
	text-align: center;
	width: 630px;
	padding: 20px;
	color: white;
	margin: 50px;
	margin-left: auto;
	margin-right: auto;
	line-height: 30px;
	border-radius: 6px;
}

.input-lay input {
	border-radius: 3px;
	vertical-align: middle;
	margin-top: 15px;
	margin-bottom: 15px;
	width: 250px;
	padding: 5px;
	border: none;
}

.input-lay .btn {
	width: 145px;
	height: 42px;
	font-size: 13px;
	margin-left: 0px;
	background-color: white;
	color: gray;
	font-weight: 900;
}

.input-lay .btn:hover {
	cursor: pointer;
	color: white;
}

.input-lay .btn:focus {
	outline: none;
}


ul.feedbackPanel {
	padding-left: 0px;
}

.info-panel {
	width: 180px;
	color: white;
	margin-top: 10px;
	margin-bottom: 50px;
	display: inline-block;
}

.cus-info-panel {
	padding: 20px;
	background: white;
	color: black;
	border: 1px solid #3d3d3d;
}

.deli-day-panel {
	padding: 20px;
	background: #3d3d3d;
}

.cus-info-panel .plant, .cus-info-panel .post-code, .cus-info-panel .address
	{
	font-size: 12px;
}

.deli-day-panel .deli-day {
	font-size: 45px;
	display: inline;
}

.cus-menu {
	margin-top: 30px;
}

.cus-menu-btn {
	line-height: 40px;
	color: black;
	width: 100%;
	display: inline-block;
	text-align: center;
	border-bottom: 1px solid white;
	transition: border .25s linear, color .25s linear, background-color .25s
		linear;
}

.cus-menu-btn:last-child {
	border-bottom: none;
}

.btn:active, .cus-menu-btn:active, .msg-btn:active,
	.order-detail-btn-label:active, .order-cancel-btn:active {
	opacity: 0.8;
}

.cus-menu-btn:hover {
	color: white;
	background: #3498db;
}

.cus-content {
	width: 690px;
	display: inline-block;
	float: right;
	margin-top: 10px;
	margin-left: 50px;
	margin-bottom: 50px;
}

.msg-header {
	background: #3d3d3d;
	width: 100%;
	height: 70px;
	color: white;
	display: inline-block;
}

.msg-date, .msg-title, .msg-btn, .msg-header-left {
	display: inline-block;
}

.msg-date, .msg-title, .msg-header-left {
	width: 500px;
}

.msg-btn {
	float: right;
	background: rgb(15, 101, 255);
	cursor: pointer;
	-webkit-border-radius: 30px;
	-moz-border-radius: 25px;
	width: 50px;
	height: 50px;
	text-align: center;
	margin-top: 10px;
	margin-right: 20px;
	transition: border .25s linear, color .25s linear, background-color .25s
		linear;
}

.msg-btn:hover {
	background: cornflowerblue;
}

.msg-btn label {
	cursor: pointer;
	padding-top: 15px;
	display: inline-block;
}

.msg-content {
	white-space: pre-line;
	padding: 20px;
	padding-left: 45px;
	padding-right: 45px;
	background: #3d3d3d;
	color: white;
	padding-right: 45px;
}

.msg {
	width: 100%;
	display: inline-block;
	margin-bottom: 25px;
}

.msg-date {

}

.msg-header-left {
	margin-left: 30px;
	height: 100%;
	line-height: 35px;
}

.first, .prev, .last, .next, .navigator span span {
	display: block;
	width: 30px;
	line-height: 30px;
	text-align: center;
	float: left;
	margin-right: 10px;
	color: rgb(171, 171, 171);
	border-radius: 2px;
}

.navigator span span {
	background: orange;
	color: white;
	border-radius: 15px;
}

.navigator span a span {
	background: #3d3d3d;
}

.navigator a.first, .navigator a.prev, .navigator a.next, .navigator a.last
	{
	display: none;
}

.navigator a[disabled="disabled"] span {
	background: steelblue;
	color: white;
}

.navigator a, .navigator a span {
	color: white;
}

.navigator a:hover, .navigator a span:hover {
	opacity: 0.8;
}

#step_bar_box {
	text-align: center;
	overflow: hidden;
	margin-bottom: 12px;
	margin-top: 6px;
}

.step-bar {
	margin: 0px !important;
	padding: 0px !important;
}

.step-bar {
	list-style: none;
}

.step-bar li {
	line-height: 30px;
	color: #a6a6a6;
	text-decoration: none;
	padding: 0 20px 0 19px;
	background: #eee;
	display: inline-block;
	width: 11%;
}

.step-bar li small {
	font-size: 80%;
}

.step-bar li::after {
	position: relative;
	display: block;
	margin-top: -16px;
	margin-left: auto;
	margin-right: -25px;
	height: 16px;
	width: 20px;
	content: " ";
	-webkit-transform: skew(-30deg);
	-moz-transform: skew(-30deg);
	-ms-transform: skew(-30deg);
	-o-transform: skew(-30deg);
	transform: skew(-30deg);
	background: #eee;
	border-right: 1px solid white;
}

.step-bar li::before {
	float: right;
	display: block;
	margin-bottom: -25px;
	margin-left: auto;
	margin-right: -25px;
	height: 14px;
	width: 20px;
	content: " ";
	-webkit-transform: skew(30deg);
	-moz-transform: skew(30deg);
	-ms-transform: skew(30deg);
	-o-transform: skew(30deg);
	transform: skew(30deg);
	background: #eee;
	border-right: 1px solid white;
}

.step-bar li:first-child {
	-webkit-border-radius: 5px 0 0 5px;
	-moz-border-radius: 5px 0 0 5px;
	-ms-border-radius: 5px 0 0 5px;
	-o-border-radius: 5px 0 0 5px;
	border-radius: 5px 0 0 5px;
}

.step-bar li:last-child {
	-webkit-border-radius: 0 5px 5px 0;
	-moz-border-radius: 0 5px 5px 0;
	-ms-border-radius: 0 5px 5px 0;
	-o-border-radius: 0 5px 5px 0;
	border-radius: 0 5px 5px 0;
}

.step-bar li:last-child::before {
	border: 0;
	background: transparent !important;
}

.step-bar li:last-child::after {
	border: 0;
	background: transparent !important;
}

.step-bar li.current {
	background: #F97C78;
	color: #333;
}

.step-bar li.current::before {
	background: #F97C78;
}

.step-bar li.current::after {
	background: #F97C78;
}

.step-bar li.current:last-child {

}

.step-bar li.current:last-child::before {
	border: 0;
	background: transparent !important;
}

.step-bar li.current:last-child::after {
	border: 0;
	background: transparent !important;
}

.order {
	margin-bottom: 25px;
	color: white;
	background: orange;
}

.order-header {
	height: 70px;
}

.order-status {
	float: left;
	background: white;
	width: 120px;
	text-align: center;
	display: inline-block;
	height: 70px;
	line-height: 70px;
	color: #3d3d3d;
	font-weight: bold;
	border: 1px solid #3d3d3d;
}

.order-date {

}

.order-header-left {
	width: 400px;
	display: inline-block;
	line-height: 35px;
	padding-left: 25px;
}

.order-detail-btn {
	width: 50px;
	display: inline-block;
	width: 50px;
	height: 50px;
	line-height: 50px;
	float: right;
	text-align: center;
	background: darkblue;
	display: inline-block;
	border-radius: 25px;
	margin-right: 20px;
	margin-top: 10px;
	cursor: pointer;
}

.order-detail-btn:hover {
	background: cornflowerblue;
}

.order-detail-btn-label {
	cursor: pointer;
}

.order-content {
	display: inline-block;
	height: 100%;
	width: 90%;
	padding: 5%;
	background: #3d3d3d;
	text-align: center;
}

div#step-bar_box {
	margin-bottom: 20px;
}

.order table td {
	background: none;
}

.order-content table, .order-content tr {
	width: 100%;
}

.order-content table td {
	padding: 0px;
}

.order-content table .tag {
	width: 10%;
	text-align: left;
}

.order-content table .name {
	width: 35%;
	text-align: left;
}

.order-content table .option {
	width: 30%;
	text-align: left;
}

.order-content table .amount {
	text-align: right;
	width: 10%;
}

.order-content table .price {
	text-align: right;
	width: 15%;
}

.order-cancel-btn {
	margin-top: 30px;
	cursor: pointer;
	background: crimson;
	color: white;
}

.order-cancel-btn:hover {
	background: rgb(239, 91, 119);
}

.wicket-ajax-indicator {
	position: fixed;
	left: 0px;
	top: 0px;
	padding-top: 25%;
	height: 100%;
	width: 100%;
	background: white;
	opacity: 0.5;
	filter: alpha(opacity = 60);
	-ms-filter: "alpha(opacity=60)";
	-khtml-opacity: 0.6;
	-moz-opacity: 0.6;
}

.wicket-ajax-indicator img {
	top: 40vh;
	left: 50%;
	position: absolute;
}

.cus-content .input-lay, .cus-content .msg-panel {
	margin: 0px;
}

.input-lay .label {
	width: 25%;
	margin: 10px;
	text-align: left;
	display: inline-block;
}

.input-lay .input {
	width: 50%;
	display: inline-block;
	text-align: left;
	box-sizing: border-box;
}
.pay-type-radio {
    margin-top: 13px;
}
.account-type-radio label {
    width: auto!important;
}
.account-type-radio label:nth-child(2) {
    margin-right: 8%;
}
.input-lay textarea {
	width: 49% !important;
}

.input-lay .check {
	width: 16px;
	height: 16px;
	margin: 0px;
}

.input-lay select {
	padding: 4px;
	border-radius: 3px;
	margin-bottom: 20px;
}

.input.select {
	margin-right: 10px;
}

.input-lay textarea {
	margin-top: 10px;
	border-radius: 3px;
	margin-bottom: 10px;
}

.msg-panel {
	margin-bottom: 300px;
}

.q, .a {
	float: left;
	height: 20px;
}

.q {
	display: inline-block;
	color: blue;
	font-size: 22px;
	margin-top: -2px;
	margin-right: 10px;
}

.a {
	display: inline-block;
	color: red;
	font-size: 22px;
	margin-bottom: 25px;
	margin-right: 10px;
	margin-left: 2px;
	margin-top: -2px;
}

.qa {
	display: inline-block;
	width: 95%;
	margin: 0px;
	white-space: pre-line;
}

.ann-lay {
	width: 920px;
	margin: auto;
	margin-top: 0px;
}

.ann-title label {
	color: blue;
	cursor: pointer;
	font-size: 18px;
}

.ann-title label:hover {
	color: cadetblue;
}

.ann {
	margin: 20px;
}

.ann-content {
	padding: 20px;
}

.explain {
	margin-bottom: 8px;
}

.page {
	margin-top: 20px;
}

.page iframe {
	margin: 0px auto;
	margin-top: 20px;
	margin-bottom: 30px;
	width: 900px;
}

.menu-g1 nav {
	display: none !important;
}

.main-content .product-table {
	margin-left: 16px;
}

.product-title {
	color: navy;
	font-size: 30px;
	margin-left: 27px;
	margin-top: 20px;
}

.hidden {
	visibility: hidden;
	height: 0px!important;
    margin: 0px!important;
    padding: 0px!important;
}

.string-content {

}

.string-content .product-table {
	margin: 0px auto;
}

.h2-content-desc {
	float: left;
	width: 45%;
}

.modaal-container .h2-content-desc {
	width: auto;
}

.modaal-container img+.h2-content-desc,.modaal-container .modal-img-wrap+.h2-content-desc {
	width: 45%;
	line-height: 45px;
}

.modal-video-h2-wrap+.h2-content-desc {
	width: 48%;
}

.h2-img {
	width: 600px;
	height: 400px;
	float: right;
	margin-left: 3%;
	object-fit: cover;
}

.h2-content .h2 {
	margin-bottom: 10px;
	margin-top: 0px !important;
	color: #3d3d3d;
}

.h2-content {
	display: inline-block;
	font-size: 15px;
	line-height: 50px;
	width: 100%;
	margin-top: 35px;
	margin-bottom: 35px;
}

.h1+.h2-content {
	margin-top: 0px !important;
}

.h1 {
	font-size: 30px;
	/* margin-left: 0px; */
	margin-top: 60px;
	/* border-left: solid 35px red; */
	/* padding-left: 18px; */
	margin-bottom: 50px;
	text-align: center !important;
	width: 100%;
	display: inline-block;
	font-weight: bold;
}

.h1:first-of-type {
	margin-top: 40px;
}

h2 {
	font-size: 24px;
	margin-top: 40px;
	text-align: center !important;
	margin-bottom: 20px;
}

h3 {
	text-align: center !important;
	font-size: 16px;
	margin-left: 0px;
	margin-top: 30px;
	padding-left: 18px;
	margin-top: 50px;
}

.page .h2 {
	margin-top: 50px;
}

p.point {
	display: inline;
	color: red;
	font-weight: bold;
	font-size: 24px;
}

body {
	min-width: 970px;
}

.string-content a {
	color: mediumblue;
	text-decoration: underline;
}

.string-content a:hover {
	opacity: 0.8;
}

.cate-list {
	display: inline-block;
	float: left;
	width: 200px;
	margin: 10px;
	text-align: center;
}

.price-main {
	display: inline-block;
	float: left;
	margin-left: 40px;
	width: 677px
}

.cate-list a:hover {
	background: gray;
	color: white;
}

.cate-list {
	height: 580px;
	margin: 10px;
	margin-top: 0px;
	overflow: auto;
	border-right: 1px solid #3d3d3d;
	border-left: 1px solid #3d3d3d;
	border-bottom: 1px solid #3d3d3d;
	border-top: 1px solid #3d3d3d;
	overflow-x: hidden;
}

.price-menu {
	width: 200px;
	float: left;
	margin-top: 54px;
}

.cate-top {
	text-align: center;
	width: 200px;
	margin-top: 0px;
	background: #3d3d3d;
	line-height: 48px;
	color: white;
	margin-left: 10px;
	border-right: 2px solid #3d3d3d;
}

.cate-list a {
	color: black;
	line-height: 38px;
	display: block;
	border-bottom: solid 1px gray;
}

.price-view .cate {
	margin-bottom: 0px;
	font-size: 20px;
	line-height: 35px;
	color: black;
	width: 900px;
	text-align: center;
	border-radius: 6px 6px 0px 0px;
	-moz-border-radius: 6px 6px 0px 0px;
	margin-top: 0px;
	margin-bottom: 20px;
	font-size: 25px;
	font-weight: bold;
	margin-left: -220px;
	margin-right: 0px;
	text-align: center;
}

.price-view .cate {
	/* display: block; */
	/* text-align: center; */
	width: 100%;
	margin: 0;
	margin-bottom: 25px;
}

.product-table th {
	text-align: center;
}

.product-table th:after {
	border: 0px;
}

.product-table th:nth-child(1) {
	width: 40%;
}

.product-table th.price {
	box-sizing: border-box;
	width: 15%;
	padding-right: 0px;
}

.product-table td:nth-child(1) {
	width: 40%;
}

.product-table td.price {
	padding: 0px;
	text-align: center;
	width: 15%;
}

.product-table {
	margin-left: 0px;
	border-spacing: 0px;
	margin-bottom: 8px;
	width: 100%;
}

.course-product-table td {
	width: 15%;
}

.course-product-table td:nth-child(1) {
	width: 25%;
}

.product-table td, .product-table td label {
	text-align: center;
	padding-left: 15px;
}

.product-table .price {
	padding-right: 15px;
}

.product-table .center {
	text-align: center;
}

.product-table .left {
	text-align: left;
	padding-right: 0px;
}

.price-view .contents-label {
	width: 100%;
}

.course {
	padding-left: 80px;
	padding-right: 80px;
}

.course table {
	width: 800px;
	text-align: center;
}

.course table th {
	text-align: center;
}

.price-select {
	display: none;
}

.price-main img {
	margin-top: 10px;
}

.input-lay .attention {
	border: solid;
	padding: 20px;
	text-align: left;
}

.input-area {
	margin-top: 20px;
	margin-bottom: 20px;
}

.attention h3 {
	margin: 0px;
	border: solid 0px;
	padding: 0px;
}

.attention a {
	text-decoration: underline;
	color: gold;
	font-size: 120%;
}

.blinking {
	-webkit-animation: blink 1.5s ease-in-out infinite alternate;
	-moz-animation: blink 1.5s ease-in-out infinite alternate;
	animation: blink 1.5s ease-in-out infinite alternate;
}

@
-webkit-keyframes blink { 0% {
	opacity: 0;
}

100%
{
opacity
:
1;
}
}
@
-moz-keyframes blink { 0% {
	opacity: 0;
}

100%
{
opacity
:
1;
}
}
@
keyframes blink { 0% {
	opacity: 0;
}

100%
{
opacity
:
1;
}
}
.attention {
	line-height: 22px;
}

.input-lay.contact-lay {
	text-align: left;
}

.contact-lay .label {
	margin-left: 98px;
}

.center {
	width: 100%;
	text-align: center;
}

.contact-lay textarea {
	width: 250px;
	padding: 5px;
}

.input-lay .check-course {
	margin-top: 12px;
	margin-bottom: 12px;
	margin-right: 10px;
}

.input-lay .course-label {
	white-space: pre;
	margin-top: 12px;
	display: inline-block;
	margin-bottom: 12px;
}

#attachment {
	display: inline-table;
	position: relative;
	overflow: hidden;
	text-align: center;
	cursor: pointer;
	padding: .5em 2em;
	line-height: 1.5em;
	width: 195px;
	margin-top: 10px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	background: gray;
	color: white;
}

#attachment:hover {
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=8);
	opacity: 0.8;
}

input[type="file"] {
	/* 位置とサイズの調整 */
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	/* オンマウスでマウスカーソルを変更 */
	cursor: pointer;
	/* 不透明度0で見えなくします。*/
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
	opacity: 0;
}

.file-bk {
	width: 100% !important;
	margin: 0px !important;
}

#val {
	width: 150px;
	display: none;
	background: #fff;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	padding: .25em 1em;
	color: rgb(242, 121, 0);
}

.cus-info-panel {
	border-radius: 6px;
}

.deli-day-panel {
	border-radius: 0 0 6px 6px;
}

.deli-day-panel label {
	float: left;
}

.deli-day-panel {
	text-align: right;
}

.cus-menu-btn {
	background: #3d3d3d;
	color: white;
}

.cus-menu-btn:first-child {
	border-radius: 6px 6px 0px 0px;
}

.cus-menu-btn:last-child {
	border-radius: 0px 0px 6px 6px;
}

.cus-menu-btn {
	color: white;
}

.cus-menu-btn:hover {
	opacity: 0.8;
	background: gray !important;
}

.attention {
	border-radius: 6px;
	margin: 10px 0px;
}

.navigator span {
	border-radius: 4px;
	color: white;
}

.order {
	background: none !important;
}

.order-header-left {
	background: #3d3d3d;
	width: 540px;
	border-radius: 0 6px 6px 0;
	height: 70px;
	border: 1px solid #3d3d3d;
}

.order-status {
	border-radius: 6px 0 0 6px;
}

.order-status:hover, .order-header-left:hover, .msg-header:hover {
	opacity: 0.8;
	cursor: pointer;
}

.order-content, .msg-content {
	margin-top: 15px;
	border-radius: 6px;
	display: none;
}

.msg-header {
	display: inline-table;
	border-radius: 6px;
}

.order-detail-btn, .msg-btn {
	display: none;
}

.order-header-left:hover:after {
	transition: 0.3s ease;
	top: -45px;
}

.msg-header-left:hover:after {
	transition: 0.3s ease;
	top: -48px;
}

.cus-menu a:before {
	position: relative;
	top: 8px;
	left: -15px;
	margin-right: 7px;
}

.cus-menu a:nth-child(1):before {
	content: url(../../../image/menu1s.png);
}

.cus-menu a:nth-child(2):before {
	content: url(../../../image/menu5s.png);
}

.cus-menu a:nth-child(3):before {
	content: url(../../../image/menu4s.png);
}

.cus-menu a:nth-child(4):before {
	content: url(../../../image/menu2s.png);
}

.cus-menu a:nth-child(5):before {
	content: url(../../../image/menu3s.png);
}

.cus-menu-btn {
	width: 141px;
}

.cus-menu a {
	text-align: left;
	padding-left: 38px;
}

ul.feedbackPanel {
	text-align: left;
}

.price-attention {
	display: inline-block;
	/* float: left; */
	margin: 40px;
	width: 858px;
	margin-bottom: 0px;
	/* color: gray; */
	padding: 20px;
	border-radius: 7px;
	margin-right: auto;
	line-height: 24px;
	margin-top: 0px;
	border: 1px solid gray;
	border-radius: 0px;
	font-size: 14px;
	display: block;
	margin-left: auto;
}

.feedbackPanelWARNING {
	list-style: none;
}

li .feedbackPanelWARNING {
	list-style-type: none;
	white-space: pre-line;
	line-height: 21px;
	text-align: left;
	margin: 5%;
	margin-bottom: 0;
	margin-top: 0px;
	padding-top: 0px;
	display: inline-table;
}

.kakou-chart {
	width: 30%;
	height: 240px;
	float: left;
	margin-left: 3%;
	display: block;
}

.kakou-chart .count {
	text-align: center;
	font-weight: bold;
	font-family: arial;
	position: relative;
	top: -150px;
	animation: fadeIn 3s ease 0s 1 normal;
	-webkit-animation: fadeIn 3s ease 0s 1 normal;
}

@
keyframes fadeIn { 0% {
	opacity: 0
}

30%
{
opacity
:

0
}
100%
{
opacity
:

1
}
}
@
-webkit-keyframes fadeIn { 0% {
	opacity: 0
}

30%
{
opacity
:

0
}
100%
{
opacity
:

1
}
}
.kakou-chart em {
	font-size: 75px;
}

.kakou-chart:nth-child(1) .count {
	color: #3498db;
}

.kakou-chart:nth-child(2) .count {
	color: #9b59b6;
}

.kakou-chart:nth-child(3) .count {
	color: #2ecc71;
}

.kakou-chart-group {
	display: box;
	display: -webkit-box;
	display: -moz-box;
	display: -o-box;
	display: -ms-box;
	box-pack: justify;
	-moz-box-pack: justify;
	-webkit-box-pack: justify;
	-o-box-pack: justify;
	-ms-box-pack: justify;
}

.kakou-chart span.title {
	float: left;
	font-size: 17px;
	/* display: inline-flex; */
	position: absolute;
	top: -55px;
	left: 0px;
	width: 100%;
	text-align: center;
}

.kakou-chart span.caption {
	position: absolute;
	top: 15px;
}

img.price-img {
	width: 300px;
}

.price-list {
	float: right;
	width: 350px;
	font-size: 20px;
}

.price-list-ele-s {
	width: 150px;
	display: inline-block;
}

.price-list-ele-p {
	float: right;
}

.price-list-ele {
	margin-top: 10px;
}

#payjp_checkout_box {
	display: none;
}

#pay-select {
	width: 185px;
}

#payjp_checkout_box input[type=button] {
	width: 170px;
	height: 35px;
	float: left;
	font-size: 12px !important;
	border: none !important;
	background: gray !important;
	color: white;
	height: 36px;
	margin-bottom: 20px;
}

}
#payjp_checkout_box input[type=button]:hover {
	opacity: 0.8;
}

.contact-lay .q, .contact-lay .a {
	font-size: 26px;
	font-weight: bold;
	height: 3px;
	float: left;
}

.a-div {
	width: 100%;
	    display: inline-block;
	margin-bottom: 18px;
}

.q-div {
	margin-bottom: 10px;
}

.contact-lay .qa-contact {
	width: 100%;
}

.contact-lay .qa {
	width: 95%;
}

.qa-perhaps {
	padding: 20px 0px;
	font-size: 22px;
}

.qa a {
	color: yellowgreen;
}

.con-product-table {
	width: 90%;
	font-size: 14px;
	color: black;
}

.con-product-table th {
	text-align: center;
}

td.con-price {
	text-align: right;
	padding-right: 5%;
}

.qa-contact .qa-div:nth-child(2n) {
	margin-top: 30px;
}

.main-content .qa {
	line-height: 30px;
}

.main-content .a {
	margin-left: 1px;
}

.trade-table {
	width: 100%;
}

.holiday-attention {
	padding: 10px;
	margin: 30px auto;
	border: 1px gray solid;
	width: 700px;
	text-align: center;
	font-size: 14px;
	margin-bottom: 20px;
}

.holiday-page .holiday-list {
	margin-top: 10px;
}

.ann-lay+.main-content {
	margin-top: 10px;
}

.h1+.h2-content {
	margin-top: 0px !important;
}

.price-footer {
	text-align: left;
	margin-top: 10px;
	margin-bottom: 10px;
	font-size: 12px;
	min-height: 12px;
}

.btn-tel {
	position: relative;
	display: block;
	border-radius: 50px;
	color: #3d3d3d;
	font-weight: bold;
	text-align: center;
	background: snow;
	font-size: 14px;
	padding: 5px 0;
	margin: auto;
	width: 70%;
	display: none;
	padding: 10px 5%;
}

.tel-lay .tel {
	background: url(../../../image/telephone.png) no-repeat;
}

.btn-tel::after {
	background: url(../../../image/telephone-black.png) no-repeat center;
	width: 24px;
	height: 24px;
	content: "";
	background-size: contain;
	position: absolute;
	top: calc(50% - 12px);
	left: 15px;
}

.tel-lay .tel {
	font-size: 20px;
	margin: 20px auto !important;
}

.tel-lay h3 {
	margin-top: 0px;
	padding: 0px;
}

.tel-lay .tel {
	font-size: 20px;
	margin: 20px 0px;
	width: 210px;
	line-height: 26px;
}

.tel-lay * {
	text-align: center;
}

.tel-footer {
	display: inline-block;
	width: 100%;
	margin-top: unset;
	background: #3d3d3d;
	padding-top: 20px;
	margin-bottom: -1px;
	border-bottom: 1px solid white;
	padding-bottom: 8px;
}

.contact-link {
	margin: 0 auto;
}

.tel-footer .tel {
	width: 470px;
}

.tel-footer * {
	color: white;
}

.tel-footer .contact {
	display: inline-block;
}

.tel-footer .contact:hover {
	text-decoration: underline !important;
}

.mobile-content {
	display: none;
}

.reception-time {
	display: inline-block;
}

.footer-lay .sns img {
	width: 18px;
}

.price-group br {
	display: none;
}

.price-total {
	display: none;
}

.msg-panel a {
	text-decoration: underline;
	font-weight: bold;
}

input#isDmHtml {
	width: 51%;
}

.checkbox01.input {
	width: 52%;
}

input[type=checkbox] {
	display: none !important;
}

.checkbox01 {
	box-sizing: border-box;
	cursor: pointer;
	display: inline-block;
	padding: 5px 30px;
	position: relative;
	width: auto;
}

.checkbox01::before {
	background: #fff;
	border: 1px solid #231815;
	content: '';
	display: block;
	height: 16px;
	left: 5px;
	margin-top: -8px;
	position: absolute;
	top: 50%;
	width: 16px;
}

.checkbox01::after {
	border-right: 3px solid deepskyblue;
	border-bottom: 3px solid deepskyblue;
	content: '';
	display: block;
	height: 9px;
	left: 10px;
	margin-top: -7px;
	opacity: 0;
	position: absolute;
	top: 50%;
	transform: rotate(45deg);
	width: 5px;
}

input[type=checkbox]:checked+.checkbox01::after {
	opacity: 1;
}

iframe.h2-img.youtube-content {
	width: 400px;
}

p.bold {
	display: inline;
	font-weight: bold;
}

.swiper-button-prev, .swiper-button-next {
	display: none;
}

.swiper-container {
	padding-bottom: 30px;
	height: 280px;
	margin-bottom: 40px !important;
	z-index: 1;
	/* margin-bottom: 260px!important; */
	width: 920px;	cursor: pointer;

}

.swiper-wrapper {
	height: 250px;
}

.fb_img {
	height: 300px;
	width: 300px;
	object-fit: cover;
}

.fb-slide a {
	width: 100%;
	display: inline-block;
}

.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets
	{
	width: 100%;
	position: relative;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
	cursor: pointer;
	background: black !important;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
	cursor: pointer;
	margin: 0px 10px;
}

.swiper-pagination {
	margin-top: -15px !important;
}

.fb_content {
line-height: 24px;
    height: 70px;
    position: relative;
    margin-top: -80px;
    background: black;
    opacity: 0.7;
    color: white;
    padding: 5px;
    font-size: 14px;
    text-decoration: none !important;
    border-radius: 0px 0px 10px 10px!important;
	overflow: hidden;
}

.fb_date {
	background: #3d3d3d;
	color: white;
	top: 0px;
	margin-top: 6px;
	position: absolute;
	padding: 0px 10px;
	font-size: 13px;
	line-height: 24px;
	padding-top: 2px;
}

.fb-slide a {
	text-decoration: none;
}

.fb_like {
	position: absolute;
	color: red;
	right: 4px;
	top: 10px;
	font-weight: bold;
	text-align: center;
	color: #3c3c3c;
	background: snow;
	font-size: 15px;
	border-radius: 30px;
	width: 55px;
	height: 55px;
	line-height: 54px;
}

.fb_like-ele {
	text-align: center;
}

.fb_like_count {
	float: left;
	width: 100%;
	float: right;
	display: inline-block;
	position: relative;
}

.heart:before, .heart:after {
	position: absolute;
	content: "";
	left: 11px;
	top: 24px;
	width: 5px;
	height: 8px;
	background: tomato;
	border-radius: 5px 5px 0 0;
	transform: rotate(-45deg);
	transform-origin: 0 100%;
}

.heart:after {
	left: 7px;
	transform: rotate(45deg);
	transform-origin: 100% 100%;
}

.heart-100:before, .heart-100:after {
	left: 7px;
}

.heart-100:after {
	left: 3px;
}

.heart-1:before, .heart-1:after {
	left: 13px;
}

.heart-1:after {
	left: 9px;
}

.swiper-container {
	padding-bottom: 30px;
	height: 280px;
	margin-bottom: 40px !important;
	z-index: 1;
	/* margin-bottom: 260px!important; */
	width: 920px;
}

.swiper-wrapper {
	height: 250px;
}

.fb_img {
	height: 300px;
	width: 300px;
	object-fit: cover;
}

.fb-slide a {
	width: 100%;
	display: inline-block;
}


.swiper-pagination-clickable .swiper-pagination-bullet {
	cursor: pointer;
	background: black !important;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
	cursor: pointer;
	margin: 0px 10px;
}

.swiper-pagination {
	margin-top: -15px !important;
	margin-bottom: 30px;
}


.fb_date {
	background: #3d3d3d;
	color: white;
	top: 0px;
	margin-top: 6px;
	position: absolute;
	padding: 0px 10px;
	font-size: 13px;
	line-height: 24px;
	padding-top: 2px;
}

.fb-slide a {
	text-decoration: none;
}

.fb_like {
	position: absolute;
	color: red;
	right: 4px;
	top: 10px;
	font-weight: bold;
	text-align: center;
	color: #3c3c3c;
	background: snow;
	font-size: 15px;
	border-radius: 30px;
	width: 55px;
	height: 55px;
	line-height: 54px;
}

.fb_like-ele {
	text-align: center;
}

.fb_like_count {
	float: left;
	width: 100%;
	float: right;
	display: inline-block;
	position: relative;
}

.heart:before, .heart:after {
	position: absolute;
	content: "";
	left: 11px;
	top: 24px;
	width: 5px;
	height: 8px;
	background: tomato;
	border-radius: 5px 5px 0 0;
	transform: rotate(-45deg);
	transform-origin: 0 100%;
}

.heart:after {
	left: 7px;
	transform: rotate(45deg);
	transform-origin: 100% 100%;
}

.heart-100:before, .heart-100:after {
	left: 7px;
}

.heart-100:after {
	left: 3px;
}

.heart-1:before, .heart-1:after {
	left: 13px;
}

.heart-1:after {
	left: 9px;
}

.swiper-container {
	z-index: 0 !important;
}

.swiper-pagination {
	z-index: 0 !important;
}

.btn-link {
	line-height: 33px;
	border-radius: 24px;
	padding: 0px 15px;
	text-decoration: none !important;
	background: linear-gradient(to left, #e72941 5%, #fe7c43 100%);
	color: white !important;
	margin: auto;
	width: 50%;
	display: block;
	text-align: center;
	margin-top: 22px;
	border: 2px solid white;
}

.btn-link-orange {
	background: darkorange;
}

.btn-link-red {
	background: crimson;
}

.btn-link-green {
	background: mediumseagreen;
}

.long-image {
	width: 100%
}

.btn-link-long {
	display: block;
	margin: 0 auto;
	text-align: center;
	width: 30%;
}

.btn-link-long {
	margin-top: 30px;
}

.spacer {
	height: 30px;
}

input#ratingValue {
	display: none;
}

.rate-select-layer, .rate-base-layer, .rate-hover-layer {
	margin-top: 4px;
}

input.btn.link {
	padding: 0px !important;
	background: none;
	color: white;
	width: 100%;
	text-decoration: underline;
}

input.btn.link:hover {
	background: none;
	color: lightgray;
}

.first-hide {
	display: none;
}

.btn-group {
	visibility: hidden;
}

.price .cate {
	margin-top: 0px;
}

.product-table .amount {
	width: 25%;
}

.product-table .amount-row {
	text-align: center;
}

.product-table .price-h2 {
	display: inline-block;
}

#payjp-window {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	z-index: 9999;
	overflow-y: scroll;
	display: block;
}

.msg-panel {
	text-align: left;
}

.hide-show-area {
	display: none;
}

.mean-bar {
	display: none;
}

.youtube-iframe {
	margin-top: 20px;
	margin-bottom: 40px
}

.only-youtube {
	margin-top: 20px;
}

.content-blue {
	color: cornflowerblue;
}

.content-green {
	color: yellowgreen;
}

.content-orange {
	color: orangered;
}

.content-red {
	color: crimson;
}

.btn-blank::after {
	content: " ";
	width: 13px;
	height: 12px;
	position: relative;
	left: -6px;
	top: 10px;
	background: url(../../../image/external-link.png) no-repeat;
	display: block;
	margin-bottom: -12px;
	float: right;
}

.cus-info-panel .postCode {
	font-size: 10px;
}

.cus-info-panel .plant {
	margin-top: 10px;
	display: inline-block;
}

.cus-info-panel .rank {
	font-size: 14px;
}

.cus-info-panel .rank-name {
	width: 84%;
	display: inline-block;
	float: left;
}

.rank-icon {
	width: 22px;
	float: left;
	margin: 0px;
	left: 0;
	margin-top: -1px;
	height: 24px;
	object-fit: contain;
}

h2.qa-category {
	width: 100%;
	display: inline-block;
}

.reference-mark {
	font-size: 10px;
	display: inline-block;
}

.reference-line {
	font-size: 10px;
}

.small-content {
	border-radius: 8px;
	box-shadow: 0px 2px 10px rgba(88, 88, 88, 0.2);
}

.small-popup-content,.internal-link {
	background: #fff url(../../../image/L-right2.png) right 8px bottom 8px
		no-repeat;
	background-size: 12px;
}

.small-content .h2-content-desc {
	float: right;
	width: 100%;
	padding: 0px;
}

.small-content1 .h2-img {
	width: 50%;
	float: left;
	margin: 0px !important;
	border-radius: 8px 0px 0px 8px;
}

.small-content1 .video-h2-wrap video {
	border-radius: 8px 0px 0px 8px;
	float: left;
	width: 50%;
	margin: 0;
	z-index: 1;
}

.small-content1 .video-h2-wrap {
	border-radius: 8px 0px 0px 8px;
	width: 50%;
	margin: 0px;
}

.js-modal-open {
	cursor: pointer;
}

.modal {
	display: none;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0px;
	width: 100%;
	z-index: 1;
}

.modal__bg {
	background: rgba(0, 0, 0, 0.7);
	height: 100vh;
	position: absolute;
	width: 100%;
}

.modal__content {
	background: #fff;
	left: 50%;
	padding: 40px;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 1200px;
}

.modal__content .h2-img {
	height: 500px;
}

.close-btn-wrap {
	width: 100%;
	display: inline-block;
	margin-top: 15px;
}

a.js-modal-close span {
	width: 200px;
	display: inline-block;
	text-align: center;
}

a.js-modal-close {
	line-height: 10px;
	border: 1px solid #3d3d3d;
	border-radius: 32px;
	padding: 20px;
	text-decoration: none;
	color: #3d3d3d;
	margin: auto 0;
	display: inline-block;
	position: relative;
	left: calc(50% - 121px);
	margin-top: 15px;
}

.small-content {
	margin-bottom: 35px;
	margin-top: 0px;
}

.small-content-group {

}

.small-content:hover {
	opacity: 0.8;
}

.small-content .h2-img, .small-content .video-h2-wrap video,
	.small-content .video-h2-wrap {
	border-radius: 8px 8px 0px 0px;
	width: 100%;
	object-fit: cover;
	height: 200px;
	background: whitesmoke;
	z-index: 1;
}

.small-content1 .h2-img {
	width: 50%;
	float: left;
	margin: 0px;
	border-radius: 8px 0px 0px 8px;
}

.small-content1 .h2-content-desc {
	width: 50%;
}

.small-content1 .h2-img, .small-content1 .video-h2-wrap video,
	.small-content1 .video-h2-wrap {
	height: 200px;
}

.small-content2 .h2-img, .small-content2 .video-h2-wrap video,
	.small-content2 .video-h2-wrap {
	height: 250px;
}

.small-content4 .h2-img, .small-content4 .video-h2-wrap video,
	.small-content4 .video-h2-wrap {
	height: 210px;
}

.small-content5 .h2-img, .small-content5 .video-h2-wrap video,
	.small-content5 .video-h2-wrap {
	height: 120px;
}

.small-content6 .h2-img, .small-content6 .video-h2-wrap video,
	.small-content6 .video-h2-wrap {
	height: 125px;
}

.small-content1 {
	width: 97%;
	height: 200px;
	margin-right: 1.5%;
	margin-left: 1.5%;
}

.small-content2 {
	width: 47%;
	height: 368px;
	margin-right: 1.5%;
	margin-left: 1.5%;
}

.small-content3 {
	width: 30.333%;
	height: 325px;
	margin-right: 1.5%;
	margin-left: 1.5%;
}

.small-content4 {
	width: 22%;
	height: 350px;
	margin-right: 1.5%;
	margin-left: 1.5%;
}

.small-content5 {
	width: 17%;
	height: 200px;
	margin-right: 1.5%;
	margin-left: 1.5%;
}

.small-content6 {
	width: 13.66666%;
	height: 200px;
	margin-right: 1.5%;
	margin-left: 1.5%;
}
.small-content-empty-class.small-content6 {
    height: 188px;
}

.small-content1 .h2 {
	font-size: 24px;
	margin-bottom: -7px;
	width: 100%;
	padding-top: 45px !important;
	height: 115px;
}

.small-content2 .h2 {
	font-size: 24px;
	margin-bottom: -16px;
	width: 100%;
	height: 72px;
	padding-top: 21px;
}

.small-content2 .h2-content-desc-empty-class .h2 {
	margin-top: 12px !important;
}

.small-content3 .h2 {
	font-size: 18px;
	margin-bottom: -10px;
	width: 100%;
	padding-top: 21px !important;
	height: 53px;
	line-height: 20px;
}

.small-content4 .h2 {
	font-size: 16px;
	margin-bottom: -7px;
	width: 100%;
	line-height: 24px;
	height: 50px;
	padding-top: 16px;
}

.small-content5 .h2 {
	line-height: 53px;
	font-size: 15px;
	margin-bottom: -7px;
	width: 100%;
}

.small-content6 .h2 {
	line-height: 52px;
	font-size: 14px;
	margin-bottom: -7px;
	width: 100%;
}

.small-content1 .content-summary {
	line-height: 20px;
	font-size: 13px;
	text-align: center;
}

.content-summary .mobile-summary {
	display: none;
}

.content-summary .pc-summary {
	display: block;
}

.small-content2 .content-summary, .small-content3 .content-summary,
	.small-content4 .content-summary, .small-content5 .content-summary {
	line-height: 20px;
	font-size: 13px;
	text-align: left;
	padding-left: 10px;
	padding-right: 10px;
}

.small-content6 .content-summary, .small-content7 .content-summary {
	line-height: 20px;
	font-size: 12px;
	text-align: center;
}

.exp-product {
	width: 82px;
	display: inline-block;
	float: left;
	margin: 5px;
	height: 130px;
}

.exp-product-img {
	width: 100% !important;
	height: 80px !important;
	object-fit: contain !important;
}

.exp-price-list {
	width: 100%;
	display: inline-block;
}

.exp-product-name {
	font-size: 12px !important;
	line-height: 15px;
	height: 42px;
}

.exp-product-price {
	font-size: 12px;
	width: 100%;
	text-align: center;
}

.exp-attention {
	width: 100%;
	text-align: center;
	/* margin-top: 10px; */
	height: 35px;
	line-height: 60px;
	font-size: 10px;
	display: inline-block;
}

.modal__content .h2 {
	font-size: 20px;
	background: #3d3d3d;
	padding: 10px;
	color: white;
	margin-bottom: 20px;
}

.modal .h2-content-desc {
	line-height: 29px;
}

.close-btn-wrap {
	display: none;
}

.ann-title label {
	color: #3d3d3d !important;
	font-size: 14px;
	display: inline-block;
	width: 100%;
}

.ann .day {
	float: left;
	display: inline-block;
	margin-left: 3%;
	width: 85px;
}

.ann-title-e {
	float: left;
	display: inline-block;
	margin-left: 1%;
	margin-right: 3%;
	width: calc(93% - 85px);
}

.ann {
	border-bottom: 1px solid lightgray;
	padding-bottom: 10px;
	margin-bottom: 0px;
	margin-top: 10px;
	width: 100%;
	margin-left: 0% !important;
	margin-right: 0% !important;
}

.ann:hover {
	opacity: 0.8;
}

.ann-content {
	font-size: 14px;
}

.small-content-group {
	margin: 0px -1.5%;
}

.h2 p {
	display: inline;
}

.order-content table td {
	border: none;
}

.order-receipt-btn {
	margin-top: 30px;
	cursor: pointer;
	background: whitesmoke;
	width: 50%;
}

#modal_msg_box {
	background: #3d3d3d;
	position: absolute;
	left: 23%;
	top: 50%;
	width: 50%;
	opacity: 0.9;
	font-size: 30px;
	padding: 3%;
	text-align: center;
	border-radius: 10px;
	color: white;
}

#modal_msg_box {
	display: none;
	//
	メッセージはデフォルトで消しておく
}

label.label.m-label {
	display: none !important;
}

.small-attention {
	font-size: 12px;
}

.input-lay .attention {
	font-size: 12px;
}

.input-lay .order-attention {
	font-size: 10px;
}

.input-long {
	margin: 20px 0px;
	width: 100%;
}

.input-lay .attention-top {
	font-size: 15px;
}

.popup-text {
	text-decoration: underline;
	font-size: 14px;
}

.price-popup {
	width: 100%;
	display: block;
	padding-top: 12px;
	padding-bottom: 12px;
}

.price-nonpopup {
	display: block;
	padding-top: 12px;
	padding-bottom: 12px;
}

.only-image .h2 {
	display: none;
}

.only-image.small-content4 {
	height: 175px;
}

a.link {
	color: mediumblue;
	text-decoration: underline;
}

.tel-ele {
	display: inline-block;
}

h2.qa-category {
	width: auto;
}

.small-title-area .h1-title, .qa-category {
	font-size: 50px;
	width: auto;
	letter-spacing: 1px;
}

.small-title-area .h1-sub-title {
	font-size: 14px;
	font-weight: 600;
	display: inline-block;
	width: auto !important;
	letter-spacing: 1px;
}

.small-title-area .h1 {
	margin-right: 20px;
	margin-bottom: 20px;
}

.title-area {
	text-align: center;
}

.title-area .h1-title {
	font-size: 50px;
	width: auto;
	letter-spacing: 1px;
}

.title-area .h1-sub-title {
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 1px;
	width: 100%;
	margin: 0px;
}

.title-area .h1 {
	margin-bottom: 20px;
}

.h2-img {
	float: left;
	margin-right: 3% !important;
	margin-left: 0%;
}

.small-title-area+.h2-content {
	margin-top: 0px;
}

.big-title-area-1 {
	width: 47%;
}

.big-title-area-right-img .big-title-area-1 {
	padding-right: 3%;
}

.big-title-area-left-img .big-title-area-1 {
	padding-left: 3%;
}

.big-title-area-right-img .big-title-area-1 {
	float: left;
}

.big-title-area-right-img .big-title-area-2 {
	float: right;

}

.big-title-area-left-img .big-title-area-1 {
	float: right;
}

.big-title-area-left-img .big-title-area-2 {
	float: left;
}

.big-title-area-2 {
	width: 50%;
}

.big-title-area-2 img {
	margin: 0px !important;
	width: 100%;
	height: 480px;
	object-fit: cover;
}

.big-title-area-1 .h1-title {
	text-align: left !important;
	font-size: 75px;
	margin-bottom: 10px;
	line-height: 90px;
}

.big-title-area-1 .h1-sub-title {
	text-align: left !important;
	font-size: 20px;
	margin: 0px;
	margin-bottom: 40px;
}

.big-title-area-1 .title-desc {
	font-size: 14px;
	line-height: 33px;
}

.br-only-mobile {
	display: none;
}

.only-mobile {
	display: none;
}

.modal__content .h2 {
	font-size: 21px;
	background: none;
	color: #3d3d3d;
	background: whitesmoke;
	font-weight: 900;
}

.video-h2-wrap {
	margin-right: 46px;
	margin-left: 0px;
	float: left;
}

.big-title-area-wrap {
	width: 1200px;
	display: block;
	margin: 0 auto;
}

.big-title-area {
	width: 100vw;
	margin: 60px 0px !important;
	display: inline-grid;
	background: whitesmoke;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	min-width: 1200px;
}

.price-main .content {
	margin-top: 66px;
}

input.search-text {
	width: 92%;
}

.price-attention {
	width: 784px;
}

body {
	overflow-x: hidden;
}

.product-table {
	line-height: 16px;
}

/**

.swiper-container1 {
    width: 100vw;
    display: flex;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    height: 500px;
}

.swiper-container1 .fb_img{
	width: 100%;
    height: 400px;
}

.swiper-container1 .fb_content{
	margin-top:0px;
	opacity: 1;
	color:#3d3d3d;
	background: none;
	    white-space: break-spaces;
}
**/

.product-table {
	font-size: 14px;
}

.h1-title-png img {
	display: inline-block;
	width: 100%;
	height: 100%;
}

.h1-title-png {
	margin: 50px 0px !important;
}

.input-order-btn {
	background: darkorange !important;
	color: white !important;
}

.contact-lay .qa-contact {
	width: 90%;
	margin: 0 auto;
	font-size: 14px;
}

.contact-lay .qa {
	width: 90%;
}

.qa-perhaps {
	padding: 20px 0px;
	font-size: 19px;
	padding-bottom: 0px;
}

.mobile-logout-btn {
	display: none;
}

.footer .tel-lay h3 {
	font-size: 18px;
	margin-top: 20px;
	margin-bottom: 25px;
}

.footer .contact {
	position: relative;
}

.footer .contact:after {
	content: "";
	background: url(../../../image/mail.png) no-repeat center;
	position: absolute;
	top: calc(50% - 14px);
	left: -40px;
	width: 26px;
	height: 26px;
}

.footer .contact:before {
	content: '>';
	position: absolute;
	right: -30px;
	font-size: 16px;
	font-weight: 600;
	font-family: monospace;
	top: calc(50% - 8px);
}

.tel-footer {
	padding-bottom: 28px;
}

.tel-footer .reception-time {
	font-size: 14px !important;
}

.tel-lay .tel {
	width: 400px;
	margin-top: 30px !important;
}

.small-attention a {
	text-decoration: underline;
}

.cus-info-panel .plant, .cus-info-panel .plant-info {
	display: none;
}

.cus-info-panel {
	word-break: break-all;
}

.deli-day-panel label {
	font-size: 14px;
}

.cus-info-panel .rank {
	font-size: 14px;
	margin-bottom: 30px;
	margin-top: 12px;
}



.feedbackPanel {
	white-space: pre-wrap;
}

.order .order-content .order-list-label {
	width: 50%;
	float: left;
	min-height: 1px;
}

.order .order-content .order-list-val {
	width: 50%;
	float: left;
	text-align: left;
}

.order .order-content .pay-how .small-attention {
	width: 50%;
	float: left;
	text-align: left;
}

.order .order-content div#step-bar_box {
	margin-bottom: 30px;
}

.order .order-content .deli-day, .order .order-content .pay-how {
	margin-bottom: 20px;
	display: inline-block;
	width: 100%;
}

.order .order-content .pay-how {
	margin-bottom: 30px;
}

.input.small-attention {
	margin-top: 0px;
	margin-bottom: 15px;
}

.input-lay textarea {
	font-size: 14px;
}

li.feedbackPanelWARNING {
	border: 1px solid;
	display: inline-block;
	padding: 5%;
	border-radius: 6px;
	width: 100%;
	box-sizing: border-box;
}

ul.feedbackPanel {
	width: 100%;
	margin-top: 0px;
}

.logo-content .small-content .h2-img {
	object-fit: contain;
	background: white;
}

.logo-content .small-content {
	height: 175px;
	/**
    box-shadow: none;
    **/
}

.logo-content .small-content .h2 {
	font-size: 14px;
}

.logo-content .small-content.h2-middle .h2 {
	font-size: 12px;
}

.logo-content .small-content.h2-long .h2 {
	font-size: 11px;
}

.swiper-pagination-margin {
	margin-bottom: 35px;
}

.btn-orange {
	background-color: darkorange !important;
	color: white !important;
}

.small-content-empty-class.small-content3 {
	height: 265px;
}

.small-content-empty-class.small-content4 {
	height: 210px;
}

.small-content-empty-class.small-content5 {
	height: 176px
}

.price-ann-lay {
	width: 825px;
	padding: 25px;
	box-sizing: border-box;
	margin-top: 30px;
	background: whitesmoke;
}

.price-ann-lay .h1 {
	margin-top: 10px;
}

.price-ann-lay .price-ann {
	border: none;
}

.price-ann-lay .price-ann .ann-title-e {
	font-size: 17px;
	font-weight: 600;
}

.price-ann-lay .ann-content-title {
	font-size: 15px;
	font-weight: 600;
	margin-bottom: 10px;
}

.price-ann-lay .price-ann .ann-title-e:before {
	content: ' ';
	display: inline-block;
	width: 8px;
	height: 8px;
	margin: 1.5px 16px;
	border-top: 2.5px solid #000;
	border-right: 2.5px solid #000;
	transform: rotate(45deg);
	margin-right: 26px;
}

.small-popup-content.small-content4 {
	background-size: 11px;
}

.small-popup-content.small-content5 {
	background-size: 10px;
}

.small-content5 .content-summary {
	font-size: 11px;
}

.small-content4 .content-summary {
	font-size: 12px;
}

.update-order-btn:hover {
	opacity: 0.8;
}

.update-order-btn {
	/* color: white; */
	background: whitesmoke;
	cursor: pointer;
}

.order .order-content .order-address {
	margin-bottom: 20px;
	width: 100%;
	display: inline-block;
}

.update-order-btn, .order-cancel-btn {
	margin-left: 3%;
	margin-right: 3%;
}

.top-message-b {
	display: none;
}

.swiper-containerStaff {
	height: inherit;
}

.swiper-containerStaff .swiper-wrapper {
	margin-top: 0px;
}

.swiper-containerStaff img {
	object-fit: cover;
}

div#AmazonPayButton {
	margin: 35px auto 20px auto;
	/* background: radial-gradient(black, transparent); */
	height: 80px !important;
	/* color: white!important; */
}

#RakutenPayButton {
	margin: 35px auto 20px auto;
	/* background: radial-gradient(black, transparent); */
	height: 80px !important;
	/* color: white!important; */
}

#RakutenPayButton img {
	cursor: pointer;
}

.amazon-on {
	background: none !important;
	color: cornflowerblue !important;
	border: 2px solid cornflowerblue !important;
}

.amazon-off {
	background: none !important;
	color: whitesmoke !important;
	border: 2px solid whitesmoke !important;
}

#AmazonAlignmentButton {
	display: none;
}

.input-order-btn2 {
	width: 160px !important;
}

button {
	border: 1px solid gray;
}

.amazon-hidden-btn {
	display: none;
}

.input-lay .title {
	font-size: 17px;
	font-weight: 700;
	margin-bottom: 20px;
	margin-top: 20px;
}

.input-lay, .msg-panel {
	background-color: rgba(244, 244, 244, 0.85);
	color: black;
}

.input-lay input {
	border: 1px solid gray;
}

input.btn.link {
	border: none;
	color: #3d3d3d;
	height: 20px;
}

.input-lay .btn {
	width: 280px;
	height: 44px;
	background-color: gray;
	color: white;
}

div#AmazonLoginButton {
	margin: 0px auto 30px auto;
	height: 44px !important;
	width: 280px !important;
}

div#AmazonRegisterButton {
	margin: 0px auto 30px auto;
	height: 44px !important;
	width: 280px !important;
}

.input-lay .btn {
	border: none;
}

.input-lay .btn:hover {
	opacity: 0.8;
}

.amazon-register-btn {
	background: linear-gradient(to bottom, #f5d78e, #eeb933);
	color: black !important;
	font-size: 15px !important;
	border: 1px solid gray !important;
	margin: 10px auto 30px auto;
}

.amazon-register-btn:before {
	content: " ";
	display: inline-block;
	width: 80px;
	height: 27px;
	margin: -3px 5px 0 0;
	background: url(../../../image/amazon.png) no-repeat;
	background-size: contain;
	vertical-align: middle;
}

.input-lay .small-attention a {
	color: black;
}

.input-lay .attention {
	border: solid 2px;
}

.menu-g1 {
	width: auto;
}

.amazon-off {
	background: none !important;
	color: darkorange !important;
	border: 2px solid darkorange !important;
}


.small-btn {
	margin-left: 0px;
	margin-right: 15px;
}

.input select[name="deliDay"] {
	width: 100%;
}

.attention a, .qa a {
	color: cadetblue;
}

.alignment-btn {
	width: 170px !important;
	margin-right: 145px !important;
	height: 36px !important;
	background: whitesmoke;
}

.pickUpRadio {
	background: white;
}

.feedbackPanel .feedbackPanelERROR,.feedbackPanel .feedbackPanelINFO,.feedbackPanel .feedbackPanelWARNING{
    color: black!important;
    padding: 13px!important;
    padding-left: 20px!important;
    padding-right: 20px!important;
	box-sizing: border-box;
	border-radius:6px;
    background: lightcoral;
    color: white!important;
	list-style-type: none;
 	margin-top: 3%;
}
.feedbackPanel .feedbackPanelERROR:first-child,.feedbackPanel .feedbackPanelINFO:first-child,
.feedbackPanel .feedbackPanelWARNING:first-child{
 	margin-top: 0%;
	}
.feedbackPanel .feedbackPanelWARNING{
   background: #38ae9e;
   color:black!important;
 	border: none;
}
.feedbackPanel .feedbackPanelINFO{
   background: darkturquoise;
   color:white!important;
 	border: none;
}
.feedbackPanel  .feedbackPanelWARNING {
    margin-top: 5%;
}


.top-btn2 {
	background: crimson;
	color: white;
	font-weight: 900;
	width: 108px;
	height: 27px;
	line-height: 30px;
}

.btn-group {
	display: none;
}

.input-lay .center {
	margin-top: 20px;
}

.pay-type-detail {
	font-size: 13px;
	display: inherit;
	margin: 0 15px;
}

.bottom-attention {
	margin-top: 30px;
}

.text-link {
	text-decoration: underline;
	display: inline-block;
	cursor: pointer;
}

.content-summary {
	color: black;
}

.modal__bg {
	height: 0px;
}

.modaal-content-container {
	padding: 0px !important;
}

.cate-list label {
	cursor: pointer;
}

.credit-data {
	display: table;
}

.pay-type-radio label {
	width: 90%;
	display: inline-block;
}

.pay-type-radio input {
	 	margin-top: 10px;

	width: 10%;
	display: inline-block;
}

.credit-data {
	width: 100%;
}

.input-lay .radio-label {
	top: 0px;
	vertical-align: top;
}

.footer-lay .left-lay a {
	color: white;
}

#RakutenPayButton {
	margin: 35px auto 20px auto;
	/* background: radial-gradient(black, transparent); */
	height: 80px !important;
	/* color: white!important; */
}

#RakutenPayButton img {
	cursor: pointer;
}

.rakutenNotPayLabel {
	margin-top: 20px;
	color: red;
}

.rakutenButton {
	padding: 0px;
	border: none !important;
	width: auto !important;
	height: auto !important;
}

.external-area input {
	margin: 0px;
}

.external-area {
	padding: 20px;
	background: white;
	margin: 0px 10%;
	border-radius: 5px;
}

#RakutenAlignmentButton {
	display: none;
}

.rakutenParchaseBtn {
	background: inherit !important;
	width: auto !important;
	height: auto !important;
}

#RakutenPayButton {
	display: none;
}

.alignment-btn {
	width: 174px !important;
	margin-right: 145px !important;
	height: 46px !important;
	background: whitesmoke;
	padding: 0px !important;
}

.rakuten-off {
	border: none !important;
}

.rakutenButton:hover {
	opacity: 0.8;
}

#RakutenLoginButton, #RakutenRegisterButton, .dev-rakuten {
	/**
	display: none;
	**/

}

.attention-red {
	color: crimson;
	font-weight: 600;
}

.input-lay .switch {
	text-align: left;
}

.switchArea {
	line-height: 60px;
	letter-spacing: 0;
	text-align: center;
	font-size: 27px;
	position: relative;
	margin: auto;
	width: 150px;
	display: inline-block;
	background: #fff;
	border-radius: 33px;
}

.switchArea {
	line-height: 28px; /* 1行の高さ          */
	letter-spacing: 0; /* 文字間             */
	text-align: center; /* 文字位置は中央     */
	font-size: 11px; /* 文字サイズ         */
	position: relative; /* 親要素が基点       */
	margin: auto; /* 中央寄せ           */
	width: 123px; /* ボタンの横幅       */
	background: #fff; /* デフォルト背景色   */
}

.switchArea input[type="checkbox"] {
	display: none; /* チェックボックス非表示 */
}

.switchArea label {
	display: block; /* ボックス要素に変更 */
	box-sizing: border-box; /* 枠線を含んだサイズ */
	height: 28px; /* ボタンの高さ       */
	border: 2px solid #999999; /* 未選択タブのの枠線 */
	border-radius: 14px; /* 角丸               */
}

.switchArea input[type="checkbox"]:checked+label {
	border-color: #59b300; /* 選択タブの枠線     */
}

.switchArea label span:after {
	content: "しない"; /* 表示する文字       */
	padding: 0 0 0 16px; /* 表示する位置       */
	color: #999999; /* 文字色             */
}

.switchArea  input[type="checkbox"]:checked+label span:after {
	content: "する"; /* 表示する文字       */
	padding: 0 16px 0 0; /* 表示する位置       */
	color: #59b300; /* 文字色             */
}

.switchArea #swImg {
	position: absolute; /* 親要素からの相対位置*/
	width: 20px; /* 丸の横幅           */
	height: 20px; /* 丸の高さ           */
	background: #999999; /* カーソルタブの背景 */
	top: 4px; /* 親要素からの位置   */
	left: 4px; /* 親要素からの位置   */
	border-radius: 10px; /* 角丸               */
	transition: .2s; /* 滑らか変化         */
}

.switchArea input[type="checkbox"]:checked ~ #swImg {
	transform: translateX(95px); /* 丸も右へ移動       */
	background: #59b300; /* カーソルタブの背景 */
}

.switchAreaPickUpBox {
	line-height: 60px;
	letter-spacing: 0;
	text-align: center;
	font-size: 27px;
	position: relative;
	margin: auto;
	width: 150px;
	display: inline-block;
	background: #fff;
	border-radius: 33px;
}

.switchAreaPickUpBox {
	line-height: 28px; /* 1行の高さ          */
	letter-spacing: 0; /* 文字間             */
	text-align: center; /* 文字位置は中央     */
	font-size: 11px; /* 文字サイズ         */
	position: relative; /* 親要素が基点       */
	margin: auto; /* 中央寄せ           */
	width: 123px; /* ボタンの横幅       */
	background: #fff; /* デフォルト背景色   */
}

.switchAreaPickUpBox input[type="checkbox"] {
	display: none; /* チェックボックス非表示 */
}

.switchAreaPickUpBox label {
	display: block; /* ボックス要素に変更 */
	box-sizing: border-box; /* 枠線を含んだサイズ */
	height: 28px; /* ボタンの高さ       */
	border: 2px solid #999999; /* 未選択タブのの枠線 */
	border-radius: 14px; /* 角丸               */
}

.switchAreaPickUpBox input[type="checkbox"]:checked+label {
	border-color: #59b300; /* 選択タブの枠線     */
}

.switchAreaPickUpBox label span:after {
	content: "不要"; /* 表示する文字       */
	padding: 0 0 0 16px; /* 表示する位置       */
	color: #999999; /* 文字色             */
}

.switchAreaPickUpBox  input[type="checkbox"]:checked+label span:after {
	content: "必要"; /* 表示する文字       */
	padding: 0 16px 0 0; /* 表示する位置       */
	color: #59b300; /* 文字色             */
}

.switchAreaPickUpBox #swImg {
	position: absolute; /* 親要素からの相対位置*/
	width: 20px; /* 丸の横幅           */
	height: 20px; /* 丸の高さ           */
	background: #999999; /* カーソルタブの背景 */
	top: 4px; /* 親要素からの位置   */
	left: 4px; /* 親要素からの位置   */
	border-radius: 10px; /* 角丸               */
	transition: .2s; /* 滑らか変化         */
}

.switchAreaPickUpBox input[type="checkbox"]:checked ~ #swImg {
	transform: translateX(95px); /* 丸も右へ移動       */
	background: #59b300; /* カーソルタブの背景 */
}

.pickUpRadio {
	width: 50%;
	float: left;
}

.pickUpHowDesc {
	font-size: 11px;
	height: 70px;
}

.pickUpRadio img {
	height: 115px;
	padding: 15px 0px;
	width: 90%;
	object-fit: contain;
}

.input-desc {
	font-size: 11px;
	width: 100%;
	float: left;
}

.pickUpRadio {
	padding-top: 10px;
	width: 45%;
	float: left;
	margin: 2.3%;
	border: 1px whitesmoke solid;
	border-radius: 4px;
	color: black;
	background: white;
}

.pickUpHowTitle {
	font-weight: bold;
	margin-top: 7px;
}

.pickUpBox {
	width: 24%;
	display: inline-block;
	margin: 1.5%;
}

.pickUpBoxArea {
	display: inline-block;
}

.pickUpBox img {
	height: 185px;
}

.pickUpBoxTitle {
	font-size: 17px;
	margin: 5px 0px;
}

.pickUpBoxDesc {
	font-size: 12px;
	width: 120%;
	margin-left: -10%;
	margin-bottom: 10px;
}

.pickUpRadioArea {
	display: inline-block;
	width: 100%;
}

.order-lay input[type="radio"]+label:before {
	content: '　';
	font-family: 'FontAwesome';
	font-size: 0px;
	color: transparent;
	padding: 10px 10px;
	background-color: #d7d7d7;
	border-radius: 50%;
	vertical-align: 1px;
}

.order-lay input[type="radio"]:checked+label:before {
	background-color: #2de1a8;
	color: #2de1a8;
}

.order-lay input[type="radio"] {
	display: none;
}

.small-attention {
	font-size: 12px;
}

.pickUpBoxRadio {
	display: inline-block;
}

.pickUpBox {
	width: inherit;
}

.pickUpBoxArea {
	display: none;
}

.yamato-cancel-label {
	width: 100%;
	display: inline-block;
	font-size: 12px;
}

.pickUpArea {
	display: none;
}

.order-title {
	text-align: center;
	font-size: 20px;
	padding-top: 20px;
	padding-bottom: 20px;
	width: 80%;
	margin-left: 10%;
	margin-bottom: 40px;
	border-bottom: 1px solid whitesmoke;
	margin-top: 30px;
	font-weight: 800;
}

.order-title1 {
	padding-top: 0px;
	margin-top: 0px;
}

.order-title {
	border-bottom: 1px solid black;
}

.input select[name="deliDay"], .input select[name="pickUpiDay"] {
	margin-right: 10px;
}

.page-product-table tbody {
	max-height: 700px;
	overflow-y: scroll;
}

.search-product-form {
	width: 90%;
	padding: 30px 0px;
	text-align: center;
	margin: 0px auto;
}

input.search-text.placeholder:focus {
	outline: none;
}

input.search-text {
	padding: 10px;
	width: 90%;
	border-radius: 0px;
	float: left;
	border: 1px solid gray;
}

.search-btn {
	background: #3d3d3d;
	padding: 10.8px;
	float: left;
	display: inline-block;
	border: 1px solid;
}

.search-btn {
	padding: 11px 8.5px;
}

input.search-product.placeholder.hidden {
	display: none;
}

.search-btn:focus {
	outline: 0;
}

.price-view table tbody, .price-view table thead {
	display: block;
}

.price-view table tbody {
	max-height: 653px;
	overflow-y: scroll;
}

.price-view table tr {
	width: 100%;
	display: table;
	border-bottom: 1px solid lightgray;
}

.price-view table thead tr {
	border-bottom: 1px solid #3d3d3d;
	width: calc(100% - 16px);
}

.price-view .product-table .popup-text, .contact-page-product-link a {
	font-weight: bold;
	display: inline-block;
	transition: .3s;
	transform: scale(1);
	text-decoration: none;
}

.price-view .product-table  .popup-text:hover,
	.contact-page-product-link .a:hover {
	font-weight: bold;
	color: #f89174; /*文字色*/
}

.price-matrix td {
	padding-top: 12px;
	padding-bottom: 12px;
	width: 15%;
}

.price-matrix {
	max-width: 700px;
	margin: 0 auto;
}

.price-matrix  tbody tr:nth-child(odd) {
	background: whitesmoke;
}

.color-line {
	width: 100vw;
	margin: 60px 0px !important;
	display: inline-grid;
	background: whitesmoke;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	min-width: 1000px;
}

.color-line-content {
	width: 1200px;
	margin: 0 auto;
}

.blog {
	width: 23.5%;
	float: left;
	padding-right: 2%;
}

.blog:last-child {
	padding-right: 0%;
}

.blog-image {
	width: 100%;
	border-radius: 10px;
}

.blog a {
	text-decoration: none;
}

.blog .blog-title {
	font-weight: 700;
	color: #3d3d3d;
	line-height: 20px;
	padding: 10px 0px;
	font-size: 17px;
}

.blog-category {
	background: #3d3d3d;
	padding: 4px 4px;
	font-size: 10px;
	color: white;
	width: auto;
	display: inline-block;
	float: left;
}

.blog-image {
	width: 100%;
	height: 200px;
	object-fit: cover;
}

.blog .day {
	text-decoration: none;
	color: #3d3d3d;
	font-size: 12px;
	float: left;
	letter-spacing: 0px;
	margin-right: 10px;
	line-height: 24px;
}

.view-more {
	width: 100%;
	display: inline-block;
	text-align: right;
}

.view-more a {
	text-decoration: none;
	color: #3c3d3d;
	font-size: 16px;
	padding: 35px 0px;
	display: inline-block;
	font-weight: 900;
	letter-spacing: 2px;
}

.view-more-arrow {
	float: right;
	padding-left: 10px;
	font-weight: bold;
	color: red;
	font-family: sans-serif;
	line-height: 25px;
	font-size: 18px;
}

.blog .like {
	color: red;
	font-size: 12px;
	float: right;
	line-height: 22px;
	display: none;
}

.msg-sns-lay {
	justify-content: space-evenly;
	display: flex;
	flex-wrap: nowrap;
	margin-top: 160px;
	margin-bottom: 40px;
}

.option-recommend {
	font-size: 10px;
	line-height: 10px;
	display: inline-block;
	background: cornflowerblue;
	padding: 5px;
	color: white;
	border-radius: 5px;
	float: right;
}

.full-width-area {
	width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
}

.swiper-container1 .swiper-slide a {
	border-radius: 10px;
	box-shadow: 0px 2px 10px rgba(88, 88, 88, 0.2);
}

.swiper-container .swiper-slider a {
	border-radius: 10px;
}

.swiper-container1 .fb_img {
	width: 100%;
}

.swiper-container1 .fb_img {
	border-radius: 10px;
	height: 280px;
}

.swiper-container1 .fb_date {
    border-radius: 10px 0 0 0;
    top: -6px;
}
}

.swiper-container1 .fb_content {
	border-radius: 0 0px 10px 10px;
	height: 44px;
	margin-top: -54px;
}

.fb_like {
	display: none;
}

.swiper-container1 {
	padding-left: calc(50vw - 460px) !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	padding-right: calc(50vw - 460px) !important;
}

.line-btn-link {
	width: 280px;
	display: block;
	height: 43px;
	overflow: hidden !important;
	margin: 0 auto;
	background: #00c300;
	border-radius: 5px;
	position: relative;
	z-index: 100;
}

.line-btn-link:hover {
	background: #00e000;
}

.line-btn-img {
	width: 217px;
	padding: 0px 31px;
	position: relative;
}

.line-btn-img:hover {
	top: -46px;
}

div#AmazonLoginButton, div#AmazonRegisterButton, #RakutenLoginButton,
	#rakutenRegisterButton {
	margin-bottom: 15px;
}

.line-on {
	background: none !important;
	color: cornflowerblue !important;
	border: 2px solid cornflowerblue !important;
}

.line-off {
	background: none !important;
	color: #00c300 !important;
	border: 2px solid #00c300 !important;
}

/*
line login
*/
.line-btn-link, input#lineBtn, .line-account-label {
	display: none;
}

#RakutenLoginButton, #rakutenRegisterButton {
	margin-bottom: -5px;
}
/*
line login
*/
.fb_twitter {
	background: #00acee
}

.top-message-en {
	font-size: 24px;
	font-family: 'Alegreya Sans SC', sans-serif;
}

.message-area {
	display: inline-block;
	width: 100%;
	font-weight: 900;
}

.message-area .content {
	line-height: 80px;
	font-size: 17px;
	text-align: center;
	    margin-top: -30px;
}

.message-area .title {
	font-size: 40px;
	margin: 70px auto;
	display: block;
	text-align: center;
}


.big-html-area {
	background: #4ec9ff;
}

.big-html-area {
	background: white;
	color: #3d3d3d;
	min-width: 1200px;
}

.top-app-area .big-title-area-2 img {
	height: 650px;
}

.big-title-area-1 .title-desc img {
	width: 100%;
}

.top-president-area img {
height: 600px;
    object-fit: contain;
    width: auto;
    margin-top: 40px !important;
    padding-left: 30px;
}

.top-president-area .big-html-area {
	padding-bottom: 40px;
	background: whitesmoke;
}

.top-president-area .big-title-area-1 {
	width: 60%;
}

.top-president-area .big-title-area-2 {
	width: 35%;
}

.top-about-area .big-html-area {
	background: whitesmoke;
}

.big-html-area .footer-html {
	margin-bottom: 25px;
}

.top-app-area {
	margin: -50px 0px;
}

.big-html-area {
	padding: 30px 0px;
}

.title-desc .btn-link {
	margin-top: 30px;
}

.top-staff-area .staff-image {
	background: url('./../../../image/top-staff2.jpg') no-repeat center
		center;
	background-size: contain;
	height: 500px;
	width: 100%;
	margin: 0 auto;
}

.top-staff-area .staff-box {
	text-align: center;
	background: rgba(75, 75, 75, 0.8);
	padding: 30px;
	position: relative;
	top: 270px;
	width: 70%;
	left: 15%;
	box-sizing: border-box;
	color: white;
	margin-bottom: 40px;
}

.top-staff-area {
	margin: 40px 0px;
	margin-bottom: 80px;
}

.btn-link:hover {
	opacity: 0.8 !important;
}

.top-staff-area h1 {
	font-size: 40px;
	font-weight: 900;
}

.top-staff-area p {
	font-size: 20px;
	font-weight: 900;
}

.top-info-flex {
	display: flex;
	justify-content: space-around;
}

.top-info-flex img {
	width: 50%;
	/* border: 10px solid #3d3d3d; */
	/* border-radius: 100px; */
	padding: 20px;
	border-radius: 15px;
	border: 5px solid #3d3d3d;
	background: whitesmoke;
}

.top-info-area .info-link {
	width: 20%;
	text-align: center;
	text-decoration: none;
}

.top-info-area .info-desc {
	/* text-align: center; */
	color: #3d3d3d;
	margin-top: 20px;
	position: relative;
	font-weight: 900;
}

.top-info-area {
	margin-bottom: 50px;
}

.top-info-area .info-desc::before { /* 背景の表示設定 */
	content: "";
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	left: 22%;
	width: 23px; /* 横幅 */
	height: 23px; /* 高さ */
	border-radius: 50%; /* 角の丸み */
	background: #4682b4;
}

.top-info-area .info-desc::after { /* くの字の表示設定 */
	content: "";
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	left: 23.7%;
	width: 8px;
	height: 8px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	transform: rotate(45deg);
}

.staff-list-page .staff {
	width: 25%;
	display: inline-block;
	height: auto;
	float: left;
	padding: 1.5%;
	padding-top: 0px; box-sizing : border-box;
	position: relative;
	box-sizing: border-box;
	margin-bottom: 20px;

}
.staff-list-page .staff-frame {
		box-shadow: 0px 2px 10px rgba(88, 88, 88, 0.2);
	}
.staff-list-page .staff img {
	width: 100%;
	object-fit: cover;
	display: inline-block;
	height: 250px;
}

.staff-list-page .staff a {
	text-decoration: none !important;
}

.staff-list-page .staff .staff-job {
	top: 0;
	position: absolute;
	background: rgba(255, 255, 255, 0.8);
	color: #3d3d3d;
	font-weight: 900;
	font-size: 12px;
	padding: 5px;
}

.staff-list-page .staff-name {
    padding-top: 8px;
    padding-bottom: 5px;
    border-bottom: 1px solid crimson;
}

.staff-list-page .staff .staff-info {
	background: whitesmoke;
	padding: 10px;
	color: #3d3d3d;
	font-weight: 900;
	min-height: 160px;
}
.staff-list-page .staff-en {
    font-size: 10px;
    padding-top: 4px;

}

.staff-list-page .staff-join {
    font-size: 12px;
    font-weight: 500;
    margin-top: 15px;
    margin-bottom: 8px;
}


.staff-main-image img {
    width: 50%;
    height: 700px;
    object-fit: cover;
}

.staff-main-image .staff {
    width: 50%;
    float: right;
    padding: 5%;
    box-sizing: border-box;
    color: white;
    background: #3d3d3d;
    height: 700px;
    position: relative;
}

.staff-main-image h1 {    margin-bottom: 120px;
    margin-top: 120px;
}


.staff-main-image .staff-job {
    background: white;
    color: black;
    padding: 10px;
    /* border-radius: 28px; */
    text-align: center;
    font-weight: 900;
    /* width: 400px; */
    position: absolute;
    top: 0px;
    left: 0;
    /* width: 100%; */
    text-align: left;
    padding-left: 10%;
    background: whitesmoke;
    box-sizing: border-box;
    line-height: 35px;
    padding-right: 10%;
}


.staff-main-image  .staff-name {
    font-size: 25px;
    font-weight: 500;
}



.staff-main-image  .staff-join {
    margin-top: 30px;
}

.staff-page .big-title-area {
    background: whitesmoke;
    color: #3d3d3d;
}

.staff-page .big-title-area-1 .h1-title {
    text-align: left !important;
    font-size: 25px;
    margin-bottom: 0px;
    padding-top: 0px;
    margin-top: 20px;
}

.staff-page .big-title-area-1 .title-desc {
    font-size: 15px;
    line-height: 27px;
    padding-bottom: 25px;
}

.staff-page .big-title-area-left-img .big-title-area-2 {
    height: 100%;
}

.staff-page .big-title-area-2 img {
    height: 100%;
}

.staff-page .btn-link {
    line-height: 65px;
	font-weight: 900;
	    border-radius: 900px;
    margin-bottom: 50px;
}
.staff-list-page .top-staff-area {
    margin-top: 0px;
}

.base-page .page-main-image {
    width: 80%;
    display: block;
    margin: 0 auto;
    margin-bottom: 40px;
}

.base-page .big-title-area-2 img{
	height: auto;
}


.base-page .h1-sub-title {
    line-height: 48px;
    margin: 50px 0px;
}

.base-page .big-title-area:nth-child(odd) {
    color: #3d3d3d;
    background: no-repeat;
}

.base-page .big-title-area:nth-child(even) {
    color: #3d3d3d;
    background: whitesmoke;
}

.base-page .big-title-area  .h1-title {
    font-size: 30px;
    margin: 20px 0;
    border-bottom: 1px solid crimson;
}

.base-page .big-title-area .h1-sub-title {
    margin: 0;
    font-size: 18px;
    line-height: 25px;
    margin-bottom: 20px;
}
.base-page .big-title-area-1 .title-desc {
    font-size: 15px;
    line-height: 42px;
    margin-bottom :25px;
}


.job-staff-msg {
    background: #3d3d3d;
    color: white;
    padding: 40px;
    width: 50%;
    display: block;
    margin: 0 auto;
    text-align: center;
}
.job-staff-msg p {
    margin-top: 0;
}

.job-staff-list {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    justify-content: center;
        margin-top: -35px;
}

.job-staff img {
    width: 100%;
    border-radius: 100px;
}

.job-staff {
    width: 10%;
    display: inline-block;
    margin: 0 15px;
}
.job-staff a:hover {
    opacity: 1;
}
.job-staff a:hover img {
	border:4px solid darkorange;
	box-sizing: border-box;
}

.job-staff a {
    text-decoration: none;
    color: #3d3d3d;
    font-weight: 500;
}

.job-staff .staff-name {
    text-align: center;
    margin-top: 10px;
    font-size: 14px;
    font-weight: 500;
}
.base-page .big-html-area .footer-html {
    margin-bottom: 25px;
    display: inline-block;
    width: 100%;
        margin-top: 40px;
}

.base-page .big-html-area {
    padding: 0;
}
h2.qa-category {
    font-size: 25px;
}
.q-div {
    background: whitesmoke;
    padding: 10px;
    font-size: 14px;
    font-weight: 600;
}

.a-div {
    padding: 10px;
    font-size: 14px;
    font-weight: 600;
}
.top-info-area .info-desc {
    margin-left: 13px;
}

.event-area {
    display: flex;
    justify-content: center;
}

.event {
box-sizing: border-box;
    padding: 1%;
    width: 25%;
    display: inline-block;
}

.event img {
    width: 100%;
    border-radius: 10px;
    height: 250px;
    object-fit: cover;
}


.event-name {
    margin-top: 20px;
    font-size: 18px;
    font-weight: 900;
    margin-bottom: 20px;
    padding: 15px;
    background: whitesmoke;
    border-radius: 10px;
    text-align: center;
}

.event-desc {
    font-size: 14px;
    line-height: 30px;
    padding: 10px;
}

.base-page .small-title-area .h1-title {
    /* text-align: center; */
    width: 100%;
    margin: 0px!important;
    font-size: 26px;
}

.base-page .small-title-area .h1-sub-title {
    width: 100%;
    margin: 0px!important;
    font-size: 18px;
    margin-bottom: 25px!important;
}

.base-page .small-title-area .h1-title {
    /* text-align: center; */
    width: 95%;
    margin: 0px!important;
    font-size: 22px;
    padding: 17px;
    background: linear-gradient(to left, #e72941 5%, #fe7c43 100%);
    /**
    linear-gradient(to left, #e72941 5%, #fe7c43 100%);
    **/
    color: white;
    margin: 30px 1%!important;
}

.event-area,.benefit-element-area {
    margin-bottom: 40px;
}

.benefit-element-area {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

/**
.benefit-element {
 width: 20%;
    margin: 2.5%;
    box-sizing: border-box;
    padding: 20px 10px;
    text-align: center;
    border: 5px solid #4ec9ff;
    display: grid;
    place-items: center center;
}
**/

.benefit-element {
width: 20%;
    margin: 2.5%;
    box-sizing: border-box;
    padding: 10px 10px;
    text-align: center;
    border: 5px solid #4ec9ff;
    display: grid;
    place-items: center center;
    /* background: whitesmoke; */
    color: #3d3d3d;
    font-size: 17px;
    font-weight: 900;
    border-radius: 10px;
}



.benefit-element .asterisk {
    font-size: 12px;
    margin-top: 5px;
}




.info-page .small-title-area .h1-title {
    width: 30%;
    padding: 10px;
    font-size: 18px;
    background: linear-gradient(to left, #e72941 5%, #fe7c43 100%);
    /**
    linear-gradient(to left, #e72941 5%, #fe7c43 100%);
	**/
    margin-top: 50px!important;
    margin-bottom: 15px!important;
}


.info-page .small-title-area .h1-sub-title {
    text-align: left!important;
    padding: 10px;
    font-size: 14px;
    line-height: 30px;
    margin: 5px 0!important;
}



.info-table td {
    border-bottom: 1px solid;
    padding: 25px;
	font-weight: 700;
}



.info-table {
    border-spacing: 0px;
}

.info-table {
    font-size: 14px;
    line-height: 28px;
}


.info-table tr:last-child td {
    border: none;
}

.info-table {
    margin-top: 100px;
    margin-bottom: 50px;
}


.header-lay {
    display: table;
    height: 96px;
}

.header-v a {
    color: #3d3d3d;
    display: inline-block;
}


.menu-g2 {
height: 50px;
    width: 930px;
    line-height: 111px;
    float: right;
    text-align: right;
    margin-right: 10px;
}

.site-title {
    position: absolute;
    margin-left: 145px;
    top: 36px;
    font-size: 15px;
    font-weight: 600;
}

.menu-g1 {
    width: auto;
    position: absolute;
    margin-left: 793px;
}
.top-officer-area .h2-img {
	object-fit: contain;
    height: 600px;
	}


.top-officer-area .big-title-area-1 .h1-title {
    font-size: 73px;
}

.top-officer-area .title-desc img {
    margin: 10px auto;
    width: auto;
    display: block;
}



.top-officer-area .big-title-area-2 {
    width: 40%;
    margin-top: 180px;
}
.top-officer-area .big-title-area-1 {
       width: 60%;
    box-sizing: border-box;
}

.job-page .page-main-image {
    height: auto;
    width: auto;
}
.career-page .page-main-image {
    height: auto;
    width: auto;
}

.contact-lay .attention h3 {
    margin: 0px;
    border: solid 0px;
    padding: 0px;
    text-align: left!important;
}


.top-profile-area .big-title-area-2{
	display:none;
}

.top-profile-area .big-title-area-1{
	width: 100%;

}

.top-profile-area h2{
	text-align: left!important;

}

.top-profile-area .big-title-area {
    background: whitesmoke;
}

.displaynone{
	display: none;
}

img[src="image/nikkei.jpg"] {
    aspect-ratio: auto;
}



.japan-area .big-title-area-1 .h1-title {
    font-size: 60px;
    line-height: 70px;
}


.japan-area .big-title-area-1 .h1-sub-title {
    margin-bottom: 20px;
}


.staff-main-image {
    margin-top: 40px;
}

.grecaptcha-badge { visibility: hidden; }

p.recaptcha {
    font-size: 11px;
    text-align: center;
    line-height: 1.4;
}

.info-table-val .flow-left {
    width: 50%;
    float: left;
}

.info-table-val .flow-right {
    width: 50%;
    float: left;
}

.info-table-val img.flow-right-img {
    width: 300px;
    border-radius: 10px;
    margin-top: 75px;
   	box-shadow: 0px 2px 10px rgba(88, 88, 88, 0.2);

}

.info-table-val .flow-right div {
    text-align: center;
    font-size: 12px;
    margin-top: 5px;
}

.modal-video-h2-wrap .youtube-iframe{
	margin: 0px;
	width: 100%;
	height: 100%;
}

.modal-video-h2-wrap{
    width: 600px;
    margin-right: 24px;
    aspect-ratio: 1.3;
}


.big-title-area .normal-video {
    height: 100%;
}

.modal-img[src="image/dx.jpg"] {
height: auto !important;
width: 100%;
    margin-right: 0px !important;

}

.dx-wrap {
    height: 500px;
    overflow-y: auto;
    width: 50%;
    float: left;
    margin-right: 3%;
}


.youtube-small-content .small-content-img-wrap {
    position: relative;
    display: inline-block;
    width: 100%;
    float: left;
}

.small-content-youtube-wrap{
    position: relative;
    display: inline-block;
}

.small-content-youtube-wrap:after {
  content: ""; /* 必須 */
  position: absolute;
  width: 48px; /* アイコンの幅 */
  height: 48px; /* アイコンの高さ */
  background-image: url('../../../image/youtube-icon.png'); /* アイコンのパス */
  background-size: cover; /* 背景サイズをカバーに設定 */
  top: 50%; /* 親要素の上部から50%の位置 */
  left: 50%; /* 親要素の左側から50%の位置 */
  transform: translate(-50%, -50%); /* 中心を基準に配置 */
  pointer-events: none; /* 擬似要素によるクリックイベントのブロックを防ぐ */
}

.small-content-youtube-wrap2:after {
	width: 80px;
    height: 80px;
}

.h2-youtube-content .content-youtube-wrap {
    float: left;
    margin-right: 5%;
}

p.qa.qai {
    width: 60%;
}

.qa-img {
    float: right;
    width: 21.5%;
    margin-right: 5%;
}


.qa-img img {
    width: 100%;
    border-radius: 10px;
    box-shadow: 0px 2px 10px rgba(88, 88, 88, 0.2);
    float: right;
}

.swiper-attention {
    text-align: center;
    top: -10px;
    position: relative;
}





.talk-main ,.talk-page .talk-main img{
    height: 500px;
}

.talk-page .talk-main img {
    width: 1200px;
    position: absolute;
    object-fit: cover;
}

.talk-page .talk-title {
    background: black;
    z-index: 100;
    position: relative;
    padding: 50px;
    text-align: center;
    color: white;
    top: 155px;
}


.talk-page .talk-title {
    background: black;
    z-index: 100;
    position: relative;
    padding: 50px;
    text-align: center;
    color: white;
    top: 140px;
    width: 80%;
    margin: 0 auto;
    background-color: rgba(0, 0, 0, 0.2);
}

.talk-staff-list-area-wrap,.talk-staff-list-area{
	height: 300px;
}

.talk-staff-list-area {
    background: whitesmoke;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
}


.talk-staff-list {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    justify-content: center;
}

.talk-staff img {
    width: 100%;
    border-radius: 10px;
}

.talk-staff {
    width: 100px;
    display: inline-block;
    margin: 0 15px;
}
.talk-staff a:hover {
    opacity: 1;
}
.talk-staff a:hover img {
	border:4px solid darkorange;
	box-sizing: border-box;
}

.talk-staff a {
    text-decoration: none;
    color: #3d3d3d;
    font-weight: 500;
}

.talk-staff .staff-name {
    text-align: center;
    margin-top: 10px;
    font-size: 14px;
    font-weight: 500;
}



.talk-page .talk-desc {
    display: block;
    padding: 0px 50px;
    margin: 50px auto;
    line-height: 40px;
}

.talk-page .talk {
    padding: 0px 50px;
	margin-top: 70px;
}


.talk-staff-list-title {
    text-align: center;
    font-size: 22px;
    font-weight: 900;
    margin: 30px 0;
}


.talk-staff-list .staff-job {
    font-size: 10px;
    text-align: left
}

.talk-staff .staff-name {
    text-align: left;
    margin-top: 15px;
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 8px;
}

.talk-staff-name {
	display: inline-block;
	font-weight: 900;
    letter-spacing: 3px;
}

.talk-ele {
    margin: 40px 0px;
}

.talk-value {
    line-height: 30px;
    font-size: 16px;
        display: inline;
}


.talk-value img {
    width: 100%;
    max-height: 600px;
    object-fit: cover;
	box-shadow: 0px 2px 10px rgba(88, 88, 88, 0.2);
}

.talk-page .btn-link {
    line-height: 65px;
    font-weight: 900;
    border-radius: 900px;
    margin-bottom: 50px;
}


.talk-title h1 {
    text-align: left;
}

.talk-list-page .talk {
	width: 25%;
	display: inline-block;
	height: auto;
	float: left;
	padding: 1.5%;
	padding-top: 0px; box-sizing : border-box;
	position: relative;
	box-sizing: border-box;
	margin-bottom: 20px;

}
.talk-list-page .talk-frame {
		box-shadow: 0px 2px 10px rgba(88, 88, 88, 0.2);
	}
.talk-list-page .talk img {
	width: 100%;
	object-fit: cover;
	display: inline-block;
	height: 250px;
}

.talk-list-page .talk a {
	text-decoration: none !important;
}

.talk-list-page .talk .talk-job {
	top: 0;
	position: absolute;
	background: rgba(255, 255, 255, 0.8);
	color: #3d3d3d;
	font-weight: 900;
	font-size: 12px;
	padding: 5px;
}

.talk-list-page .talk-name {
    padding-top: 8px;
    padding-bottom: 1px;
    border-bottom: 1px solid crimson;
}

.talk-list-page .talk-join {
    font-size: 12px;
    font-weight: 500;
    margin-top: 15px;
    margin-bottom: 8px;
}


.talk-list-page .talk .talk-info {
	background: whitesmoke;
	padding: 10px;
	color: #3d3d3d;
	font-weight: 900;
	min-height: 160px;
}

.talk-list-page .talk-desc {
    font-size: 12px;
    padding-top: 10px;
}

.talk-list-page .talk-name {
    padding-top: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid crimson;
    font-size: 15px;
        height: 42px;
}


.top-talk-area .talk-image {
	background: url('./../../../image/top-talk2.jpg') no-repeat center
		center;
	height: 450px;
	width: 100%;
	margin: 0 auto;
	    background-size: cover;
}

.top-talk-area .talk-box {
	text-align: center;
	background: rgba(75, 75, 75, 0.8);
	padding: 30px;
	position: relative;
	top: 270px;
	width: 70%;
	left: 15%;
	box-sizing: border-box;
	color: white;
	margin-bottom: 40px;
}

.top-talk-area {
	margin: 40px 0px;
	margin-bottom: 80px;
}

.btn-link:hover {
	opacity: 0.8 !important;
}

.top-talk-area h1 {
	font-size: 40px;
	font-weight: 900;
	margin-top: 10px;
}

.top-talk-area p {
	font-size: 20px;
	font-weight: 900;
}


.talk-narration {
    font-weight: 900;
    padding: 30px;
    /* background: whitesmoke; */
    border: 1px solid #3d3d3d;
    border-radius: 10px;
}




.staff-page .talk {
	width: 25%;
	display: inline-block;
	height: auto;
	float: left;
	padding: 1.5%;
	padding-top: 0px; box-sizing : border-box;
	position: relative;
	box-sizing: border-box;
	margin-bottom: 20px;

}
.staff-page .talk-frame {
		box-shadow: 0px 2px 10px rgba(88, 88, 88, 0.2);
	}
.staff-page .talk img {
	width: 100%;
	object-fit: cover;
	display: inline-block;
	height: 250px;
}

.staff-page .talk a {
	text-decoration: none !important;
}

.staff-page .talk .talk-job {
	top: 0;
	position: absolute;
	background: rgba(255, 255, 255, 0.8);
	color: #3d3d3d;
	font-weight: 900;
	font-size: 12px;
	padding: 5px;
}

.staff-page .talk-name {
    padding-top: 8px;
    padding-bottom: 1px;
    border-bottom: 1px solid crimson;
	height: 42px;
}

.staff-page .talk-join {
    font-size: 12px;
    font-weight: 500;
    margin-top: 15px;
    margin-bottom: 8px;
}


.staff-page .talk .talk-info {
	background: whitesmoke;
	padding: 10px;
	color: #3d3d3d;
	font-weight: 900;
	min-height: 160px;
}

.staff-page .talk-desc {
    font-size: 12px;
    padding-top: 10px;
}

.staff-page .talk-name {
    padding-top: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid crimson;
    font-size: 15px;
}

.staff-page-talk-list {
    text-align: center;
    font-size: 18px;
    padding: 30px;
        border-top: 1px solid #3d3d3d;
    box-sizing: border-box;
    margin-top: 20px;
    display: inline-block;
    width: 97%;
    margin-left: 1.5%;
}

.talk-main {
    margin-top: 40px;
}

.talk-list .talk-member img {
    width: 19%;
    height: 19%;
    border-radius: 30px;
    margin: 0.5%;
    margin-top: 13px;
}

.talk-value .video-h2-wrap {
    margin-right: 0px;
    float: right;
    margin-left: 20px;
}

.talk-value .video-h2-wrap {
    margin-right: 0px;
    float: right;
    margin-left: 20px;
    width: 50%;
}

.big-title-area .normal-video {
    height: 430px;
}




.training-summary {
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
        margin-bottom: 40px;
}

.training-summary .training {
    width: 10%;
    text-align: center;
}

.training-summary .name {
    writing-mode: vertical-rl;
    text-orientation: upright;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 300px;
    flex-direction: row;
    width: 100%;
    padding-top: 15px;
    align-content: stretch;
}

.training-summary .training {
    width: 10%;
    text-align: center;
    border-radius: 10px;
    margin: 0.5%;
 	box-shadow: 0px 2px 10px rgba(88, 88, 88, 0.2);

}
.training-summary .type {
    padding: 5px;
    font-size: 12px;
    background: #59a0e0;
    color: white;
}

.training-summary .type-event {
    background: #ff0111;
}

.training-summary .date {
    color: white;
    background: gray;
    border-radius: 10px 10px 0px 0px;
    padding: 6px;
    font-weight: 700;
}


.training-e {
    margin: 30px 0px;
    display: inline-block;
    width: 100%;
}

.training-e .name {
    font-size: 25px;
    font-weight: 900;
}

.training-e .type {
    padding: 5px;
    font-size: 14px;
    background: #59a0e0;
    color: white;
    /* margin-left: 25px; */
    border-radius: 10px;
    padding: 5px 21px;
    margin-top: 10px;
    width: auto;
    display: inline-block;
}

.report {
    background: whitesmoke;
    display: inline-block;
    padding: 15px;
    font-size: 14px;
    line-height: 27px;
    border-radius: 10px;
    margin: 15px;
}


.training-e .type-event {
    background: #ff0111;
}

.training-e .training-info{
	width: 80%;
	float: left;
}

.training-e .image {
    width: 20%;
    float: left;
    border-radius: 10px;
}

.training-e .desc {
  float: none;
}


.training-e .desc {
    float: none;
    width: 100%;
    display: inline-block;
    line-height: 35px;
    margin-top: 10px;
}


.philosophy-page .big-title-area-1 {
    width: 100%;
    padding: 0%;
}

.philosophy-page .content-label {
    background: linear-gradient(to left, #e72941 5%, #fe7c43 100%);
    /* padding: 0px 30px; */
    color: white;
    width: 200px;
    font-size: 20px;
    line-height: 50px;
    text-align: center;
    margin-bottom: 15px;
}

.philosophy-page .big-title-area-1 .h1-title {
    line-height: 50px;
    padding: 15px 0px;
}

.philosophy-page .big-title-area{
	background: none!important;
	margin: 30px 0px!important;
}
.message-area .btn-link {
    line-height: 45px;
	    margin-top: 45px;
}


.review-list .review .review_content .review_image, .popup-content .review .review_content .review_image {
    max-width: 250px;
    max-height: 150px;
    float: right;
    margin-left: 20px;
	box-shadow: 0px 2px 10px rgba(88, 88, 88, 0.2);
    border-radius: 5px;
}

.swiper-slide .review_image {
    width: 18%;
    float: right;
    margin-left: 4%;
    margin-top: 6px;
    border-radius: 4px;
	box-shadow: 0px 2px 10px rgba(88, 88, 88, 0.2);
}





.swiper-container3 {
    width: 400px;
    float: left;
    margin-right: 5% !important;
    padding: 0px !important;
    margin-bottom: 0px !important;
    padding-left: 50px !important;
    padding-right: 50px !important;
    box-sizing: border-box;
}

.swiper-container3 .swiper-content2 {
    height: 37px !important;
    line-height: 17px;
    font-size: 11px;
    background: whitesmoke;
    color: black;
    padding: 5px 9px;
}
.swiper-container3 .swiper-content2 .price {
    margin-bottom: 3px;
}


.swiper-container3 .swiper-button-prev, .swiper-container3 .swiper-button-next {
    display: block;
    margin-top: -57px;
    z-index: 100;
    height: 26px;
}




.top-message-area .small-content2 {
    height: auto;
}

.top-message-area img.h2-img {
    object-fit: contain;
    background: no-repeat;
    height: 400px;
}

.top-message-area .small-content2 .h2 {
    font-size: 40px;
    padding-top: 15px;
}
.modaal-inner-wrapper .big-html-area {
    width: 100%;
    height: auto;
    margin: 0px !important;
}

.modaal-container .big-html-area img {
    height: 635px;
    object-fit: contain;
}

.modaal-container .big-title-area-1 .h1-title {
    font-size: 50px;
    margin-top: 0;
}
.top-message-area .sub-title {
    text-decoration: none;
    color: #3d3d3d;
    text-align: center;
    margin-top: -25px;
    margin-bottom: 10px;
    font-size: 17px;
    font-weight: bold;
}
.top-message-area .footer {
    display: inline-block;
    text-align: center;
    width: 100%;
    color: #3d3d3d;
    margin: 2% 0%;
    font-weight: bold;
    font-size: 16px;
    margin-bottom:10px;
}



.top-message-area .btn-link {
	padding: 5px;
	}

	.small-content-group2 .small-content3 {
    height: 330px;
}

.small-content-group2 .small-content2 {
    height: 390px;
}

.small-content-group2 .content-summary {
    padding: 0px 10px;
    text-align: left;
}
.big-title-area-wrap .video-h2-wrap {
    width: 100%;
    height: 100%;
}

.sns img {
    width: 26px !important;
    height: auto !important;
    top: 6px;
    position: relative;
}

.sns {
    margin-right: 15px;
}
.president-name {
    margin-right: 15px;
    display: inline-block;
}



.no-popup.internal-link {
    background: #fff url(../../../image/L-right-link.png) right 8px bottom 8px no-repeat;
    background-size: 15px;
}


.staff-is-new {
    background: gray;
    position: relative;
    right: 0;
    display: inline-block;
    float: right;
    font-size: 10px;
    padding: 3px 8px;
    border-radius: 3px;
    color: white;
    top:9px;
}

.staff-page .staff-is-new {
    margin-top: 8px;
    float: none;
    font-size: 12px;
    margin-bottom: 7px;
    position: relative;
    top: auto;
    right: 0;
    border-radius: 3px;
}


.swiper-containerSmooth{
	width: 100vw;
}


.swiper-containerSmooth .fb_img{
	width: 100%;
}

.swiper-containerSmooth .swiper-slide{
	width: 400px!important;
	border-radius: 10px;
	overflow: hidden;
}

.swiper-containerSmooth .item{
	display: inline-block;
	float: left;
	background: #3d3d3d;
	padding: 0px 10px;
	border-radius: 5px;
	margin-right: 10px;
	margin-left: 5px;
		opacity: 0.9;
}

.swiper-containerSmooth .customer{
	display: inline-block;
	float: left;
	background: #3d3d3d;
	padding: 0px 10px;
	border-radius: 5px;
		opacity: 0.9;
}

.swiper-containerSmooth .fb_content{
	background: none;
	opacity: 1;
	margin-top:-55px;
}



.header-base {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #fff;
    z-index: 1000;
    width: 100%;
      transform: translateY(0);
  transition: transform 0.25s ease-out;
  will-change: transform;

}

.header-base.is-hidden {
  transform: translateY(-100%);
}
body {
padding-top: 96px;
}


/* ============================================================
   ★ 全 FAQ 共通スタイル (DeliServiceUtil.createQa の出力に適用)
   ----------------------------------------------------------------
   ネット (jasperNetdeSentaku) と統一されたバージョン。
   既存 HTML 構造 (createQa 出力):
     <div class="page-qa-area">
       <div class="qa-div q-div hide-show-btn" href="#section-id1">
         <div class="q">Q</div><p class="qa">…</p>
       </div>
       <div id="section-id1" class="qa-div a-div hide-show-area">
         <div class="a">A</div><p class="qa">…</p>
       </div>
     </div>
   既存 JS:  $('.hide-show-area').hide(); $('.hide-show-btn').click → fadeToggle()

   ★ ポイント:
     - a-div の display は触らない (hide-show を活かす)
     - Q タイル: flex で並べる、 A タイル: position:absolute で配置
     - line-height とタイル高さを合わせて縦中央を完全一致
     - mstyle.css の旧 .qa-div 系競合は !important で打ち消し
   ============================================================ */
.page-qa-area {
    margin: 30px auto !important;
    padding: 0 16px !important;
    box-sizing: border-box;
}

/* カード共通 (display は絶対に触らない！ a-div の hide-show を活かすため) */
.page-qa-area .qa-div {
    width: 100% !important;
    box-sizing: border-box !important;
    background: #fff;
    position: relative;
    box-shadow: 0 1px 2px rgba(0,0,0,0.02);
    margin-top: 0 !important;
    vertical-align: top;
}

/* ── 質問バー ───────────────────────────────────── */
.page-qa-area .qa-div.q-div {
    background: #faf8f3;
    cursor: pointer;
    padding: 14px 44px 14px 18px;
    border: 1px solid #ececec;
    border-radius: 10px;
    margin-bottom: 8px;
    display: flex !important;
    align-items: flex-start;
    gap: 10px;
    transition: background 0.2s ease;
}
.page-qa-area .qa-div.q-div:hover {
    background: #f5efde;
}

/* + / − アイコン */
.page-qa-area .qa-div.q-div::after {
    content: "+";
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 22px;
    line-height: 1;
    color: #b38a4d;
    font-weight: 300;
    pointer-events: none;
}

/* ── 回答パネル (display は絶対に指定しない) ────────── */
.page-qa-area .qa-div.a-div {
    padding: 14px 0px 18px 52px;
    border: 1px solid #ececec;
    border-top: 0;
    border-radius: 0 0 10px 10px;
    margin-bottom: 8px;
    position: relative;
}

/* A タイルは絶対配置で a-div 左上に固定 */
.page-qa-area .qa-div.a-div .a {
    position: absolute !important;
    top: 14px !important;
    left: 18px !important;
    float: none !important;
    margin: 0 !important;
}
.page-qa-area .qa-div.a-div .qa {
    overflow: visible !important;
    padding-bottom: 0 !important;
}
.page-qa-area .qa-div.a-div::after {
    content: none !important;
    display: none !important;
}

/* ── 開いてる時の連結 (Q の下を角張らせる) ────────────────────── */
.page-qa-area .qa-div.q-div:has(+ .a-div[style*="display: block"]),
.page-qa-area .qa-div.q-div:has(+ .a-div[style*="display:block"]) {
    border-radius: 10px 10px 0 0;
    border-bottom-color: #f0e8d4;
    margin-bottom: 0;
}
.page-qa-area .qa-div.q-div:has(+ .a-div[style*="display: block"])::after,
.page-qa-area .qa-div.q-div:has(+ .a-div[style*="display:block"])::after {
    content: "−";
}

/* ── Q / A ラベル (丸タイル) ────────────────── */
.page-qa-area .qa-div .q,
.page-qa-area .qa-div .a {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 24px !important;
    height: 24px !important;
    flex-shrink: 0;
    border-radius: 50%;
    font-size: 12.5px;
    font-weight: 800;
    line-height: 1 !important;
    float: none !important;
    margin: 0 !important;
}
.page-qa-area .qa-div .q { background: #b38a4d; color: #fff; }
.page-qa-area .qa-div .a { background: #6b9e7f; color: #fff; }

/* ── 質問・回答テキスト (.qa は <p>) ─────────── */
.page-qa-area .qa-div .qa {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 14px;
    line-height: 1.7;
    color: #1d1d1f;
    text-align: left;
    word-break: break-word;
}
.page-qa-area .qa-div.q-div .qa { font-weight: 700; flex: 1; min-width: 0; }
.page-qa-area .qa-div.a-div .qa { color: #333; line-height: 1.7; }

/* リンク色 */
.page-qa-area .qa-div .qa a {
    color: #b38a4d;
    text-decoration: underline;
}
.page-qa-area .qa-div .qa a:hover { color: #8c6730; }

/* ── フッターの「FAQページ」 案内 ─────────────── */
.page-qa-area .qa-footer {
    margin-top: 18px;
    text-align: center;
    font-size: 12.5px;
    color: #6e6e73;
}
.page-qa-area .qa-footer a {
    color: #b38a4d;
    font-weight: 700;
    text-decoration: underline;
}

/* ── スマホ最適化 ───────────────────────────── */
@media (max-width: 560px) {
    .page-qa-area {
        padding: 0 12px !important;
        margin: 20px auto !important;
    }
    .page-qa-area .qa-div.q-div {
        padding: 12px 38px 12px 14px;
        gap: 8px;
    }
    .page-qa-area .qa-div.a-div {
        padding: 12px 0px 14px 44px;
    }
    .page-qa-area .qa-div.a-div .a {
        top: 12px !important;
        left: 14px !important;
    }
    .page-qa-area .qa-div .q,
    .page-qa-area .qa-div .a {
        width: 22px !important;
        height: 22px !important;
        font-size: 11px;
    }
    .page-qa-area .qa-div .qa { font-size: 13px; line-height: 1.7; }
    .page-qa-area .qa-div.q-div::after { right: 14px; font-size: 20px; }
}


/* ============================================================
   ★ FAQ 「常時両表示」 モード (.page-qa-area.always-open)
   ----------------------------------------------------------------
   アコーディオン (hide-show) を使わず、 Q + A を常時両方表示する
   ページ向けの修飾子。 リクルートの採用 FAQ 等で使用。
   - +/− 開閉アイコンを非表示
   - Q バーのカーソルを default に
   - Q と A を常に連結 (Q の下を角張らせ、 隙間ゼロ)
   ============================================================ */
.page-qa-area.always-open .qa-div.q-div {
    cursor: default;
    border-radius: 10px 10px 0 0;
    border-bottom-color: #f0e8d4;
    margin-bottom: 0;
}
.page-qa-area.always-open .qa-div.q-div:hover {
    background: #faf8f3;
}
.page-qa-area.always-open .qa-div.q-div::after {
    content: none;
}
/* A は hide-show-area が付いていなくても確実に表示 (※元の HTML では既に表示状態) */
.page-qa-area.always-open .qa-div.a-div {
    margin-bottom: 16px;          /* 次の Q-A セットとの間隔を広めに */
}
/* Recruit top: recruitment message and employee survey */
.hero-recruit-message {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100vw;
	height: 700px;
	padding: 88px 32px 30px;
	box-sizing: border-box;
	background: linear-gradient(180deg, rgba(15, 15, 15, .12) 0%, rgba(15, 15, 15, .28) 62%, rgba(15, 15, 15, .52) 100%);
	border: 0;
	text-align: center;
	line-height: 1.5;
	text-shadow: 0 2px 12px rgba(0, 0, 0, .8);
}
.hero-recruit-kicker {
	margin-bottom: 14px;
	color: #fff;
	font-family: 'Alegreya Sans SC', sans-serif;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: .2em;
}
.hero-recruit-message-title {
	color: #fff;
	font-size: 44px;
	font-weight: 600;
	line-height: 1.45;
	letter-spacing: .06em;
}
.hero-recruit-message-desc {
	margin-top: 18px;
	color: #fff;
	font-size: 17px;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: .05em;
}
.hero-recruit-brand {
	margin-top: 17px;
	color: rgba(255, 255, 255, .82);
	font-size: 13px;
	font-weight: 400;
	letter-spacing: .12em;
}
.hero-recruit-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 152px;
	height: 44px;
	margin-top: 22px;
	border: 1px solid rgba(255, 255, 255, .9);
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: .1em;
	text-decoration: none;
	text-shadow: none;
	transition: color .25s ease, background-color .25s ease;
}
.hero-recruit-link:hover {
	background: #fff;
	color: #3d3d3d;
}
.top-survey-area {
	position: relative;
	padding: 92px 32px 96px;
	overflow: hidden;
	background: #f5f5f3;
	color: #3d3d3d;
}
.top-survey-area::before {
	content: '';
	position: absolute;
	top: -130px;
	right: -110px;
	width: 340px;
	height: 340px;
	border: 42px solid rgba(231, 41, 65, .07);
	border-radius: 50%;
}
.top-survey-inner {
	position: relative;
	z-index: 1;
	max-width: 1120px;
	margin: 0 auto;
}
.top-section-label {
	margin-bottom: 10px;
	color: #e72941;
	font-family: 'Alegreya Sans SC', sans-serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .18em;
}
.top-survey-area h2 {
	margin: 0;
	font-size: 38px;
	font-weight: 700;
	letter-spacing: .04em;
	line-height: 1.45;
}
.top-survey-lead {
	margin: 12px 0 38px;
	font-size: 16px;
	line-height: 1.9;
}
.top-survey-summary {
	display: grid;
	grid-template-columns: 180px 240px 1fr;
	grid-template-rows: auto auto;
	align-items: center;
	gap: 2px 28px;
	padding: 32px 38px;
	background: #3d3d3d;
	box-shadow: 0 18px 45px rgba(0, 0, 0, .14);
	color: #fff;
}
.top-survey-summary-label {
	grid-row: 1 / 3;
	padding-right: 28px;
	border-right: 1px solid rgba(255,255,255,.25);
	font-size: 16px;
	font-weight: 700;
	letter-spacing: .08em;
}
.top-survey-summary-score {
	grid-row: 1 / 3;
	color: #fff;
	font-size: 82px;
	font-weight: 800;
	letter-spacing: -.04em;
	line-height: 1;
}
.top-survey-summary-score small,
.top-survey-card-score small {
	margin-left: 5px;
	font-size: .24em;
	font-weight: 700;
	letter-spacing: .04em;
}
.top-survey-summary-rank {
	align-self: end;
	color: #fff;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.45;
}
.top-survey-summary p {
	align-self: start;
	margin: 6px 0 0;
	color: rgba(255,255,255,.78);
	font-size: 13px;
	line-height: 1.75;
}
.top-survey-grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 12px;
	margin-top: 18px;
}
.top-survey-card {
	min-width: 0;
	padding: 24px 18px 20px;
	background: #fff;
	border-top: 3px solid #e72941;
	box-shadow: 0 8px 25px rgba(0,0,0,.06);
}
.top-survey-card-label {
	min-height: 48px;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.65;
}
.top-survey-card-score {
	margin-top: 12px;
	color: #e72941;
	font-size: 40px;
	font-weight: 800;
	letter-spacing: -.04em;
	line-height: 1;
}
.top-survey-bar {
	height: 5px;
	margin-top: 17px;
	overflow: hidden;
	background: #e6e6e6;
}
.top-survey-bar span {
	display: block;
	width: var(--survey-rate);
	height: 100%;
	background: #e72941;
	transform: scaleX(1);
	transform-origin: left center;
}
.top-survey-note {
	margin: 18px 0 0;
	color: #777;
	font-size: 12px;
	line-height: 1.7;
}
.reveal-enabled .js-reveal {
	opacity: 0;
	transform: translateY(28px);
	transition: opacity .7s ease, transform .7s cubic-bezier(.22, 1, .36, 1);
}
.reveal-enabled .js-reveal.is-visible {
	opacity: 1;
	transform: translateY(0);
}
.reveal-enabled .top-survey-card:nth-child(2) { transition-delay: .06s; }
.reveal-enabled .top-survey-card:nth-child(3) { transition-delay: .12s; }
.reveal-enabled .top-survey-card:nth-child(4) { transition-delay: .18s; }
.reveal-enabled .top-survey-card:nth-child(5) { transition-delay: .24s; }
.reveal-enabled .top-survey-bar span {
	transform: scaleX(0);
	transition: transform 1.1s cubic-bezier(.22, 1, .36, 1) .15s;
}
.reveal-enabled .top-survey-card.is-visible .top-survey-bar span {
	transform: scaleX(1);
}
@media (max-width: 900px) {
	.top-survey-summary {
		grid-template-columns: 140px 190px 1fr;
		gap: 2px 20px;
		padding: 28px;
	}
	.top-survey-summary-score { font-size: 66px; }
	.top-survey-summary-rank { font-size: 20px; }
	.top-survey-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
	.hero-recruit-message {
		height: 300px;
		padding: 16px 18px 10px;
		background: linear-gradient(180deg, rgba(15, 15, 15, .13) 0%, rgba(15, 15, 15, .31) 55%, rgba(15, 15, 15, .58) 100%);
	}
	.hero-recruit-kicker {
		margin-bottom: 7px;
		font-size: 10px;
		letter-spacing: .18em;
	}
	.hero-recruit-message-title {
		font-size: 23px;
		font-weight: 600;
		line-height: 1.42;
		letter-spacing: .03em;
	}
	.hero-recruit-message-desc {
		margin-top: 8px;
		font-size: 11.5px;
		line-height: 1.55;
		letter-spacing: .02em;
	}
	.hero-recruit-brand {
		margin-top: 7px;
		font-size: 9.5px;
		letter-spacing: .06em;
	}
	.hero-recruit-link {
		min-width: 124px;
		height: 32px;
		margin-top: 10px;
		font-size: 11px;
	}
	.top-survey-area {
		padding: 62px 18px 66px;
	}
	.top-section-label { font-size: 12px; }
	.top-survey-area h2 {
		font-size: 23px;
        text-align: left !important;
	}
	.top-survey-lead {
		margin: 10px 0 26px;
		font-size: 14px;
	}
	.top-survey-summary {
		display: block;
		padding: 26px 22px 24px;
		text-align: center;
	}
	.top-survey-summary-label {
		padding: 0;
		border: 0;
		font-size: 13px;
	}
	.top-survey-summary-score {
		margin: 8px 0 6px;
		font-size: 72px;
	}
	.top-survey-summary-rank { font-size: 20px; }
	.top-survey-summary p {
		margin-top: 10px;
		font-size: 12px;
		text-align: left;
	}
	.top-survey-grid {
		grid-template-columns: 1fr 1fr;
		gap: 9px;
		margin-top: 12px;
	}
	.top-survey-card {
		padding: 8px 13px 8px;
	}
	.top-survey-card:last-child { grid-column: 1 / 3; }
	.top-survey-card-label {
		min-height: 0px;
		font-size: 12px;
	}
	.top-survey-summary-score small, .top-survey-card-score small {
    font-size: 14px;
	}
	.top-survey-bar {
    margin-top: 6px;
    }
	.top-survey-card:last-child .top-survey-card-label { min-height: 0; }
	.top-survey-card-score {
	margin-top:2px;
	 font-size: 24px; }
	.top-survey-note { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
	.reveal-enabled .js-reveal,
	.reveal-enabled .top-survey-bar span {
		opacity: 1;
		transform: none;
		transition: none;
	}
}
