@charset "utf-8";

body {
	background-color: rgba(255, 255, 255, 0) !important;
	width: 100%;
	box-sizing: border-box;
}

#right {
	background-color: rgba(255, 255, 255, 0) !important;
}

/* clearfix */

.clearfix {
	overflow: hidden;
}

.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

* html .clearfix {
	zoom: 1;
}

/* IE6 */

*:first-child+html .clearfix {
	zoom: 1;
}

/* IE7 */

/* 画像透過 */

a:hover img {
	opacity: 0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
	background: #FFF;
}

/* float解除 */

.clear_both {
	clear: both;
}

/* 改行 */
.br-sp {
	display: block;
}

.br-pc {
	display: none;
}

/* margin指定 */

.mt-10 {
	margin-top: 10px;
}

.mt-20 {
	margin-top: 20px;
}

.mt-30 {
	margin-top: 30px;
}

.mt-50 {
	margin-top: 50px;
}

.left_margin {
	margin-right: 6px;
}

.mb_15 {
	margin-bottom: 15px;
}

.mb_20 {
	margin-bottom: 20px;
}

.mb_30 {
	margin-bottom: 30px;
}

.ml {
	margin-left: 40px;
}

/* テキスト装飾 */

.text_center {
	text-align: center;
}

.bold {
	font-weight: bold;
}

.bold_20 {
	font-weight: bold;
	font-size: 20px;
	color: #DC0067;
	margin-bottom: 15px;
}

.f_18 {
	font-size: 18px;
}

.p_price {
	font-size: 140%;
}

.red {
	color: #F00;
}

.green_bold {
	color: #6DAB22;
	font-size: 14px;
	font-weight: bold;
	margin-left: 15px;
}

.orange_bold {
	color: #F18C00;
	font-size: 16px;
	font-weight: bold;
}

.under {
	text-decoration: underline;
}

/* リンク */

a:link {
	color: #6EAB23;
	text-decoration: none;
}

a:visited {
	color: #666;
	text-decoration: none;
}

a:hover {
	color: #333;
	text-decoration: none;
}


/* wrapper */

#wrapper {
	width: 100%;
	box-sizing: border-box;
}

/* ページＴＯＰ帯/文字 */

.head_line {
	display: flex;
	width: 100%;
	min-height: 34px;
	padding: 4px 12px;
	align-items: center;
	background-color: black;
	text-align: left;
	box-sizing: border-box;
	margin-bottom: 6px;
}

.head_line p {
	width: 100%;
	margin: 0;
	padding: 0;
	color: #eee;
	font-size: 10px;
	font-weight: bold;
	line-height: 1.3;
	white-space: normal;
	box-sizing: border-box;
}

h1.title {
	width: 100%;
	box-sizing: border-box;
	padding: 5px 0 5px 50px;
	font-size: medium;
	text-align: left;
}

/* デザインシミュレーター・ＷＥＢ見積シミュレーターページ */
h1.dsws {
	font-size: small;
}

h1#title_top {
	width: 100%;
	box-sizing: border-box;
	padding: 2px 0 0 50px;
	font-size: small;
	margin-top: 20px;
}

p.intro {
	text-align: left;
	padding: 0 1em;
	text-align: justify;
}

/*=====================================
   #header
=======================================*/

#header {
	width: 100%;
	height: 55px;
	margin: 0;
	background-image: none;
	box-sizing: border-box;
}

.logo {
	display: none;
}

.logo.nsp-header-brand {
	display: none;
}

.logo_sp,
.menu_sp,
.tel_btn_sp,
.pure-container {
	display: block;
}

.logo_sp {
	width: 38%;
	height: auto;
	margin-top: -5px;
	padding-left: 5px;
	float: left;
}

.logo_sp img {
	max-width: 170px;
}

.tel_btn_sp {
	position: absolute;
	top: 5px;
	right: 55px;
	width: 110px;
	height: 45px;
	margin: 0;
}

.tel_btn_sp .contact_btn_sp {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 40px;
	margin: 0;
	border: 1px solid #008f83;
	background: #ffffff;
	box-sizing: border-box;
	color: #006f66;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
}

.menu_sp {
	width: 50px;
	height: 50px;
	margin: 5px;
	float: right;
}

.go_contact {
	display: none;
}

.catch_copy {
	display: none;
}

/*
   #header end
-------------------------------------*/


/*=====================================
   #top_nav_sp
=======================================*/

#top_nav_sp {
	display: block;
	width: 100%;
	height: 70px;
	box-sizing: border-box;
	background-color: #219a87;
	margin: 10px 0 0;
}

#top_nav_sp ul {
	padding-top: 13px;
}

#top_nav_sp ul li a {
	float: left;
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	width: 25%;
	height: 70px;
	box-sizing: border-box;
}

#top_nav_sp ul li a:last-child {
	border-right: none;
}

#top_nav_sp ul li a:hover {
	opacity: 1.0 !important;
}

#top_nav_sp ul li a img {
	max-width: 90px;
}

@media (max-width: 400px) {
	#top_nav_sp ul li a {
		padding-top: 1%;
	}

	#top_nav_sp ul li a img {
		height: auto;
	}
}

/*
   #top_nav_sp end
-------------------------------------*/


/*=====================================
   #nav_bg
=======================================*/

#nav_bg {
	display: none;
}

#nav {
	width: 100%;
	height: 50px;
	margin: 0 auto;
	box-sizing: border-box;
}

#nav .clearfix {
	text-align: center;
}

#nav ul li {
	display: block;
	width: 145px;
	height: 50px;
	margin: 0px;
	float: left;
	border-right-style: dotted;
	border-right-width: 1px;
	border-right-color: #C0C0C0;
}

#nav ul li.gnav01 {
	display: block;
	width: 85px;
	height: 50px;
	margin: 0px;
	float: left;
	border-left-style: dotted;
	border-left-width: 1px;
	border-left-color: #C0C0C0;
}

/*
   #nav_bg end
-------------------------------------*/


/*=====================================
   #item_bg_sp
=======================================*/

#item_sp {
	display: block;
	width: 100%;
	box-sizing: border-box;
	text-align: center;
}

#item_sp p {
	display: block;
	width: 100%;
	box-sizing: border-box;
	height: auto;
	color: #333;
	font-weight: bold;
	margin: 0;
	padding: 0.25em;
	text-align: center;
}

h2#search_item {
	font-size: small;
	font-weight: normal;
	margin-top: 2em;
}

h2#search_item:before,
h2#search_item:after {
	content: "＊＊＊";
}

#itemmenu_sp {
	display: block;
	width: 100%;
	box-sizing: border-box;
	height: auto;
	margin: 0;
	border: solid 1px #C0C0C0;
	border-radius: 3px;
	margin-bottom: 20px;
}

#itemmenu_sp .clearfix {
	text-align: center;
}

#itemmenu_sp ul li {
	display: block;
	margin: 0px;
	float: left;
	width: 50%;
	height: 50px;
	padding-top: 18px;
	padding-left: 20%;
	border-bottom: solid 1px #ccc;
	border-right: solid 1px #ccc;
	background-color: #eee;
	text-align: left;
	letter-spacing: -1px;
	box-sizing: border-box;
}

#itemmenu_sp ul li:hover {
	background-color: #ddd;
}

#itemmenu_sp ul li.double {
	padding-top: 10px;
	line-height: 110%;
}

#itemmenu_sp ul li a {
	display: block;
	box-sizing: border-box;
	color: #333333;
	font-size: 11px;
	font-weight: bold;
	outline: none;
}

#itemmenu_sp ul li:nth-child(odd) {
	clear: both;
}

#itemmenu_sp ul li:nth-child(even) {
	border-right: none;
}

#item_bg,
#item_menu {
	display: none;
}

/*　アイテムメニュー画像設定　*/

#itemmenu_sp ul li.menu01 {
	background-position: 26px 4px;
	background-image: url('../images/cmn/item_menu01.png');
	background-repeat: no-repeat;
}

#itemmenu_sp ul li.menu02 {
	background-position: 26px 4px;
	background-image: url('../images/cmn/item_menu02.png');
	background-repeat: no-repeat;
}

#itemmenu_sp ul li.menu03 {
	background-position: 26px 4px;
	background-image: url('../images/cmn/item_menu03.png');
	background-repeat: no-repeat;
}

#itemmenu_sp ul li.menu04 {
	background-position: 26px 4px;
	background-image: url('../images/cmn/item_menu04.png');
	background-repeat: no-repeat;
}

#itemmenu_sp ul li.menu05 {
	background-position: 24px 3px;
	background-image: url('../images/cmn/item_menu05.png');
	background-repeat: no-repeat;
}

#itemmenu_sp ul li.menu06 {
	background-position: 26px 4px;
	background-image: url('../images/cmn/item_menu06.png');
	background-repeat: no-repeat;
}

#itemmenu_sp ul li.menu07 {
	background-position: 26px 4px;
	background-image: url('../images/cmn/item_menu07.png');
	background-repeat: no-repeat;
}

#itemmenu_sp ul li.menu08 {
	background-position: 26px 4px;
	background-image: url('../images/cmn/item_menu08.png');
	background-repeat: no-repeat;
}

#itemmenu_sp ul li.menu09 {
	background-position: 26px 4px;
	background-image: url('../images/cmn/item_menu09.png');
	background-repeat: no-repeat;
}

#itemmenu_sp ul li.menu10 {
	background-position: 26px 4px;
	background-image: url('../images/cmn/item_menu10.png');
	background-repeat: no-repeat;
}

#itemmenu_sp ul li.menu11 {
	background-position: 23px 1px;
	background-image: url('../images/cmn/item_menu11.png');
	background-repeat: no-repeat;
}

#itemmenu_sp ul li.menu12 {
	background-position: 26px 4px;
	background-image: url('../images/cmn/item_menu12.png');
	background-repeat: no-repeat;
}

#itemmenu_sp ul li.menu13 {
	background-position: 26px 4px;
	background-image: url('../images/cmn/item_menu13.png');
	background-repeat: no-repeat;
}

#itemmenu_sp ul li.menu14 {
	background-position: 23px 14px;
	background-image: url('../images/cmn/item_menu14.png');
	background-repeat: no-repeat;
	border-bottom: none;
}

#itemmenu_sp ul li.menu15 {
	background-position: 23px 0px;
	background-image: url('../images/cmn/item_menu15.png');
	background-repeat: no-repeat;
}

#itemmenu_sp ul li.menu16 {
	background-position: 26px 4px;
	background-image: url('../images/cmn/item_menu16.png');
	background-repeat: no-repeat;
}

#itemmenu_sp ul li.menu17 {
	background-position: 26px 4px;
	background-image: url('../images/cmn/item_menu17.png');
	background-repeat: no-repeat;
}

/*　アイテムメニュー画像設定　end */

/*　両翼追従バナー　*/

#wing_bnr {
	display: none;
}

/*　両翼追従バナー　end */

/*
   #item_bg_sp end
-------------------------------------*/

/*=====================================
   パンくずリスト
=======================================*/
#topic_path_faq,
#topic_path_design,
#topic_path_how_to,
#topic_path_class,
#topic_path_company,
#topic_path_delivery,
#topic_path_estimate,
#topic_path_first,
#topic_path_print,
#topic_path_tie_up {
	display: none;
}

#breadcrumbsarea {
	display: none;
	flex-direction: row;
	text-align: left;
}

#breadcrumbsarea ol.breadcrumbs {
	padding-left: 1rem;
}

/*
   パンくずリスト end
-------------------------------------*/

/*=====================================
   #footer
=======================================*/
#footer {
	width: 100%;
	clear: both;
	padding: 10px 0;
	margin: 0 auto 0 auto;
	font-size: medium;
	box-sizing: border-box;
}

.to_top,
.to_top2,
.to_top3 {
	width: 100%;
	box-sizing: border-box;
	margin-top: 1em;
	margin-bottom: 1em;
	padding-right: 5px;
	text-align: right;
	transform: none;
}

.to_top img {
	max-width: 120px;
}

.to_top2 img,
.to_top3 img {
	max-width: 40px;
}

#footer_bg {
	display: block;
	width: 100%;
	background-image: none;
	background-color: #006666;
	clear: both;
	padding: 0;
	box-sizing: border-box;
}

.footer_nav {
	display: block;
	width: 100%;
	height: auto;
	margin-left: 0;
	box-sizing: border-box;
}

