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

/*---------------------------------------------------------------------
	site_header
---------------------------------------------------------------------*/
#site_header {}
#site_header .inner {
    box-sizing: content-box;
    margin: 0 auto;
    width: 1000px;
    padding: 10px;
}

/* logo */
#site_header .logo {
	margin: 10px 0 0;
	float: left;
}
#site_header .logo a { display: block; }


#site_header .site_lead {
    font-size: 86.66%;
}

#site_header .header_list {
	float: right;
	width: 540px;
}

/* fontsize */
#site_header #fontsize {
	float: right;
	font-size: 0;
}
#site_header #fontsize p {
	color: #211F1A;
	font-size: 1.3rem;
	font-weight: bold;
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
}
#site_header #fontsize ul {
	border: 3px solid #DDD;
	border-radius: 20px;
	display: inline-block;
	vertical-align: middle;
	overflow: hidden;
}
#site_header #fontsize li {
	font-size: 1.5rem;
	display: inline-block;
}
#site_header #fontsize li a {
	text-decoration: none;
	display: block;
	padding: 0 11px;
}
#site_header #fontsize .menu_01 a {
	color: #555;
	background-color: #fff;
}
#site_header #fontsize .menu_02 a {
	color: #fff;
	background-color: #FF9900;
}

/* color_switch */
#site_header #color_switch {
	margin-left: 17px;
	font-size: 0;
	float: right;
}
#site_header #color_switch p {
	color: #211F1A;
	font-size: 1.3rem;
	font-weight: bold;
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
}
#site_header #color_switch ul {
	font-size: 1.5rem;
	display: inline-block;
	vertical-align: middle;
}
#site_header #color_switch li {
	display: inline-block;
	vertical-align: middle;
}
#site_header #color_switch li + li { margin-left: 6px; }
#site_header #color_switch li a {
	display: block;
	width: 32px;
	height: 32px;
	text-align: center;
	border-radius: 50%;
	text-decoration: none;
}
#site_header #color_switch .menu_01 a {
	color: #1B1814;
	background-color: #fff;
	border: 2px solid #DDD;
}
#site_header #color_switch .menu_02 a {
	color: #fff;
	border: 2px solid #FF9900;
	background-color: #1C1815;
}

/* guide_menu */
#site_header #guide_menu {
	float: left;
	margin-top: 5px;
	font-size: 0;
}
#site_header #guide_menu > li {
	display: inline-block;
    font-size: 1.3rem;
	font-weight: bold;
	margin-left: 10px;
}
#site_header #guide_menu > li:first-child {
    margin-left: 0;
}
#site_header #guide_menu a {
	color: #201F19;
    display: block;
    padding: 0 0 0 10px;
    text-decoration: none;
	position: relative;
}
#site_header #guide_menu a::before {
	content: "";
	display: block;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background-color: #FF7900;
	position: absolute;
	top: 9px;
	left: 0;
}
#site_header #guide_menu a:hover {
	text-decoration: underline;
}


/* search_form */
#site_header #search_form {
	text-align: right;
	float: right;
}
#search_form #icon_search {
    color: #fff;
	font-size: 20px;
	margin-right: 5px;
    display: inline-block;
	vertical-align: middle;
	line-height: 1;
}
#search_form form {
	font-size: 0;
	overflow: hidden;
	border-radius: 20px;
	border: 3px solid #DDD;
	display: inline-block;
	vertical-align: middle;
}
#search_form form #search_window {
	color: #000;
    border: none;
	width: 184px;
	font-size: 1.5rem;
    box-sizing: border-box;
    padding: 3px 8px;
}
#search_form form #serch_button {
	color: #fff;
	border: none;
	font-size: 1.5rem;
    box-sizing: border-box;
	background-color: #FF7900;
    padding: 3px 10px;
}
#search_form form #serch_button:hover {
	background-color: #008463;
}
	
	
/*---------------------------------------------------------------------
	gnavi
---------------------------------------------------------------------*/
.gnavi {
    background: #ff9900 none repeat scroll 0 0;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
    position: relative;
    z-index: 80;
}

