@charset "utf-8";
/*
****************************************
----------------------------------------
------- reset
----------------------------------------
****************************************
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, main, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; vertical-align: baseline; list-style: none; }
em { font-style: normal; }
address { font-weight: normal; }
article, aside, canvas, details, figcaption, figure, header, footer, main, menu, nav, section, summary { display: block; }
html {
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, "メイリオ", Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	-moz-text-size-adjust: none;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	font-size: 62.5%;
	overflow-y: scroll;
	color:#000;
}
body { background: #fff; }
h1, h2, h3, h4, h5, h6, div,p, pre, a, abbr, address, cite, code, q, dt, dd, li, legend, caption, th, td, embed, figcaption, summary { font-size: 16px; font-size: 1.6rem; line-height: 1.8; word-wrap:break-word;
    overflow-wrap:break-word; font-weight: normal; -webkit-font-smoothing:subpixel-antialiased;-moz-osx-font-smoothing: unset;}
*, *:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: none; }
input, button, textarea, select { margin: 0; padding: 0; background: none; border: none; border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0; outline: none; }
textarea, input[type="text"],input[type="email"], input[type="button"], input[type="submit"], input[type="search"], input[type="reset"], select { border: 0; }
input[type=text], select, textarea { border: 1px solid #ccc; font-size: 16px; font-size: 1.6rem; }
input[type="submit"], input[type="button"] { border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0; -webkit-box-sizing: content-box; -webkit-appearance: button; appearance: button; border: none; box-sizing: border-box; cursor: pointer; }
input[type="submit"]::-webkit-search-decoration, input[type="button"]::-webkit-search-decoration { display: none; }
input[type="submit"]::focus, input[type="button"]::focus { outline-offset: -2px; }
input[type="checkbox"], input[type="radio"] { vertical-align: middle; }
::-webkit-input-placeholder {color: #888; font-size: 14px; font-size: 1.4rem; }
::-moz-placeholder { color: #888; font-size: 14px; font-size: 1.4rem; }
:-moz-placeholder { color: #888; font-size: 14px; font-size: 1.4rem; }
:-ms-input-placeholder { color: #888; font-size: 14px; font-size: 1.4rem; }
table { border-collapse: collapse; border-spacing: 0; width: 100%; }
caption, th { text-align: left; }
a,a div,a p,a img,
a:hover,a:hover div,a:hover p,a:hover img{
    -webkit-backface-visibility: hidden; backface-visibility: hidden; }
a,a img {
    text-decoration: underline;
    color: #000;
    transition: opacity 0.5s;
}
a:hover,a:hover img {
    text-decoration: none;
    opacity: 0.7;
}
a:focus { outline: none; }
img { max-width: 100%; width: auto; height: auto; margin: 0; padding: 0; display: block; }
.clearfix:after,.container:after { content: ''; clear: both; display: block; height: 0; font-size:0; visibility:hidden; }
input[type='text'],input[type='email'],textarea { border: 1px solid #000; font-size: 16px; font-size: 1.6rem; }
input,
textarea {
	font-family: inherit;
}
/*
****************************************
----------------------------------------
------- layout
----------------------------------------
****************************************
*/

.fl{float:left !important}.fr{float:right !important}
.tal{text-align:left !important}.tar{text-align:right !important}.tac{text-align:center !important}

.mb00{margin-bottom:0 !important}.mb05{margin-bottom:5px !important}.mb10{margin-bottom:10px !important}.mb15{margin-bottom:15px !important}.mb20{margin-bottom:20px !important}.mb25{margin-bottom:25px !important}.mb30{margin-bottom:30px !important}.mb35{margin-bottom:35px !important}.mb40{margin-bottom:40px !important}.mb45{margin-bottom:45px !important}.mb50{margin-bottom:50px !important}.mb60{margin-bottom:60px !important}.mb70{margin-bottom:70px !important}.mb80{margin-bottom:80px !important}.mb90{margin-bottom:90px !important}.mb100{margin-bottom:100px !important}.mb110{margin-bottom:110px !important}.mb120{margin-bottom:120px !important}.mb130{margin-bottom:130px !important}.mb140{margin-bottom:140px !important}.mb150{margin-bottom:150px !important}.mb160{margin-bottom:160px !important}.mb170{margin-bottom:170px !important}.mb180{margin-bottom:180px !important}.mb190{margin-bottom:190px !important}.mb200{margin-bottom:200px !important}