.footer_category {
	font-weight: bold;
	font-family: sans-serif;
	margin-top: 30px;
	margin-bottom: 0;
	margin-left: 5px;
	color: #fff;
}

.footer_nav ul {
	display: block;
	width: 100%;
	height: auto;
	text-align: left;
	box-sizing: border-box;
}

.footer_nav ul li,
.footer_nav ul li.long {
	width: 100%;
	box-sizing: border-box;
}

.footer_nav ul li a {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	color: #fff;
	padding-bottom: 0.5em;
	border-left: none;
	border-bottom-style: solid;
	border-bottom-width: thin;
	border-bottom-color: #bbb;
}

.footer_nav ul li a:hover {
	text-decoration: none;
	color: #FFFF00;
}

.footer_nav .footer_item {
	margin-bottom: 0;
}

.footer_nav .footer_item li {
	display: block;
	padding: 0 20px;
	margin-top: 10px;
	padding-top: 0;
	padding-left: 22px;
	margin-right: 0;
	font-size: small;
}

.footer_nav .footer_item li.right {
	border-right: none;
}

.bottom_line {
	width: 100%;
	box-sizing: border-box;
	padding: 0.25em 1em;
	background-color: black;
	text-align: center;
	margin-bottom: 0;
}

.bottom_line p {
	color: #eee;
	font-size: 10px;
}

/*
   #footer end
-------------------------------------*/

/*=====================================
   index_contents
   TOPページ
=======================================*/
.content_wrap_index {
	width: 100%;
	padding: 0 10px;
	box-sizing: border-box;
	text-align: center;
}

.content_wrap_index h2 img {
	width: 100%;
	box-sizing: border-box;
}

h2.top {
	background-color: #66cc00;
}

.holiday_info {
	margin-top: 20px;
}

#main_contents {
	width: 100%;
	box-sizing: border-box;
	margin: 20px auto 0 auto;
	transform: none;
}

#main_contents #right h3.cont1_title {
	display: none;
}

#main_contents #right h3.cont1_title_sp {
	width: 100%;
	color: #fff;
	font-size: medium;
	padding: 0.5em;
	background-color: #9c0;
	text-indent: 0;
	box-sizing: border-box;
	margin-top: 15px;
}

#main_contents #right .cont1 {
	width: 100%;
	padding: 1em;
	border: 2px solid #CCC;
	color: #000;
	box-sizing: border-box;
}

#main_contents #right .cont1 p {
	padding-top: 15px;
	font-size: small;
	text-align: justify;
}

#main_contents #right .cont1 .left {
	clear: both;
	width: 100%;
	box-sizing: border-box;
}

#main_contents #right .cont1 .right {
	clear: both;
	width: 100%;
	box-sizing: border-box;
}

#main_contents #right .search {
	width: 100%;
	box-sizing: border-box;
	background-color: #DDDDDD;
	padding: 0;
	margin-bottom: 20px;
}

body#top #main_contents #right h3.search_title,
body#top #main_contents #right div.search {
	display: none;
}

#main_contents #right .search_title img {
	max-width: 270px;
}

#main_contents #right .search ul {
	width: 100%;
	box-sizing: border-box;
	padding: 20px 5px;
	text-align: center;
}

#main_contents #right .search ul img {
	width: 100%;
	max-width: 210px;
	height: auto;
	box-sizing: border-box;
	margin-bottom: 5px;
}

#main_contents #right .search ul li {
	width: 96%;
	box-sizing: border-box;
	padding: 5px auto;
	clear: both;
	background-color: #FFFFFF;
}

#main_contents #right .blueline_box {
	width: 100%;
	box-sizing: border-box;
}

.menu_icon1,
.menu_icon2,
.menu_icon3,
.menu_icon4,
.menu_icon5,
.menu_icon6,
.menu_icon7,
.menu_icon8,
.menu_icon9,
.menu_icon10,
.menu_icon11,
.menu_icon12 {
	width: 100%;
	padding: 0.5em 0;
	font-size: medium;
	font-weight: bold;
	line-height: 12px;
	background-image: none;
	background-color: #666666;
	border-radius: 5px;
	color: #FFFFFF;
	box-sizing: border-box;
}

.menu_dcp {
	border: none;
	font-size: small;
}

img.top_bn_img {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.top_info {
	display: block;
	width: 100%;
	height: auto;
	border: solid 2px #219a87;
	box-sizing: border-box;
	text-align: center;
	overflow: hidden;
	padding: 10px 0;
}

.top_info_box {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 10px auto;
	clear: left;
}

.top_info_box img {
	max-width: 350px;
	margin: 0 auto;
}

.top_info_box p {
	max-width: 350px;
	margin: 0 auto !important;
	text-align: left;
}

.birth-column {
	width: 100%;
	margin-top: 14px;
}

.birth-column__heading {
	min-height: 52px;
	padding: 9px 12px;
}

.birth-column__heading h2 {
	font-size: 20px;
}

.birth-column__grid {
	grid-template-columns: 1fr;
	gap: 10px;
	padding: 10px;
}

.birth-column__card {
	display: grid;
	grid-template-columns: minmax(116px, 39%) minmax(0, 1fr);
}

.birth-column__image {
	height: 100%;
	min-height: 112px;
	aspect-ratio: auto;
}

.birth-column__body {
	padding: 9px 10px;
}

.birth-column__title {
	font-size: 14px;
}

.top_info_linkbtn a {
	position: absolute;
	top: 85%;
	left: auto;
	right: 10px;
	display: block;
	outline: none;
	width: 100px;
	height: auto;
	padding: 2px;
	background-color: #FF9900;
	color: #ffffff;
	border-radius: 5px;
	text-align: center;
	font-size: small;
}

.top_info_linkbtn a:hover {
	color: #FFFF00;
}

.nine_benefits {
	display: none;
}

.nine_benefits_sp {
	display: block;
	outline: none;
	width: 100%;
	height: auto;
	overflow: hidden;
	position: relative;
	box-sizing: border-box;
	padding: 0;
}

.to_delivery {
	display: none;
}

.to_delivery_sp {
	display: block;
	width: 100%;
	height: auto;
	margin-bottom: 2em;
	margin-top: 1em;
	font-size: small;
	text-align: center;
	font-weight: bold;
	box-sizing: border-box;
}

.to_delivery_sp a {
	text-decoration: underline;
	color: #000080;
}

/*
   index_contents end
-------------------------------------*/

/*=====================================
   .content_wrap
=======================================*/
.content_wrap {
	display: block;
	width: 100% !important;
	box-sizing: border-box;
	padding: 10px;
	border: none;
	border: solid 1px #ccc;
}

/*
   content_wrap end
-------------------------------------*/

/*=====================================
   class_contents
   クラスTシャツ
=======================================*/
.class_contents {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 15px auto 0 auto;
	text-align: center;
}

.content_wrap #navi ul {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 20px auto;
}

.content_wrap #navi li {
	float: left;
	width: 100%;
	height: auto;
	padding: 0 10px 0px 0;
	margin: 0 0 10px 0;
	box-sizing: border-box;
}

.content_wrap #navi li a {
	display: block;
	width: 100%;
	height: auto;
	box-sizing: border-box;
}

.content_wrap #navi li a img {
	max-width: 444px;
	max-height: 628px;
}

.content_wrap #navi li a:link {}

.content_wrap #navi li a:visited {}

.content_wrap #navi li a:hover {
	opacity: 0.8;
}

.content_wrap #navi li a:active {
	opacity: 0.8;
}

.content_wrap #navi li a:hover img {
	filter: alpha(opacity=80);
}

.content_wrap #photo {
	display: none;
}

.content_wrap #photo img {
	position: relative;
	width: 100%;
	height: auto;
	max-width: 500px;
	box-sizing: border-box;
}

#navi {
	text-align: center;
}

/*
   class_contents end
-------------------------------------*/

/*=====================================
   how_to_contents
   入稿方法
=======================================*/
.how_to_contents {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 15px auto 0 auto;
}

.how_to_contents #right .content_wrap .cont1 {
	padding: 0 20px;
}

.how_to_contents #right .content_wrap .cont1 h4 {
	margin: 30px 0 20px 0;
}

.how_to_contents #right .content_wrap .cont1 .ai,
#how_to_contents #right .content_wrap .cont1 .ps,
#how_to_contents #right .content_wrap .cont1 .other {
	padding-left: 20px;
	margin-top: 20px;
	font-size: 16px;
	font-weight: bold;
}

.how_to_contents #right .content_wrap .cont1 .ai {
	background: url('../images/cmn/ai_icon.jpg') no-repeat 0px 5px;
}

.how_to_contents #right .content_wrap .cont1 .ps {
	background: url('../images/cmn/ps_icon.jpg') no-repeat 0px 5px;
}

.how_to_contents #right .content_wrap .cont1 .other {
	background: url('../images/cmn/other_icon.jpg') no-repeat 0px 5px;
}

.how_to_contents #right .content_wrap .cont1 ul {
	margin: 15px 0 0 30px;
}

.how_to_contents #right .content_wrap .cont1 h6 {
	margin-bottom: 20px;
	color: #F00;
	font-size: 20px;
	font-weight: bold;
}

.line_how_to {
	width: 668px;
	border-top: 1px dashed #CCC;
	margin: 40px auto;
}

.beginner_text h4 {
	margin-top: 30px;
}

/*
   how_to_contents end
-------------------------------------*/

/*=====================================
   first_contents
   初めての方
=======================================*/
.first_contents {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	text-align: center;
}

.beginner_text {
	display: block;
	width: 100%;
	box-sizing: border-box;
	font-size: 12px;
	margin: 30px 1%;
	text-align: left;
}

.beginner_text p {
	display: block;
	width: 100%;
	margin-bottom: 15px;
	box-sizing: border-box;
}

.beginner_text h3 img {
	width: 100%;
	max-width: 400px;
	box-sizing: border-box;
}

.beginner_text h4 {
	margin-top: 30px;
}

.beginner_text h4 img {
	width: 100%;
	max-width: 42px;
	box-sizing: border-box;
}

.link_btn a {
	display: block;
	outline: none;
	width: 150px;
	padding: 5px;
	background-color: #666666;
	color: #ffffff;
	border-radius: 5px;
	text-align: center;
}

.link_btn a:hover {
	background-color: #999999;
	color: #FFFF00;
}

/*
   first_contents end
-------------------------------------*/

/*=====================================
   print_contents
   プリント料金・プリント方法
=======================================*/
.print_contents {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 15px auto 0 auto;
}

.print_contents #right .content_wrap .cont1 h3.setsumei img {
	width: 100%;
	max-width: 700px;
	height: auto;
	box-sizing: border-box;
}

.print_contents #right .content_wrap .cont1 h4 {
	margin-top: 20px;
}

.print_contents #right .content_wrap .cont1 ul {
	margin: 20px 0;
}

.print_contents #right .content_wrap .cont1 ul li {
	float: left;
	padding: 0px;
	margin: 0px;
}

.print_wrap {
	margin-top: 40px;
	text-align: center;
	background-color: #eee;
}

.print_wrap h3 {
	display: block;
	width: 40%;
	box-sizing: border-box;
	float: left;
	margin: 5%;
}

.print_wrap h3 img {
	max-width: 157px;
	max-height: 157px;
}

.print_box {
	display: block;
	width: 100%;
	box-sizing: border-box;
	padding: 2%;
	border: 1px solid #CCC;
	margin: 0;
}

.print_box p {
	width: 100%;
	box-sizing: border-box;
}

.price_table {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 30px auto;
}

.price_table h3 {
	font-size: 14px;
}

.price_table table {
	border-collapse: collapse;
	font-size: 13px;
	width: 100%;
	box-sizing: border-box;
}

.price_table table tr th,
.price_table table tr td {
	display: block;
	width: 25%;
	box-sizing: border-box;
	float: left;
	height: 50px;
	padding: 10px;
	border: 1px solid #CCC;
	font-weight: normal;
	text-align: center;
	background-color: #eee;
}

.price_table table tr td {
	border: 1px solid #CCC;
	background-color: #fff;
}

.price_table table tr.bg_color {
	background-color: #eee;
}

.price_table table tr td.lightyellow {
	background-color: #FFFFCC;
	font-size: 140%;
}

.price_table table tr td.p_price {
	width: 25%;
	font-size: 140%;
	text-align: center;
}