/* site_navi_list */
.gnavi ul {
	padding: 10px 0;
    margin: 0 auto;
    width: 1000px;
	display: table;
}
.gnavi ul li {
    border-right: 1px dotted #ffe1b5;
    display: table-cell;
    font-size: 1.8rem;
    line-height: 1.6;
    padding: 0 5px;
}
.gnavi ul li:first-child { border-left: 1px dotted #FFE1B5; }
.gnavi ul li a {
    border-radius: 4px;
    color: #ffffff;
    display: block;
    text-align: center;
    text-decoration: none;
}
.gnavi ul li a:hover {
	background-color: #FF7900;
}
	
	
/*---------------------------------------------------------------------
	topic_path_top
---------------------------------------------------------------------*/
#topic_path_top {
	margin: 15px 0;
}
#topic_path_top > p {
    box-sizing: content-box;
    font-size: 86.66%;
    margin: 0 auto;
    width: 1000px;
}
	
/*---------------------------------------------------------------------
	pagebody
---------------------------------------------------------------------*/
#pagebody_inner {
    margin: 0 auto 60px;
    width: 1000px;
}

/*--------------------------------------------------
	alpha
--------------------------------------------------*/
#alpha {
	float: left;
	width: 750px;
}

/*--------- text -----------*/
.page_ttl {
	margin-bottom: 10px;
	background: url(/image/bg_01.jpg);
}
.page_ttl h1 {
	color: #444;
	font-size: 200%;
	font-weight: normal;
	width: 1000px;
	margin: 0 auto;
	padding: 30px 0;
}

#alpha p { margin: 1em 0; }
#alpha h2 + p,
#alpha h3 + p,
#alpha h4 + p,
#alpha h5 + p,
#alpha h6 + p { margin-top: 0; }
#alpha div > p { margin-top: 0; }

/* headline */
#alpha * + h2 { margin-top: 50px; }
#alpha * + h3 { margin-top: 40px; }
#alpha * + h4 { margin-top: 30px; }
#alpha * + h5 { margin-top: 20px; }
#alpha h2 + h3,
#alpha h3 + h4 { margin-top: 0 }

/* utility */
#alpha * + dl,
#alpha * + ol,
#alpha * + ul,
#alpha * + table { margin-top: 20px; }

#alpha h2 {
	color: #000;
	font-size: 173.33%;
	font-weight: normal;
	border-top: 2px dotted #FF9900;
	padding: 15px 10px 0 20px;
	/* padding: 8px 10px 8px 20px; */
	margin-bottom: 25px;
	position: relative;
}
#alpha h2::before {
    position: absolute;
	margin: auto;
	content: "";
	vertical-align: middle;
	top: 28px;
	left: 0;
	box-sizing: border-box;
	border: 6px solid transparent;
	border-left: 10px solid #FF8000;
}
#alpha h3 {
	color: #333;
	font-size: 146.66%;
	font-weight: normal;
	border: 1px solid #CCC;
	margin-bottom: 20px;
	padding: 6px 6px 6px 20px;
	position: relative;
}
#alpha h3::before {
	content: "";
	position: absolute;
	left: 5px;
	top: 5px;
	width: 7px;
	height: 33px;
	background-color: #FF8000;
}

#alpha h4 {
	color: #444444;
	font-size: 120%;
	font-weight: normal;
	background-color: #F9F5E9;
	padding: 7px 10px;
	margin-bottom: 15px;
}
#alpha h5 {
	color: #FF8000;
	font-size: 106.66%;
	font-weight: bold;
}

.modified_date {
	color: #333;
	font-size: 86.66%;
    margin-bottom: 20px;
    text-align: right;
}

.bgbox_01 {
	padding: 20px;
	border: 1px solid #FF9900;
	border-radius: 5px;
	background-color: #FFF7E3;
}

.bgbox_02 {
	padding: 30px;
	border: 1px solid #FF9900;
	border-radius: 5px;
	background-color: FFF;
}

.icon_blank {
	padding-left: 20px;
	position: relative;
}
.icon_blank::before {
	content: "";
	width: 10px;
	height: 10px;
	top: 5px;
	left: 0;
	position: absolute;
	background: url(/image/icon_blank.gif) no-repeat 0 0;
}

.bottom_bnr {
	font-size: 0;
	margin: 70px auto 0;
}
.bottom_bnr li {
	width: 32%;
	font-size: 1.5rem;
	margin: 0 2% 2% 0;
	display: inline-block;
	vertical-align: top;
}
.bottom_bnr li:nth-child(3n) { margin-right: 0; }

#g_map { width: 100%; height: 500px; }