.mt00{margin-top:0 !important}.mt05{margin-top:5px !important}.mt10{margin-top:10px !important}.mt15{margin-top:15px !important}.mt20{margin-top:20px !important}.mt25{margin-top:25px !important}.mt30{margin-top:30px !important}.mt35{margin-top:35px !important}.mt40{margin-top:40px !important}.mt45{margin-top:45px !important}.mt50{margin-top:50px !important}.mt60{margin-top:60px !important}.mt70{margin-top:70px !important}.mt80{margin-top:80px !important}.mt90{margin-top:90px !important}.mt100{margin-top:100px !important}.mt110{margin-top:110px !important}.mt120{margin-top:120px !important}.mt130{margin-top:130px !important}.mt140{margin-top:140px !important}.mt150{margin-top:150px !important}.mt160{margin-top:160px !important}.mt170{margin-top:170px !important}.mt180{margin-top:180px !important}.mt190{margin-top:190px !important}.mt200{margin-top:200px !important}

.pb00{padding-bottom:0 !important}.pb05{padding-bottom:5px !important}.pb10{padding-bottom:10px !important}.pb15{padding-bottom:15px !important}.pb20{padding-bottom:20px !important}.pb25{padding-bottom:25px !important}.pb30{padding-bottom:30px !important}.pb35{padding-bottom:35px !important}.pb40{padding-bottom:40px !important}.pb45{padding-bottom:45px !important}.pb50{padding-bottom:50px !important}.pb60{padding-bottom:60px !important}.pb70{padding-bottom:70px !important}.pb80{padding-bottom:80px !important}.pb90{padding-bottom:90px !important}.pb100{padding-bottom:100px !important}.pb110{padding-bottom:110px !important}.pb120{padding-bottom:120px !important}.pb130{padding-bottom:130px !important}.pb140{padding-bottom:140px !important}.pb150{padding-bottom:150px !important}.pb160{padding-bottom:160px !important}.pb170{padding-bottom:170px !important}.pb180{padding-bottom:180px !important}.pb190{padding-bottom:190px !important}.pb200{padding-bottom:200px !important}

.pt00{padding-top:0 !important}.pt05{padding-top:5px !important}.pt10{padding-top:10px !important}.pt15{padding-top:15px !important}.pt20{padding-top:20px !important}.pt25{padding-top:25px !important}.pt30{padding-top:30px !important}.pt35{padding-top:35px !important}.pt40{padding-top:40px !important}.pt45{padding-top:45px !important}.pt50{padding-top:50px !important}.pt60{padding-top:60px !important}.pt70{padding-top:70px !important}.pt80{padding-top:80px !important}.pt90{padding-top:90px !important}.pt100{padding-top:100px !important}.pt110{padding-top:110px !important}.pt120{padding-top:120px !important}.pt130{padding-top:130px !important}.pt140{padding-top:140px !important}.pt150{padding-top:150px !important}.pt160{padding-top:160px !important}.pt170{padding-top:170px !important}.pt180{padding-top:180px !important}.pt190{padding-top:190px !important}.pt200{padding-top:200px !important}

#wrapper { position: relative; overflow: hidden; }

.min {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝","MS PMincho", serif;
}
.imgChange{}
.db {
	display: block !important;
}

.kome {
    text-indent: -1em;
    padding-left: 1em;
    line-height: 1.7;
}

.kakomi{
    border: 10px solid #f3efef;
    padding: 40px 50px;
    background: #fffcfc;
}
/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}
@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: 80%;text-indent: -1em;padding-left: 1em; display: block; line-height: 1.7;}
.txts {font-size: 80%;}
.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: #7d5858;
	font-size: 2.6rem;
	margin-bottom: 40px;
	font-family: "M PLUS Rounded 1c", "Hiragino Kaku Gothic ProN",  "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3",  Meiryo, "メイリオ", Osaka, "MS PGothic", arial, helvetica, sans-serif;
	letter-spacing: 0.1em;
	font-weight: bold;
}

.js_oft {
	position: relative;
	padding-top: 65%;
	display: block;
}