.good {
	color: #6EAB23;
	font-size: 18px;
	font-weight: bold;
}

.bad {
	color: #E9802C;
	font-size: 18px;
	font-weight: bold;
}

#fullcolor h3,
#silk h3 {
	margin: 30px 0 10px 0;
}

#inkjet h3 {
	margin: 10px 0 10px 0;
}

#inkjet p,
#fullcolor p,
#silk p {
	margin-bottom: 20px;
}

.noutan {
	width: 100%;
	color: #000080;
	font-weight: bold;
	box-sizing: border-box;
}

.point_box {
	padding-top: 0px;
	margin: 10px 0;
}

#inkjet ul li,
#inkjet ul li {
	display: block;
	width: 100%;
	clear: both;
	box-sizing: border-box;
}

.point_box img {
	width: 100%;
	max-width: 305px;
	box-sizing: border-box;
}

.point_box img.fullcolor {
	max-width: 607px;
}

.circle_pink {
	color: #FF66FF;
}

.circle_navy {
	color: #000080;
}

.circle_green {
	color: #66cc00;
}

.circle_orange {
	color: #ff9900;
}

#print_method ul {
	display: block;
	width: 100%;
	box-sizing: border-box;
	text-align: center;
	padding: 0;
	margin-bottom: 0;
}

#print_method ul li {
	display: inline-block;
	width: 33.3%;
	box-sizing: border-box;
}

#print_method ul li img {
	max-width: 200px;
	height: auto;
}

.print_contents h3.setsumei img {
	width: 100%;
	height: auto;
	max-width: 701px;
	max-height: 177px;
	box-sizing: border-box;
}

.print_box ul {
	width: 100%;
	margin: 0;
}

.print_box ul li {
	width: 30%;
	float: left;
	font-size: 12px;
}

/*
   print_contents end
-------------------------------------*/

/*=====================================
   design_contents
   デザイン集・フォントカラー
=======================================*/
.design_contents {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 15px auto 0 auto;
}

.design_contents #right .content_wrap .cont1 h4 {
	margin-top: 20px;
}

.design_contents #right .content_wrap .cont1 ul {
	margin: 20px 0;
}

.design_contents #right .content_wrap .cont1 ul li {
	float: left;
	padding: 0px;
	margin: 0px;
}

#font_sample h3,
#color_sample h3,
#design_sample h3 {
	margin: 30px 0 10px 0;
}

#font_sample h4,
#color_sample h4,
#design_sample h4 {
	text-align: center;
	margin-top: 20px;
}

.design_menu ul {
	display: block;
	width: 100%;
	text-align: center;
	box-sizing: border-box;
}

.design_menu ul li {
	display: block;
	width: 33.3%;
	text-align: center;
	margin: 0 auto;
}

.design_contents ul li img {
	max-width: 300px;
	height: auto;
}

/*
   design_contents end
-------------------------------------*/

/*=====================================
   tie_up_contents
   業務提携
=======================================*/
.tie_up_contents {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 15px auto 0 auto;
}

.tie_up_contents .content_wrap .cont1 {
	padding: 0 20px;
}

.tie_up_contents .content_wrap .cont1 .tie {
	margin: 30px 0;
	font-size: 16px;
	font-weight: bold;
}

.tie_up_contents .content_wrap .cont1 ul {
	margin-top: 30px;
}

.tie_up_contents .content_wrap .cont1 ul li {
	width: 100%;
	box-sizing: border-box;
}

.merit {
	margin: 15px 0 10px 0;
	color: #F00;
	font-size: 18px;
	font-weight: bold;
}

img.popup {
	width: 100%;
	max-width: 200px;
	box-sizing: border-box;
}

p.tie {
	padding-top: 0 !important;
}

/*
   tie_up_contents end
-------------------------------------*/

/*=====================================
   question_contents
   よくあるご質問
=======================================*/
.question_contents {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 15px 0;
}

.question_contents .content_wrap .cont1 .text_box {
	width: 100%;
	box-sizing: border-box;
	text-align: justify;
	margin: 1em;
	padding: 0 2.5em 1em 1em;
}

.about1 a:link {
	color: #333;
	text-decoration: none;
}

.about1 a:visited {
	color: #333;
	text-decoration: none;
}

.about1 a:hover {
	color: #6EAB23;
	text-decoration: none;
}

.about1 {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 30px 20px 0 20px;
}

.about1 .box {
	display: block;
	width: 90%;
	box-sizing: border-box;
	padding-bottom: 15px;
	border-bottom: solid 1px #ccc;
	margin-bottom: 20px;
}

.about1 .box h3 {
	display: block;
	width: 100%;
	box-sizing: border-box;
	padding-left: 10px;
	border-left: 4px solid #FF9933;
	color: #219a87;
	font-size: 14px;
	font-weight: bold;
	margin-left: 0;
}

.about1 .box ul {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 20px 0;
}

.about1 .box ul li {
	display: block;
	width: auto;
	box-sizing: border-box;
	background: url('../images/cmn/arrow_faq.jpg') no-repeat 0px 10px;
	padding-left: 10px;
	margin-left: 0;
	margin-right: 10px;
	line-height: 30px;
}

.about2 {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin-top: 40px;
}

.about2 h3 {
	display: block;
	width: 100%;
	box-sizing: border-box;
	padding: 5px 10px;
	border-left: 4px solid #F0D836;
	background-color: #6DAB22;
	color: #FFF;
	font-size: 14px;
	font-weight: bold;
}

.about2 .box {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 30px 10px;
}

.about2 .box dl dt {
	display: block;
	width: 30px;
	box-sizing: border-box;
	float: left;
	clear: both;
	margin-bottom: 10px;
}

.about2 .box dl dd {
	display: block;
	width: auto;
	box-sizing: border-box;
	padding-top: 2px;
	margin: 0 30px 10px 40px;
}

/*
   question_contents end
-------------------------------------*/

/*=====================================
   delivery_contents
   お届け日
=======================================*/
.delivery_contents {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 10px auto 0 auto;
}

.delivery_contents h2 {
	width: 100%;
	box-sizing: border-box;
	margin-top: 10px;
	padding: 5px 0 5px 10px;
	color: #FFFFFF;
	font-weight: bold;
	background-color: #ff9933;
}

.delivery_contents #right .content_wrap .cont1 ul {
	margin: 20px 0;
}

.delivery_contents #right .content_wrap .cont1 ul li {
	display: inline;
	padding-right: 0px;
}

.deliver_cont_text {
	margin: 10px 0 0 0;
	font-size: small;
}

.deliver_box {
	display: block;
	width: 100%;
	box-sizing: border-box;
	padding: 10px;
	border-right: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
	border-left: 1px solid #CCC;
}

.del_texta {
	margin-bottom: 15px;
	font-size: 16px;
}

/*
   design_contents end
-------------------------------------*/

/*=====================================
   company_contents
   会社案内
=======================================*/
.company_contents {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 10px auto 0 auto;
}

.company_contents .content_wrap p {
	margin-bottom: 1em;
}

.company_contents .content_wrap .cont1 .text_box {
	width: 100%;
	box-sizing: border-box;
	text-align: justify;
	margin: 1em;
	padding: 0 2.5em 1em 1em;
}

.company_contents .content_wrap table,
#company_contents .content_wrap table th,
#company_contents .content_wrap table td {
	border-collapse: collapse;
}

.company_contents .content_wrap table {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 30px 0;
}

.company_contents .content_wrap table th,
#company_contents .content_wrap table td {
	border: none;
	padding: 0.5em 1em;
	text-align: left;
}

.company_contents .content_wrap table td {
	width: 100%;
	margin-bottom: 20px;
	box-sizing: border-box;
}

.company_contents .content_wrap table th {
	display: block;
	width: 100%;
	box-sizing: border-box;
	vertical-align: top;
	background-color: #ccc;
}

.company_contents .content_wrap table td ul li {
	width: 85%;
	box-sizing: border-box;
	list-style-type: disc;
	margin-left: 1em;
}

.company_contents .content_wrap table td dl dt {
	width: 85%;
	margin-top: 1em;
	font-weight: bold;
}

.company_contents .content_wrap table td dl dd {
	width: 85%;
	margin-left: 1em;
}

.company_contents .content_wrap p.center {
	text-align: center;
}

.company_contents .content_wrap dl.cap {
	width: 100%;
	margin-left: 0;
	box-sizing: border-box;
	margin-top: 1em;
}

/* グーグル・マップ */
.ggmap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

.ggmap iframe,
.ggmap object,
.ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/*
   company_contents end
-------------------------------------*/

/*=====================================
   #gallery_contents
   商品ページ
=======================================*/
#gallery_contents {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 30px auto 0 auto;
	position: relative;
}

/* 売れ筋ランキング */
#gallery_contents .ranking {
	margin-bottom: 16px;
}

#gallery_contents .ranking .nsp-gallery-ranking-details > summary {
	justify-content: space-between;
	min-height: 42px;
	box-sizing: border-box;
	margin-bottom: 0;
	padding: 7px 10px;
	font-size: 14px;
}

#gallery_contents .ranking .nsp-gallery-ranking-details > summary small {
	display: inline;
	color: #607b8a;
	font-size: 11px;
	font-weight: normal;
}

#gallery_contents .ranking .nsp-gallery-ranking-details > summary .is-open {
	display: none;
}

#gallery_contents .ranking .nsp-gallery-ranking-details[open] > summary {
	margin-bottom: 12px;
}

#gallery_contents .ranking .nsp-gallery-ranking-details[open] > summary .is-closed {
	display: none;
}

#gallery_contents .ranking .nsp-gallery-ranking-details[open] > summary .is-open {
	display: inline;
}

#gallery_contents .ranking p {
	font-weight: bold;
	padding: 4px 0;
	border-top: 2px solid #138A74;
	border-bottom: 2px solid #138A74;
	margin-bottom: 20px;
	color: #138A74;
	text-align: center;
}

#gallery_contents .ranking .box {
	float: left;
	width: 19%;
	box-sizing: border-box;
	padding: 3px;
	border: 1px solid #CCC;
	margin-right: 1%;
}

#gallery_contents .ranking .box p.no img {
	max-width: 30%;
}

#gallery_contents .ranking .box.end {
	margin-right: 0;
}

#gallery_contents .ranking .box p {
	margin-bottom: 6px;
	text-align: center;
}

#gallery_contents .ranking .box a img {
	outline: none;
	max-width: 100px;
	height: auto;
}

/* 商品一覧 */
#gallery_contents .list {
	margin-bottom: 40px;
}

#gallery_contents .list .box {
	width: 48%;
	height: auto;
	padding: 10px;
	border: 1px solid #CCC;
	margin: 2px 3px;
}

#gallery_contents .list .box.end {
	margin-right: 2px;
}

#gallery_contents .list .box p.name {
	padding-bottom: 2px;
	border-bottom: none;
	margin-bottom: 10px;
	font-size: 12px;
	font-weight: bold;
	font-size: medium;
	color: #000;
}

#gallery_contents .list .box p.img {
	outline: none;
	margin-bottom: 6px;
	text-align: center;
}

#gallery_contents .list .box p.img img {
	display: block;
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	box-sizing: border-box;
}

/* 一時非表示 */
#gallery_contents .list .box p.txt {
	display: none;
}

/*
#gallery_contents .list .box p.txt {
	padding-bottom: 2px;
	border-bottom: 1px dotted #CCC;
	margin-bottom: 6px;
	font-size: 12px;
	height: auto;
}
*/

#gallery_contents .list .box p.price {
	padding-bottom: 6px;
	border-bottom: 1px dotted #CCC;
	margin-bottom: 10px;
	color: #C32929;
	font-weight: bold;
	text-align: center;
}

#gallery_contents .list .box p.details {
	text-align: center;
}

#gallery_contents .list .box p.details img {
	max-width: 183px;
}

/* 商品下部カタログバナー等 */
.under_catalog_banner {
	width: 90%;
	margin: 20px auto 10px auto;
	border-top-style: solid;
	border-bottom-style: solid;
	border-top-width: 3px;
	border-bottom-width: 3px;
	border-top-color: #DDD;
	border-bottom-color: #DDD;
	padding-top: 20px;
	padding-bottom: 25px;
}

.under_catalog_banner ul li {
	float: left;
	margin-right: 5%;
	margin-bottom: 10px;
}