/*--------------------------------------------------
	list_index
--------------------------------------------------*/
#list_index {}
#list_index .list_index_contents {
	float: left;
	width: 48%;
	margin: 0 4% 20px 0;
}
#list_index .list_index_contents:nth-child(2n) {
    margin-right: 0;
}

#list_index .list_index_contents h3 {
	margin: 0 !important;
	padding: 0;
	font-weight: bold;
	font-size: 120%;
	border: 1px solid #AAAAAA;
}
#list_index .list_index_contents h3::before { display: none; }
.list_index_contents > .list_index_h a {
	color: #333333;
	text-decoration: none;
    display: block;
    padding: 22px 15px;
}
.list_index_contents > .list_index_h a:hover {
	background-color: #F9F5E9;
}
.list_index_contents > ul {
	padding: 10px 15px;
	background-color: #F9F5E9;
	margin-top: 0 !important;
}
.list_index_contents > ul li {
	margin-bottom: 3px;
}
.list_index_contents > ul li a {
	color: #000000;
	text-decoration: none;
	position: relative;
	display: block;
	padding-left: 17px;
}
.list_index_contents > ul li a::before {
	position: absolute;
	margin: auto;
	content: "";
	vertical-align: middle;
	top: 6px;
	left: 0;
	box-sizing: border-box;
	border: 6px solid transparent;
	border-left: 10px solid #FF8000;
}
.list_index_contents > ul li a:hover {
	color: #008463;
	text-decoration: underline;
}

/*--------------------------------------------------
	list_topics
--------------------------------------------------*/
.list_topics dl {
    padding: 10px 0;
	display: table;
    width: 100%;
}
.list_topics dl + dl { margin-top: 0 !important; }
.list_topics dl:first-child {}
.list_topics dl dt {
	display: table-cell;
    vertical-align: top;
    width: 130px;
}

.list_topics dl dd {
    display: table-cell;
	text-align: left;
	vertical-align: top;
}

.list_topics dl .icon_category {
	color: #fff;
	width: 80px;
	line-height: 1.6;
	text-align: center;
	font-size: 93.33%;
	margin: 2px 10px 0 5px;
	display: block;
    float: left;
}
.list_topics dl .category_01 { background-color: #0CA36D; }
.list_topics dl .category_02 { background-color: #59B200; }
.list_topics dl .category_03 { background-color: #FF9A3F; }
.list_topics dl .category_04 { background-color: #bdb900; }
.list_topics dl .category_05 { background-color: #60C0BC; }

.list_topics dl dd a {
	display: block;
	line-height: 1.6;
	transition: .3s;
	-webkit-transition: .3s;
	overflow: hidden;
}
.list_topics dl dd a:hover {}


/* .pager */
.pager {
    margin: 60px 0;
    text-align: center;
}
.pager ul {}
.pager ul li {
	font-size: 81.25%;
    margin: 3px;
	display: inline-block;
}
.pager a,
.pager span {
	color: #000;
	display: block;
	text-decoration: none;
	border: 1px solid #CCC;
	padding: 9px 16px;
	background-color: #fff;
}
.pager li.total span {
	border-color: #FFF;
}
.pager li.prev span,
.pager li.next span,
.pager li.first span,
.pager li.last span {
	border: 1px solid #ccc;
	color: #EDEDED;
}
.pager li.current span {
    color: #fff;
    background: #ff9a3f;
}
.pager a:hover {
	color: #915E33;
	border: 1px solid #999;
	background: #EEEAD9;
}


/*---------------------------------------------------
	beta
---------------------------------------------------*/
#beta {
	float: right;
	width: 220px;
}

#beta .side_bnr li {
	margin-bottom: 10px;
}

/*---------------------------------------------------
	sidemenu
---------------------------------------------------*/
#side_menu {
	margin-bottom: 20px;
}
#side_menu .ttl {
	color: #fff;
    font-size: 100%;
    font-weight: normal;
    padding: 20px;
	border-radius: 5px 5px 0 0;
	background-color: #FF8000;
}

#side_menu a {
	display: block;
	padding: 5px;
	text-decoration: none;
}
#side_menu a:hover { text-decoration: underline; }

#side_menu .level0,
#side_menu .level1 {
	margin-top: 2px;
	border: 1px solid #DDDDDD;
}