.js_oft img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    font-family: 'object-fit: cover;';
    -webkit-backface-visibility: visible;
    backface-visibility: visible;
}

.name {
	font-size: 115%;
	font-weight: bold;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
特殊FLOW
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.flow_arrow_box {
	background: #f0e9e9;
	padding: 50px;
	position: relative;
	border-radius: 20px;
}

.flow_arrow_box .tl_block {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
	margin-bottom: 40px;
}

.flow_arrow_box .tl_block .step {
	border-right: 1px solid #7d5858;
	width: 90px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	margin-right: 30px;
}

.flow_arrow_box .tl_block .step span {
	display: block;
	font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3",
		"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", Osaka,
		"MS PGothic", arial, helvetica, sans-serif;
	font-size: 1.4rem;
	letter-spacing: 0.2em;
}

.flow_arrow_box .tl_block .step p {
	color: #7d5858;
	text-align: center;
	font-family: "M PLUS Rounded 1c", "Hiragino Kaku Gothic ProN",
		"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3",
		Meiryo, "メイリオ", Osaka, "MS PGothic", arial, helvetica, sans-serif;
	font-weight: 700;
	font-size: 5rem;
	line-height: 1.2;
}

.flow_arrow_box .tl {
	font-family: "M PLUS Rounded 1c", "Hiragino Kaku Gothic ProN",
		"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3",
		Meiryo, "メイリオ", Osaka, "MS PGothic", arial, helvetica, sans-serif;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	letter-spacing: 0.1em !important;
	text-align: left !important;
	-webkit-flex: 1;
	flex: 1;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	background: none !important;
	color: #7d5858 !important;
	justify-content: flex-start;
	font-size: 2.7rem !important;
}

.flow_arrow_box .tl:before,
.flow_arrow_box .tl:after {
	display: none !important;
}

.flow_arrow_box + .flow_arrow_box {
	margin-top: 70px;
}

.flow_arrow_box + .flow_arrow_box:before {
	content: "";
	position: absolute;
	top: -70px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 31px 50px 0 50px;
	border-color: #7d5858 transparent transparent transparent;
	background: none !important;
}



/*****************************
------------------------------
ふわっとフェードイン
------------------------------
*****************************/
.sa {
	opacity: 0;
	transition: all 1s ease;
}

.sa.show {
opacity: 1;
-webkit-transform: none;
		transform: none;
}

.sa--lr {
-webkit-transform: translate(-100px, 0);
		transform: translate(-100px, 0);
}

.sa--rl {
-webkit-transform: translate(100px, 0);
		transform: translate(100px, 0);
}

.sa--up {
-webkit-transform: translate(0, 100px);
		transform: translate(0, 100px);
}

.sa--down {
-webkit-transform: translate(0, -100px);
		transform: translate(0, -100px);
}

.sa--scaleUp {
-webkit-transform: scale(0.5);
		transform: scale(0.5);
}

.sa--scaleDown {
-webkit-transform: scale(1.5);
		transform: scale(1.5);
}

.sa--rotateL {
-webkit-transform: rotate(180deg);
		transform: rotate(180deg);
}

.sa--rotateR {
-webkit-transform: rotate(-180deg);
		transform: rotate(-180deg);
}

.img_bg_block .inner {
	overflow: visible;
}

/*****************************
------------------------------
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: #bf8a55;
}

.q_box:before {
	content: 'Q.';
	color: #7d5858;
}

.a_box {
	margin-top: 20px;
}

.qa_box + .qa_box {
	border-top: 1px solid #7d5858;
}

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

.top_listbox {
	border: 1px solid #7d5858;
}

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

#under .meritbox > div .meritbox_ttl {
	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) .meritbox_ttl {
	background: #e48282;
	color: #FFF;
}

#under .meritbox > div:nth-of-type(2) .meritbox_ttl {
	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 {
	margin-top: 0;
}

#under .meritbox .meritbox_inner {
	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: #7d5858;
	color: #fff;
}


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

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

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

.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 #7d5858;
}

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

.header02 .header_main_home {
	background: #7d5858;
	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 #7d5858; */
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
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 {
	padding: 8px 0;
}

.header03 .header_info_box {

}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
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: #7d5858;
}

