@charset "utf-8";

/* ==================================================
Setting by CMS sheets
================================================== */

body,
input,
select,
textarea {
	font-family: "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; 
}

a:link {
	color: #983b3c;
    text-decoration: underline;
    transition-duration: 0.1s;
}
a:hover {
    color: #3a3a3a;
    text-decoration: none;
}
body {
	font-size: 100%;    /* 16px */
    line-height: 1.5;
    color: #231815;
    background-color: transparent;
		font-weight: 500;
}

/* Styles
================================================== */


/* text */

.txt_red {
	color: #8c0000;
	/* Setting by CMS sheets */
}

.txt_green {
	color: #1B594A;
	/* Setting by CMS sheets */
}

.txt_big {
	font-size: 187.5%;    /* 30px */
	/* Setting by CMS sheets */
}

.txt_small {
	font-size: 86%;
	/* Setting by CMS sheets */
}

/* bgcolor */
td.bg_blue,
th.bg_blue {
	color: inherit;
	background-color: #e8fdfe;
	/* Setting by CMS sheets */
}
td.bg_gray,
th.bg_gray {
	color: inherit;
	background-color: #eef9ff;
	/* Setting by CMS sheets */
}
td.bg_purple,
th.bg_purple {
	color: inherit;
	background-color: #f3eeff;
	/* Setting by CMS sheets */
}
/* ▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲ */


/* ==================================================
Base-Layout
================================================== */
#tmp_wrapper {
	margin: 0 auto;
}

.container:before,
.container:after {
	content: '';
	display: table;
}

.container:after {
	clear: both;
}

.container {
	width: 100%;
	max-width: 920px;
	padding: 0 20px;
	margin: 0 auto;
}

.format_top #tmp_main {
    padding-bottom: 80px;
}
.col_main {
    padding: 0 0 20px;
}
#tmp_contents {
    padding: 0 0 40px;
}
/* header
================================================== */
#tmp_header .container {
    position: relative;
}
#tmp_hlogo {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-grow:1;
	text-align:center;
    height: 250px;
}
#tmp_hlogo a {
	display: block;
}
#tmp_hlogo img {
	max-width: 100%;
    height: auto;
}
#tmp_hnavi {
    list-style: none;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
}
#tmp_hnavi li {
    margin: 0 0 0 20px;
    float: left;
}
#tmp_hnavi li a {
    display: flex;
	justify-content: center;
	align-items: center;
    text-decoration: none;
    padding: 7px;
    width: 40px;
    height: 40px;
    background-color: #999899;
    border-radius: 10px;
}
#tmp_hnavi li svg {
    width: 25px;
    height: 25px;
}

/* gnavi
================================================== */
#tmp_gnavi {
    background-color: #d5ba75;
	color: inherit;
    padding: 10px 0;
	clear: both;
}
#tmp_gnavi ul {
	list-style: none;
    font-size: 112.5%;
    display: flex;
    flex-wrap:wrap;
	-webkit-justify-content: center;
    justify-content: center;
}
#tmp_gnavi li {
    line-height: 25px;
    border-left:1px solid #231815;
}
#tmp_gnavi li:first-child {
    border-left: none;
}
#tmp_gnavi a {
    display: block;
    padding: 3px 25px;
	text-decoration: none;
    color: #231815;
    background-color: #d5ba75;
}

#tmp_gnavi .active a,
#tmp_gnavi a:hover,
#tmp_gnavi a:focus {
	text-decoration: underline;
}

/* pankuzu
================================================== */
#tmp_pankuzu {
    padding: 10px 0;
    font-size: 87.5%;
}

/* update
================================================== */
#tmp_custom_update {
    float: right;
    font-size: 87.5%;
}

/* ptop
================================================== */
.ptop {
	text-align:right;
	clear:both;
}