#side_menu .level0 > a,
#side_menu .level1 > a {
	color: #333333;
	padding: 10px 5px 10px 27px;
	font-size: 93.33%;
	position: relative;
}
#side_menu .level0 > a:hover,
#side_menu .level1 > a:hover {
	color: #FF8000;
	background-color: #F9F5E9;
}
#side_menu .level0 > a::before,
#side_menu .level1 > a::before {
	position: absolute;
	margin: auto;
	content: "";
	vertical-align: middle;
	top: 18px;
	left: 15px;
	box-sizing: border-box;
	border: 4px solid transparent;
	border-left: 6px solid #008867;
}

#side_menu .level2 > a {
    background-color: #f9f5e9;
    color: #000;
    font-size: 86.66%;
    padding: 5px 5px 5px 27px;
	position: relative;
}
#side_menu .level2 > a::before {
	position: absolute;
	margin: auto;
	content: "";
	vertical-align: middle;
	top: 13px;
	left: 15px;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background-color: #FF8000;
}

/* #side_menu .level3 > a {
    background-color: #fffeee;
    font-size: 81.25%;
    padding: 5px 10px 5px 35px;
    position: relative;
}
#side_menu .level3 > a::before {
    background-color: #91ba19;
    border-radius: 50%;
    content: "";
    height: 6px;
    left: 20px;
    position: absolute;
    top: 14px;
    width: 6px;
}
#side_menu .level3 + li {
    border-top: medium none !important;
}
#side_menu .level3 > a:hover {
    color: #468c00;
}
#side_menu .level3 > ul {
    border-top: medium none;
} */
#side_menu .level3 > a {
    background-color: #F9F5E9;
    font-size: 81.25%;
    padding: 5px 10px 5px 46px;
    position: relative;
}
#side_menu .level3 > a::before {
    background-color: #91ba19;
    border-radius: 50%;
    content: "";
    height: 4px;
    left: 35px;
    position: absolute;
    top: 14px;
    width: 4px;
}
#side_menu .level3 + li {
    border-top: medium none !important;
}
#side_menu .level3 > a:hover {
    color: #468c00;
}

/*---------------------------------------------------------------------
	topics
---------------------------------------------------------------------*/

.alpha_contents {
	max-width: 780px;
}
.alpha_contents img {
	max-width: 100%;
	height: auto;
}
.fll_img {
    float: left;
    margin: 0 20px 20px 0;
    width: 40%;
}
.flr_img {
	float: right;
	margin: 0 0 20px 20px;
	width: 40%;
}

.list_1column .caption,
.list_2column .caption,
.list_3column .caption {
	font-size: 86.66%;
	text-align: center;
}

.list_2column { font-size: 0; }
.list_2column .item {
	width: 48.71%;
	font-size: 15px;
	font-size: 1.5rem;
	display: inline-block;
	vertical-align: top;
	margin: 0 2.56% 2.56% 0;
}
.list_2column .item:nth-child(2n) { margin-right: 0; }

.list_3column { font-size: 0; }
.list_3column .item {
	width: 31.53%;
	font-size: 15px;
	font-size: 1.5rem;
	display: inline-block;
	vertical-align: top;
	margin: 0 2.56% 2.56% 0;
}
.list_3column .item:nth-child(3n) { margin-right: 0; }


/* link_prev_next */
.link_prev_next {
	text-align: center;
	margin-top: 40px;
}
.link_prev_next > li {
	display: inline-block;
}
.link_prev_next > li a {
	font-size: 93%;
    border: 1px solid #333;
    color: #333;
    display: block;
    padding: 7px 20px;
    text-decoration: none;
	background-color: #fff;
}
.link_prev_next > li a:hover {
	color: #fff;
	background-color: #333;
}


/*--------- beta -----------*/
.list_side_menu {
	margin-bottom: 1em;
}

.list_side_menu .ttl {
	font-size: 16px;
	padding: 10px;
    position: relative;
	color: #fff;
	background-color: #ff9a3f;
}

.list_side_menu a {
	color: #000;
	display: block;
}

.list_side_menu .ttl span {
	font-size: 12px;
	font-weight: normal;
	position: absolute;
	top: 12px;
	right: 10px;
}

.list_side_menu .type_01 {
	background-color: #fff;
	border-right: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC;
}
.list_side_menu .type_01 dt {
	border-top: 1px solid #ccc;
    font-size: 12px;
    line-height: 1.2;
    padding: 12px 20px 0;
}
.list_side_menu .type_01 dt:first-child { border-top: none; }
.list_side_menu .type_01 dd {
	margin: 0 10px;
    padding: 0 0 10px 12px;
	background: url(../image/icon_arrow01.png) no-repeat 0 8px;
	background-size: 6px;
}