.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: #7d5858;
	padding: 0.5rem 1rem;
	border-bottom-style: solid;
	border-bottom-width: 4px;
	border-radius: 3px;
	border-color: #1b5570;
}

.btn03 {
	background: #7d5858;
	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: #7d5858;
	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: #7d5858;
}

.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 #da4242;
    border-bottom: 2px solid #da4242;
    left: 0.23em;
    top: 0.23em;
    transform: rotate(-45deg);
    z-index: 11;
}

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

.tdc td {
	text-align: center;
}

.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: #7d5858;
	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: #7d5858;
	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 {
	padding-left: 0;
}

.table_underline th {
	border-bottom: 1px solid #7d5858;
	vertical-align: middle;
}

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

.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: #bb9a9a;
}

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

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

.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;
	padding: 10px 5px;
}

.eigyou01 td span,.txtf {
    color: #7d5858;
}

.txtf02 {
	color: #c18f8f !important;
}

.eigyou01 td em,.txtf02 {
	color: #c18f8f;
}

.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;
}

/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
通常flow
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.flow_next:before {
	border-style: solid;
	border-color: #7d5858 transparent transparent transparent;
}
/*
****************************************
----------------------------------------
------- 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: #7d5858;
}

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

.icon_catch {
	font-size: 1.9rem;
	color: #7d5858;
	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: #7d5858;
	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: #7d5858;
}

.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: #7d5858;
	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: #7d5858;
	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: #7d5858;
	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: #7d5858;
}

.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.5rem;}
.has_parallax h5 {font-size: 2.3rem;}
.has_parallax h6 {font-size: 2.1rem;}

.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;
}

#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: #7d5858;
	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: #7d5858;
}

.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: #7d5858;
    padding: 12px 30px 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 0 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: 19px;
	left: 0;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	border: 4px solid #7d5858;
}

.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: #7d5858;
	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: #7d5858;
	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 0 15px 0;
	border-top: 3px solid #7d5858;
	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 0 0 30px;
	color: #7d5858;
}

.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 #7d5858;
}

.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 0 0 30px;
	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: #7d5858;
	top: 24px;
	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: #e0dada;
	padding: 20px 30px;
	letter-spacing: 0.15em;
	color: #7e5758;
}

.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: #7d5858;
}

.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;
	color: #7e5758;
	letter-spacing: 0.1em;
}

.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: #7d5858;
}

.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,#e0dada,#e0dada 10%,#fff 10%,#fff 30%,#e0dada 30%,#e0dada 70%,#fff 70%,#fff 90%,#e0dada 90%,#e0dada 100%);
	background: repeating-linear-gradient(-45deg,#e0dada,#e0dada 10%,#fff 10%,#fff 30%,#e0dada 30%,#e0dada 70%,#fff 70%,#fff 90%,#e0dada 90%,#e0dada 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 15px;
	border-bottom: 1px solid #7d5858;
	color: #7e5758;
	letter-spacing: 0.1em;
}

.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;
	color: #7e5758;
	letter-spacing: 0.1em;
}

.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: #7d5858;
	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: #7d5858;
}

.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: #7d5858;
}

.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: #7d5858;
}

.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: #7d5858;
	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: #7d5858;
	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 #7d5858;
}

.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: #7d5858;
	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 0 5px 30px;
	color: #7d5858;
}

.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: #7d5858;
	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, #7d5858 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: #7d5858;
	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: #7d5858;
}

.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 #7d5858;
}

.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 0 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: #7d5858;
}

.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: #7d5858;
	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: #7d5858;
}

/*
****************************************
----------------------------------------
------- 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: #7d5858;
	color: #fff;
	border: 1px solid #7d5858;
}

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

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

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

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


.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: #7d5858;
}

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

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

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

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 #7d5858;
    padding: 15px;
}

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

.hope_text {
	margin: 10px 0 20px;
	border: 1px solid #7d5858;
    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;
}


/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
サイドナビ
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.side_site_nav,.side_site_nav a {
	font-size: 1.2rem;
	text-decoration: none;
	letter-spacing: 0.1em;
	text-align: center;
	margin-bottom: 20px;
}
.fixed_gnav {
	position: fixed;
	z-index: 1200;
	width: 100%;
	top: 0;
	left: 0;
}

.fixed_gnav:before {
	content: '';
	width: 50px;
	height: 100vh;
	background: #ff7769;
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 960;
}

.side_nav_wrap {
	position: absolute;
	top: 0;
	right: 50px;
	overflow-y: auto;
	background: rgba(255,255,255,0.9);
	width: 100%;
	height: calc(100vh);
	padding: 60px 0 100px;
	transition: 0.9s ease;
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
	-webkit-animation: waitTranslateMenu 0.01s 0.9s;
	animation: waitTranslateMenu 0.01s 0.9s;
	-webkit-overflow-scrolling: touch;
	z-index: 950;
}

.on .side_nav_wrap {
	-webkit-transform: translateX(0);
	transform: translateX(0);
	-webkit-box-shadow: 0 1px 5px 7px rgba(0,0,0,0.07);
	-moz-box-shadow: 0 1px 5px 7px rgba(0,0,0,0.07);
	box-shadow: 0 1px 5px 7px rgba(0,0,0,0.07);
}

.side_nav_list {
	margin-top: -6vw;
	padding: 0 5vw;
}

.side_nav_list a {
	text-decoration: none;
}

.side_nav_list .nav_li {
	margin-top: 3rem;
}

.side_nav_list .nav_li > a {
	position: relative;
	color: #125bad;
	font-size: 2.2rem;
	margin-bottom: 0.5rem;
	padding-left: 2rem;
}

.side_nav_list .nav_li > a:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-width: 0.75rem 0 0.75rem 0.9rem;
	border-color: transparent transparent transparent #125bad;
	border-style: solid;
}

.side_nav_list .sub_menu {
	padding-left: 3.5vw;
}

.side_nav_list .sub_menu .nav_li_child {
	display: block;
	margin-top: 2vw;
}

.side_nav_list .sub_menu .nav_li_child a {
	font-size: 1.8rem;
	display: block;
	position: relative;
	padding-left: 3.5vw;
}

.side_nav_list .sub_menu .nav_li_child a:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 1rem;
	height: 2px;
	background: #125bad;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.fixed_gnav_logo {
	display: none;
}

.side_scroll {
	position: fixed;
	bottom: 16vw;
	right: 15px;
	z-index: 970;
	display: none;
}

.side_scroll a {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	padding: 0 15px;
}

.side_scroll .side_scroll_text {
	width: 10px;
	margin-bottom: 2rem;
}

.side_scroll .side_scroll_down,
.side_scroll .side_scroll_up {
	width: 18px;
}

.side_scroll .side_scroll_item {
	display: block;
	order: 1;
	margin-left: auto;
	margin-right: auto;
}

.side_scroll .side_scroll_up {
	/* opacity: 1; */
}

