@charset "utf-8";
/*
****************************************
----------------------------------------
------- common
----------------------------------------
****************************************
*/
a {transition: 0.7s;}
main {position: relative;z-index: 10;}
.img_radius img {border-radius: 4px;}
header{z-index: 1000;}
.inner2 {width: 100%; padding: 0 15px;}
.inner3 {max-width: 1000px; width: 100%; padding: 0 3%; margin: 0 auto;}
sup {font-size: 0.65em; vertical-align: top;}
.img_border {border: 1px solid #bcbcbc;}
.tac_box p {text-align: center;}
textarea { resize: vertical;}
.ttl_no_style *:before,
.ttl_no_style *:after {
	display: none !important;
}
.hosoku {font-size: 1.3rem;text-indent: -1em;padding-left: 1em; display: block; line-height: 1.7;}
.basic_layout .hosoku+.hosoku {margin-top: 0;}
.js_dispnone_start {
	display: none;
}
.slick-track img:focus {
    outline: none;
}

.basic_layout .l_aligncenter,
.l_aligncenter {
	text-align: center;
}

.basic_layout .l_aligncenter > *,
.l_aligncenter > * {
	display: inline-block;
}

.basic_layout .l_alignright,
.l_alignright {
	text-align: right;
}

.basic_layout .l_alignright > *,
.l_alignright > * {
	display: inline-block;
}

.catch_copy {
	color: #66b821;
	font-size: 2.6rem;
	margin-bottom: 40px;
}

/*****************************
------------------------------
singlepage
------------------------------
*****************************/

.singlepage p {
    display: block;
    margin: 1em 0;
}
.singlepage strong { font-weight: bold; }
.singlepage em { font-style: italic; }
.singlepage blockquote {
    display: block;
    -webkit-margin-before: 1em;
    -webkit-margin-after: 1em;
    -webkit-margin-start: 40px;
    -webkit-margin-end: 40px;
}
 
/* img */
 
.singlepage .aligncenter {
    display: block;
    margin: 0 auto;
}
.singlepage img[class*="wp-image-"],
.singlepage img[class*="attachment-"] {
    height: auto;
    max-width: 100%;
}

.singlepage table th,
.singlepage table td,
.singlepage table {
	border-width: 1px;
}

.singlepage table th,
.singlepage table td,
.singlepage table {
	border-color: #000;
}

.singlepage table th,
.singlepage table td,
.singlepage table {
	border-style: solid;
}

#under {
    overflow: hidden;
}
#under .alignright {
float: right;
margin-left:20px;
	}

#under .alignleft {
float:left;
margin-right:20px;
	}
#under .aligncenter {
    margin: auto;
}

/*****************************
------------------------------
qa
------------------------------
*****************************/
.a_box,
.q_box {
	padding: 0.2em 0 0 3em;
	position: relative;
}

.a_box:before,
.q_box:before {
	position: absolute;
	top: 0;
	left: 0;
	font-size: 3rem;
	display: block;
	line-height: 1;
}

.a_box:before {
	content: 'A.';
	color: #ff6600;
}

.q_box:before {
	content: 'Q.';
	color: #66b821;
}

.a_box {
	margin-top: 20px;
}

.qa_box + .qa_box {
	border-top: 1px solid #66b821;
}

.q_box p {
	font-weight: bold;
}

/*****************************
------------------------------
list
------------------------------
*****************************/

.top_listbox {
	border: 1px solid #66b821;
}

/*****************************
------------------------------
#under
------------------------------
*****************************/
#under .meritbox > div {
	border: 1px solid #4c4c4c;
}

#under .meritbox > div p {
	padding: 5px 10px;
	text-align: center;
}

#under .meritbox > div:nth-of-type(1) {
	border: 1px solid #e48282;
}

#under .meritbox > div:nth-of-type(2) {
	border: 1px solid #77b4cf;
}

#under .meritbox > div:nth-of-type(1) p {
	background: #e48282;
	color: #FFF;
}

#under .meritbox > div:nth-of-type(2) p {
	background: #77b4cf;
	color: #fff;
}

#under .meritbox > div:nth-of-type(1) li:before {
	background: #e48282;
}

#under .meritbox > div:nth-of-type(2) li:before {
	background: #77b4cf;
}

#under .meritbox  ul {
	padding: 10px 15px;
	margin-top: 0;
}

#under .list_etc {
	padding-left: 0;
	display: block !important;
	width: 100%;
}

#under .list_etc:before,
#under .list_etc:after {
	display: none;
}

#under .table_border th,
#under .table_border td {
	vertical-align: middle;
}


/*投稿ページのタイトルマージン*/
#under.basic_layout .post-meta + h2,
#under.basic_layout .post-meta + h3,
#under.basic_layout .post-meta + h4 {
	margin-top: 1em;
}


#under .table_border thead {
	background: #4faace;
	color: #fff;
}


/*______________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
メインカラー01
________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
*/
.color01{
	color: #66b821;
}
.basic_layout ul li:before,
.mbg_color01,
#toppage .mod_icon li:before{
	background: #66b821;
}

/*______________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
メインカラー02
________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
*/
.mbg_color02 {
	background: #4fc7ff;
}

/*______________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
メインカラー03
________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
*/
.mbg_color03 {
	background: #f8ab78;
}

.mbg_color04 {
	background: #e4edff;
}

/*______________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
サブカラー01
________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
*/
.sbg_color01 {
	background: #fffeeb;
}

/*______________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
サブカラー02
________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
*/
.sbg_color02 {
	background: #edeac4;
}

/*______________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
サブカラー03
________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
*/
.sbg_color03 {
	background: #fff8f0;
}

/*****************************
------------------------------
layout
------------------------------
*****************************/

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
col
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.col01, .col02, .col03, .col04, .col05 {overflow: hidden;}
.box {position: relative;}
.hasbg .box.nobg {
	padding: 0;
	background: none;
}
/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
basic_layout
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.basic_layout p {
	position: relative;
}

.basic_layout.no_parallax h3, .basic_layout.no_parallax h4, .basic_layout.no_parallax h5 {
	margin-top: 35px;
}

.basic_layout.has_parallax h3, .basic_layout.has_parallax h4, .basic_layout.has_parallax h5 {
	margin-top: 50px;
}

.basic_layout.has_parallax h3 {
	margin-top: 70px;
}
.basic_layout.has_parallax .breadcrumbs+h3, .basic_layout.has_parallax .breadcrumbs+h4, .basic_layout.has_parallax .breadcrumbs+h5 {
	margin-top: 20px;
}
#under .meritbox,
.basic_layout div[class*="col0"],
.basic_layout p:not(.box), .basic_layout ul,
.basic_layout ol, .basic_layout table,
.basic_layout .gmap,
.basic_layout .ratio_box,
.basic_layout .flow_box,
.basic_layout .rowbox {
	margin-top: 1em;
}

.basic_layout .btn {
	margin-top: 1em;
}

.basic_layout div[class*="col0"] .box > .btn {
	margin-top: 0;
}

.basic_layout .textbox *:first-child,
.basic_layout .gmap:first-child,
.basic_layout table:first-child,
.basic_layout p:first-child,
.basic_layout h2:first-child,
.basic_layout h3:first-child,
.basic_layout h4:first-child,
.basic_layout h5:first-child,
.basic_layout.no_parallax div[class*="title_set"] h2+h3,
.basic_layout.no_parallax div[class*="title_set"] h3+h4,
.basic_layout.no_parallax div[class*="title_set"] h4+h5,
.basic_layout.has_parallax div[class*="title_set"] h3+h4,
.basic_layout.has_parallax div[class*="title_set"] h4+h5,
.basic_layout.has_parallax div[class*="title_set"] h5+h6 {
	margin-top: 0;
}

.basic_layout .col02.btn_area {
	margin-top: 0;
}
.breadcrumbs+* {
	margin-top: 0 !important;
}


/*++++++++++++++++++++++++++++
list
++++++++++++++++++++++++++++*/

.basic_layout li+li {
	margin-top: 5px;
}

.basic_layout ol {
	counter-reset: number;
}

.basic_layout ol li {
	text-indent: -2em;
	padding-left: 2em;
}

.basic_layout ol li:before {
	counter-increment: number;
	content: counter(number)".";
	display: inline-block;
	width: 2em;
	text-indent: 0;
	text-align: left;
	font-weight: bold;
}

.basic_layout ul li,
#toppage .mod_icon li {
	position: relative;
	padding-left: 1em;
}

.basic_layout ul li:before,
#toppage .mod_icon li:before {
	content: '';
	position: absolute;
	top: 10px;
	left: 0;
	display: block;
	width: 6px;
	height: 6px;
	border-radius: 50%;
}

#toppage .mod_icon li:before {
	top: 12px;
}

.basic_layout .news_box li:before {
	display: none;
}


.basic_layout .no_list_style li {
	padding-left: 0;
}

