@charset "UTF-8";
/* CSS Document */

/* -------------------------------------------
	レイアウト
---------------------------------------------- */
#contents_wrap { font-size: 116.6%; }
#contents_wrap .pagetop { font-size: 85.7%; }

@media only screen and (max-width: 767px) {
	#contents_wrap { font-size: 100%; }
	#contents_wrap .pagetop { font-size: 100%; }
}


/* -------------------------------------------
	パーツ
---------------------------------------------- */
.bg_wrap { background-color: #f6f6f6; }
a.button { display: block; width: auto; padding: 12px 5px 10px; background-color: #fff; border: 1px solid #522f91; font-size: 100%; color: #522f91; }
a.button:hover { background-color: #faf7ff; }
.button .arr { background-image: url(../img/arr.png); margin: 0; }

.border_title { position: relative; text-align: center; }
.border_title:before { position: absolute; content: ""; top: 50%; left: 0;  width: 100%; border-top: 1px solid #d9d9d9; z-index: 0; }
.border_title span { position: relative; display: inline-block; padding: 0 65px; background-color: #fff; z-index: 1; color: #4d3791; font-size: 200%; font-weight: bold; }
.border_title span.sp_only { display: none; }
.bg_wrap .border_title span { background-color: #f6f6f6; }
.border_title img { max-width: 100%; vertical-align: bottom; }

#contents_wrap .return_corner_top { margin-top: 50px; padding-top: 1em; border-top: 1px solid #e8e8e8; text-align: center; color: #64439c; }
#contents_wrap .return_corner_top a { display: inline-block; padding-left: 17px; background: url(../img/arr_back.png) no-repeat 0 47%; }

@media only screen and (max-width: 767px) {
	a.button { padding: 18px 0 15px; font-size: 100%; box-sizing: }
	.button .arr { background-image: url(../img/arr_x2.png); background-size: 6px auto; }

	.border_title:before { display: none; }
	.border_title span { padding: 0; background: none; }
	.border_title span.pc_only { display: none; }
	.border_title span.sp_only { display: block; }

	#contents_wrap .return_corner_top { margin-top: 30px; padding: 1em 20px 40px; text-align: left; }
	#contents_wrap .return_corner_top a { padding-left: 17px; background: url(../img/arr_back_x2.png) no-repeat 0 47%; background-size: 14px auto; }
	#contents_wrap .return_corner_top a .sp_only { display: inline-block; }
}


/* -------------------------------------------
	扉
---------------------------------------------- */
#top_contents { padding: 37px 0 45px; }
#top_contents .border_title { margin-bottom: 1.5em; }
#top_contents .border_title span { padding: 0 20px; }
#top_contents .top_lead { text-align: center; }

#top_contents #top_products { margin-top: 2.35em; }
#top_contents #top_products .product_item { float: left; width: 24.592%; max-width: 241px; margin-left: 0.51%; padding: 1.75em 0 26px; background-color: #fff; text-align: center; }
#top_contents #top_products .product_item:first-child { margin-left: 0; }
#top_contents #top_products .product_item .text { margin-bottom: 0.5em; padding: 0 15px; font-weight: bold; color: #522f91; letter-spacing: -0.06em; }
#top_contents #top_products .product_item .thumb { margin-bottom: 5px; padding: 0 21px; }
#top_contents #top_products .product_item .thumb img { max-width: 100%; vertical-align: bottom; }
#top_contents #top_products .product_item .label { margin-bottom: 1em; }
#top_contents #top_products .product_item .label span { display: block; margin-bottom: 0.5em; padding: 0 10px; font-size: 142.9%; font-weight: bold; }
#top_contents #top_products .product_item .link { padding: 0 24px; }

@media only screen and (max-width: 767px) {
	#top_contents { padding: 16px 0 40px; }
	#top_contents .top_lead { margin: 0 20px; text-align: left; }

	#top_contents #top_products { margin-top: 1.35em; }
	#top_contents #top_products .product_item { float: none; width: auto; max-width: inherit; margin: 20px 20px 0; padding: 1.75em 0 26px; }
	#top_contents #top_products .product_item:first-child { margin: 0 20px; }
	#top_contents #top_products .product_item .text { margin-bottom: 1.75em; padding: 0 15px; }
	#top_contents #top_products .product_item .thumb { margin-bottom: 1.35em; padding: 0 16px; }
	#top_contents #top_products .product_item .thumb img { max-width: 248px; }
	#top_contents #top_products .product_item .label { margin-bottom: 1.35em; }
	#top_contents #top_products .product_item .label span { font-size: 128.5%; }
	#top_contents #top_products .product_item .link { padding: 0 15px; }
	#top_contents #top_products .product_item .link .button { display: inline-block; padding: 8px 20px; }
}


/* -------------------------------------------
	タブ
---------------------------------------------- */
.page_nav.head { padding: 40px 0 50px; }
.page_nav.bottom { padding: 50px 0 0; }
.page_nav ul { display: table; width: 100%; }
.page_nav li { display: table-cell; width: 25%; vertical-align: top; }
.page_nav li a,
.page_nav li span { display: table-cell; width: 20%; padding: 0.65em 5px 0.5em; font-weight: bold; text-align: center; vertical-align: middle; }
.page_nav li a { background-color: #fff; border: 1px solid #d4d4d5; color: #333; }
.page_nav li a:hover { background-color: #faf7ff; }
.page_nav li span { position: relative; background-color: #522f91; border: 1px solid #522f91; color: #fff; }
.page_nav li + li a,
.page_nav li + li span { border-left: none; }
.page_nav.head li span:before { position: absolute; bottom: -13px; left: 50%; content: ""; display: block; width: 14px; height: 12px; margin-left: -7px; background: url(../img/bg_tab_nav.png) no-repeat; }

@media only screen and (max-width: 767px) {
	.page_nav.head { padding: 22px 20px 34px; }
	.page_nav.bottom { padding: 40px 0 10px; }
	.page_nav.head li span:before { bottom: -11px; width: 13px; height: 11px; background: url(../img/bg_tab_nav_x2.png) no-repeat; background-size: 13px auto; }
}

/* -------------------------------------------
	記事
---------------------------------------------- */
#head_wrap { padding-bottom: 55px; }
#head_wrap .border_title { margin-bottom: 3.5em; }
#head_wrap .head_img { float: right; width: 33.78%; max-width: 331px; box-sizing: border-box !important; -moz-box-sizing: border-box !important; -webkit-box-sizing: border-box !important; }
#head_wrap .head_img img { width: 100%; }
#head_wrap .head_img .caption { font-size: 85.7%; margin-top: 0.5em; }
#head_wrap .head_text { float: left; width: 59.19%; max-width: 580px; }
#head_wrap .head_text .head_catch { margin-bottom: 1em; font-size: 142.8%; font-weight: bold; }
#head_wrap .head_text .head_catch span { font-size: 70%; font-weight: normal; }
#head_wrap .head_text .note_list { margin-top: 0.75em; font-size: 85.7%; line-height: 1.34; }


#article_wrap { padding-top: 64px; }
#article_wrap #main_article { padding-bottom: 50px; border-bottom: 1px solid #dadada; }
#article_wrap #main_article .wrap + .wrap { margin-top: 65px; }
#article_wrap .sttl { margin-bottom: 1em; font-size: 142.8%; font-weight: bold; }
#article_wrap .attendant { color:#522f91; font-weight: bold; background: url(../img/bg_attendant_gray.png) no-repeat right bottom #f2f2f2; padding: 30px 30px 50px; }
#article_wrap .editor { background: #fff; padding: 12px 30px 30px; }
#article_wrap .col_left { float: left; }
#article_wrap .col_right { float: right; }
#article_wrap #main_article .article { width: 59.19%; max-width: 580px; }
#article_wrap #main_article .article p { margin-bottom: 2.75em; }
#article_wrap #main_article .article p.last { margin-bottom: 0; }
#article_wrap #main_article .article p em { font-weight: bold; color: #522f91; }
#article_wrap #main_article .col_left.thumb { width: 33.27%; max-width: 326px; }
#article_wrap #main_article .col_right.thumb { width: 33.78%; max-width: 331px; }
#article_wrap .thumb img { max-width: 100%; vertical-align: bottom; }
#article_wrap #main_article .thumb .caption { font-size: 85.7%; margin-top: 0.5em; }
#article_wrap #main_article .note_list { font-size: 85.7%; line-height: 1.34; }
#article_wrap #main_article + .note_list { margin-top: 2em;}
#article_wrap #main_article + .note_list dd + dt,
#article_wrap #main_article + .note_list dd + dt + dd { margin-top: 0.35em; }

#article_wrap #product_intro { margin-top: 3.5em; padding: 29px; background: url(../img/bg_staff_memo.png); border: 3px solid #e7e7e7; }
#article_wrap #product_intro .product { text-align: center; }
#article_wrap #product_intro .col_right { display: inline-block; vertical-align: middle; float: none; width: 43.66%; max-width: 400px; }
#article_wrap #product_intro .col_left { display: inline-block; vertical-align: middle; float: none; width: 36.14%; max-width: 331px; margin-right: 6%; }
#article_wrap #product_intro .col_left img { max-width: 100%; }
#article_wrap #product_intro .text { text-align: left; margin-bottom: 2em; }
#article_wrap #product_intro .name { text-align: left; margin-bottom: 2em; font-size: 128.5%; font-weight: bold; }
#article_wrap #product_intro .link_product a { padding-left: 20px; padding-right: 20px; }

#article_wrap #product_intro .product_clm02 > .product {
    width: 49%;
}
#article_wrap #product_intro .product_clm02 > .product:first-child {
    float: left;
}
#article_wrap #product_intro .product_clm02 > .product:last-child {
    float: right;
}

.report2 #article_wrap #product_intro .link_product{max-width: 400px;margin-top: 30px;margin-left: auto;margin-right: auto;}

.report4 #article_wrap #product_intro { text-align: center; }
.report4 #article_wrap #product_intro .banner a:hover { opacity: .75; filter: alpha(opacity=75); }
.report4 #article_wrap #product_intro .banner img { max-width: 100%; }

@media only screen and (max-width: 767px) {
	#head_wrap { padding: 0 20px 35px; }
	#head_wrap .border_title { margin-bottom: 25px; }
	#head_wrap .head_img { float: none; width: 100%; max-width: inherit; text-align: center; }
    #head_wrap .head_img img { max-width: 280px; }
	#head_wrap .head_text { float: none; width: 100%; max-width: inherit; margin-bottom: 2em; }
	#head_wrap .head_text .head_catch { font-size: 114.2%; }

	#article_wrap { padding: 36px 20px 0; }
	#article_wrap #main_article { padding-bottom: 0.75em; }
	#article_wrap #main_article .wrap + .wrap { margin-top: 0; }
    #article_wrap .sttl { font-size: 114.2%; }
    #article_wrap .attendant { padding: 20px 20px 35px; }
    #article_wrap .editor { padding: 12px 20px 25px; }
	#article_wrap .col_left,
	#article_wrap .col_right { float: none; }
	#article_wrap #main_article .article { width: 100%; max-width: inherit; margin-bottom: 2em; }
	#article_wrap #main_article .article p { margin-bottom: 2em; }
	#article_wrap #main_article .thumb { text-align: center; margin-bottom: 2em !important; }
	#article_wrap #main_article .col_left.thumb { width: 100%; max-width: inherit; }
	#article_wrap #main_article .col_right.thumb { width: 100%; max-width: inherit; }
	#article_wrap .thumb img { width: 100%; max-width: 280px; vertical-align: bottom; }

	#article_wrap #product_intro { margin-top: 2em; padding: 1.35em 16px; background-size: 5px auto; }
    #article_wrap #product_intro .col_right { width: 100%; max-width: inherit; }
	#article_wrap #product_intro .col_left { width: 100%; max-width: inherit; margin-right: 0; margin-bottom: 2em; }
    #article_wrap #product_intro .col_left img { max-width: 280px; }
    #article_wrap #product_intro .text { margin-bottom: 1em; }
	#article_wrap #product_intro .name { margin-bottom: 1em; font-size: 114.3%; }

    #article_wrap #product_intro .product_clm02 > .product {
        width: 100%;
    }
    #article_wrap #product_intro .product_clm02 > .product:first-child {
        float: none;
        margin-bottom: 2em;
    }
    #article_wrap #product_intro .product_clm02 > .product:last-child {
        float: none;
    }

	.report2 #article_wrap #product_intro .link_product{margin-top: 10px;}
}