/*--------*/
/* text系 */
/*--------*/

a { font-weight:500; }
a > img:hover { opacity:0.75; }

#main p {
	margin-top:0;
}

.txt_magenta {
	color:#e73475;
	font-weight:500;
}

.txt_16rem { font-size:16px; font-size:1.6rem; }
.txt_18rem { font-size:18px; font-size:1.8rem; }
.txt_21rem { font-size:21px; font-size:2.1rem; }
.txt_24rem { font-size:24px; font-size:2.4rem; }
.txt_28rem { font-size:28px; font-size:2.8rem; }
.txt_32rem { font-size:32px; font-size:3.2rem; }
.txt_48rem { font-size:48px; font-size:4.8rem; }
.txt_54rem { font-size:54px; font-size:5.4rem; }

.indent_text {
	padding-left:1em;
	text-indent:-1em;
}

.attention {
	color:#e50058;
	font-weight:500;
}

.border_green { border-color:#13978a; clear:both; }
.border_magenta { border-color:#e73475; clear:both; }

.ma_2rem { margin-bottom:2rem !important; }
.ma_3rem { margin-bottom:3rem !important; }
.ma_4rem { margin-bottom:4rem !important; }
.ma_5rem { margin-bottom:5rem !important; }

label { letter-spacing:normal !important; }

@media screen and (max-width:767px) {
	
}
@media print,screen and (min-width:768px) {
	#header .header_logo_area { margin-bottom:0rem; }
}
/*--------*/
/* list系 */
/*--------*/

.caution_list li {
	position:relative;
	margin-bottom:0.5rem;
	padding-left:1.5em;
}
.caution_list li::before {
	display:block;
	content:"※";
	position:absolute;
	top:0;
	left:0;
}

.normal_list {
	margin:0;
	padding:0 1.5em;
}
.normal_list li {
	margin-bottom:0.5rem;
	padding:0;
	list-style:disc;
}


/* -------- */
/* btn_list */
/* -------- */

.btn_list{
	display:-ms-flex-box;
	display:-moz-flex;
	display:-webkit-flex;
	display:flex;
	-ms-flex-pack:justify;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-ms-flex-wrap:wrap;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	text-align:center;
}
.btn_list.items_center{
	-ms-align-items:center;
	-webkit-align-items:center;
	align-items:center;
}
.btn_list .txt { text-align:left; }
.btn_list img{
	width:100%;
	margin-bottom:1.5rem;
}
.btn_list.items_center > li { margin-bottom:1.5rem; }
.btn_list.items_center img{ margin-bottom:0; }
.btn_list > a {
	display:block;
	color:#636262;
	font-size:1.5rem;
	font-weight:700;
}
.btn_list a:hover { opacity: .8;  }

@media screen and (max-width:767px) {
	.btn_list > .col_per_6,
	.btn_list > .col_per_4 { width:49%; }
	
	.btn_list > .col_per_2 { width:100%; }
}
@media print,screen and (min-width:768px) {
	.btn_list > .col_per_6 { width:16%; }
	.btn_list > .col_per_4 { width:24.4%; }
	.btn_list > .col_per_2 { width:49.6%; }
}

/* ----------------- */
/* トップページblock */
/* ----------------- */

#top_guide_block,
#top_topics,
#top_foruse,
#top_ondemand,
#top_recruit,
#top_contact,
#top_site_links,
#top_sns { margin-bottom:3rem; }

@media screen and (max-width:767px) {
	#top_guide_block .btn_list > *,
	#top_foruse .btn_list > *,
	#top_ondemand .btn_list > *,
	#top_contact .btn_list > *{ width:49%; }
	#top_site_links .btn_list > *{
		width:100%;
		margin-bottom:2rem;
	}
	
	#top_topics .btn_list > *{ width:100%; }
	#top_sns .btn_list > *{ width:32%; }
}
@media print,screen and (min-width:768px) {
	#top_guide_block .btn_list > *,
	/* 下23/9/1　16％から13％に変更-SNSアイコン調整のため */
	#top_sns .btn_list > *{ width:13%; }
	
	#top_topics .btn_list > *{ width:49.6%; }
	#top_recruit .btn_list > *,
	#top_site_links .btn_list > *{ width:32.9%; }
	
	#top_foruse .btn_list > *,
	#top_ondemand .btn_list > *,
	#top_contact .btn_list > *{ width:24.4%; }
}

/* --------------- */
/* contact product */
/* --------------- */

.ecobag_color_list,
.price_table {
	display:-ms-flex-box;
	display:-moz-flex;
	display:-webkit-flex;
	display:flex;
	-ms-flex-wrap:wrap;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	-ms-flex-pack:start;
	-webkit-justify-content:flex-start;
	justify-content:flex-start;
	margin:2rem auto;
	padding:0;
}
.ecobag_color_list li {
	margin:0 0 1rem;
	padding:0 1%;
	text-align:center;
}
.price_table dt,
.price_table dd {
	margin:0;
	padding:1.5rem 2rem;
}
.price_table dt { background:#ededed; }
@media screen and (max-width:767px) {
	.price_table {
		border:#333 1px solid;
		border-bottom:none;
	}
	.price_table > dl { width:100%; }
	.price_table dt,
	.price_table dd {
		width:100%;
		border-bottom:#333 1px solid;
	}
}
@media print,screen and (min-width:768px) {
	.ecobag_color_list li { width:7.5%; }
	.price_table { border-left:#333 1px solid; }
	.price_table > dl {
		border:#333 1px solid;
		border-left:none;
	}
	.price_table dt { border-bottom:#333 1px solid; }
}

/* ------------------- */
/* category list block */
/* ------------------- */

.category_list_block {
	clear:both;
	overflow:hidden;
	margin:3em auto;
	padding:0;
}
.category_list_block > div {
	margin-bottom:1rem;
	padding-right:0;
	padding-left:0;
	box-sizing:border-box;
}
.category_list_block > div img {
	width:calc( 100% - 0.5rem );
}
.category_list_block + * {
	padding-right:0;
	padding-left:0;
}

/* ------------- */
/* card kadomaru */
/* ------------- */

.heading_contact_product_kadomaru1 + div,
.heading_contact_product_kadomaru2 + div {
	width:100%;
	margin:2rem auto;
	padding:2rem;
}
.heading_contact_product_kadomaru1 + div { border:#1c9285 1px solid; }
.heading_contact_product_kadomaru2 + div { border:#003d82 1px solid; }
.heading_contact_product_kadomaru1 + div > *,
.heading_contact_product_kadomaru2 + div > * { margin:0; }
.heading_contact_product_kadomaru1 + div .title { color:#1c9285; font-weight:700; }
.heading_contact_product_kadomaru2 + div .title { color:#003d82; font-weight:700; }
.heading_contact_product_kadomaru1 + div .txt::before {
	content:"●";
	color:#1c9285;
}
.heading_contact_product_kadomaru2 + div .txt::before {
	content:"●";
	color:#003d82;
}
.kadomaru_price_table1,
.kadomaru_price_table2,
.kadomaru_price_table1 > .list,
.kadomaru_price_table2 > .list {
	display:-ms-flex-box;
	display:-moz-flex;
	display:-webkit-flex;
	display:flex;
	-ms-flex-wrap:wrap;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
}
.kadomaru_price_table1,
.kadomaru_price_table2 { margin-bottom:2rem; }

.kadomaru_price_table1 .title p,
.kadomaru_price_table2 .title p { margin:0; }
.kadomaru_price_table1 .title p:first-child,
.kadomaru_price_table2 .title p:first-child {
	height:3.2rem;
	padding:0.8rem;
	text-align:center;
	font-size:1.6rem;
	font-weight:700;
}
.kadomaru_price_table1 .title p:first-child { background:#f5e929; }
.kadomaru_price_table2 .title p:first-child { color:#fff; background:#003d82; }

.kadomaru_price_table1 .title p:last-child { height:calc(100% - 3.2rem); background:#1c9285; }
.kadomaru_price_table2 .title p:last-child { height:calc(100% - 3.2rem); background:#f5e929; }

.kadomaru_price_table1 *,
.kadomaru_price_table2 * { box-sizing:border-box; }
.kadomaru_price_table1 dl,
.kadomaru_price_table2 dl {
	border-right:#717171 1px solid;
	border-bottom:#717171 1px solid;
}
.kadomaru_price_table1 dt,
.kadomaru_price_table1 dd,
.kadomaru_price_table2 dt,
.kadomaru_price_table2 dd {
	padding:1rem;
	line-height:1;
	text-align:center;
}
.kadomaru_price_table1 dt {
	color:#fff;
	background:#1c9285;
}
.kadomaru_price_table2 dt { background:#f5e929; }
.kadomaru_price_table1 > .list .caution,
.kadomaru_price_table2 > .list .caution { padding:0.5em; }
.kadomaru_price_table1 > .list .caution p,
.kadomaru_price_table2 > .list .caution p {
	margin:0;
	padding-left:1em;
	text-indent:-1em;
}

@media screen and (max-width:767px) {
	.kadomaru_price_table1 > .list > *,
	.kadomaru_price_table2 > .list > * { width:100%; }
	
	.kadomaru_price_table1 .title,
	.kadomaru_price_table2 .title {
		display:table;
		width:100%;
		height:6rem;
		border-bottom:#717171 1px solid;
	}
	
	.kadomaru_price_table1 .title p:first-child,
	.kadomaru_price_table2 .title p:first-child {
		display:table-cell;
		width:50%;
		height:auto;
		letter-spacing:normal;
		vertical-align:middle;
	}
	
	.kadomaru_price_table1 .title p:last-child,
	.kadomaru_price_table2 .title p:last-child {
		display:table-cell;
		width:50%;
		height:auto;
		text-align:center;
		font-size:2.0rem;
		font-weight:bold;
		vertical-align:middle;
	}
	.kadomaru_price_table1 .title p:last-child { color:#fff; background:#1c9285; }
	.kadomaru_price_table2 .title p:last-child { background:#f5e929; }
	
	.kadomaru_price_table1 dl,
	.kadomaru_price_table2 dl {
		display:-ms-flex-box;
		display:-moz-flex;
		display:-webkit-flex;
		display:flex;
		-ms-flex-wrap:wrap;
		-webkit-flex-wrap:wrap;
		flex-wrap:wrap;
	}
	
	.kadomaru_price_table1 dt,
	.kadomaru_price_table1 dd,
	.kadomaru_price_table2 dt,
	.kadomaru_price_table2 dd { width:50%; }
}
@media print,screen and (min-width:768px) {
	.heading_contact_product_kadomaru1 + div .txt {
		display:inline-block;
		margin-right:1em;
	}
	
	.kadomaru_price_table1 .title,
	.kadomaru_price_table2 .title {
		border:#717171 1px solid;
		border-right:none;
	}
	.kadomaru_price_table1 .title p:first-child,
	.kadomaru_price_table2 .title p:first-child { border-bottom:#717171 1px solid; }
	
	.kadomaru_price_table1 > .list > *,
	.kadomaru_price_table2 > .list > * { width:10%; }
	.kadomaru_price_table1 > .list .caution,
	.kadomaru_price_table2 > .list .caution { width:30%; }
	
	.kadomaru_price_table1 > .title,
	.kadomaru_price_table2 > .title {
		width:10%;
	}
	.kadomaru_price_table1 > .list,
	.kadomaru_price_table2 > .list {
		width:90%;
		font-size:1.2rem;
		border-top:#717171 1px solid;
		border-left:#717171 1px solid;
	}
}

/* ----- */
/* paper */
/* ----- */

.paper_table,
.paper_table th,
.paper_table td {
	text-align:left;
	border:#231815 1px solid;
	border-collapse:collapse;
	box-sizing:border-box;
}

.paper_table {
	width:100%;
	margin:2em auto;
	padding:0;
}
.paper_table thead th:last-child { font-size:1.25em; }
.paper_table thead th span {
	display:block;
	margin:0.5em;
	line-height:1;
}
.paper_table thead th span:last-child { margin-bottom:0; }
.paper_table thead th span::before {
	display:inline-block;
	content:"";
	width:3em;
	height:1em;
	margin-right:1em;
	vertical-align:bottom;
	border:#231815 1px solid;
}
.paper_table th,
.paper_table td { padding:1rem 2rem; }
.paper_table thead th,
.paper_table tbody .standard { background:#ededed; }
.paper_table thead th span.medium::before,
.paper_table tbody .medium { background:#fff100; }
.paper_table thead th span.premium::before,
.paper_table tbody .premium {
	color:#fff;
	background:#003e8b;
}

@media print,screen and (max-width:767px) {
	.paper_table thead th:first-child { width:35%; }
	.paper_table thead th:last-child { width:40%; }
}

@media print,screen and (min-width:768px) {
	.paper_table thead th:first-child { width:33%; }
	.paper_table thead th:last-child { width:50%; }
}

/* ----------- */
/* item detail */
/* ----------- */

.classcategory_list li .option_description_block {
	width:100%;
	margin:1rem auto;
	padding:1rem 2rem;
	letter-spacing:normal;
	font-size:1.4rem;
	box-sizing:border-box;
	background:#ededed;
}

.item_detail > ul {
	padding-left:1.5em;
	list-style:disc;
}

.detail_price_list_title,
.detail_price_list {
	display:-ms-flex-box;
	display:-moz-flex;
	display:-webkit-flex;
	display:flex;
	letter-spacing:-.40em;
}

.detail_price_list_title > *,
.detail_price_list > * {
	letter-spacing:normal;
	box-sizing:border-box;
}
.detail_price_list_title > div:first-child,
.detail_price_list > ul.quantity_list { background:#ededed; }

.detail_price_list_title div,
.detail_price_list li{
	margin:0;
	padding:0.5rem 1rem;
	border:#333 1px solid;
}
.detail_price_list { text-align:center; }
.title_a { background:#ededed; }
.title_b,
.title_d,
.title_e,
.title_f,
.title_g,
.title_h,
.title_i { background:#fff100; }
.title_c { background:#003e8b; color:#fff; }

@media screen and (max-width:767px) {
	.classcategory_list li:first-child { margin-top:8px !important; }
	.detail_price_list_title { display:none; }
	.detail_price_list,
	.detail_price_list > .detail_price_list_title {
		width:100%;
		display:-ms-flex-box;
		display:-moz-flex;
		display:-webkit-flex;
		display:flex;
		-ms-flex-wrap:wrap;
		-webkit-flex-wrap:wrap;
		flex-wrap:wrap;
		letter-spacing:-.40em;
	}
	.detail_price_list > .detail_price_list_title { margin-top:2em; border-top:#333 1px solid; }
	.detail_price_list_title > *,
	.detail_price_list > ul {
		width:50%;
		 border-bottom:#333 1px solid;
	}
}
@media print,screen and (min-width:768px) {
	.classcategory_list li:first-child { margin-top:16px !important; }
	.classcategory_list li { letter-spacing:-.40em; }
	.classcategory_list li p,
	.classcategory_list li select {
		display:inline-block;
		letter-spacing:normal;
		vertical-align:middle;
	}
	.classcategory_list li p,
	#detail_cart_box__cart_quantity dt { width:25%; }
	
	.detail_price_list_title,
	.detail_price_list{ border:#333 1px solid; }
	.detail_price_list_title { border-bottom:none; }
	.detail_price_list { border-top:none; }
	
	.detail_price_list_title > *,
	.detail_price_list > * { width:30%; }
	.detail_price_list_title > .col_6,
	.detail_price_list > .col_6 { width:15%; }
	.detail_price_list_title > .col_2,
	.detail_price_list > .col_2 { width:45%; }
	.detail_price_list_title > .col_1,
	.detail_price_list > .col_1 { width:90%; }
	.detail_price_list_title > *:first-child,
	.detail_price_list > .quantity_list { width:10%; }
	
	.detail_price_list > .detail_price_list_title { display:none; }
	
	.detail_price_list_title > div { padding:2rem 1rem; }
	
	.detail_price_list_title > div b { font-size:2.1rem; }
}

/* ▼テンプレート　ここから▼  */

/* ------------------- */
/* .TemplatesContents1 */
/* ------------------- */
.TemplatesContents1{
	padding-bottom: 4rem;
	border-bottom: 1px solid #383838;
}
@media screen and (max-width:767px) {

}
@media print,screen and (min-width:768px) {
	.TemplatesContents1{
		display: flex;
		justify-content: space-between;
	}
	.TemplatesContents1 > .ContentsBlock{
		width: calc(50% - 0.5rem);
	}
}
/* --------------------- */
/* .TemplatesHeadingCard */
/* --------------------- */
@media print,screen and (min-width:768px) {
	.TemplatesHeadingCard{
		margin-top: 0;
	}
}
/* ------------- */
/* .TemplatesDl1 */
/* ------------- */
.TemplatesDl1{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.TemplatesDl1 dt{
	width: 25%;
	/*width: 170px;*/
	margin-top: 1.25rem;
}
.TemplatesDl1 dt img{
	width: 100%;
}
.TemplatesDl1 dd{
	/*width: calc(100% - 170px);*/
	width: 75%;
	margin-top: 1.25rem;
}
.TemplatesDl1 a{
	display: inline-block;
	margin:0.25rem 0 0.25rem 1.25rem;
	font-weight: bold;
}
.TemplatesDl1 .Ico{
	display: inline-block;
	width: 40px;
}
.TemplatesDl1 .Ico img{
	width: 100%;
}
.TemplatesDl1 .Size{
	display: inline-block;
}
@media screen and (max-width:767px) {
	.TemplatesDl1{
		font-size: 1.25rem;
	}
	.TemplatesDl1 .Ico{
		width: 20px;
	}
}
/* ------------------- */
/* .TemplatesHeadingDm */
/* ------------------- */
.TemplatesHeadingDm{
	color: #009d90;
}
@media print,screen and (min-width:768px) {
	.TemplatesHeadingDm{
		margin-top: 0;
	}
}
/* ------------------- */
/* .TemplatesContents2 */
/* ------------------- */
.TemplatesContents2{
	margin-top: 1rem;
	padding-bottom: 4rem;
	border-bottom: 1px solid #383838;
}

@media print,screen and (min-width:768px) {
	.TemplatesContents2{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.TemplatesContents2 > .ContentsBlock{
		width: calc(50% - 0.5rem);
	}
}
/* ----------------------- */
/* .TemplatesHeadingPoster */
/* ----------------------- */
.TemplatesHeadingPoster{
	width: 100%;
	color: #f18b00;
}
/* ------------------ */
/* .TemplatesHeading1 */
/* ------------------ */
.TemplatesHeading1{
	margin: 1rem 0 0 !important;
	padding: 0;
	color: #f18b00;
	font-weight: bold;
}
.TemplatesHeading1.HeadingPoster{
	color: #f18b00;
}
.TemplatesHeading1.HeadingFlyer{
	color: #009d90;
}
@media screen and (max-width:767px) {
	.TemplatesHeading1{
		margin-top: 1.15rem !important;
	}
}
@media print,screen and (min-width:768px) {
	.TemplatesHeading1{
		font-size: 32px;
	}
}
/* ---------------------- */
/* .TemplatesHeadingFlyer */
/* ---------------------- */
.TemplatesHeadingFlyer{
	width: 100%;
	color: #009d90;
}
/* ▲テンプレート　ここまで▲  */


/* =========================

   エールアーカイブ（下層ページ統一版）

========================= */

body#page_user_data.other_page #contents {

    /* ベースフォント（TOPと同じゴシック） */

    font-family:

        "Hiragino Kaku Gothic ProN",

        "Yu Gothic",

        "Meiryo",

        sans-serif !important;

    color: #4a4a4a;

    font-size: 16px;

    line-height: 1.9;

    letter-spacing: 0.02em;

}

/* =========================

   見出し

========================= */

body#page_user_data.other_page #contents h2,

body#page_user_data.other_page #contents h3,

body#page_user_data.other_page #contents h4 {

    color: #2f2f2f !important;

    font-weight: 500;

}

/* =========================

   本文

========================= */

body#page_user_data.other_page #contents p {

    color: #4a4a4a !important;

    line-height: 1.9;

}

/* =========================

   画像

========================= */

body#page_user_data.other_page #contents img {

    margin: 24px auto;

}

/* =========================

   区切り線

========================= */

body#page_user_data.other_page #contents hr {

    border: none;

    border-top: 1px solid #d8d8d8;

    margin: 24px 0;

}

/* =========================

   青文字リセット

========================= */

body#page_user_data.other_page #contents [style*="color:#1e90ff"],

body#page_user_data.other_page #contents [style*="color: #1e90ff"] {

    color: #4a4a4a !important;

}

/* =========================

   青帯見出し（簡易パンフ化）

========================= */

body#page_user_data.other_page #contents p[style*="background-color:#1e90ff"] {

    font-size: 20px !important;

    font-weight: 500 !important;

    color: #2f2f2f !important;

    background: none !important;

    border-left: 4px solid #c7c7c7;

    padding: 10px 0 10px 14px;

}

/* =========================

   テーブル

========================= */

body#page_user_data.other_page #contents table {

    width: 100%;

    border-collapse: collapse;

    margin: 30px 0;

    font-size: 14px;

    background: #fff;

}

body#page_user_data.other_page #contents table th {

    background: #f5f5f5 !important;

    color: #2f2f2f !important;

    font-weight: 500;

    padding: 14px;

    border: 1px solid #ddd !important;

    vertical-align: top;

}

body#page_user_data.other_page #contents table td {

    background: #fff !important;

    color: #4a4a4a !important;

    padding: 14px;

    border: 1px solid #e6e6e6 !important;

    line-height: 1.8;

}



/* ================================
   PAGE TOP ボタン（表示固定）
   ================================ */

.pagetop {
    /* ボタン本体の位置とサイズ */
    display: block !important;
    position: fixed !important;
    right: 20px !important;
    bottom: 20px !important;
    width: 55px !important;
    height: 55px !important;

    /* ボタンの見た目 */
    background: #d6001c !important;
    border-radius: 50% !important;

    /* 他の要素より前に出す */
    z-index: 9999 !important;

    /* 強制表示（透明化されるのを防ぐ） */
    opacity: 1 !important;
    visibility: visible !important;
}

/* ================================
   PAGE TOP ボタンの矢印
   ================================ */

.pagetop::before {
    content: "" !important;

    /* 矢印の位置 */
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;

    /* 矢印のサイズ */
    width: 12px !important;
    height: 12px !important;

    /* 矢印の線 */
    border-left: 3px solid #fff !important;
    border-bottom: 3px solid #fff !important;

    /* 矢印の角度（上向き） */
    transform: translate(-50%, -50%) rotate(135deg) !important;
}

/* スクロールで表示するためのクラス */
.pagetop.show {
    opacity: 1 !important;
    visibility: visible !important;
}

/* 「ニュース一覧を見る」ボタンのデザイン */
.news_more_btn {
  text-align: center;
  margin-top: 15px;
  margin-bottom: 10px;
}

.news_more_btn a {
  display: inline-block;
  padding: 8px 30px;
  background-color: #ffffff;
  color: #333333;
  border: 1px solid #cccccc;
  border-radius: 20px;
  text-decoration: none;
  font-size: 13px;
  font-weight: bold;
  transition: all 0.3s ease;
}

.news_more_btn a:hover {
  background-color: #333333;
  color: #ffffff;
  border-color: #333333;
}