/* pnavi
================================================== */
.pnavi{
	position: fixed;
	right: 30px;
	bottom: 30px;
	z-index: 100;
	transition: 0.3s opacity ease-in-out;
    display: none;
}
.pnavi .ptop {
    text-align: left;
}
.pnavi,
.pnavi a,
.pnavi span{
	width: 52px;
	height: 52px;
}
.pnavi a,
.pnavi span{
	display: block;
}
.pnavi a {
    position: relative;
	font-size: 0.75rem;
	font-weight: bold;
    padding: 30px 3px 5px;
	color: #ffffff;
	background-color: #d5ba75;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	transition: 0.3s all ease-in-out;
}
.pnavi a::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 15px;
    line-height: 1;
    width: 16px;
    height: 16px;
    border: 3px solid #ffffff;
    border-left: 0;
    border-bottom: 0;
    transform: translateX(-50%) rotate(-45deg);
}
.pnavi a:hover,
.pnavi a:focus {
    opacity: 0.7;
}
.pnavi_fixed.pnavi {
	position: fixed;
	bottom: 30px;
    right: 30px !important;
}

.no_javascript .pnavi{
	display: block;
}
/* footer
================================================== */
#tmp_footer {
    background-color: #983b3c;
    color: #ffffff;
    padding: 45px 0 25px;
}
#tmp_footer .foot_ttl {
    text-align: center;
    padding: 0 0 15px;
    font-size: 81.25%;
}
#tmp_footer .flogo {
    width: 340px;
    margin: 0 auto 2.8em;
}
#tmp_footer .flogo img {
    max-width: 100%;
    height: auto;
}
#tmp_footer .foot_ttl span {
    margin-right: 0.5em;    
}

/* fnavi  */
#tmp_footer .fnavi {
	list-style: none;
    display: flex;
    flex-wrap: wrap;
	justify-content: center;
    padding: 20px 0 10px;
    font-size: 87.5%;
}
#tmp_footer .fnavi li {
    padding: 0 0.5em;
}
#tmp_footer .fnavi li a {
    background-color: #983b3c;
    color: #ffffff;
    text-decoration: none;
}

/* box_shop */
#tmp_footer .wrap_box_shop {
    border-top: 1px solid #ffffff;
    padding: 20px 0 4px;
}
#tmp_footer .wrap_box_shop:first-child {
    border-top: none;
}
#tmp_footer .wrap_box_shop h2 {
    font-size: 87.5%;
    font-weight: normal;
    margin: 0 0 0.5em;
}
#tmp_footer .wrap_box_shop p {
    font-size: 81.25%;
    margin: 0 0 16px;
}
#tmp_footer .box_shop {
    display: flex;
    justify-content: space-between;
}
#tmp_footer .box_shop .box_shop_lft,
#tmp_footer .box_shop .box_shop_rgt {
    flex-basis: 0;
    flex-grow: 1;
}
#tmp_footer .box_shop .box_shop_rgt {
    margin-left: 30px;
}
#tmp_footer address {
    font-style: normal;
}
#tmp_footer .wrap_box_shop a {
    background-color: #983b3c;
    color: #ffffff;
}
#tmp_footer .box_shop table th,
#tmp_footer .box_shop table td {
    vertical-align: top;
    text-align: left;
}
#tmp_footer .box_shop table th {
    font-weight: normal;
    width: 120px;
    white-space: nowrap;
    padding: 0 8px 0 0;
}
#tmp_footer .box_shop .txt_indent {
    padding-left: 3.3em;
}
#tmp_footer .copyright {
	text-align: center;
    font-size: 62.5%;
}

/* ==================================================
hover 
================================================== */
#tmp_footer .fnavi li a,
#tmp_footer .wrap_box_shop a {
    transition: all 0.3s ease-in-out;
}
#tmp_footer .fnavi li a:hover,
#tmp_footer .wrap_box_shop a:hover {
    opacity: 0.7;
}
#tmp_footer .wrap_box_shop a:hover {
    text-decoration: underline;
}