/* 商品詳細 */
#gallery_contents .min {
	font-size: 10px;
	margin-bottom: 10px;
	text-align: center;
}

#gallery_contents .items {
	margin-top: 20px;
	margin-bottom: 20px;
	width: 100%;
	text-align: center;
	box-sizing: border-box;
}

/* 商品画像 */
#gallery_contents .items .images {
	clear: both;
	width: 100%;
	height: auto;
	margin: 20px auto;
	box-sizing: border-box;
}

#gallery_contents .items .images img {
	max-width: 322px;
	height: auto;
}

#gallery_contents .items .images .mainImage {
	margin-bottom: 20px;
}

#gallery_contents .items .images ul.nsp-gallery-thumbnail {
	display: block;
	width: 100%;
	box-sizing: border-box;
	text-align: center;
}

#gallery_contents .items .images li {
	display: block;
	width: 25%;
	box-sizing: border-box;
	float: left;
	margin-right: 0;
}

#gallery_contents .items .images li img {
	max-width: 70px;
}

#gallery_contents .items .images li.end {
	margin-right: 0;
}

/* 商品情報 */
#gallery_contents .items .details {
	clear: both;
	width: 100%;
	box-sizing: border-box;
	padding: 10px;
	text-align: left;
}

#gallery_contents .items .details h1.ttl {
	padding-left: 20px;
	margin-bottom: 10px;
	background: url('../images/cmn/bg_h1.gif') repeat-y;
	font-size: 20px;
	text-align: left;
}

#gallery_contents .items .details .price {
	border-bottom: 4px solid #8FC323;
	margin-bottom: 10px;
}

#gallery_contents .items .details .price .title {
	border: 1px solid #8FC323;
	margin-bottom: 10px;
	text-align: center;
}

#gallery_contents .items .details .price .title .main {
	float: left;
	width: 179px;
	padding: 4px;
	background-color: #8FC323;
	color: #FFF;
	font-size: 16px;
	font-weight: bold;
}

#gallery_contents .items .details .price .title .thum {
	padding: 4px;
	font-size: 16px;
}

#gallery_contents .items .details .price .value {
	font-size: 20px;
	text-align: center;
	font-weight: bold;
}

#gallery_contents .items .details .price .value span {
	font-size: 30px;
}

#gallery_contents .items .details .explanation {
	margin-bottom: 10px;
}

#gallery_contents .items .details .explanation img {
	margin-bottom: 6px;
	max-width: 139px;
}

#gallery_contents .items .details .explanation p.txt {
	margin-bottom: 6px;
	font-size: 14px;
}

#gallery_contents .items .details .explanation p.info {
	font-size: 12px;
}

#gallery_contents .size,
#gallery_contents .estimated,
#gallery_contents .color {
	margin-bottom: 20px;
	padding: 10px;
}

#gallery_contents .size h2.ttl,
#gallery_contents .estimated h2.ttl,
#gallery_contents .color h2.ttl {
	padding-left: 20px;
	margin-bottom: 10px;
	background: url('../images/cmn/bg_h1.gif') repeat-y;
	font-size: 20px;
}

#gallery_contents .size h2.ttl span,
#gallery_contents .estimated h2.ttl span,
#gallery_contents .color h2.ttl span {
	font-size: 12px;
}

#gallery_contents .return {
	margin: 20px 0;
}

/*
   #gallery_contents end
-------------------------------------*/

/*=====================================
   benefits_contents
   ９大特典
=======================================*/
.benefit_box {
	width: 100%;
	margin: 50px auto 10px 0;
	box-sizing: border-box;
}

.benefit_note {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 20px auto;
	text-align: left;
}

.benefit_box h4 {
	width: 100%;
	text-align: left;
	box-sizing: border-box;
}

.benefit_box h4 img {
	max-width: 393px;
}

.benefit_box img.kakomi {
	max-width: 180px;
}

/*
   #benefits_contents end
-------------------------------------*/

/*=====================================
   gyotaku_contents
   魚拓風加工
=======================================*/
.gyotaku_catch img {
	width: 100%;
	max-width: 700px;
	height: auto;
	box-sizing: border-box;
}

.gyotaku_box {
	display: block;
	width: 100%;
	box-sizing: border-box;
	height: auto;
	margin: 30px 10px;
	text-align: left;
}

.gyotaku_img {
	float: left;
	width: 45%;
	height: auto;
}

.gyotaku_img img {
	width: 100%;
	max-width: 300px;
	height: auto;
	box-sizing: border-box;
}

.gyotaku_txt {
	float: left;
	display: block;
	width: 45%;
	box-sizing: border-box;
	margin-left: 20px;
}

.gyotaku_name {
	font-size: medium;
	font-weight: bold;
	color: #000080;
}

.gyotaku_items {
	padding-left: 10px;
}

.gyotaku_price {
	font-size: large;
	font-weight: bold;
	text-align: right;
	padding-right: 20px;
}

.gyotaku_line {
	clear: both;
	border-top: dotted 1px #ccc;
	margin-top: 20px;
	display: block;
	width: 98%;
	box-sizing: border-box;
}

.gyotaku_contact {
	width: 98%;
	height: auto;
	text-align: center;
	font-size: medium;
	margin: 0 auto;
}

.gyotaku_contact a {
	display: block;
	outline: none;
	width: 100%;
	padding: 5px;
	background-color: #666666;
	color: #ffffff;
	border-radius: 5px;
	text-align: center;
	margin: 0 auto;
	box-sizing: border-box;
}

.gyotaku_contact a:hover {
	background-color: #999999;
	color: #FFFF00;
}

.tyuui_box {
	width: 100%;
	box-sizing: border-box;
	margin: 0 0 20px 20px;
}

.tyuui {
	clear: both;
	width: 100%;
	height: auto;
	box-sizing: border-box;
	vertical-align: middle;
	font-size: medium;
	margin-left: 0;
	padding-top: 10px;
	text-align: left;
}

.tyuui_txt {
	clear: both;
	display: block;
	width: 100%;
	height: auto;
	box-sizing: border-box;
	vertical-align: middle;
	font-size: small;
	text-align: left;
	margin: 10px 0 20px 0;
}

/*
   benefits_contents end
-------------------------------------*/

/*=====================================
   catalog_contents
   カタログ請求
=======================================*/

p.catalog_topnote,
p.form_memo {
	width: 100%;
	text-align: left;
	margin: 0.5em !important;
	box-sizing: border-box;
}

#catalog_box .catalog {
	display: block;
	width: 100%;
	box-sizing: border-box;
	border: solid 2px #ccc;
	border-left: solid 30px #ccc;
	margin: 0 0 20px 0;
	display: table;
	padding: 0 0 10px 0;
}

#catalog_box .catalog:hover {
	background-color: rgba(165, 223, 0, 0.5);
	cursor: pointer;
}

#catalog_box .catalog .check {
	float: left;
	width: 20px;
	height: 170px;
	padding: 5px;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	cursor: pointer;
	margin-left: -25px;
	outline: none;
}

#catalog_box .catalog .img {
	float: left;
	height: auto;
	width: 100%;
	box-sizing: border-box;
	vertical-align: middle;
	cursor: pointer;
	text-align: center;
}

#catalog_box .catalog .img img {
	display: block;
	width: 100%;
	max-width: 125px;
	padding: 0;
	border: solid 1px #ddd;
	margin: 0 auto;
	box-sizing: border-box;
}

#catalog_box .catalog .right {
	float: left;
	width: auto;
	height: auto;
	padding: 1em;
	vertical-align: top;
	cursor: pointer;
	text-align: center;
}

#catalog_box .catalog .right:after {
	clear: both;
}

#catalog_box .catalog .right .catalog_name {
	font-size: medium;
	margin-top: 0;
	margin-bottom: 0;
	text-align: left;
}

#catalog_box .catalog .right p.catalog_note {
	margin-top: 5px;
	margin-bottom: 15px;
	text-align: left;
}

#catalog_box .catalog .right .dijital a {
	padding: 8px;
	width: 200px;
	height: auto;
	color: #FFFFFF;
	font-size: small;
	font-weight: bold;
	margin-bottom: 10px;
	margin-left: 25px;
	text-align: center;
	border-radius: 5px;
	cursor: default;
	background-color: #777;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #bbb), color-stop(1.00, #777));
	background: -webkit-linear-gradient(#bbb, #777);
	background: -moz-linear-gradient(#bbb, #777);
	background: -o-linear-gradient(#bbb, #777);
	background: -ms-linear-gradient(#bbb, #777);
	background: linear-gradient(#bbb, #777);
}

#catalog_box .catalog .right .dijital a:hover {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #ff4d4e), color-stop(0.50, #ff4d4d), color-stop(0.50, #f43434), color-stop(1.00, #fe7b7b));
	background: -webkit-linear-gradient(top, #ff4d4e 0%, #ff4d4d 50%, #f43434 50%, #fe7b7b 100%);
	background: -moz-linear-gradient(top, #ff4d4e 0%, #ff4d4d 50%, #f43434 50%, #fe7b7b 100%);
	background: -o-linear-gradient(top, #ff4d4e 0%, #ff4d4d 50%, #f43434 50%, #fe7b7b 100%);
	background: -ms-linear-gradient(top, #ff4d4e 0%, #ff4d4d 50%, #f43434 50%, #fe7b7b 100%);
	background: linear-gradient(to bottom, #ff4d4e 0%, #ff4d4d 50%, #f43434 50%, #fe7b7b 100%);
}

/*
   #catalog_contents end
-------------------------------------*/

/*=====================================
   サイドナビ・コンテンツ
=======================================*/
#left {
	display: none;
}

#left_sp {
	display: block;
	width: 100%;
	height: auto;
	box-sizing: border-box;
	margin-top: 50px;
	margin-bottom: 0;
	position: relative;
	z-index: 999;
	padding-top: 10px;
	padding-left: 10px;
	text-align: center;
}

#left_sp .side_cont1 img,
#left_sp .side_cont2 img,
#left_sp .side_cont3 img,
#left_sp .side_form img,
#left_sp .side_item img,
#left_sp .side_scene img,
#left_sp .side_banner img {
	max-width: 250px;
	height: auto;
	margin: 0 auto 10px 0;
}

#left_sp .side_cont1 ul li,
#left_sp .side_cont2 ul li,
#left_sp .side_cont3 ul li,
#left_sp .side_form ul li,
#left_sp .side_item ul li,
#left_sp .side_scene ul li,
#left_sp .side_banner ul li,
	{
	margin: 0 0 15px 35px;
	text-align: left;
}

#left_sp .side_cont1 a,
#left_sp .side_cont2 a,
#left_sp .side_cont3 a,
#left_sp .side_form a,
#left_sp .side_item a,
#left_sp .side_scene a,
#left_sp .side_banner a {
	color: #666;
	padding-top: 0;
}


/* #side_cont1 */

#left_sp .side_cont1 {
	width: 100%;
	max-width: 250px;
	box-sizing: border-box;
	margin: 15px auto 0 auto;
	background: none;
	text-align: center;
}

/* #side_forms */

#left_sp .side_forms {
	width: 100%;
	max-width: 250px;
	box-sizing: border-box;
	margin: 15px auto 0 auto;
	font-weight: bold;
	font-size: small;
	background-color: #eee;
	text-align: center;
}

#left_sp .side_forms p {
	margin-bottom: 0;
}

#left_sp .side_forms a {
	color: #666;
	outline: none;
	display: block;
}

#left_sp .side_forms ul li {
	padding-left: 2em;
	padding-top: 1em;
}

#left_sp .side_forms ul li:nth-child(2n) {
	background-color: #ddd;
}

#left_sp .side_forms ul li a {
	display: block;
	width: 100%;
	box-sizing: border-box;
	height: 35px;
	padding-top: 3px;
	text-align: left;
	padding-left: 3em;
}

#left_sp .side_forms ul li:hover {
	opacity: 0.6;
}

#left_sp .side_forms ul li.underline {
	padding-bottom: 5px;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-bottom-color: #ccc;
}

.forms_icon1,
.forms_icon2,
.forms_icon3,
.forms_icon4,
.forms_icon5,
.forms_icon6,
.forms_icon7,
.forms_icon8,
.forms_icon9 {
	display: block;
}

.forms_icon1 {
	background: url(../images/cmn/forms_icon1.png) no-repeat;
	background-position: 10% 50%;
}