.list_side_menu .type_02 {
	background-color: #fff;
	border-right: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC;
}
.list_side_menu .type_02 > li {
	padding: 10px;
	border-top: 1px solid #ccc;
}
.list_side_menu .type_02 > li:first-child { border-top: none; }
.list_side_menu .type_02 > li > ul { display: none; }
.list_side_menu .type_02 > li > ul > li{
    background: url(../image/icon_arrow01.png) no-repeat scroll 0 8px;
	background-size: 6px;
	padding-left: 12px;
}

.list_side_menu .type_03 {
	padding: 10px;
	background-color: #fff;
	border-right: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC;
}
.list_side_menu .type_03 > li{
    background: url(../image/icon_arrow01.png) no-repeat scroll 0 8px;
	background-size: 6px;
	padding-left: 17px;
}

/*---------------------------------------------------------------------
	faq
---------------------------------------------------------------------*/
.list_faq {}
.list_faq .item {
    margin-bottom: 20px;
}
.list_faq .btn_q {}
.list_faq .btn_q a {
    background-color: #d3e3f3;
    color: #1f3f99;
    display: block;
    font-size: 1.7rem;
    font-weight: normal;
    padding: 10px 10px 10px 41px;
    position: relative;
    text-decoration: none;
}
.list_faq .btn_q a::before {
    color: #1f3f99;
    content: "Q";
	display: inline-block;
    font-size: 28px;
	font-size: 2.8rem;
    position: absolute;
    top: 2px;
	left: 10px;
}
.list_faq .box_a {
	display: none;
    border: 1px solid #d3e3f3;
    padding: 15px 15px 15px 40px;
    position: relative;
}
.list_faq .box_a::before {
    color: #ff8000;
    content: "A";
    display: inline-block;
    font-size: 24px;
	font-size: 2.4rem;
    position: absolute;
    top: 5px;
	left: 11px;
}


.faq_contents {}
.faq_contents .icon_q {}
.faq_contents .icon_a {}

/*---------------------------------------------------------------------
	contact
---------------------------------------------------------------------*/
.mail_form {
    border: 8px solid #ffe5bd;
    margin: 0 auto;
    max-width: 860px;
    padding: 22px;
}
.mail_form form {
	margin: 0 auto;
}
.mail_form form dl {
	margin-bottom: 30px;
}
.mail_form form dt {
    font-weight: bold;
    margin-bottom: 10px;
    border-left: 5px solid #f90;
    padding-left: 14px;
}
.mail_form form dd {}
.mail_form form .bg_on {
	background-color: #fafafa;
	padding: 12px;
}
.mail_form form .bg_on label {
	/*width: 20%;*/
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
}
.mail_form form .border_on {
	border: 1px solid #CCCCCC;
	padding: 12px;
}
.mail_form.confirm_list dd {
	background-color: #E5F6FB;
	padding: 12px;
	word-break: break-all;
}
.mail_form .btn_list {
	text-align: center;
	margin: 20px auto;
}
.mail_form .icon_required::after {
    content: "必須";
    color: #fff;
    background: #D80000;
    font-size: 90%;
    display: inline-block;
    vertical-align: top;
    margin-left: 10px;
    padding: 2px 10px;
    border-radius: 4px;
}

/* error_message */
.mail_form .error_message {
    list-style: disc;
    padding: 8px 30px;
    margin-bottom: 15px;
    border: 1px dashed #d71618;
    background: #ffffb8;
}
.mail_form .error_message li {
	color: #d71618;
	font-weight: bold;
	list-style: disc;
}
.mail_form .error {
	color: #d71618;
	font-size: 13px;
}

.mail_form .inline_btns li {
	display: inline-block;
	vertical-align: top;
	margin: 0 3px 5px 0;
}

.example_text {
    border: 1px dotted #ccc;
    padding: 10px 15px;
    font-size: 90%;
}

