@charset "utf-8";

@media screen and (min-width : 641px) and (max-width: 1120px) {
	/* ==================================================
	header
	================================================== */
	#tmp_hlogo img {
		width: auto;
		object-fit: contain;
	}

	/* footer
	================================================== */
	.footer_info .footer_img img {
		width: 100%;
		height: auto;
	}
	.footer_info .footer_logo img {
		width: 100%;
		height: auto;
	}
}
@media screen and (min-width : 981px) and (max-width: 1120px) {
	/* ==================================================
	header
	================================================== */
	#tmp_hlogo img {
		height: 55px;
	}

	/* gnavi
	================================================== */
	#tmp_gnavi .gnavi a {
		font-size: 100%;
	}

	/* footer
	================================================== */
	.footer_info .footer_img {
		max-width: 150px;
	}
	.footer_info .footer_logo {
		max-width: 300px;
	}

	/* free
	================================================== */
	/* header */
	.format_free #tmp_hlogo img {
		height: 25px;
	}
}
@media screen and (min-width : 641px) and (max-width: 980px) {
	/* ==================================================
	header
	================================================== */
	#tmp_hlogo img {
		height: 40px;
	}

	/* gnavi
	================================================== */
	#tmp_gnavi .gnavi a {
		padding: 5px 10px;
		font-size: 94%;
	}

	/* footer
	================================================== */
	.footer_info .footer_img {
		max-width: 120px;
	}
	.footer_info .footer_logo {
		max-width: 250px;
	}

	/* free
	================================================== */
	/* header */
	.format_free #tmp_hlogo img {
		height: 20px;
	}
	.format_free #tmp_gnavi {
		margin-top: 0;
	}
}
@media screen and (max-width : 800px) {
	/* ==================================================
	header
	================================================== */
	#tmp_header {
		position: absolute;
		padding: 0;
		background: none;
		z-index: 800;
	}
	#tmp_header .container {
		display: block;
		padding: 0;
		clear: both;
	}
	#tmp_hlogo {
		padding: 8px 10px 0;
		float: left;
	}
	#tmp_hlogo img {
		width: auto;
		height: 35px;
		object-fit: contain;
	}
	#tmp_hlogo h1,
	#tmp_hlogo p ,
	#tmp_hlogo a,
	#tmp_hlogo h1 span,
	#tmp_hlogo p span {
		display: block;
		line-height: 1.2;
	}


	/* sp_menu
	================================================== */
	#tmp_hnavi_s {
		display: block;
		position: static;
		float: right;
	}
	#tmp_hnavi_s > ul {
		list-style: none;
	}
	#tmp_hnavi_s > ul > li > a {
		display:block;
		width: 50px;
		height: 50px;
		text-decoration:none;
		font-size: 0.6rem;
		color: #000;
		background-color: #ffffff;
	}
	#tmp_hnavi_lmenu > a > span,
	#tmp_hnavi_mmenu > a > span,
	#tmp_hnavi_rmenu > a > span {
		position:relative;
		padding: 11px 0 0;
		display:block;
		width: 50px;
		height: 50px;
		overflow:hidden;
	}

	#tmp_hnavi_rmenu > a {
		display: block;
		position: relative;
		top: 0;
		right: 0;
		width: 50px;
		height: 50px;
	}
	#tmp_hnavi_rmenu > a > span {
		display: block;
		position: absolute;
		top: 50%;
		left: 25%;
		width: 50%;
		height: 2px;
		margin-top: -1px;
		padding: 0;
		background-color: #888888;
		font-size: 0;
		overflow: visible;
	}
	#tmp_hnavi_rmenu > a > span::before {
		content: "";
		display: block;
		position: absolute;
		top: -8px;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #888888;
	}
	#tmp_hnavi_rmenu > a > span::after {
		content: "";
		display: block;
		position: absolute;
		top: 8px;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #888888;
	}

	.spmenu_open #tmp_hnavi_rmenu > a {
		background: none;
	}
	.spmenu_open #tmp_hnavi_rmenu > a > span {
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		margin-top: 0;
		background: none;
	}
	.spmenu_open #tmp_hnavi_rmenu > a > span::before {
		content: none;
	}
	.spmenu_open #tmp_hnavi_rmenu > a > span::after {
		content: "×";
		top: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
		padding: 16px 5px 10px;
		background: none;
		line-height: 1;
		color: #fff;
		font-size: 2.5rem;
		box-sizing: border-box;
	}

	#tmp_hnavi_smenu {
		position: static;
	}
	#tmp_sma_smenu {
		top: auto;
		box-shadow: none;
		position: static;
		z-index: 2;
	}
	#tmp_gnavi_s .gnavi .lang_list {
		height: auto;
	}
	#tmp_sma_smenu .language_links li {
		border-top: none;
	}
	#tmp_sma_smenu .language_links li:first-child {
		border-top: 1px solid #cccccc;
	}
	#tmp_sma_smenu .language_links li:last-child {
		border-bottom: none;
	}
	#tmp_gnavi_s .gnavi .language_links a {
		background-color: #333333;
		color: #ffffff;
	}

	#tmp_gnavi_s .gnavi > ul > li > a.lang_btn {
		position: relative;
	}
	#tmp_gnavi_s .gnavi > ul > li > a.lang_btn::before{
		content: '';
		position: absolute;
		display: block;
		border-left: 1px solid rgba(0, 0, 0,0.1);
		width: 50px;
		z-index: 1;
		right: 0;
		top: 0;
		bottom: 0;
	}
	#tmp_gnavi_s .gnavi > ul > li > a.lang_btn::after{
		content: '';
		display: block;
		position: absolute;
		margin: auto;
		top: 0;
		bottom: 0;
		right: 23px;
		left: auto;
		width: 8px;
		height: 8px;
		border-top: 2px solid rgba(0, 0, 0, 0.3);
		border-left: 2px solid rgba(0, 0, 0, 0.3);
		background-color: transparent;
		transition: transform 0.5s ease;
		transform: rotate(225deg);
	}
	#tmp_gnavi_s .gnavi.active > ul > li > a.lang_btn::after{
		transform: rotate(44deg);
	}

	/* gnavi
	================================================== */
	#tmp_gnavi {
		display: none;
	}
	#tmp_gnavi_s {
		display: block;
		position: relative;
	}
	.spmenu_open #tmp_hnavi_s {
		position: fixed;
		right: 0;
	}
	.spmenu_open #tmp_header > .container::before {
		content: "";
		min-height: 100%;
		height: 100%;
		width: 100%;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 699;
		background-color: rgba(0, 0, 0, 0.5);
	}
	#tmp_gnavi_s .gnavi {
		background-color: #ffffff;
	}
	#tmp_gnavi_s .gnavi ul {
		height: calc(100vh - 46px);
		overflow: auto;
	}
	#tmp_gnavi_s .gnavi ul li {
		border-bottom: #ccc 1px solid;
	}
	#tmp_gnavi_s .gnavi ul li a {
		display: block;
		padding: 10px 20px;
		box-sizing: border-box;
		color: #333333;
		text-decoration: none;
		text-align: left;
		line-height: 1.2;
	}

	/* free
	================================================== */
	/* header */
	.format_free #tmp_header {
		padding: 0;
	}
	.format_free #tmp_hlogo {
		padding: 15px 0 15px 10px;
	}
	.format_free #tmp_hlogo h1,
	.format_free #tmp_hlogo h1 span {
		line-height: 0;
	}
}
@media screen and (max-width : 640px) {

/* ==================================================
Base-Layout
================================================== */
/* body
================================================== */
body {
	-webkit-text-size-adjust:none;
	-moz-text-size-adjust:none;
	-ms-text-size-adjust:none;
}


/* wrapper
================================================== */
#tmp_wrapper {
	position: relative;
	width: 100%;
	min-width: 310px;
}
.container{
	padding: 0 10px;
	width: 100%;
}