.forms_icon2 {
	background: url(../images/cmn/forms_icon2.png) no-repeat;
	background-position: 10% 50%;
}

.forms_icon3 {
	background: url(../images/cmn/forms_icon3.png) no-repeat;
	background-position: 10% 50%;
}

.forms_icon4 {
	background: url(../images/cmn/forms_icon4.png) no-repeat;
	background-position: 10% 50%;
}

.forms_icon5 {
	background: url(../images/cmn/forms_icon5.png) no-repeat;
	background-position: 10% 50%;
}

.forms_icon6 {
	background: url(../images/cmn/forms_icon6.png) no-repeat;
	background-position: 10% 50%;
}

.forms_icon7 {
	background: url(../images/cmn/forms_icon7.png) no-repeat;
	background-position: 10% 50%;
}

.forms_icon8 {
	background: url(../images/cmn/forms_icon8.png) no-repeat;
	background-position: 10% 50%;
}

.forms_icon9 {
	background: url(../images/cmn/forms_icon9.png) no-repeat;
	background-position: 10% 50%;
}


/* #side_item */

#left_sp .side_item {
	width: 100%;
	max-width: 250px;
	box-sizing: border-box;
	margin: 15px auto 0 auto;
	font-weight: bold;
	font-size: small;
	background-color: #eee;
	text-align: center;
}

#left_sp .side_item a {
	color: #666;
	outline: none;
	display: block;
	margin-bottom: 0;
}

#left_sp .side_item ul li {
	padding-left: 2em;
	padding-top: 1em;
}

#left_sp .side_item ul li:nth-child(2n) {
	background-color: #ddd;
}

#left_sp .side_item ul li a.item_icon2,
#left_sp .side_scene ul li a:first-child {
	margin-top: -0.5em !important;
}

#left_sp .side_item ul li a {
	display: block;
	width: 100%;
	box-sizing: border-box;
	height: 35px;
	padding-top: 3px;
	text-align: left;
	padding-left: 3em;
}

#left_sp .side_item ul li:hover {
	opacity: 0.6;
}

.item_icon1,
.item_icon2,
.item_icon3,
.item_icon4,
.item_icon5,
.item_icon6,
.item_icon7,
.item_icon8,
.item_icon9,
.item_icon10,
.item_icon11,
.item_icon12,
.item_icon13,
.item_icon14,
.item_icon15,
.item_icon16 {
	display: block;
}

.item_icon1 {
	background: url(../images/cmn/item_photo01.png) no-repeat;
	background-position: 8% 50%;
}

.item_icon2 {
	background: url(../images/cmn/item_photo02.png) no-repeat;
	background-position: 8% 50%;
}

.item_icon3 {
	background: url(../images/cmn/item_photo03.png) no-repeat;
	background-position: 8% 50%;
}

.item_icon4 {
	background: url(../images/cmn/item_photo04.png) no-repeat;
	background-position: 8% 50%;
}

.item_icon5 {
	background: url(../images/cmn/item_photo05.png) no-repeat;
	background-position: 8% 50%;
}

.item_icon6 {
	background: url(../images/cmn/item_photo06.png) no-repeat;
	background-position: 8% 50%;
}

.item_icon7 {
	background: url(../images/cmn/item_photo07.png) no-repeat;
	background-position: 8% 50%;
}

.item_icon8 {
	background: url(../images/cmn/item_photo08.png) no-repeat;
	background-position: 8% 50%;
}

.item_icon9 {
	background: url(../images/cmn/item_photo09.png) no-repeat;
	background-position: 8% 50%;
}

.item_icon10 {
	background: url(../images/cmn/item_photo10.png) no-repeat;
	background-position: 8% 50%;
}

.item_icon11 {
	background: url(../images/cmn/item_photo11.png) no-repeat;
	background-position: 8% 50%;
}

.item_icon12 {
	background: url(../images/cmn/item_photo12.png) no-repeat;
	background-position: 8% 50%;
}

.item_icon13 {
	background: url(../images/cmn/item_photo13.png) no-repeat;
	background-position: 8% 50%;
}

.item_icon14 {
	background: url(../images/cmn/item_photo14.png) no-repeat;
	background-position: 8% 50%;
}

.item_icon15 {
	background: url(../images/cmn/item_photo15.png) no-repeat;
	background-position: 8% 50%;
}

.item_icon16 {
	background: url(../images/cmn/item_photo16.png) no-repeat;
	background-position: 8% 50%;
}

.item_icon17 {
	background: url(../images/cmn/item_photo17.png) no-repeat;
	background-position: 8% 50%;
}

/* #side_scene */

#left_sp .side_scene {
	width: 100%;
	max-width: 250px;
	box-sizing: border-box;
	margin: 15px auto;
	font-weight: bold;
	font-size: small;
	background-color: #eee;
	text-align: center;
}

#left_sp .side_scene a {
	color: #666;
	outline: none;
	display: block;
	margin-bottom: 0;
}

#left_sp .side_scene ul li {
	padding-left: 2em;
	padding-top: 1em;
}

#left_sp .side_scene ul li a {
	background: url(../images/cmn/side_scene_icon.png) no-repeat;
	background-position: 5% 40%;
}

#left_sp .side_scene ul li:nth-child(2n) {
	background-color: #ddd;
}

#left_sp .side_scene ul li a.item_icon2 {
	margin-top: -1.5em !important;
}

#left_sp .side_scene ul li a {
	display: block;
	width: 100%;
	box-sizing: border-box;
	height: 35px;
	padding-top: 3px;
	text-align: left;
	padding-left: 3em;
}

#left_sp .side_scene ul li:hover {
	opacity: 0.6;
}

left_sp
/* #side_banner */

#left_sp .side_banner {
	width: 100%;
	margin: 15px auto;
	background: none;
	text-align: center;
}

/* #side_その他 */

#left_sp .calendar {
	margin-top: 20px;
}

#left_sp .qr {
	display: none;
}

#right {
	float: right;
	width: 100%;
	box-sizing: border-box;
	position: relative;
}

#left_sp .side_design {
	width: 193px;
	height: 44px;
	border: 3px solid #99CC00;
	margin-top: 15px;
}

/*
   サイドナビ・コンテンツ end
-------------------------------------*/


/*=====================================
   #rightメインコンテンツ領域
=======================================*/

#right .cmn_contact {
	width: 100%;
	padding-bottom: 10px;
	border: none;
	margin: 30px 0 0 1px;
	background-color: rgba(255, 255, 255, 0.1);
	box-sizing: border-box;
}

#right .cmn_contact img {
	width: auto;
}

#right .cmn_contact h3 {
	margin-bottom: 10px;
}

#right .cmn_contact .left {
	clear: both;
	width: 100%;
	text-align: center;
	padding: 0;
	margin: 20px 0;
	box-sizing: border-box;
}

#right .cmn_contact .left img {
	width: 100%;
	max-width: 328px;
	box-sizing: border-box;
}

#right .cmn_contact .right {
	clear: both;
	width: 98%;
	text-align: center;
	margin-left: 1%;
	margin-right: 1%;
}

#right .cmn_contact .right img {
	width: 100%;
	max-width: 350px;
	box-sizing: border-box;
}

/*
   #rightメインコンテンツ領域end
=======================================*/


/**商品ページ追加フィールド分******************************/

.table_wrap {
	overflow-x: scroll;
	width: 100%;
	scrollbar-base-color: #66cc00;
	box-sizing: border-box;
}

table.sizelist {
	width: 1000px;
	height: auto;
	margin: 0 0 10px;
	padding: 0;
	border-spacing: 1px;
}

table.sizelist tr {
	width: auto;
}

table.sizelist th,
table.sizelist td {
	font-size: 14px;
	width: 45px;
	text-align: center;
	height: 20px;
	float: left;
}

table.sizelist td:first-child {
	clear: both;
}

table.sizelist th {
	font-size: 13px;
	background-color: #FF6633;
	color: #fff;
	line-height: 18px;
	float: left;
}

.estimate input[type=number] {
	position: relative;
	height: 20px;
	border: solid 1px #FF6633;
}

table.sizelist input {
	text-align: center;
	width: 44px;
	line-height: 28px;
}

/*
table.sizelist th:first-child,table.sizelist td:first-child{
	width:auto !important;
	width:53px !important;
}
*/
.note {
	color: #FF0004;
	margin-bottom: 10px;
}

table.colorlist {
	margin-bottom: 20px;
	margin-left: 0;
	clear: both;
}

table.colorlist th {
	white-space: nowrap;
}

table.colorlist td label {
	display: block;
	float: left;
	/*white-space: nowrap;*/
	margin-right: 30px;
	padding-bottom: 5px;
	margin-bottom: 7px;
	font-size: 16px;
}

.input_no {
	font-size: medium;
	font-weight: bold;
	color: #FF6633;
	margin-bottom: 10px;
	width: 150px;
	float: left;
}

.input_no img {
	max-width: 27px;
}

.ps_note {
	margin: 10px 0 20px 0;
}

.orange {
	font-size: medium;
	font-weight: bold;
	color: #FF6633;
}

.order_info {
	margin-top: 0;
	margin-bottom: 20px;
	padding: 20px;
	border: solid 2px #6c0;
}


/*=====================================
   #estimate_contents_01
   お見積り・ご注文
=======================================*/

/*送信フォーム関連共通*/
.contact-wrap {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 0px auto;
}

tr,
th,
td {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
}

#estimate_contents_01 {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 10px auto 0 auto;
}

#estimate_contents_01 #right .content_wrap .cont1 ul {
	margin: 20px 0;
}

#estimate_contents_01 #right .content_wrap .cont1 ul li {
	display: inline;
	padding-right: 0px;
}

/* #estimate_contact_02　簡単なお問い合わせ他 */
#other_form,
.form_memo {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 10px auto 0 auto;
}

#estimate_contact_02 {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 10px auto 0 auto;
}

#estimate_contact_02 h2,
#estimate_contact_02 h3,
#estimate_contact_02 h4,
#estimate_contact_02 h5,
#estimate_contact_02 h6 {
	display: block;
	width: 100%;
	box-sizing: border-box;
	position: relative;
	color: #FF6600;
	border-bottom: 1px solid #FF6600;
	margin: 1em 0 0.5em 0;
	font-size: 1.2em;
	font-weight: bold;
}

#estimate_contact_02 h6 p {
	position: absolute;
	bottom: 0px;
	right: 0px;
	text-align: right;
}

#estimate_contact_02 p.att {
	font-size: 0.8em;
}

#estimate_contact_02 span.req {
	color: #FF0000;
}

#estimate_contact_02 table {
	width: 100%;
	border-collapse: collapse;
	box-sizing: border-box;
}

/* フォーム入力 */

#estimate_contact_02 input[type=text],
#estimate_contact_02 input[type=email],
#estimate_contact_02 textarea,
#estimate_contact_02 select {
	display: block;
	width: 100%;
	height: 30px;
	box-sizing: border-box;
	background-color: #eee;
	margin: 0;
	padding: 0;
}

#estimate_contact_02 table.user th {
	margin-bottom: 0;
}

#estimate_contact_02 table.user td {
	margin-bottom: 10px;
}

#estimate_contact_02 table.product th {
	display: block;
	width: 98%;
	padding-top: 0.6em;
	word-spacing: 100%;
	border-top: 1px dotted #CCC;
	margin: 0 auto;
}

#estimate_contact_02 table.product th.top {
	border-top-width: 0px;
}

#estimate_contact_02 table.product td {
	display: block;
	width: 100%;
	box-sizing: border-box;
	padding-bottom: 1em;
}


#estimate_contact_02 table.sheet {
	width: 100%;
	border-collapse: collapse;
	box-sizing: border-box;
}

#estimate_contact_02 table.sheet tr.title td {
	padding-top: 10px;
	background-color: #eee;
}

#estimate_contact_02 table.sheet th {
	display: block;
	float: left;
	width: 33.3%;
}

#estimate_contact_02 table.sheet td {
	display: block;
	float: left;
	width: 33.3%;
}

#estimate_contact_02 table.sheet td input {
	height: 26px;
}

#estimate_contact_02 table.sheet th.h40,
#estimate_contact_02 table.sheet td.h40 {
	display: block;
	height: 40px;
	box-sizing: border-box;
	font-size: 12px;
	padding: 0.5em;
}