.basic_layout .no_list_style li:before {
	display: none;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
header02
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.header02 {
	position: relative;
	z-index: 1000;
}

.header02.underheader {
	border-bottom: 1px solid #66b821;
}

.header02 .header_main {
	float: left;
	overflow:hidden;
}

.header02 .header_main_home {
	background: #66b821;
	float: left;
}

.header02 .header_main h1 {
	float: left;
}

.header02 .header_info_box {
	float: right;
	line-height: 1;
}

.header02 nav {
	float: left;
}

.header02 nav a {
	text-decoration: none;
}

.header02 .header_info_other {
	float: right;
	overflow: hidden;
}

.underheader {
	border-bottom: 1px solid #66b821;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
header03
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.header03 {
	padding: 0 20px;
	background: rgba(255,255,255,0.7);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}

.header03 a {
	text-decoration: none;
}

.header03 .header_main {
	float: left;
	padding: 8px 0;
}

.header03 .header_info_box {
	float: right;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mv
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.mv_max img {
	max-width: none;
	width: 100%;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
btn
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.basic_layout div[class*="col0"].btnbox_m {
	margin-top: 2em;
}

.btn_wrap {
	background: #fff;
	position: relative;
}

.btn {
	position: relative;
	text-align: center;
	display: block;
	text-decoration: none;
	margin-bottom: 1px;
}

.btn_size01 {
	max-width: 300px;
	margin-left: auto;
	margin-right: auto;
}
.btn_size02 {
	max-width: 200px;
	margin-left: auto;
	margin-right: auto;
}

.btn_sizefull {
	max-width: 100%;
	width: 100%;
}

.btn01 {
	color: #fff;
	background: #66b821;
}

.btn01:before,
.btn01:after {
	content: '';
	position: absolute;
	border-right: 2px solid #fff;
	border-top: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.btn02 {
	color: #fff;
	background: #66b821;
	padding: 0.5rem 1rem;
	border-bottom-style: solid;
	border-bottom-width: 4px;
	border-radius: 3px;
	border-color: #1b5570;
}

.btn03 {
	background: #66b821;
	color: #fff;
	border-radius: 4px;
}


.btn03:before {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent transparent transparent #fff;
}

.btn04 {
	transition: opacity 0.7s;
	background-color: #66b821;
	color: #fff;
}

.btn04:before {
	content: '';
	position: absolute;
	border-right: 1px solid;
	border-top: 1px solid;
	border-color: #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.btn04.backbtn:before {
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}

.btn01 span {
	position: relative;
}

.btn01 span:before,
.btn01 span:after {
	content: '';
	position: absolute;
	border-right: 2px solid #fff;
	border-top: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.btn_width_auto {
    max-width: inherit;
    display: inline-block;
}

/*
****************************************
----------------------------------------
------- list
----------------------------------------
****************************************
*/
.dotlist02 li,
.dotlist li {
	position: relative;
	padding-left: 1em;
}

.dotlist02 li:before,
.dotlist li:before {
	content: '';
	position: absolute;
	top: 0.7em;
	left: 0;
	display: block;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #66b821;
}

.dotlist02 li+li {
	margin-top: 5px;
}

.arrowlist > li {
	position: relative;
	padding-left: 1.5em;
}

.arrowlist > li+li {
	margin-top: 8px;
}

.arrowlist > li:before {
	content: '';
	position: absolute;
	top: 10px;
	left: 3px;
	width: 8px;
	height: 8px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.arrowlist > li li {
	position: relative;
	padding-left: 1em;
}

.arrowlist > li li:before {
	content: '';
	width: 3px;
	height: 3px;
	background: #fff;
	border-radius: 50%;
	position: absolute;
	top: 12px;
	left: 3px;
}

.basic_layout .checklist li,
.checklist li {
    position: relative;
    padding-left: 22px;
}

.basic_layout .checklist li:before,
.basic_layout .checklist li:after,
.checklist li:before,
.checklist li:after {
    content: '';
    position: absolute;

}
.checklist li:before,
.basic_layout .checklist li:before {
    width: 1em;
    height: 1em;
    border: 1px solid #838383;
    background: #fff;
    left: 0;
    top: .35em;
    z-index: 10;
    border-radius: 0;
}

.checklist li:after,
.basic_layout .checklist li:after {
    width: 0.9em;
    height: 0.6em;
    border-left: 2px solid #ff6600;
    border-bottom: 2px solid #ff6600;
    left: 0.23em;
    top: 0.23em;
    transform: rotate(-45deg);
    z-index: 11;
}

/*
****************************************
----------------------------------------
------- table
----------------------------------------
****************************************
*/
th, td {
	padding: 10px 5px;
	line-height: 1.5;
}

.thc th {
	text-align: center;
}

.vam td,
.vam th {
	vertical-align: middle;
}

th:first-of-type {
	width: 30%;
}

.table_fee th {
	width: 50%;
}

.table_fee th,
.table_fee td {
	text-align: center;
}

.th33 th:first-of-type  {
	width: 33.333333%;
}

.th33 td {
	width: 33.333333%;
}


.th50 th,
.th50 td {
	width: 50%;
}

.table_border.td_align_l td,
.table_underline.td_align_l td,
.table_flat.td_align_l td {
	text-align: left;
}

.table_border.td_align_r td,
.table_underline.td_align_r td,
.table_flat.td_align_r td {
	text-align: right;
}

.table_border.th_align_l th,
.table_underline.th_align_l th,
.table_flat.th_align_l th {
	text-align: left;
}

.table_border.th_align_r th,
.table_underline.th_align_r th,
.table_flat.th_align_r th {
	text-align: right;
}

.table_border.td_noborder_all td {
	border: none;
}

.table_border .th_noborder_tbody th {
	border: none;
}


.table_flat {
	border-collapse: separate;
	border-spacing: 0px 5px;
}

.table_flat th {
	background: #66b821;
	vertical-align: middle;
	text-align: left;
	width: 120px;
	overflow: visible;
	position: relative;
	color: #fff;
	font-weight: normal;
	font-size: 15px;
	padding: 10px 0;
}

.table_flat th span {
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	padding: 0 10px;
}

.table_flat th span:after {
	left: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	border-color: rgba(136, 183, 213, 0);
	border-left-color: #66b821;
	border-width: 10px;
	margin-top: -10px;
}


.table_flat td {
	background: #fff;
	padding-left: 20px;
	padding-right: 15px;
}
.table_flat th a {
	color: #fff;
}
.table_underline th {
	border-bottom: 1px solid #66b821;
	vertical-align: middle;
}

.table_underline td {
	border-bottom: 1px solid #9f9f9f;
	vertical-align: middle;
}

.table_border td,
.table_border th {
	text-align: center;
}

.table_border td {
	border: solid 1px #c3c3c3;
	background: #fff;
}

.table_border.td_tal td {
	text-align: left;
}

.table_border thead {
	color: #fff;
	border: 1px solid #c3c3c3;
	background: #66b821;
}

.table_border thead th:first-of-type {
	border-left: 1px solid;
}

.table_border tbody th {
	border: 1px solid #c3c3c3;
	background: #e6edf6;
}

.table_border thead th {
	border-left: 1px solid #c3c3c3;
}

.table_border thead th:first-of-type  {
	border-color: #c3c3c3;
}

.table_border.td_vertical_t,
.table_underline.td_vertical_t,
.table_flat.td_vertical_t {
	vertical-align: top;
}

.eigyou01 thead th {
	width: 11%;
}

.eigyou01 th:first-of-type {
	width: 23%;
}

.eigyou01 thead th:first-of-type {
	width: 23%;
}

.eigyou01 th,
.eigyou01 td {
	vertical-align: middle;
}

.table_hosoku {
    font-size: 1.3rem;
    text-indent: -1em;
    padding-left: 1em;
}

.table_hosoku span {
	margin-right: 20px;
}

.table_scroll {
	overflow-x: auto;
}

.table_scroll table {
	width: 1000px;
	table-layout: fixed;
}

.table_scroll td,
.table_scroll th {
	font-size: 85%;
}

.w05{width: 5% !important;}.w10{width: 10% !important;}
.w11{width: 11% !important;}.w12{width: 12% !important;}.w13{width: 13% !important;}.w14{width: 14% !important;}.w15{width: 15% !important;}.w16{width: 16% !important;}.w17{width: 17% !important;}.w18{width: 18% !important;}.w19{width: 19% !important;}
.w20{width: 20% !important;}.w25{width: 25% !important;}
.w30{width: 30% !important;}.w33{width: 33.333333% !important;}.w35{width: 35% !important;}
.w40{width: 40% !important;}.w45{width: 45% !important;}
.w50{width: 50% !important;}.w55{width: 55% !important;}
.w60{width: 60% !important;}.w65{width: 65% !important;}
.w70{width: 70% !important;}.w75{width: 75% !important;}
.w80{width: 80% !important;}.w85{width: 85% !important;}
.w90{width: 90% !important;}.w95{width: 95% !important;}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
img_bg_block
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.img_bg_block {
	position: relative;
}

.img_bg_block .inner3,
.img_bg_block .inner2,
.img_bg_block .inner {
	position: relative;
	z-index: 11;
}

.img_bg_block:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10;
	background-repeat: no-repeat;
	background-position: center center;
}

.img_bg_frostglass .img_bg_box {
	background: rgba(255,255,255,0.87);
}

/*****************************
------------------------------
mod_news
------------------------------
*****************************/
.mod_news_ttl {
	text-align: center;
	margin-bottom: 20px;
}

.basic_layout .news_box li,
.news_box li {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	padding: 15px 10px;
}

.basic_layout .news_box li+li {
	margin-top: 0;
}

.news_box li:before {
	display: none;
}

.news_box a {
	text-decoration: underline;
}

.news_box li span {
	display: inline-block;
	margin-right: 1em;
}

.news_box_btn {
	margin-top: 30px;
}


/*
****************************************
----------------------------------------
------- mod_color_box
----------------------------------------
****************************************
*/

.mod_color_box .color_box_item .color_box_link {
    display: block;
    position: relative;
    padding: 4px;
    text-decoration: none;
}

.mod_color_box .color_box_item .color_box_link img {
	width: 100%;
}

.mod_color_box .color_box_ttl {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
}

.mod_color_box .color_box_ttl em {
    display: flex;
    min-height: 60px;
	-ms-flex-pack: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	width: 100%;
	position: relative;
   }

.mod_color_box .color_box_ttl em:before {
	content: "";
	position: absolute;
	bottom: 2px;
	right: 3px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 20px 20px;
	border-color: transparent transparent #ffffff transparent;
}

/*
****************************************
----------------------------------------
------- mod_icon
----------------------------------------
****************************************
*/
.mod_icon .box {
	text-align: center;
	display: block;
}

.mod_icon .textbox p {
	text-align: center;
}

.mod_imghalf_boxin {
	color: #fff;
}

.mod_icon_img {
	width: 80px;
	display: inline-block;
	border-radius: 0;
	vertical-align: bottom;
	margin-bottom: 15px;
}

.not_icon .mod_icon_img {
	width: 100%;
}

.not_icon .mod_icon_img img {
	width: 100%;
}

.mod_icon_ttl {
	font-size: 2.1rem;
	margin-top: 0;
	margin-bottom: 30px;
	text-align: center;
	color: #66b821;
}

.mod_icon_ttl:first-child {
	margin-bottom: 15px;
}

.icon_catch {
	font-size: 1.9rem;
	color: #66b821;
	text-align: center;
}

.type_list.mod_icon li + li {
	margin-top: 3px;
}

.type_list.mod_icon .textbox li {
	text-align: left;
}

.type_list.mod_icon .textbox a {
	text-decoration: none;
}

.type_list.mod_icon .mod_icon_ttl a {
    font-size: 2rem;
    margin-top: 0;
    margin-bottom: 30px;
    text-align: center;
    color: #6DC0FF;
    text-decoration: none;
}
.type_list.mod_icon.has_link li:before {
	content: '';
	position: absolute;
	top: 10px;
	left: 0;
	width: 8px;
	height: 8px;
	border-top: 2px solid #6DC0FF;
	border-right: 2px solid #6DC0FF;
	display :block;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	background: none !important;
	border-radius: 0 !important;
}

.mod_icon.hasbg.icon_bg_deep_color > .box {
	background: #66b821;
	border: 1px solid #fff;
}

.mod_icon.icon_bg_deep_color .textbox,
.icon_bg_deep_color .mod_icon_ttl {
	color: #fff;
}

.mod_icon.icon_bg_deep_color .btn04 {
	background: transparent;
	border: 1px solid #fff;
}

.mbg_color01 .icon_bg_deep_color .ttl_top_lv02 {
	color: #fff;
}


/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
逆向き
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.mod_imghalf:nth-of-type(2n) {
	-webkit-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	-webkit-box-orient: row-reverse;
	-webkit-box-direction: row-reverse;
	flex-direction: row-reverse;
}

/*****************************
------------------------------
mod_bnr
------------------------------
*****************************/
.mod_bnr {
	overflow:hidden;
}

.mod_bnr_box {
	text-align: center;
}

.mod_bnr_box img {
	display: inline-block;
	vertical-align: bottom;
}

/*****************************
------------------------------
feature_circle_img_box
------------------------------
*****************************/
.feature_circle_img {
	position: relative;
	width: 100%;
	padding-top: 100%;
	overflow: hidden;
	border-radius: 50%;
}

.feature_circle_img img {
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
}

.feature_circle_num {
	text-align: center;
	color: #66b821;
}

.feature_circle_num span {
	position: relative;
	display: inline-block;
	line-height: 1;
}

.feature_circle_num span:before,
.feature_circle_num span:after {
	content: '';
	width: 1px;
	height: 15px;
	background: #66b821;
	position: absolute;
	top: 0;
}

.feature_circle_num span:before {
	left: -15px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.feature_circle_num span:after {
	right: -15px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.feature_circle_box {
	position: relative;
}

.feature_circle_ttl {
	margin-top: 0;
	text-align: center;
}

/*
****************************************
----------------------------------------
------- mod_catalog
----------------------------------------
****************************************
*/

.mod_catalog img {
	border-radius: 0;
}

.mod_catalog p {
	position: relative;
}

.mod_catalog p span {
	position: absolute;
	top: 0;
	left: 0;
	font-size: 70%;
	display: inline-block;
	padding: 5px;
	background: #edeac4;
}

.mod_catalog_img {
	margin-bottom: 10px;
}

.mod_catalog_ttl {
	margin-top: 0;
	margin-bottom: 10px;
	font-size: 1.6rem;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_big_icon
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
/*mod_big_icon*/
.mod_big_icon a:hover {
	opacity: 1;
}

.mod_big_icon a .big_icon_img,
.mod_big_icon a .big_icon_txt {
	transition: 0.5s;
}

.mod_big_icon a:hover .big_icon_img,
.mod_big_icon a:hover .big_icon_txt {
	opacity: 0.7;
}

.mod_big_icon .big_icon_col03 .big_icon_box,
.mod_big_icon .big_icon_col02 .big_icon_box {
	background-color: #fff;
	border-radius: 20px;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;

	overflow: hidden;
	text-decoration: none;
}

.mod_big_icon .big_icon_wrap .big_icon_img {
	background-color: #f08200;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
}

.mod_big_icon .big_icon_wrap .big_icon_img img {
	flex: 1 1 0%;
}
.ie .mod_big_icon .big_icon_wrap .big_icon_img img {
	flex: none;
}

.mod_big_icon .big_icon_wrap .big_icon_txt {
	flex: 1 1 0%;
	font-size: 2.5rem;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	padding: 10px 40px 10px 20px;
	color: #f08200;
}

.mod_big_icon .big_icon_wrap .big_icon_txt:before,
.mod_big_icon .big_icon_wrap .big_icon_txt:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.mod_big_icon .big_icon_wrap .big_icon_txt:after {
	z-index: 10;
	width: 22px;
	height: 22px;
	background: #f08200;
	border-radius: 50%;
	right: 12px;
}

.mod_big_icon .big_icon_wrap .big_icon_txt:before {
	z-index: 11;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 10px;
	border-color: transparent transparent transparent #ffffff;
	right: 16px;
}

/*****************************
------------------------------
imgbg
------------------------------
*****************************/

.imgbg {position: relative;}
.imgbg img {border-radius: 4px;}

.imgbg:before {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 9;
}

.imgbg > div {position: relative;z-index: 10;}
.imgbg01 {background-color: #fff8f0;}
/*.imgbg02 {background-color: #e9f6fc;}
.imgbg03 {background-color: #f8efe7;}
.imgbg04 {background-color: #f1fef3;}
.imgbg05 {background-color: #f2f2f2;}*/

/*****************************
------------------------------
mod_frostglass
------------------------------
*****************************/

.frostglass_imgbg01 {
	background-size: cover;
}

.mod_frostglass {
	background: rgba(255,255,255,0.7);
}

/*
****************************************
----------------------------------------
------- mod_fit_box
----------------------------------------
****************************************
*/

.mod_fit_box .fit_item {
	display: block;
	text-decoration: none;
}

.mod_fit_box .fit_img {
	margin-bottom: 1em;
}

.mod_fit_box .fit_ttl {
	margin-bottom: 1em;
	text-align: center;
	font-size: 1.8rem;
}

.mod_fit_box .fit_txt {
	padding: 0 8%;
	margin-bottom: 2em;
}

.mod_fit_box .fit_txt li + li {
	margin-top: 5px;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
gmap
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.gmap {position: relative;overflow: hidden;}
.gmap iframe,.gmap object,.gmap embed { width: 100%; height: 100%;}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
parallax_bg
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.parallax_bg {
	overflow: hidden;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
top_button
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

#top_button {
	position: fixed;
	z-index: 10000;
}

#top_button a {
	background: #66b821;
	position: relative;
	display: block;
	border-radius: 50%;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}

#top_button a:before {
	position: absolute;
	content: '';
	display: block;
	border-right: 4px solid;
	border-top: 4px solid;
	border-color: #fff;
	-webkit-transform: translateX(-50%) rotate(-45deg);
	transform: translateX(-50%) rotate(-45deg);
}


/*______________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
before_footer
________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
*/

.before_footer {
	padding: 30px 0 0;
}

.before_footer .col02 {
	margin-top: 0;
}

.before_footer .list_title {
	font-size: 3rem;
}

.before_footer li a {
	text-decoration: none;
}

.before_footer .gmap {
	height: 360px;
}

.before_footer_hasbg01 {
	position: relative;
}

.before_footer_hasbg01 > div {
	position: relative;
	z-index: 10;
}

.before_footer_hasbg01:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #66b821;
	background-size: auto;
	opacity: 0.15;
	z-index: 9;
}

.before_footer .mod_copy {
	text-align: center;
	margin-top: 20px;
	padding-bottom: 30px;
}

.before_footer .hosoku {
	line-height: 1.5;
}



/*______________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
before_footer02
________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
*/

.before_footer02 {
	position: relative;
	padding: 40px 0 0;
	background: #66b821;
}

.before_footer02 * {
	color: #fff;
}

.before_footer02:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0.27;
	z-index: 9;
}

.before_footer02 .inner {
	position: relative;
	z-index: 10;
}

.before_footer02_box_wrap {
	position: relative;
	overflow: hidden;
}

.before_footer02_txt {
	margin-bottom: 25px;
	font-size: 1.3rem;
}

.before_footer02 small {
	margin-bottom: 25px;
	display: block;
}

.before_footer02 small span {
	display: block;
}

.before_footer02_info {
	margin-bottom: 25px;
}

.before_footer02_tel span a,
.before_footer02_tel span {
	font-size: 3rem;
	line-height: 1.2;
}

.before_footer02_time {
	margin-left: 45px;
}

.before_footer02_nav_box {
	overflow: hidden;
}

.before_footer02_nav_ttl {
	font-size: 2.2rem;
}

.before_footer02_nav_box a {
	text-decoration: none;
}

.before_footer_sitemap a {
	position: relative;
	padding-left: 1.5em;
	display: inline-block;
	text-decoration: none;
	font-size: 1.3rem;
}

.before_footer_sitemap a:before {
	content: '';
	position: absolute;
	top: 7px;
	left: 3px;
	width: 8px;
	height: 8px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}


/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
footer
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/


/*
****************************************
----------------------------------------
------- title
----------------------------------------
****************************************
*/

h2,h3,h4,h5,h6 {position: relative;line-height: 1.4;}
h2 span,h3 span,h4 span,h5 span {display: block;font-size: 70%;}

h2 { font-size: 3.2rem;}
h3 { font-size: 2.4rem;}
h4 { font-size: 2rem;}
h5 { font-size: 1.8rem;}
h6 {margin-top: 1.5em; font-weight: bold;}

.has_parallax h3 { font-size: 3.2rem;}
.has_parallax h4 { font-size: 2.4rem;}
.has_parallax h5 {font-size: 2.1rem;}
.has_parallax h6 {font-size: 2.1rem;font-weight: normal;}

.ttl_lv7 {
	margin-bottom: -0.5em;
	font-weight: bold;
}

/*++++++++++++++++++++++++++++++++++++++
parallax_title
++++++++++++++++++++++++++++++++++++++++
*/
.parallax_title {
	background-size: cover;
	background-attachment: fixed;
}

.parallax_title h2 {
	color: #fff;
	background-color: inherit;
	border-bottom: none;
	border-top: none;
}

.parallax_title .h2box p {
	color: #fff;
}

.parallax_title .h2box {
	background: rgba(180,180,180,0.7);
}

.parallax_title .h2box h2 {
	background: transparent;
	letter-spacing: 0.1em;
}

#under .parallax_title .h2box h2:after,
#under .parallax_title .h2box h2:before {
	display: none;
}

#under .parallax_title .h2box h2 {
	margin: 0;
	text-align: left;
}
/*
****************************************
----------------------------------------
------- ttl_top_lv02
----------------------------------------
****************************************
*/

.ttl_top_lv02 {
	margin-bottom: 30px;
	text-align: center;
	font-weight: bold;
}

.ttl_top_lv02.thin {
	font-weight: normal;
}

.ttl_top_lv02 span {
	font-size: 50%;
}

.ttl_top_lv02 em {
	position: relative;
	display: inline-block;
}

.ttl_top_lv02 em:after,
.ttl_top_lv02 em:before {
	content: '';
	width: 30px;
	height: 1px;
	background: #66b821;
	position: absolute;
	top: 50%;
	transform: translateX(-50%);
}

.ttl_top_lv02 em:before {
	left: -30px;
}

.ttl_top_lv02 em:after {
	right: -60px;
}

.ttl_top_lv03 {
	position: relative;
	font-size: 2.8rem;
}

.ttl_top_lv03:before {
	content: '';
	position: absolute;
	bottom: -15px;
	width: 30px;
	height: 1px;
	background: #fff;

}

.ttl_top_lv03.ttl_pop {
	text-align: center;
}

.ttl_top_lv03.ttl_pop em {
	background: #43af69;
	color: #fff;
	border-radius: 30px;
	padding: 4px 30px;
	display: inline-block;
}

.ttl_top_lv03.ttl_pop:before {
	display: none;
}


/*
****************************************
----------------------------------------
------- title_set01
----------------------------------------
****************************************
*/

.title_set01_lv02,
.no_parallax.title_set01 h2,
.has_parallax.title_set01 h3,
.basic_layout.no_parallax .title_set01 h2,
.basic_layout.has_parallax .title_set01 h3 {
	text-align: center;
}

.title_set01_lv02:before,
.no_parallax.title_set01 h2:before,
.has_parallax.title_set01 h3:before,
.basic_layout.no_parallax .title_set01 h2:before,
.basic_layout.has_parallax .title_set01 h3:before {
	content: '';
	display: block;
	position: absolute;
	bottom: -15px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 80px;
	height: 2px;
	background: #66b821;
}

.title_set01_lv03,
.no_parallax.title_set01 h3,
.has_parallax.title_set01 h4,
.basic_layout.no_parallax .title_set01 h3,
.basic_layout.has_parallax .title_set01 h4 {
    background: #66b821;
    padding: 12px 30px;
    color: #fff;
    border-bottom: 4px solid #7ab2ff;
}

.title_set01_lv04,
.no_parallax.title_set01 h4,
.has_parallax.title_set01 h5,
.basic_layout.no_parallax .title_set01 h4,
.basic_layout.has_parallax .title_set01 h5 {
	position: relative;
	padding: 14px 30px;
	border-bottom: 1px solid #c3c3c3;
}

.title_set01_lv04:before,
.no_parallax.title_set01 h4:before,
.has_parallax.title_set01 h5:before,
.basic_layout.no_parallax .title_set01 h4:before,
.basic_layout.has_parallax .title_set01 h5:before {
	content: '';
	position: absolute;
    top: 18px;
    left: 0;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 4px solid #66b821;
}

.title_set01_lv05,
.no_parallax.title_set01 h5,
.has_parallax.title_set01 h6,
.basic_layout.no_parallax .title_set01 h5,
.basic_layout.has_parallax .title_set01 h6 {
	padding: 14px 30px 0;
	position: relative;
}

.title_set01_lv05:before,
.no_parallax.title_set01 h5:before,
.has_parallax.title_set01 h6:before,
.basic_layout.no_parallax .title_set01 h5:before,
.basic_layout.has_parallax .title_set01 h6:before {
	content: '';
	position: absolute;
	width: 16px;
	height: 5px;
	background: #66b821;
	top: 24px;
	left: 0;
}

/*
****************************************
----------------------------------------
------- title_set02
----------------------------------------
****************************************
*/

.title_set02_lv02,
.no_parallax.title_set02 h2,
.has_parallax.title_set02 h3,
.basic_layout.no_parallax .title_set02 h2,
.basic_layout.has_parallax .title_set02 h3 {
	position: relative;
	margin-top: 70px;
	padding: 20px 30px 22px;
	background: #f8ab78;
	text-align: center;
	color: #fff;
}

.title_set02_lv02:before,
.no_parallax.title_set02 h2:before,
.has_parallax.title_set02 h3:before,
.basic_layout.no_parallax .title_set02 h2:before,
.basic_layout.has_parallax .title_set02 h3:before {
	content: '';
	display: block;
	position: absolute;
	bottom: 5px;
	left: 0;
	width: 100%;
	height: 2px;
	background-image: linear-gradient(to right, #fff 40%, rgba(255,255,255,0) 0%);
	background-position: bottom;
	background-size: 5px 2px;
	background-repeat: repeat-x;
}

.title_set02_lv03,
.no_parallax.title_set02 h3,
.has_parallax.title_set02 h4,
.basic_layout.no_parallax .title_set02 h3,
.basic_layout.has_parallax .title_set02 h4 {
	margin-top: 50px;
	position: relative;
	padding: 15px 30px 15px 15px;
	border-top: 3px solid #f8ab78;
	border-bottom: 1px solid #c3c3c3;
}

.title_set02_lv04,
.no_parallax.title_set02 h4,
.has_parallax.title_set02 h5,
.basic_layout.no_parallax .title_set02 h4,
.basic_layout.has_parallax .title_set02 h5 {
	position: relative;
	padding: 15px 30px 0;
	color: #ff6600;
	margin-top: 30px;
}

.title_set02_lv04:before,
.no_parallax.title_set02 h4:before,
.has_parallax.title_set02 h5:before,
.basic_layout.no_parallax .title_set02 h4:before,
.basic_layout.has_parallax .title_set02 h5:before {
	content: '';
	position: absolute;
	top: 20px;
	left: 0;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	border: 4px solid #ff6600;
}

.title_set02_lv05,
.no_parallax.title_set02 h5,
.has_parallax.title_set02 h6,
.basic_layout.no_parallax .title_set02 h5,
.basic_layout.has_parallax .title_set02 h6 {
	padding: 14px 30px 0;
	position: relative;
}

.title_set02_lv05:before,
.no_parallax.title_set02 h5:before,
.has_parallax.title_set02 h6:before,
.basic_layout.no_parallax .title_set02 h5:before,
.basic_layout.has_parallax .title_set02 h6:before {
	content: '';
	position: absolute;
	width: 16px;
	height: 5px;
	background: #ff6600;
	top: 27px;
	left: 0;
}


/*
****************************************
----------------------------------------
------- title_set03
----------------------------------------
****************************************
*/

.title_set03_lv02,
.no_parallax.title_set03 h2,
.has_parallax.title_set03 h3,
.basic_layout.no_parallax .title_set03 h2,
.basic_layout.has_parallax .title_set03 h3 {
	position: relative;
	background: #abcddd;
	padding: 20px 30px;
}

.title_set03_lv02:before,
.no_parallax.title_set03 h2:before,
.has_parallax.title_set03 h3:before,
.basic_layout.no_parallax .title_set03 h2:before,
.basic_layout.has_parallax .title_set03 h3:before {
	content: '';
	height: 100%;
	width: 10px;
	position: absolute;
	left: 0;
	top: 0;
	background: #66b821;
}

.title_set03_lv03,
.no_parallax.title_set03 h3,
.has_parallax.title_set03 h4,
.basic_layout.no_parallax .title_set03 h3,
.basic_layout.has_parallax .title_set03 h4 {
	padding: 15px 0 15px;
}

.title_set03_lv03:before,
.title_set03_lv03:after,
.no_parallax.title_set03 h3:before,
.no_parallax.title_set03 h3:after,
.has_parallax.title_set03 h4:before,
.has_parallax.title_set03 h4:after,
.basic_layout.no_parallax .title_set03 h3:before,
.basic_layout.no_parallax .title_set03 h3:after,
.basic_layout.has_parallax .title_set03 h4:before,
.basic_layout.has_parallax .title_set03 h4:after {
	position: absolute;
	bottom: -4px;
	left: 0;
	content: '';
	height: 4px;
}

.title_set03_lv03:before,
.no_parallax.title_set03 h3:before,
.has_parallax.title_set03 h4:before,
.basic_layout.no_parallax .title_set03 h3:before,
.basic_layout.has_parallax .title_set03 h4:before {
	z-index: 2;
	width: 7%;
	background: #66b821;
}

.title_set03_lv03:after,
.no_parallax.title_set03 h3:after,
.has_parallax.title_set03 h4:after,
.basic_layout.no_parallax .title_set03 h3:after,
.basic_layout.has_parallax .title_set03 h4:after {
	width: 100%;
	background: -webkit-repeating-linear-gradient(-45deg,#c3c3c3,#c3c3c3 10%,#fff 10%,#fff 30%,#c3c3c3 30%,#c3c3c3 70%,#fff 70%,#fff 90%,#c3c3c3 90%,#c3c3c3 100%);
	background: repeating-linear-gradient(-45deg,#c3c3c3,#c3c3c3 10%,#fff 10%,#fff 30%,#c3c3c3 30%,#c3c3c3 70%,#fff 70%,#fff 90%,#c3c3c3 90%,#c3c3c3 100%);
	background-size: 6px 4px;
}

.title_set03_lv04,
.no_parallax.title_set03 h4,
.has_parallax.title_set03 h5,
.basic_layout.no_parallax .title_set03 h4,
.basic_layout.has_parallax .title_set03 h5 {
	margin-top: 50px;
	padding: 15px 0 5px;
	border-bottom: 1px solid #66b821;
}

.title_set03_lv05,
.no_parallax.title_set03 h5,
.has_parallax.title_set03 h6,
.basic_layout.no_parallax .title_set03 h5,
.basic_layout.has_parallax .title_set03 h6 {
	padding: 14px 30px 0;
	position: relative;
}

.title_set01_lv03:before,
.no_parallax.title_set03 h5:before,
.has_parallax.title_set03 h6:before,
.basic_layout.no_parallax .title_set03 h5:before,
.basic_layout.has_parallax .title_set03 h6:before {
	content: '';
	position: absolute;
	width: 16px;
	height: 5px;
	background: #66b821;
	top: 24px;
	left: 0;
}

/*
****************************************
----------------------------------------
------- title_set04
----------------------------------------
****************************************
*/

.title_set04_lv02,
.no_parallax.title_set04 h2,
.has_parallax.title_set04 h3,
.basic_layout.no_parallax .title_set04 h2,
.basic_layout.has_parallax .title_set04 h3 {
	position: relative;
	background: #abcddd;
	padding: 20px 30px;
	text-align: center;
}

.title_set04_lv02:before,
.no_parallax.title_set04 h2:before,
.has_parallax.title_set04 h3:before,
.basic_layout.no_parallax .title_set04 h2:before,
.basic_layout.has_parallax .title_set04 h3:before {
	content: '';
	height: 3px;
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background: #66b821;
}

.title_set04_lv03,
.no_parallax.title_set04 h3,
.has_parallax.title_set04 h4,
.basic_layout.no_parallax .title_set04 h3,
.basic_layout.has_parallax .title_set04 h4 {
	padding: 15px 0;
}

.title_set04_lv03:before,
.title_set04_lv03:after,
.no_parallax.title_set04 h3:before,
.no_parallax.title_set04 h3:after,
.has_parallax.title_set04 h4:before,
.has_parallax.title_set04 h4:after,
.basic_layout.no_parallax .title_set04 h3:before,
.basic_layout.no_parallax .title_set04 h3:after,
.basic_layout.has_parallax .title_set04 h4:before,
.basic_layout.has_parallax .title_set04 h4:after {
	position: absolute;
	bottom: -2px;
	left: 0;
	content: '';
	height: 2px;
}

.title_set04_lv03:before,
.no_parallax.title_set04 h3:before,
.has_parallax.title_set04 h4:before,
.basic_layout.no_parallax .title_set04 h3:before,
.basic_layout.has_parallax .title_set04 h4:before {
	z-index: 2;
	width: 7%;
	background: #66b821;
}

.title_set04_lv03:after,
.no_parallax.title_set04 h3:after,
.has_parallax.title_set04 h4:after,
.basic_layout.no_parallax .title_set04 h3:after,
.basic_layout.has_parallax .title_set04 h4:after {
	width: 100%;
	background: #abcddd;
}

.title_set04_lv04,
.no_parallax.title_set04 h4,
.has_parallax.title_set04 h5,
.basic_layout.no_parallax .title_set04 h4,
.basic_layout.has_parallax .title_set04 h5 {
	position: relative;
	background: #f6f6f6;
	padding: 8px 30px;
}

.title_set04_lv04:before,
.no_parallax.title_set04 h4:before,
.has_parallax.title_set04 h5:before,
.basic_layout.no_parallax .title_set04 h4:before,
.basic_layout.has_parallax .title_set04 h5:before {
	content: '';
	height: 100%;
	width: 5px;
	position: absolute;
	left: 0;
	top: 0;
	background: #66b821;
}

.title_set04_lv05,
.no_parallax.title_set04 h5,
.has_parallax.title_set04 h6,
.basic_layout.no_parallax .title_set04 h5,
.basic_layout.has_parallax .title_set04 h6 {
	padding: 14px 30px 0;
	position: relative;
}

.title_set04_lv05:before,
.no_parallax.title_set04 h5:before,
.has_parallax.title_set04 h6:before,
.basic_layout.no_parallax .title_set04 h5:before,
.basic_layout.has_parallax .title_set04 h6:before {
	content: '';
	position: absolute;
	width: 16px;
	height: 5px;
	background: #66b821;
	top: 24px;
	left: 0;
}

/*
****************************************
----------------------------------------
------- title_set05
----------------------------------------
****************************************
*/

.title_set05_lv02,
.no_parallax.title_set05 h2,
.has_parallax.title_set05 h3,
.basic_layout.no_parallax .title_set05 h2,
.basic_layout.has_parallax .title_set05 h3 {
	padding: 15px 30px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	box-shadow: 0 0 45px rgb(226, 155, 4) inset;
	background: #66b821;
	color: #fff;
}

.title_set05_lv02:before,
.title_set05_lv02:after,
.no_parallax.title_set05 h2:before,
.no_parallax.title_set05 h2:after,
.has_parallax.title_set05 h3:before,
.has_parallax.title_set05 h3:after,
.basic_layout.no_parallax .title_set05 h2:before,
.basic_layout.no_parallax .title_set05 h2:after,
.basic_layout.has_parallax .title_set05 h3:before,
.basic_layout.has_parallax .title_set05 h3:after {
	content:'';
	display:block;
	width:100%;
	position:absolute;
	border-top:1px dashed #fff;
}

.title_set05_lv02:before,
.no_parallax.title_set05 h2:before,
.has_parallax.title_set05 h3:before,
.basic_layout.no_parallax .title_set05 h2:before,
.basic_layout.has_parallax .title_set05 h3:before {
	top:3px;
	left:0;
}

.title_set05_lv02:after,
.no_parallax.title_set05 h2:after,
.has_parallax.title_set05 h3:after,
.basic_layout.no_parallax .title_set05 h2:after,
.basic_layout.has_parallax .title_set05 h3:after {
	bottom:3px;
	left:0;
}

.title_set05_lv03,
.no_parallax.title_set05 h3,
.has_parallax.title_set05 h4,
.basic_layout.no_parallax .title_set05 h3,
.basic_layout.has_parallax .title_set05 h4 {
	padding: 14px 0 14px 37px;
	border-bottom: 1px solid #66b821;
}

.title_set05_lv03:before,
.title_set05_lv03:after,
.no_parallax.title_set05 h3:before,
.no_parallax.title_set05 h3:after,
.has_parallax.title_set05 h4:before,
.has_parallax.title_set05 h4:after,
.basic_layout.no_parallax .title_set05 h3:before,
.basic_layout.no_parallax .title_set05 h3:after,
.basic_layout.has_parallax .title_set05 h4:before,
.basic_layout.has_parallax .title_set05 h4:after {
	background: #66b821;
	opacity: 0.7;
	position: absolute;
	content: '';
	border-radius: 50%
}

.title_set05_lv03:before,
.no_parallax.title_set05 h3:before,
.has_parallax.title_set05 h4:before,
.basic_layout.no_parallax .title_set05 h3:before,
.basic_layout.has_parallax .title_set05 h4:before {
	top: 16px;
	left: 2px;
	z-index: 2;
	width: 18px;
	height: 18px;
}

.title_set05_lv03:after,
.no_parallax.title_set05 h3:after,
.has_parallax.title_set05 h4:after,
.basic_layout.no_parallax .title_set05 h3:after,
.basic_layout.has_parallax .title_set05 h4:after {
	background: #abcddd;
	opacity: 0.7;
	top: 33px;
	left: 15px;
	width: 10px;
	height: 10px;
}

.title_set05_lv04,
.no_parallax.title_set05 h4,
.has_parallax.title_set05 h5,
.basic_layout.no_parallax .title_set05 h4,
.basic_layout.has_parallax .title_set05 h5 {
	padding: 14px 30px 5px;
	color: #66b821;
}

.title_set05_lv04:after,
.no_parallax.title_set05 h4:after,
.has_parallax.title_set05 h5:after,
.basic_layout.no_parallax .title_set05 h4:after,
.basic_layout.has_parallax .title_set05 h5:after {
	background: #66b821;
	opacity: 0.7;
	position: absolute;
	content: '';
	border-radius: 50%
}

.title_set05_lv04:before,
.no_parallax.title_set05 h4:before,
.has_parallax.title_set05 h5:before,
.basic_layout.no_parallax .title_set05 h4:before,
.basic_layout.has_parallax .title_set05 h5:before {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background-image: linear-gradient(to right, #66b821 40%, rgba(255,255,255,0) 0%);
	background-position: bottom;
	background-size: 5px 2px;
	background-repeat: repeat-x;
}

.title_set05_lv04:after,
.no_parallax.title_set05 h4:after,
.has_parallax.title_set05 h5:after,
.basic_layout.no_parallax .title_set05 h4:after,
.basic_layout.has_parallax .title_set05 h5:after {
	background: #abcddd;
	opacity: 0.7;
	top: 22px;
	left: 3px;
	width: 13px;
	height: 13px;
}

.title_set05_lv05,
.no_parallax.title_set05 h5,
.has_parallax.title_set05 h6,
.basic_layout.no_parallax .title_set05 h5,
.basic_layout.has_parallax .title_set05 h6 {
	padding: 14px 30px 0;
	position: relative;
}

.title_set05_lv05:before,
.no_parallax.title_set05 h5:before,
.has_parallax.title_set05 h6:before,
.basic_layout.no_parallax .title_set05 h5:before,
.basic_layout.has_parallax .title_set05 h6:before {
	content: '';
	position: absolute;
	width: 16px;
	height: 5px;
	background: #66b821;
	top: 24px;
	left: 0;
}

/*
****************************************
----------------------------------------
------- title_set06
----------------------------------------
****************************************
*/

.title_set06_lv02,
.no_parallax.title_set06 h2,
.has_parallax.title_set06 h3,
.basic_layout.no_parallax .title_set06 h2,
.basic_layout.has_parallax .title_set06 h3 {
	padding: 15px 0;
}

.title_set06_lv02:before,
.title_set06_lv02:after,
.no_parallax.title_set06 h2:before,
.no_parallax.title_set06 h2:after,
.has_parallax.title_set06 h3:before,
.has_parallax.title_set06 h3:after,
.basic_layout.no_parallax .title_set06 h2:before,
.basic_layout.no_parallax .title_set06 h2:after,
.basic_layout.has_parallax .title_set06 h3:before,
.basic_layout.has_parallax .title_set06 h3:after {
	position: absolute;
	bottom: -2px;
	left: 0;
	content: '';
	height: 2px;
}

.title_set06_lv02:before,
.no_parallax.title_set06 h2:before,
.has_parallax.title_set06 h3:before,
.basic_layout.no_parallax .title_set06 h2:before,
.basic_layout.has_parallax .title_set06 h3:before {
	z-index: 2;
	width: 7%;
	background: #66b821;
}

.title_set06_lv02:after,
.no_parallax.title_set06 h2:after,
.has_parallax.title_set06 h3:after,
.basic_layout.no_parallax .title_set06 h2:after,
.basic_layout.has_parallax .title_set06 h3:after {
	width: 100%;
	background: #abcddd;
}

.title_set06_lv03,
.no_parallax.title_set06 h3,
.has_parallax.title_set06 h4,
.basic_layout.no_parallax .title_set06 h3,
.basic_layout.has_parallax .title_set06 h4 {
	padding: 15px 0 10px;
	border-bottom: 1px solid #66b821;
}

.title_set06_lv04,
.no_parallax.title_set06 h4,
.has_parallax.title_set06 h5,
.basic_layout.no_parallax .title_set06 h4,
.basic_layout.has_parallax .title_set06 h5 {
	position: relative;
	padding: 8px 30px;
}

.title_set06_lv04:before,
.no_parallax.title_set06 h4:before,
.has_parallax.title_set06 h5:before,
.basic_layout.no_parallax .title_set06 h4:before,
.basic_layout.has_parallax .title_set06 h5:before {
	content: '';
	height: 100%;
	width: 5px;
	position: absolute;
	left: 0;
	top: 0;
	background: #66b821;
}

.title_set06_lv05,
.no_parallax.title_set06 h5,
.has_parallax.title_set06 h6,
.basic_layout.no_parallax .title_set06 h5,
.basic_layout.has_parallax .title_set06 h6 {
	padding: 14px 30px 0;
	position: relative;
}

.title_set06_lv05:before,
.no_parallax.title_set06 h5:before,
.has_parallax.title_set06 h6:before,
.basic_layout.no_parallax .title_set06 h5:before,
.basic_layout.has_parallax .title_set06 h6:before {
	content: '';
	position: absolute;
	width: 16px;
	height: 5px;
	background: #66b821;
	top: 24px;
	left: 0;
}

/*
****************************************
----------------------------------------
------- box / col
----------------------------------------
****************************************
*/

.hasbg > .box {
	background: #fff;
}

a.box {
	text-decoration: none;
}

/*
****************************************
----------------------------------------
------- imglink_box
----------------------------------------
****************************************
*/
.imglink_box a span {
	color: #fff;
}

.imglink_box .box:hover a:before {
	opacity: 0.7;
}

.col_max {
	width: 100% !important;
}

.imglink_box {
	display: flex;
	flex-wrap: wrap;
}

.imglink_box a {
	text-decoration: none;
}

.imglink_box a:hover, .imglink_box a:hover img {
	opacity: 1
}

.imglink_box_in {
	display: flex;
	justify-content: center;
	align-items: center;
    flex-direction:  column;
    height: 100%;
    position: relative;
    z-index: 11;
}

.imglink_box_ttl {
	display: block;
	font-size: 2.2rem;
	text-align: center;
	margin-bottom: 15px;
	padding: 0 10px;
}

.imglink_box_ttl:after {
	content: '';
	display: block;
	width: 100%;
	height: 2px;
	background: #fff;
	margin-top: 4px;
}

.imglink_box_txt {
	text-align: center;
	display: block;
	width: 100%;
}

.js_texthover .imglink_box_txt {
	display: block;
	width: 90%;
	overflow: hidden;
	display: none;
}

.imglink_box .box {
	padding: 20px 10px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.imglink_box .box .box_inner {
	display: flex;
	align-items: center;
	justify-content: center;
}

.imglink_box .box:after {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 9;
	transition: .7s;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.imglink_box a:before {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
	transition:  0.7s;
}

.imglink_box > .box:before {
    content: '';
    position: absolute;
    bottom: 3px;
    right: 3px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 15px 15px;
    border-color: transparent transparent #ffffff transparent;
    z-index: 1000;
}

.imglink_box + .imglink_box {
	border-top: 1px solid #fff;
}

/*
****************************************
----------------------------------------
------- mod_hosoku
----------------------------------------
****************************************
*/

.mod_hosoku {
	margin-top: 30px;
}

.mod_hosoku p {
	font-size: 1.2rem;
	text-indent: -1rem;
	padding-left: 1rem;
}

/*
****************************************
----------------------------------------
------- mod_setbox
----------------------------------------
****************************************
*/
.mod_setbox .box {
	background: #fff;
	display: block;
}

.mod_setbox .setbox_img {
	position: relative;
	width: 100%;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
}

.mod_setbox .setbox_ttl {
    position: relative;
    color: #fff;
    padding-left: 19px;
    display: inline-block;
    z-index: 101;
    font-size: 2.2rem;
    text-align: center;
    line-height: 1.3;
    margin-right: 10px;
    margin-left: 10px;
}

.mod_setbox .setbox_txt {
	padding: 15px;
}


.mod_setbox .setbox_ttl:before {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 8px;
    border-color: transparent transparent transparent #ffffff;
}

.mod_setbox .setbox_img:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 100;
	background: rgba(90, 218, 203, 0.7);
}

.mod_setbox .box .setbox_img {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

/*
****************************************
----------------------------------------
------- mod_flow_col
----------------------------------------
****************************************
*/
.mod_flow_col {
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.mod_flow_col .flow_box {
	width: calc(50% - 30px);
	position: relative;
}

.mod_flow_col .flow_box:first-of-type:before {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 25px 0 25px 25px;
	border-color: transparent transparent transparent #f89a00;
	position: absolute;
	top: calc(50% - 13px);
	right: -46px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

/*
****************************************
----------------------------------------
------- news_box
----------------------------------------
****************************************
*/

/*
****************************************
----------------------------------------
------- news_box
----------------------------------------
****************************************
*/
.news_box li {
	border-top: 1px solid;
	border-color: #c3c3c3;
}

.news_box li:last-of-type {
	border-bottom: 1px solid;
	border-color: #c3c3c3;
}

.news_box li a:hover {
	background: none;
}

/*
****************************************
----------------------------------------
------- cardlist_box
----------------------------------------
****************************************
*/
.cardlist_box li {
	border-bottom: 1px solid;
}

.cardlist_box .under_content:before {
	background: rgba(0,120,182,0.5);
}

.cardlist_box ul li a:before {
	background: #66b821;
}

/*
****************************************
----------------------------------------
------- cardlist_box
----------------------------------------
****************************************
*/
/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_stripe
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.mod_stripe .stripe_wrap {
	overflow: hidden;
}

.mod_stripe .stripe_box {
	width: 50%;
	float: left;
	overflow: hidden;
	padding: 50px 0;
}

.mod_stripe .stripe_inner {
	max-width: 900px;
	width: 100%;
	float: right;
	padding: 0 50px;
}

.stripe_ttl {
	position: relative;
	font-size: 2.3vw;
	text-align: center;
	font-weight: bold;
	margin-bottom: 50px;
}

.stripe_ttl:after {
	content: '';
	display: block;
	width: 70%;
	position: absolute;
	left: 50%;
	bottom: -15px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	height: 2px;
    background-size: 10px 2px;
    background-position: top;
    background-repeat: repeat-x;
}

.mod_stripe .stripe_box:nth-of-type(1),
.mod_stripe .stripe_box:nth-of-type(4) {
	background: repeating-linear-gradient(90deg, #ebf9ff, #ebf9ff 12px, #f3fbff 0, #f3fbff 24px);
}

.mod_stripe .stripe_box:nth-of-type(1) .stripe_ttl,
.mod_stripe .stripe_box:nth-of-type(4) .stripe_ttl {
	color: #43af69;
}

.mod_stripe .stripe_box:nth-of-type(1) .stripe_ttl:after,
.mod_stripe .stripe_box:nth-of-type(4) .stripe_ttl:after {
    background-image: linear-gradient(to right, #009fe8, #009fe8 2px, transparent 2px, transparent 4px);
}

.mod_stripe .stripe_box:nth-of-type(2),
.mod_stripe .stripe_box:nth-of-type(3) {
	background: repeating-linear-gradient(90deg, #ffebf3, #ffebf3 12px, #fff3f8 0, #fff3f8 24px);
}

.mod_stripe .stripe_box:nth-of-type(2) .btn03,
.mod_stripe .stripe_box:nth-of-type(3) .btn03 {
	border: 1px solid #3d9cc9;
	color: #3d9cc9;
}

.mod_stripe .stripe_box:nth-of-type(2) .btn03:before,
.mod_stripe .stripe_box:nth-of-type(3) .btn03:before {
	border-color: transparent transparent transparent #3d9cc9;
}

.mod_stripe .stripe_box:nth-of-type(2) .stripe_ttl,
.mod_stripe .stripe_box:nth-of-type(3) .stripe_ttl {
	color: #3d9cc9;
}

.mod_stripe .stripe_box:nth-of-type(2) .stripe_ttl:after,
.mod_stripe .stripe_box:nth-of-type(3) .stripe_ttl:after {
    background-image: linear-gradient(to right, #3d9cc9, #3d9cc9 2px, transparent 2px, transparent 4px);
}

.mod_stripe .stripe_detail {
	padding: 30px;
	border-radius: 10px;
	background: rgba(255,255,255,0.9);
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
}

.mod_stripe .stripe_img {
	width: 41%;
}

.mod_stripe .stripe_desc {
	width: 49%;
	padding-bottom: 1px;
}

.mod_stripe .stripe_txt {
	margin-bottom: 20px;
}

.mod_stripe .stripe_box:nth-of-type(2n) .stripe_inner {
	float: left;
}


/*
****************************************
----------------------------------------
------- pickup_box
----------------------------------------
****************************************
*/
.pickup_box {
    width: 49%;
    display: flex;
    align-items: center;
    background: rgba(255,255,255,0.6);
    border: 2px solid rgba(255,255,255,0.8);
    justify-content: center;
    text-decoration: none;
}

.pickup_box_inner {
    padding: 20px;
    display: flex;
    align-items: center;
}

.pickup_check_box {
    width: 30px;
    height: 30px;
    background: #fff;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    border-radius: 50%;
    margin-right: 20px;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
}
.pickup_box:nth-of-type(2n) {
  margin-left:2%;
}
.pickup_box:nth-of-type(n+3) {
    margin-top:2%;
}
.pickup_check_box p {
    position: relative;
}
.pickup_check_box p:before {
    content: '';
    width: 6px;
    height: 14px;
    background: #e95b5b;
    position: absolute;
    top: 10px;
    left: 7px;
    border-radius: 10px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.pickup_check_box p:after {
    content: '';
    width: 6px;
    height: 16px;
    background: #e95b5b;
    position: absolute;
    top: 8px;
    left: 15px;
    border-radius: 10px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.pickup_text p {
    font-weight: bold;
    font-size: 1.8rem;
}

.pickup_box_wrap {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.pickup_text {
    position: relative;
    padding-left: 50px;
}


.ttl_top_lv03.ttl_pop em {
    background: #e95b5b;
    padding: 10px 30px;
    position: relative;
}

.ttl_top_lv03.ttl_pop:before {
    display: block;
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 13px 13px 0 13px;
    border-color: #e95b5b transparent transparent transparent;
    background: none;
    position: absolute;
    bottom: -13px;
    left: 50%;
    -webkit-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
}

.img_bg_block.img_pickup_bg:before {
    background-image: url('../images/pickup_bg.jpg');
    background-size: auto;
    background-position: left top;
    background-repeat: repeat-x;
    background-color: #ffcccc;
}

.pickup_arrow {
	position: relative;
	padding-top: 130px;
}

.pickup_arrow:before {
    content: '';
    position: absolute;
    display: block;
    top: 50px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 312px;
    height: 38px;
    background: url(../images/arrow01.png);
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stairs_inner
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.stairs_inner {
    display: flex;
    justify-content: space-between;
	flex-wrap:wrap;
}

.stairs_img {
    position: relative;
}

.stairs_img_front {
    position: relative;
    z-index: 11;
    padding-right: 15px;
    padding-bottom: 15px;
}

.stairs_img_back {
    position: absolute;
    bottom: 0;
    right: 0;
    opacity: 0.3;
    z-index: 10;
    width: calc(100% - 15px);
    height: auto;
}

.stairs_ttl {
	display: flex;
	margin-top: 20px;
	margin-bottom: 0;
	justify-content: space-between;
	padding: 0 10px 0 5px;
}

.stairs_ttl_en em,
.stairs_ttl_en {
	font-family: 'Tangerine', cursive, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, "メイリオ", Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	font-size: 4.5rem;
	line-height: 1;
}

.stairs_ttl_en em {
	color: #47c7d9;
}

.stairs_ttl_ja {
	font-size: 1.5rem;
	align-self: flex-end;
	padding-bottom: 6px;
	color: #47c7d9;
}

.stairs_txt {
	margin-top: 10px;
}

/*予約プラグイン用*/

.solidpage .monthly-calendar {
	margin-top: 15px;
}

.solidpage .monthly-calendar td {
    padding: 6px 6px;
    border: 1px solid #cfcfcf;
}

.solidpage .monthly-calendar caption {
	font-size: 1.6rem;
}

.solidpage .day-calendar table {
	width: 100%;
}

.solidpage .day-calendar th, .day-calendar td {
	font-size: 1.6rem;
	padding: 5px;
	line-height: 1.7;
}

.solidpage .monthly-calendar th:first-of-type {
    width: auto;
}

.solidpage .day-calendar h3 {
	display: none;
}

.solidpage .booking-timelink {
	text-align: center;
}

.solidpage .calendar-mark {
	text-align: center;
}

.solidpage .monthly-calendar table {
	width: 100%;
}

.solidpage .monthly-prev-next {
	margin-top: 15px;
}

.solidpage .monthly-next {
	margin-right: 0;
}

.solidpage .before_footer_hasbg01:before {
	background-size: cover;
}


/*予約詳細*/

.solidpage  #booking-reservation-fieldset table tr:nth-of-type(2) {
	display: none;
}

.solidpage .content-form #booking-reservation-fieldset th,
.solidpage .content-form #booking-reservation-fieldset td {
	border-bottom: none;
}

.solidpage #booking-confirm-fieldset table tr:nth-of-type(2) {
	display: none;
}

.solidpage .content-form th, .solidpage .content-form td {
	font-size: 1.7rem;
	border-right: none;
	padding: 10px 2px;
}

.solidpage .content-form th {
	text-align: left;
	width: 150px;
	vertical-align: middle;
}

.solidpage .content-form tr:last-of-type th, .solidpage .content-form tr:last-of-type td {
	border-bottom: none;
}

.solidpage .content-form table {
	border: none;
	border-collapse: separate;
	border-spacing: 0;
	margin: 0 0 5px 0;
	width: 100%;
}

.solidpage .content-form legend {
	font-size: 1.8rem;
	line-height: 1;
	font-weight: normal;
}

.solidpage .content-form input,
.solidpage .content-form textarea {
	font-size: 1.4rem;
	margin-bottom: 0;
	padding: 3px 5px;
	border: 1px solid #dddddd;
}

.solidpage .content-form fieldset {
	border: 1px solid #68BDDA;
	width: 100%;
	padding: 10px 10px 0 10px;
}

.solidpage #action-button button {
    font-size: 1.6rem;
    background: #68BDDA;
    color: #fff;
    padding: 12px 60px;
    cursor: pointer;
    transition: 0.5s;
    margin-top: 20px;
}

.solidpage #action-button button:hover {
	opacity: 0.7;
}

.solidpage #booking-confirm-fieldset td[colspan="2"] {
	display: none;
}

.solidpage .yoyaku_text {
	margin-top: 50px;
	font-size: 2rem;
}


/*
****************************************
----------------------------------------
------- parallax_bg
----------------------------------------
****************************************
*/
.parallax_bg {
	background-attachment: fixed;
}

/*
****************************************
----------------------------------------
------- color
----------------------------------------
****************************************
*/

/*ぶち抜き写真ブロック写真側の背景色*/
.flexbg_color01 {
	background: #ebe6d2;
}

/*
****************************************
----------------------------------------
------- wp-pagenavi
----------------------------------------
****************************************
*/
main .wp-pagenavi {
	margin-top: 25px;
	clear: both;
	text-align:center;
}

main .wp-pagenavi a,
main .wp-pagenavi span {
	padding: 8px 14px;
	border: none;
	margin: 0 2px;
	white-space: nowrap;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	vertical-align: middle;
	margin-top: 5px;
	font-size: 15px;
	font-size: 1.5rem;
}

main .wp-pagenavi span.current,
main .wp-pagenavi span.extend,
main .wp-pagenavi span.pages
{
	font-weight: normal;
	line-height: 1.8;
}

main .wp-pagenavi span.pages {
	padding-left: 0;
}

main .wp-pagenavi .last,
main .wp-pagenavi .first {
	padding: 7px 15px 9px;
}

main .wp-pagenavi .current {
	background: #66b821;
	color: #fff;
	border: 1px solid #66b821;
}

.wp-pagenavi  .nextpostslink,
.wp-pagenavi  .previouspostslink,
main .wp-pagenavi a.page {
	background: #fff;
	color: #4f4f4f;
	border: 1px solid #66b821;
}

main .wp-pagenavi a:hover, main .wp-pagenavi span.current {
    border-color: #66b821;
}

/*****************************
------------------------------
パンくず
------------------------------
*****************************/

.breadcrumbs {
	margin-top: 15px;
	margin-bottom: 15px;
}


.breadcrumbs+.post-meta {
	margin-top: 0;
}

.breadcrumbs a {
	text-decoration: underline;
}

.breadcrumbs span {
	font-size: 12px;
	font-size: 1.2rem;
}

.breadcrumbs > span {
	padding-right: 20px;
	display: inline-block;
	position: relative;
}

.breadcrumbs > span:before {
	right: 2px;
	top: 50%;
	margin-top: -2px;
	margin-right: 7px;
	width: 6px;
	height: 6px;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	position: absolute;
	content: '';
	border-width: 1px 1px 0 0;
	border-style: solid;
}

.breadcrumbs > span:last-of-type {
	padding-right: 0;
}

.breadcrumbs > span:last-of-type:before {
	display: none;
}

.solidpage img {
	border-radius: 5px;
}

/*****************************
------------------------------
contactForm
------------------------------
*****************************/

div#contactForm dt:before {
	background: #66b821;
}

div#contactForm input[type="submit"] {
	background: #66b821;
	color: #fff;
}

div#contactForm span.must {
	color: #d03333;
}

#contactForm .wpcf7-back {
	background: #fff;
	color: #66b821;
	border: 1px solid #66b821;
}

input[type="checkbox"],
input[type="checkbox"] + span {
	vertical-align: middle;
    font-size: 1.8rem;
    line-height: 2;
}

select {
    line-height: 1.7;
    display: block;
    font-size: 1.7rem;
	padding-bottom: 5px;
	border: 1px solid #a9a9a9;
}

.select_wrap {
	padding: 5px 10px 5px 0;
}

.select_month {
	display: inline-block;
}

.select_day {
	display: inline-block;
}

.select_time {
	display: inline-block;
}

.radio_wrap .wpcf7-list-item {
    margin: 0 1em 0 0;
}

.attention_box {
	margin-top: 2rem;
	border: 1px solid #66b821;
    padding: 15px;
}

.basic_layout .attention_box p + p {
	margin-top: 0.5em;
}

.hope_text {
	margin: 10px 0 20px;
	border: 1px solid #66b821;
    padding: 15px;	
}

div#contactForm .select_wrap .wpcf7c-conf {
	padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

div#contactForm textarea.wpcf7c-conf {
	max-height: 100px;
    overflow-y: scroll;
}


/*****************************
------------------------------
sitemap
------------------------------
*****************************/
.menu-sitemap-container {
	margin-top: 40px;
}


/*****************************
------------------------------
mod_l_square
------------------------------
*****************************/
.square_ttl span {
	font-size: 1.4rem;
	color: #ced0de;
}

/*****************************
------------------------------
add css
------------------------------
*****************************/

.mod_f_bnr p+p {
	margin-top: 1em;
}

.sp_slider.full {
	width: 200%;
	margin-left: -50%;
}


.facebook_box {
	width: 100%;
	max-width: 500px;
}

.facebook_box {
    max-width: 500px;
    margin: 0 auto;
}

.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}

.policy_under {
    -webkit-box-shadow: 0 1px 5px 1px rgba(0,0,0,0.1);
    -moz-box-shadow: 0 1px 5px 1px rgba(0,0,0,0.1);
    box-shadow: 0 1px 5px 1px rgba(0,0,0,0.1);
}

.post_img_box img {
	border-radius: 4px;
}


/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
スライドショー
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.js_dispnone_start {
	display: none;
}
.slick-track img:focus {
    outline: none;
}

.slick_imgbox {
	display: none;
}

.slick-slider .slick_imgbox {
	display: block;
}

.slick .slickimg_first {
	display: block;
}

.slick-slide:focus { outline: none; }

.slick_wrap_pc,
.slick_wrap_sp {
	position: relative;
}

.slick_txt {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 11;
	width: 100%;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ホバー時背景白
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.backface {
	position: relative;
	display: block;
}

.backface:hover {
	opacity: 1 !important;
}

.backface img {
	z-index: 11;
	position: relative;
	transition: 0.5s;
}

.backface:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
	background: #fff;
	width: 100%;
	height: 100%;
}

.backface:hover img {
	opacity: 0.7 !important;
}