/* contents
================================================== */
#tmp_contents,
#tmp_maincontents {
	word-wrap:break-word;
}


/* format-layout
================================================== */
.wrap_col_nm,
.wrap_col_rgt_navi,
.column_full .wrap_col_main,
.column_lnavi .wrap_col_main,
.column_rnavi .wrap_col_main {
	float:none;
}
.wrap_col_lft_navi {
	float:none;
	position:static;
	z-index:auto;
}
.col_main {
	padding:0;
}


/* top
================================================== */
.format_top #tmp_main_menu,
.format_top #tmp_main {
	float:none;
	width:100%;
}


/* free
================================================== */
.format_free .wrap_col_lft_navi,
.format_free .wrap_col_rgt_navi {
	display:none;
}
.format_free .column_lnavi .col_main {
	margin-left:0;
}
.format_free .column_rnavi .wrap_col_main,
.format_free .column_rnavi .col_main {
	margin-right:0;
}

/* free
============================== */

.format_free .wrap_col_nm {
	margin-right: -210px;
	/* デザインによって変更 */
}

.format_free .wrap_col_nm2 {
	margin-right: 210px;
	/* デザインによって変更 */
}

.format_free .wrap_col_lft_navi {
	width: 200px;
	/* デザインによって変更 */
	margin-right: -210px;
	/* デザインによって変更 */
}

.format_free .col_lft_navi {
	padding: 10px;
	/* デザインによって変更 */
	color: inherit;
	background-color: #FFFFFF;
}

.format_free .wrap_col_rgt_navi {
	width: 200px;
	/* デザインによって変更 */
}

.format_free .col_rgt_navi {
	padding: 10px 0;
	/* デザインによって変更 */
	color: inherit;
	background-color: #FFFFFF;
}