#estimate_contact_02 table.sheet th.left {
	background-color: #eee;
	width: 33%;
}


#estimate_contact_02 table.print,
#estimate_contact_02 table.print tr {
	display: block;
	width: 100%;
	box-sizing: border-box;
	border-collapse: collapse;
}

#estimate_contact_02 table.print tr.title td {
	padding-top: 10px;
	background-color: #eee;
	border-collapse: collapse;
}

#estimate_contact_02 table.print th,
#estimate_contact_02 table.print td {
	display: block;
	width: 20%;
	box-sizing: border-box;
	float: left;
	border-collapse: collapse;
	border: 1px solid #CCC;
	text-align: center;
}

#estimate_contact_02 table.print th.left {
	clear: both;
	background-color: #eee;
}

#estimate_contact_02 table.print th.h40,
#estimate_contact_02 table.print td.h40 {
	display: block;
	width: 20%;
	box-sizing: border-box;
	height: 40px;
	font-size: 10px;
	font-weight: bold;
	padding-top: 2px;
}

#estimate_contact_02 table.print td select {
	font-size: 10px;
	margin-top: 2px;
}

#estimate_contact_02 table.print td.colspan5 {
	display: block;
	width: 100%;
	box-sizing: border-box;
	float: left;
}


#estimate_contact_02 table.print tr td img {
	width: 100%;
	max-width: 550px;
	height: auto;
	box-sizing: border-box;
}


#estimate_contact_02 table.data td {
	width: 100%;
	vertical-align: top;
	box-sizing: border-box;
}

#estimate_contact_02 table.data td textarea {
	height: 6em;
	margin-top: 0.5em;
}

#estimate_contact_02 table.adding td textarea {
	height: 6em;
}

#estimate_contact_02 div.btn {
	margin: 4em 0 2em 0;
	text-align: center;
}

#estimate_contact_02 div.btn input {
	display: block;
	width: 100%;
	box-sizing: border-box;
	padding: 0.3em 1em;
}

#form1 .data tr td textarea {
	color: #CCC;
}

/* order　ご注文フォーム　*/
#estimate_contact_02 .data p {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

/*-------------------------------------
   #estimate_contents end
-------------------------------------*/

#thanks_box {
	width: 100%;
}

#thanks_box img {
	max-width: 241px;
	height: auto;
}

#thanks_box p {
	display: block;
	width: 100%;
	box-sizing: border-box;
	padding: 5%;
	text-align: left;
}


/*注文フォームたたみ袋説明*/

.tatami_note label {
	text-decoration: none;
	cursor: pointer;
}

.modal3 .checkbox {
	display: none;
}

/* Gray background */
.modal3 .modal-overlay3 {
	opacity: 0;
	transition: all 0.3s ease;
	width: 50%;
	position: absolute;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -100;
	transform: scale(1);
	display: flex;
	background-color: rgba(0, 0, 0, 0.5);
}

/* Box */
.modal3 .modal-wrap3 {
	background-color: #fff;
	padding: 10px 20px;
	width: 520px;
	margin: auto;
	text-align: center;
	align-self: flex-start;
	border-radius: 2px;
	transition: all 0.5s ease;
}

.modal3 .modal-wrap3.small {
	width: 30%;
}

.modal3 .modal-wrap3.full {
	width: 100%;
	height: 100%;
	box-sizing: border-box;
}

.modal3 .modal-wrap3.a-center {
	align-self: center;
}


/* Close button */
.modal3 .modal-overlay3 .close3 {
	position: absolute;
	right: 5px;
	top: 5px;
	font-size: 16px;
	width: 20px;
	height: 20px;
	color: #282c34;
}

.modal3 .modal-overlay3 .close3:hover {
	cursor: pointer;
	color: #4b5361;
}


.modal3 .o-close3 {
	width: 100%;
	height: 100%;
	position: fixed;
	box-sizing: border-box;
	left: 0;
	top: 0;
	z-index: -100;
}

.modal3 input:checked~.o-close3 {
	z-index: 9998;
}

.modal3 input:checked~.modal-overlay3 {
	transform: scale(1);
	opacity: 1;
	z-index: 9997;
	overflow: auto;
}

.modal3 input:checked~.modal-overlay3 .modal-wrap3 {
	transform: translateY(0);
	z-index: 9999;
}

/* Responsive Design */
/* Tablet size */
@media (max-width: 800px) {
	.modal3 .modal-wrap3 {
		width: 80%;
		padding: 20px;
	}
}

/* Phone size */
@media (max-width: 500px) {
	.modal3 .modal-wrap3 {
		width: 90%;
	}
}

/* 注文フォームたたみ袋説明ここまで */

/* 404ページ */
.not_found {
	font-size: medium;
}

.page_not_found {
	font-size: xx-large;
	font-weight: bold;
	font-family: Arial, Helvetica, sans-serif;
	color: #808080;
}


html {
	width: 100%;
	margin: 0;
	box-sizing: border-box;

}

body #contact {
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	font-size: 12px;
	font-family: "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
	color: #333;
}

p {
	line-height: 24px;
}

img {
	width: 100%;
	height: auto;
	box-sizing: border-box;
}

#right {
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	margin-left: 0;
	margin-right: 0;
	background-color: #fff;
}

/* PDFマーク */
img.pdf_mark {
	width: 20px;
	height: 20px;
	max-width: 20px;
}

/* デザイン送信フォーム一時非表示 */
#left_sp .side_forms ul li.forms_icon2 {
	display: none;
}

/*カテゴリ説明エリア*/
.gallery_desc {
	margin-bottom: 20px;
}

.gallery_desc img {
	width: 100%;
	height: auto;
	box-sizing: border-box;
}

.gallery_desc h1 {
	width: 100%;
	padding: 4px 0;
	border-top: 2px solid #138A74;
	border-bottom: 2px solid #138A74;
	margin-bottom: 20px;
	color: #138A74;
	text-align: center;
	box-sizing: border-box;
}

/* エプロンTOPページ */
#apron_menu {
	padding: 0 10px;
}

#apron_menu img {
	width: 100%;
	height: auto;
	max-width: 750px;
	box-sizing: border-box;
}

#apron_menu ul {
	padding-top: 30px;
	padding-left: 0;
}

#apron_menu ul li {
	width: 100%;
	clear: both;
	margin-bottom: 10px;
	list-style-type: none;
	text-align: left;
	box-sizing: border-box;
}

#apron_menu ul li:before {
	content: '';
	display: inline-block;
	width: 0;
	height: 0;
	margin-right: 4px;
	margin-left: 4px;
	border: transparent solid 5px;
	border-left-color: #000;
}

#apron_menu ul li:nth-child(2n) {
	margin-left: 0px;
}

#apron_menu ul li:nth-child(2n-1) {
	clear: both;
}

#apron_menu ul li:first-child {
	margin-top: 30px;
}

#apron_menu ul li:last-child {
	margin-bottom: 30px;
}

#apron_menu ul li a {
	text-decoration: none;
	color: #333333;
}

#apron_needs_menu ul {
	padding-top: 30px;
	padding-left: 25px;
}

#apron_needs_menu ul li {
	width: 95%;
	margin-bottom: 10px;
	list-style-type: disc;
}

#apron_needs_menu ul li:last-child {
	margin-bottom: 50px;
}

/*エプロンページ・テイスト／作成シーン枠*/
.first_contents #right .search {
	width: 100%;
	box-sizing: border-box;
	background-color: #DDDDDD;
	padding: 0;
	margin-bottom: 20px;
}

.first_contents #right .search_title img {
	max-width: 270px;
}

.first_contents #right .search ul {
	width: 100%;
	box-sizing: border-box;
	padding-top: 20px;
	text-align: center;
}

.first_contents #right .search ul img {
	width: 100%;
	max-width: 210px;
	height: auto;
	box-sizing: border-box;
	margin-bottom: 5px;
}

.first_contents #right .search ul li {
	width: 90%;
	box-sizing: border-box;
	padding: 5px auto;
	clear: both;
	background-color: #FFFFFF;
}

.first_contents #right .search ul li {
	text-align: center;
}


/* アイテムから探す／利用シーンから探すページ */

h1.search_title {
	width: 100%;
	box-sizing: border-box;
}

/*---------------------------------------
   検索条件用
---------------------------------------*/

.searcharea label {
	margin-right: 10px;
}

.searcharea .flabel {
	display: block;
}

.searcharea .spbr {
	display: inline-block;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	height: 35px;
}

.searcharea select {
	line-height: 30px;
	height: 30px;
	margin-right: 5px;
	vertical-align: middle;
	font-size: 14px;
	padding: 0 10px;
	width: 50%;
	margin-top: 10px;
}

.searcharea input[type=submit] {
	top: auto;
	bottom: 12px;
	right: 10px;
	z-index: 1;
	line-height: 30px;
	height: 30px;
	width: 100px;
	font-size: 14px;
}

.nsp-gallery-category-nav {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: center;
	gap: 10px;
	margin-bottom: 12px;
	padding: 10px 12px;
}

.nsp-gallery-category-title {
	margin: 0;
	font-size: 14px;
	white-space: nowrap;
}

.nsp-gallery-category-nav ul {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

.nsp-gallery-category-nav a {
	min-height: 44px;
	padding: 6px;
	font-size: 13px;
}

.searcharea.nsp-gallery-searcharea {
	margin-bottom: 12px;
	padding: 10px 12px;
}

.nsp-gallery-keyword-row {
	display: block;
}

.searcharea .nsp-gallery-keyword-label {
	display: block;
	margin: 0 0 6px;
	line-height: 1.4;
}

.nsp-gallery-keyword-controls {
	display: flex;
	flex-flow: row wrap;
	gap: 6px;
}

.nsp-gallery-keyword-controls input[type=search] {
	width: auto;
	min-width: 0;
	height: 44px;
	flex: 1 1 180px;
	font-size: 16px;
}

.nsp-gallery-search-button {
	width: auto;
	min-width: 72px;
	height: 44px;
	padding: 0 14px;
}

.nsp-gallery-search-clear {
	display: block;
	flex: 1 0 100%;
	width: 100%;
	height: 36px;
	box-sizing: border-box;
	border: 1px solid #aebfc7;
	border-radius: 4px;
	background: #fff;
	color: #31566c !important;
	line-height: 34px;
	text-align: center;
	text-decoration: none;
}

.nsp-gallery-filter-details {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid #e1e8eb;
}

.nsp-gallery-filter-details > summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 40px;
	box-sizing: border-box;
	padding: 0 12px;
	border: 1px solid #aebfc7;
	border-radius: 4px;
	background: #fff;
	color: #173f56;
	font-size: 14px;
	font-weight: bold;
	cursor: pointer;
}

.nsp-gallery-filter-details > summary small {
	color: #607b8a;
	font-size: 11px;
	font-weight: normal;
}

.nsp-gallery-filter-details:not([open]) > .nsp-gallery-filter-row {
	display: none;
}

.nsp-gallery-filter-row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	align-items: center;
	margin-top: 10px;
	padding-top: 0;
	border-top: 0;
}

.nsp-gallery-filter-row .flabel {
	grid-column: 1 / -1;
}

.searcharea .nsp-gallery-filter-row label {
	display: flex;
	align-items: center;
	min-height: 30px;
	margin: 0;
}

.searcharea .nsp-gallery-filter-row select {
	grid-column: 1 / -1;
	width: 100%;
	height: 42px;
	margin: 0;
}

.nsp-gallery-filter-row .nsp-gallery-filter-button {
	grid-column: 1 / -1;
	width: 100%;
	height: 42px;
}

.nsp-gallery-search-summary {
	font-size: 14px;
}

/*
   検索条件用 end
---------------------------------------*/


/*---------------------------------------
   投稿ページ
---------------------------------------*/
#eye_catch {
	width: 100%;
	text-align: center;
	padding: 0;
	margin: 1em 0 2em 0;
}

.post_text {
	width: 95%;
	margin-bottom: 2em;
}

.post_text p {
	width: 100%;
	margin-bottom: 1em;
}

.post_text h2 {
  font-weight: bold;
  vertical-align: middle;
  padding: 10px;
  border-top: 2px solid #138A74;
  border-bottom: 2px solid #138A74;
  margin-bottom: 20px;
  color: #138A74;
}

.to_top_post {
	display: none;
}