.side_scroll .s_up {
	opacity: 0;
	transition: 0.5s;
	position: relative;
	z-index: 9;
}

.side_scroll .s_down {
	transition: 0.5s;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 10;
	width: 50px;
}

.js_scroll_mv_over.side_scroll {
	/* opacity: 1; */
}

.js_scroll_mv_over .s_down {
	opacity: 0;
}

.js_scroll_mv_over .s_up {
	display: flex;
	opacity: 1;
	z-index: 11;
}

.js_scroll_mv_over .side_scroll_up {
	display: block;
}

.js_scroll_mv_over .side_scroll_down {
	/* display: none; */
}

.js_scroll_mv_over .side_scroll_text {
	margin-top: 2rem;
	margin-bottom: 0;
	order: 2;
}

#under_page .fixed_gnav_logo,
#under_page .side_scroll {
	display: none;
}

.hamburger {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	cursor: pointer;
	order: 2;
	margin-left: 4px;
	position: fixed;
	top: 24px;
	right: 20px;
	z-index: 1250;
}

.hamburger a {
	width: 26px;
	height: 20px;
	position: relative;
	font-size: 1.8rem;
}

.hamburger a:before,
.hamburger a:after {
	position: absolute;
	content: "";
	width: 100%;
	height: 2px;
	background: #ff7769;
	transition: 0.3s ease;
}

.hamburger a:after {
	bottom: 0;
	top: inherit;
}