.format_free .column_full .col_main {
	margin-left: 210px;
	/* デザインによって変更 */
}

.format_free .column_lnavi .col_main {
	margin-left: 210px;
	/* デザインによって変更 */
}

.format_free .column_rnavi .wrap_col_main {
	margin-right: -210px;
	/* デザインによって変更 */
}

.format_free .column_rnavi .col_main {
	margin-right: 210px;
	/* デザインによって変更 */
}

/* header */
.format_free #tmp_header {
	border-bottom: 1px solid #cccccc;
}
.format_free #tmp_hlogo img {
	height: 20px;
}



/* pnavi
================================================== */
.pnavi{
	text-align: center;
}
.pnavi a {
	display: block;
	width: 100%;
	padding: 7px;
	line-height: 1.2;
	font-size: 94%;
}
.pnavi a::before {
	content: none;
}


/* footer
================================================== */
#tmp_footer .fanavi_wrapper {
	padding: 10px 0;
	background-color: #ffffff;
    border-bottom: none;
}

/* 住所 */
.footer_info {
	display: block;
	float: none;
}
.footer_info address p {
	text-align: center;
	font-size: 86%;
}
.footer_info .footer_address p {
	margin-bottom: 0;
	    line-height: 1.2;
}
.footer_info .footer_img {
	display: none;
}
.footer_info .footer_address .footer_logo {
	margin-bottom: 5px;
	text-align: center;
	line-height: 1;
}
.footer_info .footer_address .footer_logo img {
	max-width: 200px;
	height: auto;
}

/* fnavi  */
.fnavi {
	display: none;
}


/* pankuzu
================================================== */
#tmp_pankuzu {
	display: block;
	margin-bottom: 10px;
	padding: 5px 0;
	border-top: 1px solid #aaaaaa;
	border-bottom: 1px solid #aaaaaa;
	clear: both;
}
#tmp_pankuzu .container {
	padding: 0 5px;
}
#tmp_pankuzu .container p {
	font-size: 74%;
}

/* lnavi
================================================== */
/* rnavi
================================================== */
/* pnavi
================================================== */
/* plugin
================================================== */
.plugin {
	display:none; /* do not edit */
}
/* model_change
================================================== */
/* .wrap_mc_pc,
.wrap_mc_pc #tmp_switch_pc_style {
	display: block;
} */
/* ==================================================
footer
================================================== */
/* fnavi */
.footer_cnt {
	padding:0 10px;
	clear:both;
}
.footer_cnt address {
	font-style:normal;
}
.copyright {
	text-align:center;
	clear:both;
}
/* ==================================================
class
================================================== */

/* float ▼Do not edit
================================================== */
.float_lft,
.float_rgt {
	float:none;
	margin-left:0 !important;
	margin-right:0 !important;
}
/* youtube ▼Do not edit
================================================== */
#tmp_contents .frame_youtube {
	position:relative;
	display:block;
	height:0;
	padding-bottom:56.25%;
	overflow:hidden;
	min-width:200px;
}
#tmp_contents .frame_youtube object,
#tmp_contents .frame_youtube iframe {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
/* ==================================================
parts
================================================== */
/* parts ▼Do not edit
============================== */
div.col2 div.col2L,
div.col3 div.col3L,
div.col3 div.col3M,
div.col2 div.col2 div.col2L,
div.fixed_col2 div.fixed_col2L {
	width:100%;
	margin-right:0;
	display: block;
	float:none;
	clear:both;
}
div.col2 div.col2R,
div.col3 div.col3R,
div.col2 div.col2 div.col2R,
div.fixed_col2 div.fixed_col2R {
	width:100%;
	display: block;
	float:none;
	clear:both;
}
#tmp_contents div.col3 ul,
#tmp_contents div.col2 ul {
	margin-bottom:0;
}
div.img_cap {
	width:auto !important;
}
#tmp_contents img {
	max-width:100%;
	height:auto;
}
#tmp_contents ul,
#tmp_contents ol {
	margin-left:22px;
}
#tmp_contents table {
	width:auto;
}
#tmp_contents table table {
	max-width:100%;
}
#tmp_contents table th,
#tmp_contents table td {
	width:auto;
}
#tmp_contents table.gsc-search-box td.gsc-input {
	width:100% !important;
}
#tmp_contents input[type="text"],
#tmp_contents textarea {
	width:100% !important;
	padding:0;
	box-sizing:border-box;
}

/* event_cal
================================================== */
/* cate_ttl
================================================== */
#tmp_cate_ttl img {
    height:auto;
    max-width:100%;
}

/* tmp_means
================================================== */
/* ==================================================
clearfix
================================================== */
#tmp_sma_lnavi_cnt .switch_menu .noicon_list:after {
	content: ""; /* Do not edit */
	display: table; /* Do not edit */
	clear: both; /* Do not edit */
}
}