#right .columnH1 {
	width: 96%;
	height: auto;
	margin: 0 auto;
	padding: 0.5rem;
}

h1.title {
	background-image: none;
	font-size: 1.2rem;
}

.column-table th {
	width:100%;
}

/*---------------------------------------
   カテゴリページ
---------------------------------------*/
.category_container {
  display: block;
}
.category_box {
  width: 100%;
  padding: 0 0 1em 0;
  margin-bottom: 2em;
  border: 1px solid #CCC;
  background-color: lightyellow;
  box-sizing: border-box;
}
.category_box img {
  width: 96%;
  height: auto;
  margin: 2%;
}
.post_title {
  font-weight: bold;
  margin-top: 0.75em;
  width: 96%;
  margin: 1em auto 0 auto;
}
.category_text {
	width: 96%;
	margin: 0 auto;
	text-align: justify;
	margin-bottom: 1em;
}
.to_detail {
  width: 90%;
  height: 26px;
  background-color: #555;
  text-align: center;
  padding-top: 7px;
  margin: 1em auto;
}
a.to_detail,
a.to_detail:hover,
a.to_detail:visited {
	color: #FFF;
	text-decoration: none;
}
a.to_detail {
	width: 96%;
	color: #fff;
}
.to_top_category {
	display: none;
}



/*20200306追加*/
@media only screen and (max-width: 750px) {
	#estimate_contact_02 table.sheet2 {
		width: 100%;
		border-collapse: collapse;
		box-sizing: border-box;
	}

	#estimate_contact_02 table.sheet2 tr {
		display: flex;
		width: 100%;
		box-sizing: border-box;
	}

	#estimate_contact_02 table.sheet2 td input.middle {
		width: 100%;
		box-sizing: border-box;
	}

	#estimate_contact_02 table.sheet2 td:first-child {
		width: 15%;
	}

	#estimate_contact_02 table.sheet2 td:first-child input {
		width: 100%;
		box-sizing: border-box;
	}

	#estimate_contact_02 table.sheet2 td:nth-child(2) {
		width: 30%;
	}

	#estimate_contact_02 table.sheet2 td:nth-child(3) {
		width: 30%;
	}

	#estimate_contact_02 table.sheet2 td:nth-child(4) {
		width: 25%;
	}
}

/*パンくずリスト*/
.breadcrumb {
	width: 100%;
	margin: 0 auto 0.5rem auto;
	position: relative;
	text-align: left;
	padding: 0;
}
.breadcrumb ol {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	list-style: none;
	margin-left: 1rem;
}
.breadcrumb ol li:not(:last-of-type)::after {
  content: "»";
  margin: 0 .6em; /* 記号の左右の余白 */
  color: #777; /* 記号の色 */
}

/* Class T catalog page only */
body#class {
	font-family: "Noto Sans JP", "Yu Gothic UI", "Yu Gothic", Meiryo, sans-serif;
	background: #f3f6f8;
}

body#class #left {
	display: none;
}

body#class #right {
	float: none;
	width: calc(100% - 12px);
	margin: 0 auto;
}

body#class #right .content_wrap {
	width: calc(100% - 20px);
	margin: 14px auto 24px;
	padding: 20px 12px 24px;
	border-radius: 10px;
}

body#class .nsp-class-hero {
	position: relative;
	width: calc(100% + 24px);
	margin: -20px -12px 18px;
	padding: 22px 14px 14px;
	overflow: hidden;
	border-radius: 10px 10px 0 0;
	box-sizing: border-box;
	background: #0a2b57;
}

body#class .nsp-class-hero::before {
	top: -40px;
	right: -55px;
	width: 150px;
	height: 84px;
}

body#class .nsp-class-hero__eyebrow {
	margin-bottom: 8px;
	font-size: 11px;
}

body#class .nsp-class-hero h1 {
	font-size: 29px;
	line-height: 1.2;
}

body#class .nsp-class-hero__lead {
	margin-top: 8px;
	font-size: 12px;
}

body#class .nsp-class-hero__heading {
	display: block;
	margin-bottom: 16px;
}

body#class .nsp-class-hero__max {
	display: inline-block;
	min-width: 0;
	margin-top: 14px;
	padding: 8px 12px 9px;
	transform: none;
}

body#class .nsp-class-hero__max strong {
	font-size: 27px;
}

body#class .nsp-class-hero__benefits {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 7px;
}

body#class .nsp-class-hero__benefits div {
	padding: 9px 8px;
}

body#class .nsp-class-hero__benefits div.is-primary {
	grid-column: 1 / -1;
}

body#class .nsp-class-hero__benefits strong {
	font-size: 17px;
}

body#class .nsp-class-hero__benefits small {
	min-height: 0;
	font-size: 10px;
}

body#class .nsp-class-hero__note {
	margin-top: 8px;
	font-size: 9px;
	text-align: left;
}

body#class .nsp-class-hero {
	padding: 18px 12px 13px;
}

body#class .nsp-class-hero::before {
	top: -52px;
	right: -70px;
	width: 180px;
	height: 105px;
}

body#class .nsp-class-hero::after {
	bottom: -50px;
	left: -70px;
	width: 170px;
	height: 85px;
}

body#class .nsp-class-hero__pattern span {
	display: none;
}

body#class .nsp-class-hero__pattern span:nth-child(2) {
	display: block;
}

body#class .nsp-class-hero__pattern span:nth-child(2) {
	top: 18px;
	right: 8px;
	font-size: 11px;
}

body#class .nsp-class-hero__heading > div:first-child {
	width: calc(100% - 12px);
	padding: 15px 15px 14px;
	box-shadow: 6px 6px 0 #10aaa2;
}

body#class .nsp-class-hero h1 {
	font-size: 28px;
}

body#class .nsp-class-hero__max {
	margin-top: 16px;
	box-shadow: 5px 5px 0 #102f5f;
}

body#class .nsp-class-hero__benefits {
	padding: 7px;
}

body#class .nsp-class-hero__benefits div {
	border-bottom-width: 5px;
}

body#class .nsp-class-hero__note {
	position: relative;
	z-index: 2;
	margin-left: 0;
}

body#class .nsp-class-hero {
	padding: 0 0 12px;
	background: #fff;
}

body#class .nsp-class-hero__visual {
	display: flex;
	min-height: 0;
	flex-direction: column;
	background: #ffd83d;
}

body#class .nsp-class-hero__visual picture {
	position: relative;
	inset: auto;
	display: block;
	order: 1;
}

body#class .nsp-class-hero__image {
	position: relative;
	inset: auto;
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	object-position: center;
}

body#class .nsp-class-hero__heading {
	position: relative;
	inset: auto;
	display: block;
	width: auto;
	order: 2;
	padding: 16px 13px 19px;
}

body#class .nsp-class-hero__heading > div:first-child {
	width: 100%;
	padding: 14px 14px 13px;
	box-shadow: 5px 5px 0 #10aaa2;
}

body#class .nsp-class-hero h1 {
	font-size: 27px;
}

body#class .nsp-class-hero__max {
	display: inline-block;
	margin-top: 14px;
}

body#class .nsp-class-hero__benefits {
	margin: 0 7px;
}

body#class .nsp-class-hero__note {
	margin: 8px 9px 0;
}

body#class .nsp-class-hero {
	padding: 0;
}

body#class .nsp-class-hero > picture,
body#class .nsp-class-hero > picture > img {
	display: block;
	width: 100%;
	height: auto;
}

body#class .nsp-class-hero > picture > img {
	position: static;
	inset: auto;
	aspect-ratio: auto;
	object-fit: contain;
	object-position: center;
}

body#class .nsp-class-actions {
	width: calc(100% - 20px);
	margin: 24px auto 30px;
	padding: 18px 14px;
	border-radius: 7px;
}

body#class .nsp-class-actions__header {
	display: block;
	margin-bottom: 14px;
}

body#class .nsp-class-actions__step {
	display: block;
	margin-bottom: 5px;
	font-size: 10px;
}

body#class .nsp-class-actions__header h2 {
	font-size: 19px;
}

body#class .nsp-class-actions__primary,
body#class .nsp-class-actions__order {
	grid-template-columns: 34px minmax(0, 1fr) 14px;
	gap: 9px;
	min-height: 66px;
	padding: 11px 12px;
}

body#class .nsp-class-actions__primary strong,
body#class .nsp-class-actions__order strong {
	font-size: 15px;
}

body#class .nsp-class-actions__primary small,
body#class .nsp-class-actions__order small {
	font-size: 10px;
}

body#class .nsp-class-actions__icon {
	width: 34px;
	height: 34px;
}

body#class .nsp-class-actions__icon svg {
	width: 19px;
	height: 19px;
}

body#class .nsp-class-actions__documents {
	margin-top: 16px;
}

body#class .nsp-class-actions__documents > p {
	font-size: 11px;
}

body#class .nsp-class-actions__document-grid {
	grid-template-columns: 1fr;
	gap: 8px;
}

body#class .nsp-class-actions__document-grid > a {
	min-height: 58px;
	padding: 9px 11px;
}

body#class .nsp-class-actions__document-grid strong {
	font-size: 12px;
}

body#class .nsp-class-actions__order {
	margin-top: 16px;
}

body#class .content_wrap h1.title {
	padding-left: 12px;
	font-size: 24px;
}

body#class .content_wrap .class_lead {
	margin: 14px 4px 18px;
	font-size: 14px;
	line-height: 1.8;
}

body#class .content_wrap #photo {
	width: 100%;
	margin: 18px auto 14px;
	padding: 10px;
	border-radius: 8px;
}

body#class .content_wrap #photo img {
	top: 10px;
	left: 10px;
	width: calc(100% - 20px);
	height: calc(100% - 20px);
}

body#class .content_wrap #navi ul {
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 4px;
	width: 100%;
	margin: 14px auto 22px;
}

body#class .content_wrap #navi li {
	padding: 3px;
	border-radius: 4px;
}

body#class .content_wrap #navi li a.is-active {
	outline: 2px solid #00a59b;
	outline-offset: 1px;
}

body#class .content_wrap > p.text_center:not(.class_lead) {
	margin: 14px 4px;
	font-size: 13px;
	line-height: 1.7;
}

body#class .content_wrap .class_lead {
	display: grid;
	width: calc(100% - 8px);
	grid-template-columns: 1fr;
	gap: 7px;
	margin: 13px auto 22px;
	font-size: 13px;
	line-height: 1.45;
}

body#class .class_lead__item {
	grid-template-columns: 38px minmax(0, 1fr);
	gap: 10px;
	min-height: 62px;
	padding: 8px 11px;
	border-top-width: 3px;
	border-radius: 6px;
}

body#class .class_lead__icon {
	width: 38px;
	height: 38px;
}

body#class .class_lead__icon svg {
	width: 21px;
	height: 21px;
}

body#class .class_lead__item strong {
	display: inline;
	margin: 0 0 0 4px;
	font-size: 15px;
}

/* Print fee page 2026: mobile */
body#print .nsp-print-page {
	width: 100%;
	font-family: "Noto Sans JP", "Yu Gothic UI", "Yu Gothic", Meiryo, sans-serif;
	font-size: 14px;
	line-height: 1.7;
}

body#print .nsp-print-page *,
body#print .nsp-print-page *::before,
body#print .nsp-print-page *::after {
	box-sizing: border-box;
}

body#print .nsp-print-page img {
	max-width: 100%;
	height: auto;
}

body#print .nsp-print-intro {
	margin-bottom: 26px;
}

body#print .nsp-print-intro__formula {
	margin: 14px auto 10px;
}

body#print .nsp-print-intro__lead {
	margin: 9px 2px 15px;
	font-size: 13px;
	line-height: 1.6;
}

body#print .nsp-print-method-nav {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 9px;
	margin: 15px 4px 20px;
}

body#print .nsp-print-method-nav a {
	min-width: 0;
}

body#print .nsp-print-method-nav span {
	min-height: 38px;
	padding: 6px 3px;
	font-size: 12px;
}

body#print .nsp-print-simulator-button {
	width: calc(100% - 12px);
	min-height: 54px;
	gap: 10px;
	padding: 10px 14px;
	font-size: 16px;
	line-height: 1.35;
}

body#print .nsp-print-section {
	margin-bottom: 20px;
	padding: 17px 12px 15px;
	border-top-width: 4px;
}