/* ==================================================
contents
================================================== */
/* box_summary
================================================== */
.box_summary {
    position: relative;
	margin:30px 0 40px;
	padding:35px 0;
	border-top:3px solid #983b3c;
	border-bottom:3px solid #983b3c;
	clear:both;
}
.box_summary::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 8px;
    right: 0;
    left: 0;
    bottom: 8px;
    border-top: 1px solid #983b3c;
    border-bottom: 1px solid #983b3c;
}
.box_summary p {
    margin-bottom: 0 !important;
    font-size: 112.5%;
    line-height: 1.75;
}

/* ==================================================
Splide control common
================================================== */
.splide__controls {
    display: flex;
	align-items: center;
}
.splide__toggle {
	position: relative;
	display: inline-block;
    text-decoration: none !important;
	font-size: 100%;
	font-weight: bold;
	padding: 3px 0 0 17px;
	color: #222222 !important;
	margin-right: 20px;
	min-width: 4.5em;
	text-align: left;
}
.splide__toggle:hover {
    text-decoration: underline!important;
}
.splide__toggle:before,
.splide__toggle:after {
	content: '';
	width: 3px;
	height: 12px;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: 1px;
	transform: translateY(-50%);
	background-color: #222222;
}
.splide__toggle:after {
	left: 6px;
}
.splide__toggle:not(.is-active):after {
	content: none;
}
.splide__toggle:not(.is-active):before {
	border-style: solid;
	border-width: 6px 0 6px 8px;
	border-color: transparent transparent transparent #222222;
	background-color: transparent;
}
.splide__arrow {
    position: static;
    overflow: hidden;
    text-indent: -9999px;
    opacity: 1;
    transform: none;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    color: #ffffff;
    background-color: #983b3c;
    border: 1px solid transparent;
    background-position: center center;
    background-repeat: no-repeat;
    box-shadow: 0px 2px 10px 0.6px rgba(28,28,28,0.1);
    transform: none !important;
}
.splide__arrow--prev {
	background-image: url(/shared/images/icon/icon_arrow_prev.png);
}
.splide__arrow--next {
	background-image: url(/shared/images/icon/icon_arrow_next.png);
}
.splide__progress {
    display: flex;
	align-items: flex-end;
	padding: 0 21px 0 18px;
}
.splide__progress p {
	margin-bottom: 0 !important;
	line-height: 1;
	color: #3a3a3a;
	font-weight: bold;
}
.splide__progress .progress_current {
	font-size: 155.56%;
}
.splide__progress .progress_total {
	position: relative;
	padding-top: 5px;
}
.splide__progress .progress_total:before {
    content: '/';
    margin-right: 5px;
    margin-left: 7px;
    position: relative;
    top: -2px;
}

/* ==================================================
CMS-function
================================================== */
#tmp_inquiry{
	word-break: break-all;
}

/* Scroll Table */
.scroll_table {
	overflow-x:auto;
	margin-bottom:10px;
	padding:23px 5px 5px;
	background:#F5F5F5 url(/site/shared/site_mahoroba/images/icon/scroll_table_icon.png) right 5px no-repeat;
	background-size:75px 15px;
}
.scroll_table {
	overflow-x:scroll;
}
.scroll_table_switch {
	text-align:right;
	margin:0 0 10px;
	font-size:75%;
	line-height:1.2;
}
.scroll_table_switch a {
	border:1px solid #CCCCCC;
	color:#333333;
	display:inline-block;
	padding:8px 10px 8px 70px;
	text-decoration:none;
	background:#F2F2F2 url(/site/shared/site_mahoroba/images/icon/scroll_table_ex.png) 10px center no-repeat;
	background-size:46px 20px;
	box-shadow:0 2px 0 0 #91918E;
	min-width:9em;
	text-align:center;
}
.scroll_table_switch a.scroll {
	background:#FFFFFF url(/site/shared/site_mahoroba/images/icon/scroll_table_df.png) 10px center no-repeat;
	background-size:46px 20px;
}
.scroll_table::-webkit-scrollbar{
 	height: 5px;
}
.scroll_table::-webkit-scrollbar-track{
 	background: #F1F1F1;
}
.scroll_table::-webkit-scrollbar-thumb {
 	background: #BCBCBC;
}
.style_cleaned{
	table-layout: auto!important;
}
.style_cleaned.remove_white_space,
.style_cleaned.remove_white_space *{
	white-space: normal!important;
}
.style_cleaned.remove_width,
.style_cleaned.remove_width *{
	width: auto!important;
}
.style_cleaned.remove_width input,
.style_cleaned.remove_width textarea{
	width: 100%!important;
}
.style_cleaned.remove_min_width,
.style_cleaned.remove_min_width *{
	min-width: auto!important;
}
.style_cleaned.remove_padding_left,
.style_cleaned.remove_padding_left *{
	padding-left: 1px!important;
}
.style_cleaned.remove_padding_right,
.style_cleaned.remove_padding_right *{
	padding-right: 1px!important;
}