.hamburger a span:before {
	position: absolute;
	content: "";
	width: 100%;
	height: 2px;
	background: #ff7769;
	transition: 0.3s ease;
	top: 98%;
	top: calc(50% - 1px);
}

.hamburger.on a:before,
.hamburger.on a:after {
	/* background: #000; */
}

.hamburger.on a:before {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 10px;
}

.hamburger.on a:after {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	bottom: 8px;
}

.hamburger.on a span:before {
	opacity: 0 !important;
}

.side_logo {
	width: 270px;
	margin: 0 auto 30px;
}

.f_site_nav, .f_site_nav a {
	font-size: 1.3rem;
	letter-spacing: 0.1em;
	text-decoration: none;
}

.side_site_nav a {
}


.side_site_nav a {
}

.side_nav dt {
	font-family: 'M PLUS Rounded 1c', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, "メイリオ", Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	font-size: 2.4rem;
	font-weight: 700;
	color: #ff7769;
	letter-spacing: 0.1em;
	letter-spacing: 0.3em;
	padding-bottom: 5px;
}

.side_nav ul {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
}

.side_nav a {
	text-decoration: none;
	font-size: 1.4rem;
}

.side_nav li {
	width: 47%;
	margin-bottom: 5px;
}

.side_nav li:nth-child(2n+1) {
	margin-right: 6%;
}

.side_nav dl +dl {
	margin-top: 30px;
}

.side_nav dd {
	margin-left: 30px;
}

.side_site_nav a:hover,
.side_nav a:hover {
	color: #b98829;
	opacity: 1;
}

.f_site_nav a:hover, .f_nav a:hover {
	color: #b98829;
	opacity: 1;
}

.hamburger a:hover {
	/* opacity: 1; */
}


/*____________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
メディア投稿
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.under_thum img {
	margin: 0 auto;
}

.singlepage .under_thum  {
	margin-bottom: 5rem;
}

.blog_article_single + .blog_article_single {
	margin-top: 5rem;
}

.blog_article_content {
	width: 100%;
}

.blog_article_body {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.blog_article_img {
	width: 27%;
}

.blog_article_img + .blog_article_content {
	width: 70%;
}


.blog_article_btn {
	margin-top: 2em;
}

.top_blog_main_ttl {
	text-align: center;
	position: relative;
	padding-bottom: 20px;
	font-size: 4.5rem;
	letter-spacing: 8px;
	margin-bottom: 50px;
}

.top_blog_main_ttl:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 60px;
	height: 1px;
	background: #666666;
}

.top_blog_articles_block {
	display: flex;
	justify-content: center;
	justify-content: space-between;
}

.top_blog_article_item {
	width: 48%;
}

.top_blog_article_item a {
	position: relative;
	display: block;
	text-decoration: none;
}

.top_blog_category {
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	border: 1px solid #000;
	background: #fff;
	width: 70%;
	text-align: center;
	font-size: 1.4rem;
	z-index: 10;
}

.top_blog_time {
	font-size: 1.4rem;
	color: #a7a7a7;
	margin-top: 8px;
	letter-spacing: 1px;
}

.top_blog_article_item + .top_blog_article_item {
	margin-left: 2%;
}

.top_blog_ttl {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 1.6rem;
}

.top_blog_txt {
	margin-top: 0px;
	font-size: 1.4rem;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.top_blog_img {
	position: relative;
	padding-top: 65%;
}

.top_blog_img img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
	font-family: 'object-fit: cover;';
	-webkit-backface-visibility: visible;
	backface-visibility: visible;
	z-index: 9;
	/* max-width: 100%; */
}

.top_blog_img.has_no_img {
	position: relative;
}

.top_blog_img.has_no_img:before {
	border: 1px solid #a7a7a7;
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: 20;
}

.top_blog_img.has_no_img img {
	z-index: 10;
}
.idx_recruit{
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-image: url(../images/recruit_bnrpc.jpg);
	height: min(500px, 40vw);
    max-width: 1200px;
    margin: 60px auto 0;
    width: calc(100% - 20px);
	position: relative;

}
.idx_recruit .link a{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
@media only screen and (max-width: 768px){
	.idx_recruit{
		margin-top: 40px;
		background-image: url(../images/recruit_sp.jpg);
		max-width: 750px;
		height: min(1282px, 167vw);
	}
}