body#print .nsp-print-section__heading {
	gap: 10px;
	margin-bottom: 14px;
}

body#print .nsp-print-section__heading > span {
	width: 32px;
	height: 32px;
	flex-basis: 32px;
	font-size: 12px;
}

body#print .nsp-print-section__heading h2 {
	font-size: 20px;
	line-height: 1.35;
}

body#print .nsp-print-section__heading p {
	font-size: 12px;
	line-height: 1.55;
}

body#print .nsp-print-location-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 8px;
}

body#print .nsp-print-location-grid > div {
	display: grid;
	min-height: 0;
	grid-template-columns: 1fr auto;
	align-items: center;
	padding: 12px;
	text-align: left;
}

body#print .nsp-print-location-grid small,
body#print .nsp-print-location-grid span {
	font-size: 11px;
}

body#print .nsp-print-location-grid strong {
	grid-column: 2;
	grid-row: 1 / 3;
	margin: 0 0 0 12px;
	font-size: 25px;
	text-align: right;
}

body#print .nsp-print-note {
	margin-top: 12px;
	padding: 11px 12px;
	font-size: 12px;
}

body#print .nsp-print-price-table-wrap,
body#print .nsp-print-option-table-wrap,
body#print .nsp-print-simple-table-wrap {
	position: relative;
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

body#print .nsp-print-price-table {
	min-width: 560px;
}

body#print .nsp-print-price-table th,
body#print .nsp-print-price-table td,
body#print .nsp-print-option-table th,
body#print .nsp-print-option-table td,
body#print .nsp-print-simple-table th,
body#print .nsp-print-simple-table td {
	padding: 9px 8px;
}

body#print .nsp-print-price-table thead b {
	font-size: 16px;
}

body#print .nsp-print-price-table thead span {
	font-size: 10px;
}

body#print .nsp-print-price-table td strong {
	font-size: 15px;
}

body#print .nsp-print-price-table td small,
body#print .nsp-print-simple-table td small,
body#print .nsp-print-option-table td small {
	font-size: 9px;
}

body#print .nsp-print-table-help {
	font-size: 10px;
	text-align: left;
}

body#print .nsp-print-simple-table {
	min-width: 500px;
}

body#print .nsp-print-option-table {
	min-width: 720px;
}

/*
 * The legacy mobile stylesheet turns every table element into a block.
 * Restore native table layout on this page so rate columns stay aligned.
 */
body#print .nsp-print-page .nsp-print-price-table,
body#print .nsp-print-page .nsp-print-option-table,
body#print .nsp-print-page .nsp-print-simple-table {
	display: table !important;
	width: 100%;
}

body#print .nsp-print-page .nsp-print-price-table thead,
body#print .nsp-print-page .nsp-print-option-table thead,
body#print .nsp-print-page .nsp-print-simple-table thead {
	display: table-header-group !important;
}

body#print .nsp-print-page .nsp-print-price-table tbody,
body#print .nsp-print-page .nsp-print-option-table tbody,
body#print .nsp-print-page .nsp-print-simple-table tbody {
	display: table-row-group !important;
}

body#print .nsp-print-page .nsp-print-price-table tr,
body#print .nsp-print-page .nsp-print-option-table tr,
body#print .nsp-print-page .nsp-print-simple-table tr {
	display: table-row !important;
}

body#print .nsp-print-page .nsp-print-price-table th,
body#print .nsp-print-page .nsp-print-price-table td,
body#print .nsp-print-page .nsp-print-option-table th,
body#print .nsp-print-page .nsp-print-option-table td,
body#print .nsp-print-page .nsp-print-simple-table th,
body#print .nsp-print-page .nsp-print-simple-table td {
	display: table-cell !important;
	float: none !important;
	width: auto;
}

body#print .nsp-print-page .nsp-print-price-table td::before,
body#print .nsp-print-page .nsp-print-option-table td::before,
body#print .nsp-print-page .nsp-print-simple-table td::before {
	display: none !important;
	content: none !important;
}

body#print .nsp-print-methods {
	margin-top: 28px;
}

body#print .nsp-print-method {
	margin-bottom: 20px;
}

body#print .nsp-print-method__heading {
	gap: 0 9px;
	padding: 10px 11px;
	border-left-width: 5px;
}

body#print .nsp-print-method__heading > span {
	padding-right: 9px;
	font-size: 9px;
}

body#print .nsp-print-method__heading h3 {
	font-size: 19px;
}

body#print .nsp-print-method__heading p {
	font-size: 10px;
}

body#print .nsp-print-method__body {
	display: block;
	padding: 14px;
}

body#print .nsp-print-method__body > img {
	display: block;
	width: auto;
	max-width: 100%;
	max-height: 230px;
	margin: 0 auto 14px;
	object-fit: contain;
}

body#print .nsp-print-method__body h4 {
	font-size: 16px;
}

body#print .nsp-print-method__body h4.bad {
	margin-top: 14px;
}

body#print .nsp-print-footer-note {
	margin-top: 16px;
	padding: 11px;
	font-size: 10px;
}

/* Print fee page 2026 visual refresh */
body#print .nsp-print-page {
	width: 100%;
	max-width: 100%;
}

body#print .nsp-print-page .title {
	margin-bottom: 14px;
	padding: 13px 14px 12px;
	font-size: 22px;
	border-left-width: 6px;
}

body#print .nsp-print-intro {
	margin-bottom: 24px;
	padding: 18px 12px 17px;
}

body#print .nsp-print-intro__heading {
	display: block;
	margin-bottom: 14px;
}

body#print .nsp-print-eyebrow {
	margin-bottom: 3px;
	font-size: 9px;
}

body#print .nsp-print-intro__heading h2 {
	font-size: 22px;
}

body#print .nsp-print-intro__heading > p:last-child {
	margin-top: 6px;
	font-size: 12px;
}

body#print .nsp-print-cost-flow {
	grid-template-columns: minmax(0, 1fr) 16px minmax(0, 1fr) 16px minmax(0, 1fr);
	margin-bottom: 12px;
}

body#print .nsp-print-cost-flow > div {
	min-height: 92px;
	padding: 10px 3px;
}

body#print .nsp-print-cost-flow > b {
	font-size: 16px;
}

body#print .nsp-print-cost-flow span {
	font-size: 8px;
}

body#print .nsp-print-cost-flow strong {
	margin: 3px 0;
	font-size: 14px;
}

body#print .nsp-print-cost-flow small {
	font-size: 8px;
	line-height: 1.35;
}

body#print .nsp-print-intro__lead {
	margin-bottom: 12px;
	padding: 8px 9px;
	font-size: 11px;
	text-align: left;
}

body#print .nsp-print-method-nav {
	gap: 8px;
	width: 100%;
	max-width: 322px;
	margin: 0 auto 18px;
}

body#print .nsp-print-method-nav a {
	display: flex;
	min-height: 0;
	aspect-ratio: 1 / 1;
	flex-direction: column;
    padding: 0;
}

body#print .nsp-print-method-nav img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

body#print .nsp-print-method-nav span {
	padding: 7px 2px 0;
	font-size: 11px;
}

body#print .nsp-print-simulator-button {
	width: 100%;
	min-height: 50px;
	padding: 9px 12px;
	font-size: 15px;
}

body#print .nsp-print-section {
	margin-bottom: 22px;
	padding: 18px 12px 16px;
}

body#print .nsp-print-section__heading {
	align-items: flex-start;
	margin-bottom: 15px;
}

body#print .nsp-print-section__heading h2 {
	font-size: 19px;
}

body#print .nsp-print-location-grid > div {
	border-top-width: 2px;
}

body#print #dtf .nsp-print-method__body > img {
	width: 220px;
	height: 220px;
	max-width: 100%;
	max-height: none;
	object-fit: cover;
}

body#print #dtf .nsp-print-method__body > picture {
	display: block;
	width: 220px;
	max-width: 100%;
	margin: 0 auto 14px;
}

body#print #dtf .nsp-print-method__body > picture > img {
	display: block;
	width: 100%;
	height: 220px;
	max-width: 100%;
	max-height: none;
	margin: 0;
	object-fit: cover;
}

/* --- nsp-class-actions: 注文2ルートをSPでは縦積みに(20260821) --- */
body#class .nsp-class-actions__routes {
	grid-template-columns: 1fr;
	gap: 20px;
}

/* --- nsp-class-actions: ご注文フォームボタン(SP) 20260821 --- */
body#class .nsp-class-actions__request {
	grid-template-columns: 34px minmax(0, 1fr) 14px;
	gap: 9px;
	min-height: 66px;
	padding: 11px 12px;
}

body#class .nsp-class-actions__request strong {
	font-size: 15px;
}

body#class .nsp-class-actions__request small {
	font-size: 10px;
}

/* --- nsp-print-method__body: pictureタグ内のimgにも同じサイズ指定を適用(20260821) --- */
body#print .nsp-print-method__body > picture {
	display: block;
}

body#print .nsp-print-method__body > picture > img {
	display: block;
	width: auto;
	max-width: 100%;
	max-height: 230px;
	margin: 0 auto 14px;
	object-fit: contain;
}

/* Mobile layout stability 20260824 */
#main_contents,
#main_contents #right,
#gallery_contents,
#gallery_contents .items,
#gallery_contents .size,
#gallery_contents .estimated,
#gallery_contents .color,
.content_wrap {
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
}

#main_contents iframe,
#main_contents video,
#main_contents canvas {
	max-width: 100%;
}

/* Keep image-based size charts readable without widening the whole page. */
#gallery_contents .size > p.text_center {
	display: block;
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0 0 8px;
	overflow-x: auto;
	overflow-y: hidden;
	box-sizing: border-box;
	-webkit-overflow-scrolling: touch;
	text-align: left;
}

#gallery_contents .size > p.text_center > img {
	display: block;
	width: auto !important;
	min-width: 640px;
	max-width: none !important;
	height: auto !important;
	margin: 0;
}

/* Print fee sections 02-05: mobile accordion 20260824 */
body#print .nsp-print-accordion {
	gap: 9px;
	margin-bottom: 28px;
}

body#print .nsp-print-accordion-item {
	border-radius: 7px;
	scroll-margin-top: 10px;
}

body#print .nsp-print-accordion-item > summary {
	min-height: 54px;
	gap: 9px;
	padding: 10px 48px 10px 12px;
	font-size: 15px;
}

body#print .nsp-print-accordion-toggle {
	right: 13px;
}

body#print .nsp-print-accordion-body {
	padding: 13px 10px 15px;
}

body#print .nsp-print-accordion-lead {
	margin-bottom: 12px;
	font-size: 12px;
}

/* Mobile home product tabs */
body#top .nsp-recently-viewed {
	width: 100%;
	margin: 18px auto 26px;
	text-align: left;
}

body#top .nsp-recently-viewed__list {
	display: flex;
	gap: 6px;
	width: 100%;
	margin: 0;
	padding: 0;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	list-style: none;
	-webkit-overflow-scrolling: touch;
}

body#top .nsp-recently-viewed__list::-webkit-scrollbar {
	display: none;
}

body#top .nsp-recently-viewed__item {
	flex: 0 0 calc(31.25% - 6px);
	min-width: 0;
	margin: 0;
	padding: 0;
	scroll-snap-align: start;
}

body#top .nsp-recently-viewed__card {
	position: relative;
	display: flex;
	min-height: 154px;
	height: auto;
	box-sizing: border-box;
	flex-direction: column;
	padding: 5px;
	border: 1px solid #cfdae0;
	border-radius: 5px;
	color: #12334f;
	background: #fff;
	text-decoration: none;
}

body#top .nsp-recently-viewed__product-image {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	margin: 0 0 4px;
	object-fit: contain;
	background: #fff;
}

body#top .nsp-recently-viewed__code {
	display: block;
	overflow: hidden;
	color: #007d73;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.25;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body#top .nsp-recently-viewed__name {
	display: -webkit-box;
	overflow: hidden;
	margin-top: 2px;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.3;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

body#top .nsp-recently-viewed__source {
	position: absolute;
	top: 7px;
	right: 7px;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 54px;
	height: 20px;
	box-sizing: border-box;
	padding: 2px 7px;
	border: 1px solid #53616b;
	border-radius: 10px;
	color: #172b3b;
	background: rgba(255, 255, 255, .94);
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
	box-shadow: 0 1px 2px rgba(0, 0, 0, .1);
}