/* linkicon
================================================== */
#tmp_main a.icon_pdf,
#tmp_main a.icon_excel,
#tmp_main a.icon_word,
#tmp_main a.icon_ppt,
#tmp_main a.icon_txt {
	display:inline-block;
	vertical-align:top;
	margin-bottom: -4px;
}
a.icon_pdf,
a.icon_excel,
a.icon_word,
a.icon_ppt,
a.icon_txt {
	margin: 0;
	text-indent:0 !important;
	background-position:left top;
	background-repeat:no-repeat;
	padding:1px 0 3px 62px;
}
a.icon_pdf {
	background-image:url(/site/shared/site_mahoroba/images/icon/icon_pdf.png);
}
a.icon_word {
	background-image:url(/site/shared/site_mahoroba/images/icon/icon_word.png);
}
a.icon_excel {
	background-image:url(/site/shared/site_mahoroba/images/icon/icon_excel.png);
}
a.icon_ppt {
	background-image:url(/site/shared/site_mahoroba/images/icon/icon_ppt.png);
}
a.icon_txt {
	background-image:url(/site/shared/site_mahoroba/images/icon/icon_txt.png);
}
#tmp_contents a[rel*="external"]:after,
#tmp_main a[rel*="external"]:after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    vertical-align: middle;
    margin: -0.2em 0.3em 0;
    background:url(/site/shared/images/icon/icon_external_gray.png) no-repeat center top;
    background-size: 16px auto;
}

/* ==================================================
CMS-parts
================================================== */


/* col2
================================================== */


/* col2_cms */

table.col2 {
	width: 99%;
	border-collapse: collapse;
	border-spacing: 0;
}

table.col2 td.col2L,
table.col2 td.col2R {
	width: 50%;
	padding: 0;
	vertical-align: top;
	text-align: left;
}

table.col2 td.col2L {
	border-right: 15px solid #FFFFFF;
}


/* col2_pub */

div.col2 {
	width: 100%;
}

div.col2 div.col2L {
	display: table;
	width: 48.5%;
	margin-right: 2%;
	float: left;
}

div.col2 div.col2R {
	display: table;
	width: 48.5%;
	float: left;
}


/* nestcol2 */

table.col2 table.col2 td.col2L {
	padding: 0;
}

div.col2 div.col2 div.col2L {
	width: 47.5%;
	margin-right: 4%;
}

div.col2 div.col2 div.col2R {
	width: 47.5%;
}


/* fixed_col2 */

div.fixed_col2 {
	width: 100%;
}

div.fixed_col2 div.fixed_col2L {
	display: table;
	width: 48.5%;
	margin-right: 2%;
	float: left;
}

div.fixed_col2 div.fixed_col2R {
	display: table;
	width: 48.5%;
	float: right;
}


/* col3
================================================== */

table.col3 {
	width: 99%;
	border-collapse: collapse;
	border-spacing: 0;
}

table.col3 td.col3L,
table.col3 td.col3M,
table.col3 td.col3R {
	width: 33.33%;
	padding: 0;
	vertical-align: top;
	text-align: left;
}

table.col3 td.col3L,
table.col3 td.col3M {
	border-right: 15px solid #FFFFFF;
}

