@import url(//fonts.googleapis.com/css?family=Roboto);

@import url(//fonts.googleapis.com/icon?family=Material+Icons);

abbr, address, article, aside, audio, b, blockquote, body, canvas,
	caption, cite, code, dd, del, details, dfn, div, dl, dt, em, fieldset,
	figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header,
	hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu,
	nav, object, ol, p, pre, q, samp, section, small, span, strong, summary,
	table, tbody, td, tfoot, th, thead, time, tr, ul, var, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent
}

body {
	line-height: 1
}

article, aside, details, figcaption, figure, footer, header, hgroup,
	menu, nav, section {
	display: block
}

nav ul {
	list-style: none
}

blockquote, q {
	quotes: none
}

blockquote:after, blockquote:before, q:after, q:before {
	content: "";
	content: none
}

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent
}

ins {
	text-decoration: none
}

ins, mark {
	background-color: #ff9;
	color: #000
}

mark {
	font-style: italic;
	font-weight: 700
}

del {
	text-decoration: line-through
}

abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help
}

table {
	border-collapse: collapse;
	border-spacing: 0
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0
}

input, select {
	vertical-align: middle
}


@font-face {
	font-family: Noto Sans JP;
	font-style: normal;
	font-weight: 300;
	src: url(../fonts/NotoSansJP-Light.woff2)
		format("woff2"),
		url(../fonts/NotoSansJP-Light.woff)
		format("woff"),
		url(../fonts/NotoSansJP-Light.otf)
		format("opentype");
		font-display: swap;
}

@font-face {
	font-family: Noto Sans JP;
	font-style: normal;
	font-weight: 500;
	src: url(../fonts/NotoSansJP-Medium.woff2)
		format("woff2"),
		url(../fonts/NotoSansJP-Medium.woff)
		format("woff"),
		url(../fonts/NotoSansJP-Medium.otf)
		format("opentype");
		font-display: swap;
}

@font-face {
	font-family: Noto Sans JP;
	font-style: normal;
	font-weight: 700;
	src: url(../fonts/NotoSansJP-Bold.woff2)
		format("woff2"),
		url(../fonts/NotoSansJP-Bold.woff)
		format("woff"),
		url(../fonts/NotoSansJP-Bold.otf)
		format("opentype");
		font-display: swap;
}


/*---
@font-face {
	font-family: Noto Sans JP;
	font-style: normal;
	font-weight: 300;
	src: url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Light.woff2)
		format("woff2"),
		url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Light.woff)
		format("woff"),
		url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Light.otf)
		format("opentype");
}

@font-face {
	font-family: Noto Sans JP;
	font-style: normal;
	font-weight: 500;
	src: url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Medium.woff2)
		format("woff2"),
		url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Medium.woff)
		format("woff"),
		url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Medium.otf)
		format("opentype");
}

@font-face {
	font-family: Noto Sans JP;
	font-style: normal;
	font-weight: 700;
	src: url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Bold.woff2)
		format("woff2"),
		url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Bold.woff)
		format("woff"),
		url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Bold.otf)
		format("opentype");
}
---*/

.material-icons {
	font-family: Material Icons;
	font-weight: 400;
	font-style: normal;
	font-size: 16px;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-feature-settings: "liga";
	font-feature-settings: "liga"
}

html {
	font-size: 14px
}

body {
	font-family: Noto Sans JP, Avenir, Open Sans, Helvetica Neue, Helvetica,
		Arial, Verdana, Roboto, \\30D2\30E9\30AE\30CE\89D2\30B4 Pro W3,
		Hiragino Kaku Gothic Pro, Meiryo UI, \\30E1\30A4\30EA\30AA, Meiryo,
		"\FF2D\FF33   \FF30\30B4\30B7\30C3\30AF", MS PGothic, sans-serif;
	-webkit-text-size-adjust: 100%;
	line-height: 1.75;
	font-weight: 300;
	color: #666;
	padding-top: 103px
}

dl, p {
	margin: 0 0 1em
}

dl, dt {
	padding: 0
}

dt {
	font-weight: 700
}

dd {
	padding-left: 1em;
	padding: 0
}

hr.hr_line01 {
	margin: 3em 0;
	border-top: 1px solid #e6e6e6
}

table {
	margin: 0 0 1em;
	text-align: left
}

td, th {
	padding: 5px;
	border: 1px solid #ccc
}

table.nothead th, thead td, thead th {
	background-color: #e6e6ee
}

ol, ul {
	margin: 0 0 1em;
	padding-left: 1.5em
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom
}

a {
	color: #24bbb7;
	text-decoration: none
}

a:hover {
	text-decoration: underline
}

.font_roboto {
	font-family: Roboto, sans-serif
}

.mt0 {
	margin-top: 0 !important
}

.mt1 {
	margin-top: 1% !important
}

.mt2 {
	margin-top: 2% !important
}

.mt3 {
	margin-top: 3% !important
}

.mt4 {
	margin-top: 4% !important
}

.mt5 {
	margin-top: 5% !important
}

.mt05em {
	margin-top: .5em !important
}

.mt1em {
	margin-top: 1em !important
}

.mt2em {
	margin-top: 2em !important
}

.mt3em {
	margin-top: 3em !important
}

.mt4em {
	margin-top: 4em !important
}

.mt5em {
	margin-top: 5em !important
}

.mb0 {
	margin-bottom: 0 !important
}

.mb05em {
	margin-bottom: .5em !important
}

.mb1em {
	margin-bottom: 1em !important
}

.mb2em {
	margin-bottom: 2em !important
}

.mb3em {
	margin-bottom: 3em !important
}

.mb4em {
	margin-bottom: 4em !important
}

.mb5em {
	margin-bottom: 5em !important
}

.mlr10 {
	margin: 0 10px
}

.noWrap {
	white-space: nowrap
}

@media screen and (max-width:600px) {
	input, textarea {
		font-size: 16px !important
	}
}

input[type=number] {
	text-align: right !important
}

@media all and (max-width:1039px) , print {
	body {
		padding-top: 95px;
		color: #333
	}
}

@media all and (min-width:768px) , print {
	.spOnly {
		display: none
	}
}

@media all and (max-width:767px) , print {
	.pcOnly {
		display: none
	}
	.spTxtAl_l {
		text-align: left !important
	}
}

header {
	width: 100%;
	height: 103px;
	background-color: #fff;
	position: fixed;
	margin-top: -103px;
	border-bottom: 1px solid #efefef;
	z-index: 1000
}