.mail_form.type_02 form {
    max-width: none;
}
.mail_form.type_02 form dl {
    max-width: 870px;
}
.mail_form.type_02 form dl dt {
    width: 35%;
}
.mail_form input,
.mail_form button,
.mail_form textarea,
.mail_form select {
	margin: 0;
	font-size: 16px;
	padding: 12px;
}
.mail_form input:-ms-input-placeholder {
    color: #808080;
}
/*.mail_form select,*/
.mail_form textarea,
.mail_form input[type="tel"],
.mail_form input[type="text"],
.mail_form input[type="email"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	border-radius: 0;
	outline: none;
	width: 100%;
	background-color: #fafafa;
	border: 1px solid #ccc;
}
.mail_form input[type="text"][disabled] {
  background:#DCDCDC;
 cursor:not-allowed;
}
.mail_form input.small {
	width: 27%;
}

.mail_form input[type="file"] {
	font-size: 16px;
}

.mail_form input[type="radio"] {
	margin-right: 5px;
	padding: 5px;
}
.mail_form input[type="checkbox"] {
	margin-right: 5px;
	padding: 5px;
}
.mail_form select {
	-webkit-appearance: select;
	-moz-appearance: select;
	appearance: select;
	background-color: #fafafa;
	border: 1px solid #ccc;
}
.mail_form .twin {
	font-size: 0;
}
.mail_form .twin input + input {
	margin-left: 3.44%;
}
.mail_form .twin input {
	width: 48.26%;
	display: inline-block;
}
.mail_form textarea {
	width: 100%;
	height: 150px;
	background-color: #fafafa;
}
.mail_form input[type="text"]:focus,
.mail_form input[type="email"]:focus,
.mail_form textarea:focus {
	box-shadow: 0 0 7px #008CD6;
}

.btm_text {
    width: 69%;
	margin-left: auto;
}
.mail_form input[type="submit"] {
    color: #fff;
    padding: 1em 5em;
    background-color: #008463;
    border: none;
    border-radius: 0;
}
.mail_form input[type="submit"]:hover {
	background-color: #91ba19;
}
.mail_form input[type="reset"],
.mail_form input.back {
	color: #fff;
	padding: 0.6em 1em;
	background-color: #b5b5b5;
	border: none;
	border-radius: 0;
}
.mail_form input[type="reset"]:hover,
.mail_form input.back:hover {
	background-color: #555;
}
.mail_form .btn_backhome {
	color: #fff;
	padding: 0.6em 1em;
	background-color: #358FDD;
	text-decoration: none;
	border: none;
	border-radius: 0;
}
.mail_form .btn_backhome:hover {
	color: #fff;
	padding: 0.6em 1em;
	background-color: #b5b5b5;
}

.form_message {
    background-color: #ffffbb;
    border: 2px solid #df0000;
    color: #df0000;
    font-size: 120%;
    font-weight: bold;
    margin: 10px auto;
    padding: 10px 15px;
}

@media screen and (max-width: 768px) {
	.mail_form {
		padding: 12px;
		border: 4px solid #ffe5bd;
	}
	.mail_form form dl {
		padding: 0 10px;
		margin-bottom: 15px;
	}
	.mail_form form dt{
		display: block;
		width: auto;
		text-align: left;
		margin: 0;
		padding: 0;
	}
	.mail_form form dd {
		display: block;
		width: auto;
	}
	.mail_form input,
	.mail_form button,
	.mail_form textarea,
	.mail_form select {
		padding: 10px;
	}
	.mail_form input.small {
		width: 50%;
	}
	.mail_form input[type="submit"] {
		padding: 1em;
	}
	.btm_text {
		width: auto;
	}
}

/* btn_radio  btn_checkbox */
.btn_radio,
.btn_checkbox {
    display: inline-block;
    margin-right: 6px;
}
.btn_radio + label,
.btn_checkbox + label {
	background-color: #fafafa;
    border: 1px solid #ccc;
    border-radius: 4px;
    cursor: pointer;
    display: inline-block;
    padding: 10px 15px 10px 10px;
    position: relative;
	/*margin-bottom: 5px;*/
}