div.col3 {
	width: 100%;
}

div.col3 div.col3L,
div.col3 div.col3M {
	display: table;
	width: 31.7%;
	margin-right: 2%;
	float: left;
}

div.col3 div.col3R {
	display: table;
	width: 31.7%;
	float: left;
}

/* ==================================================
accessibility
================================================== */
/* model_change
================================================== */
.wrap_mc_pc,
.wrap_mc_sp {
	display: none;
}
.disp_pc .wrap_mc_sp,
.disp_pc .wrap_mc_sp #tmp_switch_sp_style {
	display: block;
}
.disp_pc #tmp_hnavi_s,
.disp_pc #tmp_sma_lmenu {
	display: none;
}

/* ==================================================
accessibility style change:color
================================================== */
/* change_color commons
================================================== */
/* icon */

.color_blue #tmp_wrap_main a.icon_pdf,
.color_blue #tmp_wrap_main a.icon_word,
.color_blue #tmp_wrap_main a.icon_excel,
.color_blue #tmp_wrap_main a.icon_ppt,
.color_blue #tmp_wrap_main a.icon_txt,
.color_yellow #tmp_wrap_main a.icon_pdf,
.color_yellow #tmp_wrap_main a.icon_word,
.color_yellow #tmp_wrap_main a.icon_excel,
.color_yellow #tmp_wrap_main a.icon_ppt,
.color_yellow #tmp_wrap_main a.icon_txt,
.color_black #tmp_wrap_main a.icon_pdf,
.color_black #tmp_wrap_main a.icon_word,
.color_black #tmp_wrap_main a.icon_excel,
.color_black #tmp_wrap_main a.icon_ppt,
.color_black #tmp_wrap_main a.icon_txt {
	margin: 0 !important;
	padding: 0 !important;
}
.color_black #tmp_contents a[rel*="external"]:after,
.color_blue #tmp_contents a[rel*="external"]:after,
.color_black #tmp_main a[rel*="external"]:after,
.color_blue #tmp_main a[rel*="external"]:after {
	background-image: url(/site/shared/images/icon/icon_external_yl.png) !important;
}
.color_yellow #tmp_contents a[rel*="external"]:after,
.color_yellow #tmp_main a[rel*="external"]:after {
	background-image: url(/site/shared/images/icon/icon_external_bl.png) !important;
}

/* ==================================================
accessibility style change:font-size
================================================== */
/* small
================================================== */
.fsize_small {
	font-size: 75% !important;
}

/* big
================================================== */
.fsize_big {
	font-size: 125% !important;
}

/* biggest(doubled)
================================================== */
.fsize_big2 {
	font-size: 175% !important;
}

/* ==================================================
hover
================================================== */
#tmp_hnavi li a,
.box_introduce .box_introduce_item .item_img {
    transition: all 0.3s ease-in-out;
}
#tmp_hnavi li a:hover,
#tmp_hnavi li a:focus,
.box_introduce .box_introduce_item a:hover .item_img,
.box_introduce .box_introduce_item a:focus .item_img{
    opacity: 0.7;
}
.box_introduce .box_introduce_item a:hover .item_cnt,
.box_introduce .box_introduce_item a:focus .item_cnt,
.list_tbl td a:hover,
.list_tbl td a:focus,
.box_event .box_event_item a:hover,
.box_event .box_event_item a:focus,
.box_sec_ttl .more_btn a:hover,
.box_sec_ttl .more_btn a:focus {
    text-decoration: underline;
}

/* ==================================================
clearfix
================================================== */
/* for modern browser */
#tmp_header:after,
#tmp_hnavi:after,
.gnavi:after,
.gnavi ul:after,
#tmp_main:after,
#tmp_custom_update:after,
.pnavi:after,
#tmp_footer:after,
.fnavi:after,
.footer_cnt:after,
div.col2:after,
div.fixed_col2:after,
div.col3:after{
	content: "";	/* Do not edit */
	display: table;	/* Do not edit */
	clear: both;	/* Do not edit */
}