.headerIn {
	max-width: 1200px;
	height: 103px;
	margin: 0 auto;
	padding: 0 30px;
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

.hcopy {
	font-size: 10px;
	position: absolute;
	top: 8px;
	left: 30px;
	color: #999;
	line-height: 1
}

.cmn_hlogo {
	margin-top: 28px;
	display: inline-block
}

.cmn_hlogo a img {
	width: 258px; //231px;
	height: auto
}

.hnav_search {
    position: absolute;
    top: 24px;
    right: 468px;
}
.hnav_search input[type="text"] {
    width: 190px;
    height: 28px;
    padding: 1px 2px;
    border: #dcdcdc solid 1px;
    border-radius: 0;
    font-size: 0.9rem;
    box-sizing: border-box;
    -webkit-appearance: none;
    color: auto;
}
.hnav_search input[type="submit"] {
    width: 48px;
    padding: 0 10px;
    height: 24px;
    font-size: 0.9rem;
    box-sizing: border-box;
    background-color: #000;
    color: #fff;
    border-radius: 0;
    cursor: pointer;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.hnav_search a.hot_key {
    width: 30px;
    padding: 0 2px;
    height: 22px;
    font-size: 0.8rem;
    box-sizing: border-box;
    background-color: #24bbb7;
    color: #fff;
    border-radius: 2px;/*角の丸み*/
    cursor: pointer;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin-left: 3px;
}

.hnav_icons {
	position: absolute;
	top: 20px;
	right: 30px
}

.hnav_icons ul {
	margin: 0;
	padding: 0;
	display: table;
	table-layout: fixed
}

.hnav_icons ul li {
	padding-left: 20px;
	display: table-cell;
	vertical-align: middle;
	position: relative
}

.hnav_tel {
	font-size: 1.5rem;
	font-weight: 700;
	font-family: Roboto, sans-serif
}

.hnav_tel a:hover {
	color: #24bbb7;
	text-decoration: none
}

.hnav_icons_help a {
	font-weight: 500;
	font-size: .93rem;
	color: #000
}

.hnav_icons_help a:hover {
	color: #24bbb7;
	text-decoration: none
}

.hnav_icons img {
	height: auto
}

.hnav_icons_help img {
	width: 21px;
	margin-right: 5px
}

.hnav_icons_cntct img {
	width: 21px
}

.hnav_icons_cart img {
	width: 26px
}

.hnav_icons_cart span {
	width: 1.8em;
	height: 1.8em;
	border-radius: 50%;
	background-color: red;
	color: #fff;
	font-size: 10px;
	line-height: 1.8;
	display: inline-block;
	text-align: center;
	position: absolute;
	top: 0;
	right: 0;
	-webkit-transform: translate(50%, -50%);
	transform: translate(50%, -50%)
}

.hnav_icons_favorite img {
	width: 24px
}

.hnav_icons_favorite span {
	width: 1.8em;
	height: 1.8em;
	border-radius: 50%;
	background-color: red;
	color: #fff;
	font-size: 10px;
	line-height: 1.8;
	display: inline-block;
	text-align: center;
	position: absolute;
	top: 0;
	right: 0;
	-webkit-transform: translate(50%, -50%);
	transform: translate(50%, -50%)
}

.hnavi_contact {
	padding: 30px;
	background-color: #fff;
	border-radius: 5px;
	border: 2px solid #ccc;
	display: none;
	position: absolute;
	top: 30px;
	right: -20px;
	z-index: 1100;
	white-space: nowrap;
	opacity: 0
}

.hnavi_contact p {
	margin: 0;
	padding: 0;
	line-height: 1
}

.hnavi_contact p.hnavi_contact_ttl {
	margin-bottom: 15px;
	padding-left: 27px;
	background-image: url(../img/cmn_icon_contact.png);
	background-repeat: no-repeat;
	background-position: 0;
	background-size: 23px;
	font-weight: 500;
	font-size: 1.7rem;
	line-height: 23px;
	color: #000
}

.hnavi_contact p.hnavi_contact_fax, .hnavi_contact p.hnavi_contact_tel {
	font-size: 2rem;
	font-weight: 700;
	font-family: Roboto, sans-serif
}

.hnavi_contact p.hnavi_contact_fax span, .hnavi_contact p.hnavi_contact_tel span
	{
	font-size: 1.8rem
}

.hnavi_contact p.hnavi_contact_fax {
	margin-bottom: 10px
}

.hnavi_contact p.hnavi_contact_bizHours {
	margin-bottom: 10px;
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1.2
}

.hnavi_contact p.hnavi_contact_mail {
	font-size: 1.3rem;
	font-weight: 500
}

.hnavi_contact p.hnavi_contact_close {
	display: inline-block;
	position: absolute;
	top: 10px;
	right: 10px;
	cursor: pointer
}

.hnavi_contact_close img {
	width: 18px;
	height: auto
}

.hnavi_menuBtn {
	display: none
}
.hnav_contents_search {
	display: none;
}
.hnav_contents ul {
	width: 70%;
	margin: 0;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	position: absolute;
	bottom: 24px;
	right: 30px;
	font-size: .93rem;
	line-height: 1
}
.hnav_contents ul li a , .hnav_contents ul li span.menu_item {
	color: #000;
	font-weight: 500;
	display: block;
	width: 100%;
	height: 100%;
	cursor: pointer;
}

.hnav_contents ul li a:hover , .hnav_contents ul li span.menu_item:hover {
	color: #24bbb7;
	text-decoration: none
}

.hnav_contents ul li {
    position: relative;
}
.hnav_contents ol li a {
	padding: 9px 25px 9px 10px;
}
.hnav_contents ol.menu_menu {
    display: none;
    position: absolute;
    padding: 0;
    top: 20px;
    left: 0;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
.hnav_contents ol.menu_menu li {
    display: block;
    background-color: #fdfdfd;
    border-top: 1px solid #ccc;
    width: 282px;
    height: 30px;
    margin: 0;
    font-size: 0.9em;
    border-collapse: collapse;
}
.hnav_contents img {
    width: 18px;
    margin-right: 6px;
	vertical-align: sub;
}

@media all and (max-width:1130px) , print {
	.hnav_search a.hot_key {
		display: none;
	}
}

@media all and (max-width:1039px) , print {
	header {
		height: 95px;
		margin-top: -95px
	}
	.headerIn {
		max-width: none;
		height: 95px;
		padding: 0
	}
	.hcopy {
		font-size: 9px;
		position: relative;
		top: 8px;
		left: 0;
		text-align: center
	}
	.cmn_hlogo {
		margin: 0;
		padding: 0;
		position: absolute;
		top: 25px;
		left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%)
	}
	.cmn_hlogo a img {
		width: 160px;	//147px
	}
	.hnav_search {
	    display: none;
	}
	.hnav_icons {
		top: auto;
		bottom: 15px;
		right: 13px
	}
	.hnav_icons ul {
		display: table;
		table-layout: fixed
	}
	.hnav_icons ul li {
		padding-left: 16px;
		display: table-cell;
		vertical-align: middle;
		position: relative
	}
	.hnav_icons ul li.hnav_icons_help span, .hnav_icons ul li.hnav_tel {
		display: none
	}
	.hnav_icons img {
		height: auto
	}
	.hnav_icons_cntct img, .hnav_icons_help img {
		width: 16px
	}
	.hnav_icons_cart img {
		width: 20px
	}
	.hnav_icons_favorite img {
		width: 18px
	}
	.hnavi_contact {
		padding: 20px;
		position: fixed;
		top: 90px;
		right: 50%;
		-webkit-transform: translateX(50%);
		transform: translateX(50%)
	}
	.hnavi_contact p.hnavi_contact_ttl {
		font-size: 1.5rem
	}
	.hnavi_contact p.hnavi_contact_fax, .hnavi_contact p.hnavi_contact_tel {
		font-size: 1.8rem
	}
	.hnavi_contact p.hnavi_contact_bizHours {
		font-size: 1.1rem
	}
	.hnavi_contact p.hnavi_contact_mail {
		font-size: 1.3rem
	}
	.hnavi_menuBtn {
		margin: 0;
		padding: 0;
		display: inline-block;
		position: absolute;
		bottom: 10px;
		left: 15px;
		cursor: pointer;
		z-index: 999;
	}
	.hnavi_menuBtn img {
		width: 25px;
		height: auto
	}
	.hnav_contents {
		width: 100%;
		position: absolute;
		top: 95px;
		left: 0;
		display: none
	}
	.hnav_contents_search {
		display: block;
	}
	.hnav_contents_search form {
	    display: flex;
	    align-items: center;
	    overflow: hidden;
	    border-radius: 3px;
	    box-shadow: 0 4px 4px rgba(0, 0, 0, .02), 0 2px 3px -2px rgba(0, 0, 0, .05);
	}
	.hnav_contents_search>div {
		padding: 8px 10px;
	}

	.hnav_contents_search form input {
	    width: 80%;
	    height: 45px;
	    padding: 5px 15px;
	    border: none;
	     border-radius: 10px 0px 0px 10px;
	    box-sizing: border-box;
	    background-color: #fff;
	    font-size: 1em;
	    outline: none;
	    transform: inherit;
	    margin-left: 0;
	}

	.hnav_contents_search form input[type="submit"]::placeholder {
	    color: #767d83;
	}

	.hnav_contents_search form input[type="submit"] {
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    width: 20%;
	    height: 45px;
	    border: none;
	    border-radius: 0px 10px 10px 0px !important;
	    z-index: 1;
	    background-color: #000000;
	    color: #fff;
	    cursor: pointer;
	    font-weight: lighter;
		appearance: button;
		-webkit-appearance: button;
	}
	.hnav_contents ul {
		width: 100%;
		height: 100%;
		/*
		max-height: calc(100vh - 95px);
		*/
		display: block;
		position: relative;
		bottom: auto;
		right: auto;
		font-size: 1rem;
		background-color: #fff;
		/*
		border-bottom: 3px solid #e6e6e6;
		*/
		overflow-y: auto
	}
	.hnav_contents ul li {
		border-top: 1px solid #e6e6e6;
		background-color: #f6f6f6;
	}
	.hnav_contents ul li a , .hnav_contents ul li span.menu_item {
		width: auto;
		padding: 20px;
		color: #000;
		display: block;
		background-image: url(../img/cmn_icon_arrow_bk_r.png);
		background-size: auto 14px;
		background-repeat: no-repeat;
		background-position: right 15px top 50%
	}
	.hnav_contents ul li a:hover , .hnav_contents ul li span.menu_item:hover {
		color: #24bbb7;
		text-decoration: none
	}
	.hnav_contents ul li a.opened , .hnav_contents ul li span.menu_item.opened {
		background-image: url(../img/cmn_icon_arrow_bk_b.png);
	}

    .hnav_contents ul li {
        overflow: hidden;
    }
    .hnav_contents ol.menu_menu {
        display: flex;
        flex-wrap: wrap;
        position: relative;
        width: 100%;
        padding: 0;
        margin: 0;
        top: 0;
        left: 0;
        border-left:0;
        border-right:0;
        border-bottom: 1px solid #ccc;
        background-color: rgba(170, 170, 170, 0.25);
    }
    .hnav_contents ol.menu_menu li {
        display: block;
        background-color: #fff;
        border-top: 1px solid #ccc;
        width: 50%;
        height: auto;
        margin: 0;
        padding: 0;
        font-size: 0.9em;
        border-collapse: collapse;
    }
	.hnav_contents ol.menu_menu li:nth-child(odd){
		border-right: 1px solid #ccc;
		border-collapse: collapse;
    	box-sizing: border-box;
	}
    .hnav_contents ol.menu_menu li a {
	    line-height: 1.6;
	    height: auto;
	    font-size: 0.9em;
	    display: block;
	    overflow-wrap: break-word;
	    padding: 14px 30px 14px 10px;
    }

    .hnav_contents ul li:last-child  ol.menu_menu li:last-child {
    	/*
        margin-bottom: 42px;
        */
    }
    .hnav_contents ul>li:last-child {
    	border-bottom: 1px solid #ccc;
    }
}

.breadcrumbs {
	background-color: #f5f5f5
}

.breadcrumbs ul {
	max-width: 1200px;
	margin: 0 auto;
	padding: 10px 30px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	list-style: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: .85em;
	font-weight: 300;
	line-height: 1
}
.breadcrumbs ul {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	line-height: 150%
}

.breadcrumbs ul li:after {
	content: "\FF5C"
}

.breadcrumbs ul li:last-child:after {
	content: ""
}

@media all and (max-width:767px) , print {
	.breadcrumbs ul {
		padding: 8px 15px
	}
}

.cmn_contNav_btnBox {
	max-width: 1200px;
	height: 50px;
	margin: 0 auto;
	padding: 10px 30px;
	display: block;
	color: #24bbb7;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 1.4rem;
	font-weight: 500;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

.cmn_contNav_btnBox p {
	margin: 0;
	padding: 0;
	line-height: 1
}

.cmn_contNav_btnBox img {
	width: 23px;
	height: auto;
	cursor: pointer
}

.cmn_contNav_menuBox {
	display: none;
	border-top: 2px solid #e6e6e6
}

.cmn_contNav_menuBox ul {
	max-width: 1200px;
	margin: 0 auto;
	padding: 10px 30px;
	list-style: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	font-size: 1rem;
	font-weight: 500;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

.cmn_contNav_menuBox ul li {
	margin-right: 1.5em;
	padding-left: 1.5em;
	background-image: url(../img/cmn_icon_arrow_g_r.png);
	background-repeat: no-repeat;
	background-size: 7px auto;
	background-position: 10px 50%
}

.cmn_contNav_menuBox ul li.current a {
	color: #666
}

@media all and (max-width:767px) , print {
	.cmn_contNav_btnBox {
		padding: 10px 15px;
		font-size: 1.2rem
	}
	.cmn_contNav_menuBox ul {
		padding: .4em 15px;
		display: block
	}
	.cmn_contNav_menuBox ul li {
		margin: .5em 0
	}
}

.cmn_contNavBtm {
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 30px
}

.cmn_contNavBtm dl {
	margin: 0;
	padding: 0
}

.cmn_contNavBtm dt {
	margin: 60px 0 .4em;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	color: #24bbb7
}

.cmn_contNavBtm dd {
	margin: 0;
	padding: 20px 10px;
	border-top: 1px solid #e6e6e6;
	border-bottom: 1px solid #e6e6e6;
	font-size: 1.1em;
	font-weight: 500
}

.cmn_contNavBtm dd ul {
	margin: 0;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap
}

.cmn_contNavBtm dd ul li {
	margin-right: 1.5em;
	padding-left: 1.5em;
	background-image: url(../img/cmn_icon_arrow_g_r.png);
	background-repeat: no-repeat;
	background-size: 7px auto;
	background-position: 10px 50%
}

.cmn_contNavBtm dd ul li.current a {
	color: #666
}

@media all and (max-width:767px) , print {
	.cmn_contNavBtm {
		padding: 10px 15px
	}
	.cmn_contNavBtm dd {
		padding: 10px
	}
	.cmn_contNavBtm dd ul {
		display: block
	}
	.cmn_contNavBtm dd ul li {
		margin: .2em 0
	}
}

.cmn_pageTtl01 {
	padding: 15px 0;
	background-color: #24bbb7
}

.cmn_cont01 {
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 30px
}

@media all and (max-width:767px) , print {
	.cmn_cont01 {
		padding: 0 15px
	}
}

.cmn_cont01 .cmn_photo01 {
	margin: 3em 0;
	text-align: center
}

.cmn_cont01 .cmn_photo01 img {
	max-width: 80%;
	height: auto
}

.inboximg80 img {
	width: 80% !important
}

.inboximg85 img {
	width: 85% !important
}

.inboximg90 img {
	width: 90% !important
}

.inboximg95 img {
	width: 95% !important
}

@media all and (min-width:768px) , print {
	.pcImg30 {
		max-width: 30% !important
	}
	.pcImg40 {
		max-width: 40% !important
	}
	.pcImg50 {
		max-width: 50% !important
	}
	.pcImg60 {
		max-width: 60% !important
	}
	.pcImg70 {
		max-width: 70% !important
	}
}

@media all and (max-width:767px) , print {
	.cmn_cont01 .cmn_photo01 img {
		max-width: 100%
	}
}

.cmn_pageTtl01 {
	margin-bottom: 1.5em
}

.cmn_pageTtl01 h1 {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 30px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.2;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
@media all and (max-width:767px) , print {
	.cmn_pageTtl01 h1 {
		font-size: 1.3rem;
	}
}

.cmn_cont01 h2 {
	font-size: 1.8rem;
	line-height: 1.4;
	border-bottom: 3px solid #24bbb7
}

.cmn_cont01 h2, .cmn_cont01 h3 {
	margin: 2em 0 .7em;
	padding-bottom: .3em;
	font-weight: 500;
	color: #000
}

.cmn_cont01 h3 {
	font-size: 1.5rem;
	line-height: 1.5;
	border-bottom: 1px solid #000
}

.cmn_cont01 h4 {
	margin: 1.75em 0 0;
	padding-bottom: .3em;
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1.5;
	color: #000
}

.cmn_cont01 .cmn_fontsmall01 {
	font-size: .9rem
}

.cmn_cont01 .cmn_note01, .cmn_cont01 .cmn_note01-rd {
	font-size: .9rem;
	color: #999
}

.cmn_cont01 .cmn_note01-rd, .cmn_cont01 .cmn_txt-rd {
	color: red
}

.cmn_txt_2rem_500 {
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.4
}

.cmn_photoL01 img {
	max-width: 40%;
	height: auto;
	margin: 0 20px 20px 0;
	float: left
}

.cmn_photoL01 p {
	overflow: auto
}

.cmn_ul_nostyle {
	padding-left: 0;
	list-style: none
}

.cmn_txtCenter {
	text-align: center
}

.fontsize110 {
	font-size: 1.1em !important
}

.fontsize120 {
	font-size: 1.2em !important
}

.fontsize130 {
	font-size: 1.3em !important
}

.fontsize140 {
	font-size: 1.4em !important
}

.fontsize150 {
	font-size: 1.5em !important
}

.fontsize2 {
	font-size: 2em !important
}

.fontsize3 {
	font-size: 3em !important
}

.fontcolor_bk {
	color: #000 !important
}

.fontcolor_rd {
	color: red !important
}

@media all and (max-width:767px) , print {
	.cmn_pageTtl01 h1 {
		padding: 0 15px
	}
	.cmn_cont01 h2 {
		font-size: 1.6rem;
		border-bottom: 2px solid #24bbb7
	}
	.cmn_cont01 h3 {
		font-size: 1.3rem
	}
	.cmn_cont01 h4 {
		font-size: 1.1rem
	}
	.cmn_photoL01 p {
		overflow: inherit
	}
}

.cmn_li_mg1em>li {
	margin-bottom: 1em !important
}

.cmn_btnbox01 {
	text-align: center
}

.cmn_btn01, .cmn_btn01-r {
	width: 300px;
	max-width: 100%;
	padding: 1.1em 0;
	color: #fff;
	display: inline-block;
	text-align: center;
	font-weight: 500;
	font-size: 1.2rem
}

.cmn_btnbox01 .cmn_btn01 {
	width: auto;
	min-width: 300px;
	padding: 1.1em;
}

#detail .cmn_btn01, #detail .cmn_btn01-r {
	padding: 1.2em 0;
	padding-left: 1rem;
}
/* ADD S 20231130 K.Kitta プリントサンプル注文対応 */
.cmn_btn02 {
    color: #fff;
    background-color: #222;
	padding: 1.2em 0;
    padding-left: 1rem;
    border-radius: 5px;
    max-width: 100%;
    width: 100%;
    display: inline-block;
    font-weight: 500;
    font-size: 1.2rem;
}
a.cmn_btn02:hover {
	opacity: .7;
	text-decoration: none
}
.cmn_btn02 .right {
	float: right !important
}

.cmn_btn02 i {
	font-weight: 500;
	font-size: 2.5rem;
	line-height: .8
}

.cmn_btn02 i.right {
	float: right;
}
/* ADD E 20231130 K.Kitta プリントサンプル注文対応 */
.cmn_btn01 {
	overflow: hidden
}

.cmn_btn01 .right {
	float: right !important
}

.cmn_btn01 i {
	font-weight: 500;
	font-size: 2.5rem;
	line-height: .8
}

.cmn_btn01 i.left {
	float: left;
	margin-right: 15px
}

.cmn_btn01 i.right {
	float: right;
	margin-left: 15px
}

.cmn_btn01 i.tiny {
	font-size: 1rem
}

.cmn_btn01 i.small {
	font-size: 2rem
}

.cmn_btn01 i.medium {
	font-size: 4rem
}

.cmn_btn01 i.large {
	font-size: 6rem
}

.cmn_btn01 {
	/*
	background-color: #6495ed;
	*/
	background-color: #f80;
	border-radius: 6px;
}

.cmn_btn01-r, .cmn_btn01.red {
	background-color: red
}

.cmn_btn01.orange {
	background-color: #f80
}

.cmn_btn01.black {
	background-color: #000
}

.cmn_btn01-r:hover, .cmn_btn01:hover {
	opacity: .7;
	text-decoration: none
}
@media all and (max-width:767px) , print {
	.cvbtn-btn .cmn_btn01 , .cvbtn-btn .cmn_btn02 {
		font-size: 0.9em;
	}
	.cvbtn-btn .cmn_btn01 i , .cvbtn-btn .cmn_btn02 i{
		font-size: 1.5rem;
		line-height: normal;
	}
}
.cmn_linkIcon01 {
	margin-right: 1em;
	padding-left: 1em;
	background-image: url(../img/cmn_icon_arrow_g_r.png);
	background-repeat: no-repeat;
	background-size: 7px auto;
	background-position: 0 6px;
	display: inline-block
}

.cmn_fbox, .cmn_fbox_between, .cmn_fbox_between_wrap, .cmn_fbox_center,
	.cmn_fbox_center_wrap, .cmn_fbox_wrap {
	display: -ms-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex
}

.cmn_fbox_center, .cmn_fbox_center_wrap {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center
}

.cmn_fbox_between, .cmn_fbox_between_wrap {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}

.cmn_fbox_between_wrap, .cmn_fbox_center_wrap, .cmn_fbox_wrap {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap
}

@media all and (min-width:768px) , print {
	.cmn_box40_pc {
		width: 40% !important
	}
	.cmn_box45_pc {
		width: 45% !important
	}
	.cmn_box50_pc {
		width: 50% !important
	}
	.cmn_box60_pc {
		width: 60% !important
	}
	.cmn_box70_pc {
		width: 70% !important
	}
	.cmn_box80_pc {
		width: 80% !important
	}
	.cmn_boxCentered_pc {
		margin-left: auto;
		margin-right: auto
	}
}

@media all and (max-width:767px) , print {
	.cmn_fbox_wrap_sp {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap
	}
}

.print_colorlist01 {
	padding-left: 0;
	display: -ms-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center
}

.print_colorlist01 li {
	width: 7em;
	font-size: 1rem;
	display: inline-block;
	text-align: center;
	padding-bottom: 15px;

}

.cmn_contBtm {
	margin: 0 auto;
	padding: 80px 30px 40px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	text-align: right;
	position: relative
}

.cmn_snsbtn {
	margin: 0;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	list-style: none
}

.cmn_snsbtn li {
	padding: 0 5px
}

.cmn_pagetop {
	width: 100%;
	margin: 0 auto;
	height: 40px;
	position: absolute;
	bottom: 70px;
	right: 30px;
	text-align: right;
	display: none;
	pointer-events: none;
	z-index: 1000
}

.cmn_pagetop a {
	pointer-events: auto
}

.cmn_pagetop a img {
	width: 40px;
	height: auto;
	-webkit-transition-property: all;
	transition-property: all;
	-webkit-transition-duration: .3s;
	transition-duration: .3s
}

.cmn_pagetop a:hover img {
	opacity: .7
}

.cmn_snsbtn iframe {
	height: 20px !important
}

@media all and (max-width:767px) , print {
	.cmn_pagetop {
		right: 15px
	}
}

footer {
	padding: 35px 0 20px;
	background-color: #000;
	color: #fff
}

footer p {
	margin: 0
}

footer a {
	color: #fff
}

footer ul {
	margin: 0;
	padding: 0;
	list-style: none
}

.footerIn {
	width: 1040px;
	margin: 0 auto;
	padding: 0 30px 20px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}

.cmn_flogo {
	width: 240px;
	height: auto
}

.footer_cont_clat {
	font-size: .9rem
}

.footer_cont_mail {
	margin-bottom: 10px;
	font-size: 1.5rem;
	font-weight: 500;
	font-family: Roboto, sans-serif
}

.footer_cont_fax, .footer_cont_tel {
	font-size: 2rem;
	font-weight: 700;
	font-family: Roboto, sans-serif;
	line-height: 1
}

.footer_cont_fax {
	margin-bottom: 10px
}

.footer_cont_bizHours {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.2;
	margin-bottom: 20px
}

.footer_sns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 20px
}

.footer_sns li {
	margin-right: 12px
}

.footer_sns li img {
	width: 50px;
	height: auto
}

.footer_info {
	font-size: 10px
}

.footer_nav {
	-webkit-column-count: 3;
	-ms-column-count: 3;
	column-count: 3;
	-webkit-column-gap: 3em;
	column-gap: 3em
}

.footer_nav dl {
	-webkit-column-break-inside: avoid;
	break-inside: avoid-column;
	margin-bottom: 20px
}

.footer_nav dl dt {
	width: 100%;
	margin-bottom: 5px;
	font-size: 12px;
	font-weight: 500
}

.footer_nav dl dd {
	font-size: 10px;
	font-weight: 300
}

.footer_cr {
	width: 1040px;
	margin: 0 auto;
	padding: 0 30px;
	font-size: 10px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

@media all and (max-width:1039px) , print {
	.footerIn {
		width: 100%;
		padding: 0 15px 20px;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		display: block;
		text-align: center
	}
	.cmn_flogo {
		width: 120px;
		height: auto;
		margin-bottom: 10px
	}
	.footer_cont_clat {
		font-size: 10px
	}
	.footer_cont_mail {
		margin-bottom: 10px;
		font-size: .85rem
	}
	.footer_cont_fax, .footer_cont_tel {
		font-size: 1.3rem;
		line-height: 1.2
	}
	.footer_cont_bizHours {
		font-size: 1rem;
		line-height: 1.4
	}
	.footer_sns {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center
	}
	.footer_sns li {
		margin: 0 6px
	}
	.footer_sns li img {
		width: 30px;
		height: auto
	}
	.footer_info {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		flex-wrap: wrap;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center
	}
	.footer_info li {
		margin: 0 1%;
		width: 18%;
	}
	.footer_nav {
		display: none
	}
	.footer_cr {
		width: 100%;
		padding: 0 15px;
		text-align: center
	}
}

.fbox {
	margin-bottom: 50px
}

@media only screen and (min-width:992px) {
	.fbox {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		-ms-flex-align: stretch;
		-webkit-box-align: stretch;
		align-items: stretch;
		padding: 0;
	}
	.fbox>* {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		width: 24%;
		margin-left: .5%;
		margin-right: .5%
	}
	.fbox>:nth-child(4n-3) {
		margin-left: 0;
		margin-right: 0
	}
	.fbox>:nth-child(4n), .fbox>:nth-child(4n-1), .fbox>:nth-child(4n-2) {
		margin-left: 1.33333333%;
		margin-right: 0
	}
}

@media only screen and (max-width:992px) {
	.fbox {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		-ms-flex-align: stretch;
		-webkit-box-align: stretch;
		align-items: stretch;
		padding: 0;
	}
	.fbox>* {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		width: 32%;
		margin-left: .66666667%;
		margin-right: .66666667%
	}
	.fbox>:nth-child(3n-2) {
		margin-left: 0;
		margin-right: 0
	}
	.fbox>:nth-child(3n), .fbox>:nth-child(3n-1) {
		margin-left: 2%;
		margin-right: 0
	}
}

@media only screen and (max-width:767px) {
	.fbox {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		-ms-flex-align: stretch;
		-webkit-box-align: stretch;
		align-items: stretch;
		padding: 0;
	}
	.fbox>* {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		width: 32%;
		margin-left: .66666667%;
		margin-right: .66666667%
	}
	.fbox>:nth-child(3n-2) {
		margin-left: 0;
		margin-right: 0
	}
	.fbox>:nth-child(3n), .fbox>:nth-child(3n-1) {
		margin-left: 2%;
		margin-right: 0
	}
}

@media only screen and (max-width:600px) {
	.fbox {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		-ms-flex-align: stretch;
		-webkit-box-align: stretch;
		align-items: stretch;
		padding: 0
	}
	.fbox>* {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		width: 48%;
		margin-left: 1%;
		margin-right: 1%
	}
	.fbox>:nth-child(2n-1) {
		margin-left: 0;
		margin-right: 0
	}
	.fbox>:nth-child(2n) {
		margin-left: 4%;
		margin-right: 0
	}
}

.fbox a, .fbox a:hover {
	text-decoration: none
}

.fbox .itemBox {
	margin-top: 1rem;
	position: relative
}

.mt30 .fbox .itemBox {
	margin-top: 0;
}

.fbox .itemBox .img {
	text-align: center
}

.fbox .itemBox .item {
	width: 100%;
	height: 100%;
	border: 10px solid #ebebeb;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 1rem;
	margin: 0
}

.fbox .itemBox .item p {
	margin: 0
}

.fbox .itemBox .item .txt01 {
	padding-top: 1rem;
	line-height: 140% !important;
	font-size: 1.1rem;
	text-align: left;
	border: 0;
	padding-bottom: 0;
}
.fbox .itemBox .item .txt02 {
	text-align: left
}

.fbox .itemBox .item .txt01.multiline {
	height: 65px
}

.fbox .itemBox .item .txt01 span {
	display: block;
	font-size: 12px;
	color: #898989;
	font-weight: 400
}

.fbox .itemBox .item .txt02 {
	padding: 0;
	font-size: 14px
}

.fbox .itemBox .item .txt02 span {
	font-weight: 700;
	font-size: 20px
}

.fbox .itemBox .item .txt03 {
	line-height: 140% !important;
	padding: .5rem 0 0;
	font-size: .9rem;
	font-weight: 300 !important
}

.fbox .itemBox .item .txt03 span {
	display: block;
	font-size: 12px;
	color: #9fa0a0
}

@media screen and (max-width:600px) {
	.fbox .itemBox .item .txt01 {
		line-height: 100%;
		font-size: 14px;
		color: #000;
		font-weight: 700
	}
	.fbox .itemBox .item .txt01 span {
		font-size: 10px;
		color: #898989;
		font-weight: 400
	}
	.fbox .itemBox .item .txt02 {
		font-size: 12px;
		color: #E64552;
	}
	.fbox .itemBox .item .txt02 span {
		font-weight: 700;
		font-size: 16px
	}
	.fbox .itemBox .item .txt03 {
		font-size: 12px;
		color: #595757
	}
	.fbox .itemBox .item .txt03 span {
		font-size: 12px;
		color: #9fa0a0
	}
}

.fbox .itemBox a {
	width: 100%;
	height: 100%;
	display: block
}

.fbox .itemBox a.boxref {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-indent: -9999px;
}


.fbox .itemBox .item:hover {
	border: 10px solid #ffcf99
}

.fbox .itemBox .item .img {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0;
	height: 180px
}

.fbox .itemBox .item .img img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%
}

.fbox .itemBox .item .txt02 {
	color: #E64552;
}

.flex-row>.itemBox {
	flex-direction: column
}

.flex-row .itemBox .item, .flex-row>.itemBox {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	display: -webkit-box;
	display: -ms-flexbox;
	display: block
}

.flex-row .itemBox .item {
	flex-direction: column;
	-webkit-box-flex: 1;
	-ms-flex: 1 0 auto;
	flex: 1 0 auto;
	position: relative;
	line-height: auto;
}

.fbox .itemBox .item .txt01 {
	color: #000;
	font-weight: 700;
	line-height: 150%;
	margin: 0
}

.fbox .itemBox .item .txt03 {
	color: #666;
	line-height: 150%;
	text-align: left;
	margin: 0
}

@media screen and (max-width:767px) {
	.fbox .itemBox {
		text-align: center
	}
	.fbox .itemBox .item {
		border: 5px solid #ebebeb
	}
	.fbox .itemBox .item:hover {
		border: 5px solid #ffcf99
	}
	.fbox .itemBox .img {
		height: auto !important
	}
	.fbox .itemBox img {
		width: 100%;
		height: auto
	}
}

.cmn_formWrap01 input::-webkit-input-placeholder, .cmn_formWrap01 textarea::-webkit-input-placeholder
	{
	color: #ccc
}

.cmn_formWrap01 input::placeholder, .cmn_formWrap01 textarea::placeholder
	{
	color: #ccc
}

.cmn_formWrap01 input:-ms-input-placeholder, .cmn_formWrap01 input::-ms-input-placeholder,
	.cmn_formWrap01 textarea:-ms-input-placeholder, .cmn_formWrap01 textarea::-ms-input-placeholder
	{
	color: #ccc
}

.cmn_formWrap01 button {
	border: 0;
	margin-top: 5rem;
	outline: none;
	cursor: pointer
}

.cmn_formWrap01 .has-error {
	color: #a94442
}

.cmn_formWrap01 .has-error td {
	background-color: #fee
}

.cmn_formWrap01 .caution {
	font-size: .9rem;
	color: red;
	line-height: 150%;
	padding: 1rem 0 0;
	margin: 0
}

.cmn_formWrap01 .flex {
	margin-top: 2rem;
	display: -ms-flexbox;
	display: -webkit-box;
	display: flex;
	-ms-flex-direction: row;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	flex-direction: row;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	justify-content: space-between;
	-ms-flex-line-pack: stretch;
	align-content: start;
	-ms-flex-align: stretch;
	-webkit-box-align: stretch;
	align-items: stretch
}

@media screen and (max-width:767px) {
	.cmn_formWrap01 .flex {
		-ms-flex-direction: column-reverse;
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		flex-direction: column-reverse;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap
	}
}

.cmn_formWrap01 .flex>div {
	text-align: center
}

@media screen and (max-width:767px) {
	.cmn_formWrap01 .flex>div {
		margin-top: 1rem
	}
}

.cmn_formWrap01 .flex-center {
	display: -ms-flexbox;
	display: -webkit-box;
	display: flex;
	-ms-flex-direction: row;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	flex-direction: row;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-ms-flex-pack: center;
	-webkit-box-pack: center;
	justify-content: center;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-ms-flex-align: center;
	-webkit-box-align: center;
	align-items: center
}

.cmn_formWrap01 .flex-center>* {
	-ms-flex-order: 0;
	-webkit-box-ordinal-group: 1;
	order: 0;
	-ms-flex: 0 1 auto;
	-webkit-box-flex: 0;
	flex: 0 1 auto;
	-webkit-align-self: auto;
	-ms-flex-item-align: auto;
	align-self: auto
}

.cmn_formWrap01 .flex-group {
	margin: 0 0 1rem;
	display: -ms-flexbox;
	display: -webkit-box;
	display: flex;
	-ms-flex-direction: row;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	flex-direction: row;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-ms-flex-pack: start;
	-webkit-box-pack: start;
	justify-content: flex-start;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-ms-flex-align: center;
	-webkit-box-align: center;
	align-items: center
}

.cmn_formWrap01 .flex-group>* {
	-ms-flex-order: 0;
	-webkit-box-ordinal-group: 1;
	order: 0;
	-ms-flex: 0 1 auto;
	-webkit-box-flex: 0;
	flex: 0 1 auto;
	-webkit-align-self: auto;
	-ms-flex-item-align: auto;
	align-self: auto
}

@media screen and (max-width:767px) {
	.cmn_formWrap01 .flex-group {
		-ms-flex-direction: column-reverse;
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		flex-direction: column-reverse;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap
	}
}

.cmn_formWrap01 .flex-group>div {
	text-align: center;
	margin-right: 1rem
}

@media screen and (max-width:767px) {
	.cmn_formWrap01 .flex-group>div {
		margin-top: 1rem;
		margin-right: 0
	}
}

.cmn_formWrap01 .prev {
	background-color: #ccc !important;
	color: #fff
}

.cmn_formWrap01 .next {
	padding: 1rem 0
}

.cmn_formWrap01 input {
	text-indent: .5rem
}

.cmn_formWrap01 .sm {
	width: 5rem !important
}

.cmn_formWrap01 .md {
	width: 10rem !important
}

.cmn_formWrap01 .lg {
	width: 30rem !important
}

.cmn_formWrap01 .xl {
	width: 100% !important
}

@media screen and (max-width:767px) {
	.cmn_formWrap01 .lg, .cmn_formWrap01 .xl {
		width: 100% !important
	}
	.cmn_formWrap01 .twitter-typeahead, .cmn_formWrap01 .typeahead {
		width: 90% !important
	}
}

.cmn_formWrap01 .tt-menu {
	height: 20rem;
	overflow-y: scroll;
	overflow-x: hidden;
	color: #666;
	z-index: 2000 !important
}

.cmn_formWrap01 button {
	margin: 0;
	line-height: 1.75;
	font-size: 1.1rem
}

.mg0 {
	margin: 0 !important
}

.cmn_formWrap01 button {
	padding: .4rem
}

@media screen and (min-width:768px) {
	.cmn_formWrap01 {
		width: 100%;
		font-size: 14px
	}
	.cmn_formWrap01 h2 {
		margin-bottom: 20px;
		font-size: 20px
	}
	.cmn_formWrap01 table {
		width: 100%;
		table-layout: fixed;
		border-collapse: collapse;
		border-spacing: 0
	}
	.cmn_formWrap01 table td, .cmn_formWrap01 table th {
		padding: 15px;
		border: 1px solid #d6d6d6;
		vertical-align: top
	}
	.cmn_formWrap01 table.type tr td, .cmn_formWrap01 table.type tr th {
		border: 1px solid #f90 !important
	}
	.cmn_formWrap01 table.type tr th {
		background-color: #f90;
		color: #fff
	}
	.cmn_formWrap01 select {
		width: 175px;
		padding: 11px 18px;
		background-image: url(../../common/img/cmn_icon_arrow_gr_d.png);
		background-repeat: no-repeat;
		background-position: 95%;
		background-size: 20px auto;
		background-color: #e5e5e5 !important;
		border: none;
		-moz-appearance: none;
		-webkit-appearance: none;
		appearance: none;
		border-radius: 0;
		font-size: 14px;
		color: #333;
		line-height: 1
	}
	.cmn_formWrap01 table th {
		width: 240px;
		background-color: #f5f5f5;
		font-weight: 400;
		text-align: left;
		position: relative
	}
	.cmn_formWrap01 table th span {
		position: absolute;
		right: 1rem;
		margin: 0 auto 0 0;
		padding: .3em .5em;
		color: #fff;
		display: inline-block;
		background-color: red;
		border: 1px solid #fff;
		font-size: 10px;
		line-height: 1
	}
	.cmn_formWrap01 table td {
		width: 600px
	}
	.cmn_formWrap01 label {
		margin-right: 1em;
		display: inline-block
	}
	.cmn_formWrap01 input {
		height: 2em;
		line-height: 2em;
		margin-right: .5em
	}
	.cmn_formWrap01 textarea {
		height: 170px
	}
	.cmn_formWrap01 input[type=email], .cmn_formWrap01 input[type=text],
		.cmn_formWrap01 textarea {
		width: 400px;
		border: 1px solid #c1c1c1;
		font-size: 14px
	}
	.cmn_formWrap01 input[type=file] {
		margin-left: .5em
	}
	.cmn_formBtn01 {
		background-image: url(../img/cmn_icon_arrow04.png)
	}
	.cmn_formBtn01, .cmn_formBtn02 {
		width: 320px;
		height: 70px;
		margin: 40px auto;
		line-height: 70px;
		background-repeat: no-repeat;
		background-position: 100%;
		border: 2px solid #000;
		text-align: center;
		color: #000;
		font-size: 20px;
		display: block
	}
	.cmn_formBtn_ib {
		display: inline-block !important;
		margin: 40px 10px
	}
	.cmn_formBtn01:hover {
		text-decoration: none;
		background-color: rgba(0, 0, 0, .1)
	}
	.cmn_agreeBox {
		margin: 40px auto;
		padding: 15px;
		border: 1px solid #d6d6d6;
		text-align: center
	}
	.cmn_agreeBox_title {
		margin-bottom: 15px;
		padding-bottom: 5px;
		border-bottom: 1px solid #d6d6d6;
		font-size: 18px
	}
}

@media screen and (max-width:767px) {
	.cmn_formWrap01 {
		padding: 0
	}
	.cmn_formWrap01 h2 {
		margin-bottom: 20px
	}
	.cmn_formWrap01 select {
		width: 175px;
		padding: 11px 18px;
		background-image: url(../../common/img/cmn_icon_arrow_gr_d.png);
		background-repeat: no-repeat;
		background-position: 95%;
		background-size: 20px auto;
		background-color: #e5e5e5;
		border: none;
		-moz-appearance: none;
		-webkit-appearance: none;
		appearance: none;
		border-radius: 0;
		font-size: 16px;
		color: #333;
		line-height: 1
	}
	.cmn_formWrap01 table {
		width: 100%;
		table-layout: fixed;
		border-bottom: 1px solid #d6d6d6
	}
	.cmn_formWrap01 table td, .cmn_formWrap01 table th {
		padding: 10px;
		border-collapse: collapse;
		display: block
	}
	.cmn_formWrap01 table.type {
		border-bottom: 0
	}
	.cmn_formWrap01 table.type tr td, .cmn_formWrap01 table.type tr th {
		border: 1px solid #f80 !important
	}
	.cmn_formWrap01 table.type tr th {
		background-color: #f80;
		color: #fff
	}
	.cmn_formWrap01 table th {
		background-color: #f5f5f5;
		font-weight: 400;
		text-align: left;
		border: 1px solid #d6d6d6
	}
	.cmn_formWrap01 table th span {
		margin-left: 1.5em;
		padding: .3em .5em;
		color: #fff;
		display: inline-block;
		background-color: red;
		border: 1px solid #fff;
		font-size: 10px;
		line-height: 1
	}
	.cmn_formWrap01 table td {
		border-left: 1px solid #d6d6d6;
		border-right: 1px solid #d6d6d6
	}
	.cmn_formWrap01 label {
		margin-right: 1em;
		display: inline-block
	}
	.cmn_formWrap01 input {
		height: 2em;
		line-height: 2em;
		margin-right: .5em
	}
	.cmn_formWrap01 textarea {
		height: 100px
	}
	.cmn_formWrap01 input[type=text], .cmn_formWrap01 textarea {
		width: 100%;
		border: 1px solid #c1c1c1
	}
	.cmn_formWrap01 input[type=file] {
		margin-left: .5em
	}
	.cmn_formBtn01 {
		width: 160px;
		height: 35px;
		margin: 40px auto;
		line-height: 35px;
		background-image: url(../img/cmn_icon_arrow04.png);
		background-repeat: no-repeat;
		background-position: 100%;
		background-size: auto 8px;
		border: 2px solid #000;
		text-align: center;
		color: #000;
		display: block
	}
	.cmn_formBtn01:hover {
		text-decoration: none;
		background-color: rgba(0, 0, 0, .1)
	}
	.cmn_agreeBox {
		margin: 20px auto;
		padding: 15px;
		border: 1px solid #d6d6d6;
		text-align: center
	}
	.cmn_agreeBox_title {
		margin-bottom: 10px;
		padding-bottom: 5px;
		border-bottom: 1px solid #d6d6d6;
		font-size: 16px
	}
}

.empty-message {
	padding-left: 1rem
}


.productinfo .icon-delivery {
	width: 100%;
	padding: .2rem;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	text-align: center !important;
	margin-bottom: 1rem !important;
	border-radius: 2px;
	font-size: 1.2rem;
	line-height: 140%;
	border-radius: 4px;
	font-weight: 700;
	background-color: #e9e9e9;
	color: #333
}

.productinfo .icon-delivery span {
	font-size: 1.4rem;
	padding: 0 .5rem
}

@media screen and (max-width:600px) {
	.productinfo .icon-delivery {
		font-size: 1rem
	}
	.productinfo .icon-delivery span {
		font-size: 1.2rem;
		padding: 0 .5rem
	}
}

.productinfo .icon-size {
	width: 100%;
	padding: .2rem;
	text-align: center !important;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin-bottom: 1rem !important;
	background-color: #24bbb7;
	color: #fff;
	margin: 1rem 0 0 !important;
	font-size: 1rem;
	line-height: 140%;
	border-radius: 4px;
	font-weight: 500
}

@media screen and (max-width:600px) {
	.productinfo .icon-size {
		font-size: .8rem
	}
}

.productinfo .icon-color {
	width: 100%;
	padding: .2rem;
	text-align: center !important;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin-bottom: 1rem !important;
	background-color: #24bbb7;
	color: #fff;
	margin: .2rem 0 0 !important;
	font-size: 1rem;
	line-height: 140%;
	border-radius: 4px;
	font-weight: 500
}

.fbox .itemBox  a.boxref:hover {
	    border: 10px solid #ffcf99;
	    border-collapse: collapse;
	    box-sizing:border-box;
	}
@media screen and (max-width: 767px) {
	.fbox .itemBox  a.boxref:hover {
	    border: 5px solid #ffcf99;
	}
}

/*
ヘッダーメニュー関連
*/
.hd_ab-hide { display: none !important; }
.hd_otodoke {
    position: absolute;
    bottom: 12px;
    left: 39%;
    margin-left: -23%;
    padding: 0 6px 1px;
    font-size: 3.2vmin;
    line-height: 1.3;
    text-align: center;
    color: #fff;
    z-index: -1;
    background: none;
}
.hd_otodoke_in {
    padding: 0 2px 1px;
    background: #24bbb7;
}
.hd_otodoke-text {}
.hd_otodoke-day {
    font-size: 120%;
    font-weight: 700;
    color: #FFF100;
}
@media screen and (min-width: 0) and (max-width: 489px) {/*スマホ*/
    .hd_otodoke {
        bottom: 12px;
        left: 38%;
        font-size: 3.2vmin;
    }
}
@media screen and (min-width: 490px) and (max-width: 1038px) {/*スマホ中～タブレット*/
    .hd_otodoke {
        bottom: 11px;
        font-size: 100%;
        left: 0;
        right: 0;
        margin: auto;
    }
}
@media screen and (min-width: 1039px) and (max-width: 1199px) {/*PC狭い*/
    .hd_otodoke {
        display: none;
    }
}
@media print,all and (min-width: 1200px) {/*PC*/
    .hd_otodoke {
        bottom: 54px;
        left: 47.5%;
        font-size: 100%;
    }
}
/* TOPは追加注文へ誘導 */
.hd_repeat {
    z-index:0;
}
@media print, (min-width: 1200px) {
    .hd_repeat {
        left: 50%;
    }
}
@media screen and (min-width: 0) and (max-width: 489px) {
	.hd_repeat {
	    left: 45%;
	}
}
.hd_repeat .hd_otodoke_in {
    background-color: #f80;
    border-radius: 5px;
    font-weight: 500;
    padding: 2px 8px;
}
.hd_repeat .hd_otodoke_in:hover {
    opacity:0.7;
}
.hd_repeat a {
    color:#fff;"
    text-decolation: none;
}
.hd_repeat a:hover {
    text-decolation: none;
}
.hd_repeat a img{
    margin-right: 4px;
}

.hnav_search {
    position: absolute;
    top: 24px;
    right: 482px;
}
.hnav_search input[type="text"] {
    width: 156px;
    height: 28px;
    padding: 1px 2px;
    border: #dcdcdc solid 1px;
    border-radius: 0;
    font-size: 0.9rem;
    box-sizing: border-box;
    -webkit-appearance: none;
    color: auto;
}

.hd_ab-hide { display: none !important; }
.hd_fixHeader {
    display: flex;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 100vmin;
    border: 1px solid #FFF;
    border-width: 0 0 0 1px;
    background: #FFF;
    z-index:1010;
    box-sizing: border-box;
    opacity: 0.95;
}
.hd_fixHeader-a {
    width: 25%;
    border: 1px solid #FFF;
    border-width: 1px 1px 1px 0;
    box-sizing: border-box;
}
.hd_fixHeader-a > img {
    display: block;
}
.hd_ab-hide { display: none !important; }
.hd_ab-fade-out {
    height: 0;
    overflow: hidden;
    opacity: 0;
    animation-duration: 0.5s;
    animation-name: hd_ab-fade-out;
    -webkit-animation-duration: 0.5s;
    -webkit-animation-name: hd_ab-fade-out;
}
.hd_ab-fade-in {
    height: auto;
    opacity: 0.95;
    animation-duration: 0.5s;
    animation-name: hd_ab-fade-in;
    -webkit-animation-duration: 0.5s;
    -webkit-animation-name: hd_ab-fade-in;
}
ul.hd_fixHeader {
    padding: 0;
}
li.hd_fixHeader-a {
    list-style-type: none;
    background-color: #24bbb7;
}
li.hd_fixHeader-a.main {
    background-color: #f80;
    margin-bottom: 0;
}
li.hd_fixHeader-a a {
    display: block;
    text-align: center;
    color: #fff;
    font-size: 8px;
    font-weight: bold;
    padding: 2px 0 1px;
}
li.hd_fixHeader-a a:hover {
    text-decoration: none;
}
li.hd_fixHeader-a img {
    max-width: 30%;
    margin-bottom: 1px;
}
@keyframes hd_ab-fade-in {
    0% {
        height: 0;
        opacity: 0;
    }

    1% {
        height: auto;
        opacity: 0;
    }

    100% {
        height: auto;
        opacity: 0.95;
    }
}
@-webkit-keyframes hd_ab-fade-in {
    0% {
        height: 0;
        opacity: 0;
    }

    1% {
        height: auto;
        opacity: 0;
    }

    100% {
        height: auto;
        opacity: 0.95;
    }
}

@keyframes hd_ab-fade-out {
    0% {
        height: auto;
        opacity: 1;
    }

    99% {
        height: auto;
        opacity: 0;
    }

    100% {
        height: 0;
        opacity: 0;
    }
}
@-webkit-keyframes hd_ab-fade-out {
    0% {
        display: block;
        opacity: 1;
    }

    99% {
        display: block;
        opacity: 0;
    }

    100% {
        display: none;
        opacity: 0;
    }
}
br.sSP {
    display: none;
}
@media screen and (max-width: 767px) {
    br.sSP {
        display: block;
    }
}
#sci-chatwindow {
	z-index: 9999 !important;
}
/* reCAPTCHA v3 */
.grecaptcha-badge{
    margin-bottom: 50px;
}

/***
パンくず再構築
***/
.breadcrumbs {
    background-color: #f5f5f5;
    position: relative;
    overflow-x: scroll;
	 /* IE, Edge 対応 */
	 -ms-overflow-style: none;
	 /* Firefox 対応 */
	 scrollbar-width: none;
	  -webkit-overflow-scrolling: touch;
}
/* Chrome, Safari 対応 */
.breadcrumbs::-webkit-scrollbar {
	display:none;
}
.breadcrumbs ul {
	display: flex;
	white-space: nowrap !important;
    flex-wrap: nowrap !important;
}
.breadcrumbs ul {
	white-space: nowrap;
}
.breadcrumbs ul li:last-child {
	padding-right: 15px;
}
.cmn_pageTtl01 {
    position: relative;
    overflow-x: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}
/* Chrome, Safari 対応 */
.cmn_pageTtl01::-webkit-scrollbar {
	display:none;
}
.cmn_pageTtl01 h1 {
	display: flex;
	white-space: nowrap !important;
    flex-wrap: nowrap !important;
}
/***
カテゴリパネル内hタイトル
***/
.pickup01_box .pickup01_box-p, .pickup01_box .pickup01_box-p02 {
    text-align: center;
    font-weight: 700;
    font-size: 1.2em;
    border: 0;
    margin: 0 auto;
}