.btn_radio.size_s + label,
.btn_checkbox.size_s + label {
	padding-top: 5px;
    padding-bottom: 5px;
    padding-right: 10px;
}

 
@media (min-width: 1px) {
    .btn_radio,
    .btn_checkbox {
        display: none;
        margin: 0;
    }
    .btn_radio + label,
    .btn_checkbox + label {
        padding-left: 37px;
		color: #000;
	transition: all .2s;
	-webkit-transition: all .2s;
    }
	.btn_radio:checked + label,
    .btn_checkbox:checked + label {
		background-color: #EEEAD9;
        border-color: #915E33;
	}
    .btn_radio + label::before,
    .btn_checkbox + label::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 10px;
         
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
        width: 18px;
        height: 18px;
        margin-top: -9px;
         
        background: #FFF;
    }
    .btn_radio + label::before {
        border: 1px solid #ccc;
        border-radius: 30px;
    }
    .btn_checkbox + label::before {
        border: 1px solid #ccc;
    }
    .btn_radio:checked + label::after,
    .btn_checkbox:checked + label::after {
        content: "";
        position: absolute;
        top: 50%;
         
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
    }
    .btn_radio:checked + label::after {
        left: 15px;
         
        width: 8px;
        height: 8px;
        margin-top: -4px;
         
        background: #915E33;
        border-radius: 8px;
    }
    .btn_checkbox:checked + label::after {
        left: 12px;
         
        width: 16px;
        height: 8px;
        margin-top: -8px;
         
        border-left: 3px solid #915E33;
        border-bottom: 3px solid #915E33;
         
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
}

/*.mail_form {
    padding: 0 2em;
	max-width: 500px;
	margin: 0 auto;
}

.mail_form dt {
    color: #333;
    font-size: 20px;
}
.mail_form dd {
    margin: 5px auto 20px;
}
.mail_form.confirm_list dd {
	padding-bottom: 5px;
	border-bottom: 1px solid #ccc;
}

.mail_form .icon_required::before {
	content: "＊";
	color: #d71618;
    font-size: 90%;
	display: inline-block;
	vertical-align: top;
    margin-right: 10px;
}
.mail_form .error {
    color: #d71618;
    font-size: 13px;
}
@media (min-width: 768px) {
	.mail_form .error { margin-left: 20px; }
}

.mail_form input,
.mail_form button,
.mail_form textarea,
.mail_form select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-size: 16px;
	padding: 5px;
}

.mail_form input[type="text"],
.mail_form input[type="email"] {
	width: 100%;
	border: 1px solid #ccc;
}
.mail_form textarea {
	width: 100%;
	height: 150px;
	border: 1px solid #ccc;
}

.mail_form input[type="text"]:focus,
.mail_form input[type="email"]:focus,
.mail_form textarea:focus {
	box-shadow: 0 0 7px #ccc;
    border: 1px solid #9f9f9f;
}

.mail_form input[type="submit"] {
	color: #fff;
    padding: 0.6em 1em;
	background-color: #000;
}
.mail_form input[type="submit"]:hover { background-color: #D7181A; }
.mail_form input[type="reset"],
.mail_form input.back {
	color: #fff;
	padding: 0.6em 1em;
	background-color: #b5b5b5;
}
.mail_form input[type="reset"]:hover,
.mail_form input.back:hover {
	background-color: #555;
}

.mail_form .btn_backhome {
	color: #fff;
    padding: 0.6em 1em;
	background-color: #000;
	text-decoration: none;
}
.mail_form .btn_backhome:hover {
	color: #fff;
	padding: 0.6em 1em;
	background-color: #b5b5b5;
}*/

/*---------------------------------------------------------------------
	page_scroll
---------------------------------------------------------------------*/

#page_scroll_navi {
	position: fixed;
	right: 0;
	bottom: 50px;
    margin: 0 auto 30px;
    overflow: hidden;
	text-align: right;
}
#page_scroll_navi a {
	display: inline-block;
	margin-right: -30px;
	position: relative;
	transition: .3s;
	-webkit-transition: .3s;
	padding: 10px 40px 10px 10px;
	border-radius: 4px 0 0 4px;
	background-color: #FF9900;
	
}
#page_scroll_navi a:hover {
	margin-right: -20px;
	transition: .3s;
	-webkit-transition: .3s;
}
#page_scroll_navi img { width: 55px; }


/*---------------------------------------------------------------------
	site_footer
---------------------------------------------------------------------*/
#site_footer {
	border-top: 2px solid #FF9900;
	background: #FFF4D9;
}

#site_footer .inner {
    box-sizing: content-box;
    margin: 0 auto;
    padding: 30px;
    width: 1000px;
	background: url(/image/footer_logo_2021.jpg) no-repeat right 30px;
}
.copyright {
	color: #fff;
	font-size: 13px;
	text-align: left;
	background-color: #FF9900;
	padding: 5px 0;
}
.copyright p {
	width: 1000px;
	margin: 0 auto;
	box-sizing: content-box;
}