@charset "utf-8";
/*-------------------------------
reset
-------------------------------*/
* {padding: 0;margin: 0;}

*, *:before, *:after {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}

html {height: 100%;}

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, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-style:normal;
font-weight: normal;
font-size: 100%;
vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}

img, video {
max-width: 100%; /* 親要素の幅を最大値とする */
height: auto;    /* 縦横比を維持する */
box-sizing: border-box; /* paddingやborderを幅に含める */
vertical-align: top;
line-height: 0;
margin:0;
padding:0;
}

blockquote, q {quotes: none;}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}

input, textarea{margin: 0;padding: 0;}

ol, ul{list-style:none;}
li {list-style-type: none;}
table{border-collapse: collapse;border-spacing:0;}
table td {border-collapse: collapse;}
caption, th{text-align: left;}
.inline_block {display: inline-block;*display: inline;*zoom: 1;}
input{-webkit-appearance: none;}
input[type="checkbox"]{-webkit-appearance: checkbox;}
input[type="radio"]{-webkit-appearance: radio;}

button{
background-color: transparent;
border: none;
cursor: pointer;
outline: none;
padding: 0;
appearance: none;
font: initial;
}

button, input, select, textarea {
font-family : inherit;
font-size   : 100%;
padding: 10px;
}

/* ----------------------------------------
LINK
------------------------------------------- */
a img {
border: none;
-webkit-transition: 0.2s linear;
-moz-transition: 0.2s linear;
transition: 0.2s linear;
}
a:hover img {
opacity: 0.9;
filter: alpha(opacity=90);
-ms-filter: "alpha( opacity=90 )";
}
a {
color: #0099CC;
text-decoration: none;
-webkit-transition: 0.2s linear;
-moz-transition: 0.2s linear;
transition: 0.2s linear;
}
a:hover {
color: #6699CC;
text-decoration: none;
}

a:focus {outline:none;}

/*aタグ無効化*/
a.link-no {pointer-events: none;}

/*-------------------------------
表示・非表示
-------------------------------*/
@media only screen and (min-width: 1025px) {
.pc {display: block !important;}
.tb {display: none !important;}
.sp {display: none !important;}
.pc-tb {display: block !important;}
.tb-sp {display: none !important;}
}
@media only screen and (min-width:600px) and (max-width:1024px)  {
.pc {display: none !important;}
.tb {display: block !important;}
.sp {display: none !important;}
.pc-tb {display: block !important;}
.tb-sp {display: block !important;}
}
@media only screen and (max-width:599px) {
.pc {display: none !important;}
.tb {display: none !important;}
.sp {display: block !important;}
.pc-tb {display: none !important;}
.tb-sp {display: block !important;}
}

/*--------------------------------
img
--------------------------------*/
/*box背景画像*/
.imgbg{
background-size: cover;
background-repeat: no-repeat;
background-position: center center;
}
@media screen and (max-width:1024px) {
.imgbg{
background-size: cover;
height: 260px;
}
}

@media screen and (max-width:1024px) {
img {
height: auto;
width: auto;
max-width: 100%;
margin-left: auto;
margin-right: auto;
}
/*程よい画像サイズ*/
img.h-fit,
img.vw {
width: 50vw;
max-width: 100%;
height: auto;
}
}
@media screen and (max-width:768px) {
/*程よい画像サイズ*/
img.vw {
width: 60vw;
max-width: 100%;
height: auto;
}
/*高さ調整（狭くする）*/
img.h-fit {
width: 100%;
height: 250px;
object-fit: cover;
}
}

@media screen and (max-width:599px) {
/*程よい画像サイズ*/
img.vw {
width: 100%;
}
/*高さ調整（狭くする）*/
img.h-fit {
width: 100%;
height: 180px;
object-fit: cover;
}
}

/*--------------------------------
float
--------------------------------*/
.text_center{
text-align: center;
}
.img_center {
display: block;
margin: 0 auto;
max-width: 100%;
}
.img_left {
float: left;
padding: 0 1em 1em 0em;
max-width: 50%;
}
.img_right {
float: right;
padding: 0 0em 1em 1em;
max-width: 50%;
}
@media screen and (max-width:768px) {
.text_center{text-align: left;}
.img_left,.img_right{
width: 50%;
}

.img_right,.img_left {
float: none;
margin: 0 auto;
width: 100%;
}
}

/*--------------------------------
float・回り込み解除1
--------------------------------*/
.clfix:after,
.clearfix:after{
content: ".";
display: block;
height: 0;
font-size: 0;
clear: both;
visibility: hidden;
}
.both{
clear:both;
}

/*-------------------------------
flexbox
-------------------------------*/
.flexbox {
width: 100%;
margin: auto;
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-justify-content: space-between;
align-content: flex-start;
align-items: stretch;
flex-direction: row;
justify-content: center;
}

.flexbox img {max-width: 100%;}

.flexbox.reverse {flex-direction: row-reverse;}

.w95 {	width: 95%;}
.w90 {	width: 90%;}
.w85 {	width: 85%;}
.w80 {	width: 80%;}
.w75 {	width: 75%;}
.w70 {	width: 70%;}
.w65 {	width: 65%;}
.w60 {	width: 60%;}
.w55 {	width: 55%;}
.w50 {	width: 50%;}
.w45 {	width: 45%;}
.w40 {	width: 40%;}
.w35 {	width: 35%;}
.w33 {	width: 33%;}
.w30 {	width: 30%;}
.w25 {	width: 25%;}
.w20 {	width: 20%;}
.w15 {	width: 15%;}
.w10 {	width: 10%;}
.w5 {	width: 5%;}

@media screen and (max-width:1024px) {
.flexbox {display: block;}
.w95,.w90,.w85,.w80,.w75,.w70,.w65,.w60,.w55,.w50,.w45,.w40,.w35,.w33,.w30,.w20 {width:100%;margin:0% auto;}
}

/*-------------------------------
装飾
-------------------------------*/
.center {display: block;text-align: center;margin: 0 auto;}
.right {text-align: right;display: block;}
.left {text-align: left;display: block;}
.bold {font-weight: bold;}
.normal {font-weight: normal;}
.large {font-size: 110%;}
.xlarge {font-size: 120%;}
.xxlarge {font-size: 140%;}
.small {font-size: 90%;}
.xsmall {font-size: 80%;}
.xxsmall {font-size: 70%;}
.underline {font-weight: bold;background: linear-gradient(transparent 85%, #fff2a9 0%);}
.marker {background: linear-gradient(transparent 60%, #fffd9e 0%);}
.shadow {box-shadow: rgb(113 113 113 / 20%) 15px 15px 0px;}
.photo {box-shadow:#ccc 5px 5px 5px;border: #fff 6px solid;}

/*-------------------------------
余白
-------------------------------*/
.mt0 {margin-top: 0 !important;}
.mt1 {margin-top: 1em !important;}
.mt2 {margin-top: 2em !important;}
.mt3 {margin-top: 3em !important;}
.mt4 {margin-top: 4em !important;}
.mt-1 {margin-top: -1em !important;}
.mt-2 {margin-top: -2em !important;}
.mt-3 {margin-top: -3em !important;}
.mt-4 {margin-top: -4em !important;}
.mb0 {margin-bottom: 0 !important;}
.mb1 {margin-bottom: 1em !important;}
.mb2 {margin-bottom: 2em !important;}
.mb3 {margin-bottom: 3em !important;}
.mb4 {margin-bottom: 4em !important;}
.mb-1 {margin-bottom: -1em !important;}
.mb-2 {margin-bottom: -2em !important;}
.mb-3 {margin-bottom: -3em !important;}
.mb-4 {margin-bottom: -4em !important;}
.pt0 {padding-top: 0 !important;}
.pt1 {padding-top: 1em !important;}
.pt2 {padding-top: 2em !important;}
.pt3 {padding-top: 3em !important;}
.pt4 {padding-top: 4em !important;}
.pb0 {padding-bottom: 0 !important;}
.pb1 {padding-bottom: 1em !important;}
.pb2 {padding-bottom: 2em !important;}
.pb3 {padding-bottom: 3em !important;}
.pb4 {padding-bottom: 4em !important;}

/*--------------------------------
テーブル
--------------------------------*/
/*01*/
.table_01 {
width: 100%;
}
.table_01 thead th{
background: #e3e3cd;
}
.table_01 th, 
.table_01 td {
padding: 0.5em 1em;
border: #c9c99e 1px solid;
vertical-align: middle;
line-height: 1.6;
}
.table_01 th {
width: 25%;
background: #f7f7f1;
white-space: nowrap;
font-weight: normal;
}
.table_01 td {
background-color: #FFF;
}
/*03*/
.table-3 {
width: 100%;
border-collapse: collapse;
border-spacing: 0;
background: #f3f3f3;
line-height: 1.6;
font-size: 96%;
letter-spacing: 0;
}
.table-3 thead th {
background:#e5e4e1;
/* color: #fff; */
font-weight: bold;
text-align: center;
padding: 1em;
font-size: 110%;
}
.table-3 tr:nth-child(2n+1) {
background: #e5e4e2;
}
.table-3 th,
.table-3 td {
padding: 10px 15px;
vertical-align: middle;
border: #ffffff 1px solid;
}
.table-3 th {
width: 26%;
text-align: left;
background: #cccbc6;
}
/* ----------------------------------------
dl（PC横・SP縦）
--------------------------------*/
dl.resp {
display: flex;
flex-flow: row wrap;
width: 100%;
}
dl.resp dt,
dl.resp dd{
padding: 1.5em 2em;
border-bottom: 1px solid #ccc;
}
dl.resp dt {
flex-basis: 20%;
background-color: #f1f1f1;
}
dl.resp dd {
flex-basis: 80%;
background-color: #fff;
}
@media screen and (max-width: 1024px) {
dl.resp dt {flex-basis: 25%;}
dl.resp dd {flex-basis: 75%;}
}
@media screen and (max-width: 768px) {
dl.resp {flex-flow: column;}
dl.resp dt {padding: 0.6em 1.5em;}
}

/*--------------------------------
リスト
-------------------------------*/
ul.line li {
text-align: left;
line-height: 1.6;
padding: 15px;
margin: 0 auto;
border-bottom: #999 1px dotted;
}
ul.maru li:before {
font-weight: 600;
color: #D9B073;
content: "\f140";
font-family: FontAwesome;
padding-right: 1em;
}
/*-------------------------------
PAGENATION
-------------------------------*/
.pagination {
width: min(100%, 600px);
margin: 60px auto 0;
}
.pagination ul {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
}
.pagination li {
width: 8%;
line-height: 1.5;
}
.pagination li:not(:last-of-type) {
margin-right: 2%;
}
.pagination li a {
display: flex;
font-size: .9em;
color: #7a685a;
border: 1px solid #7a685a;
width: 100%;
height: 42px;
align-items: center;
justify-content: center;
}
.pagination li.active a {
background: #7a685a;
color: #fff;
}
@media (max-width: 767px) {
.pagination {margin: 40px auto 0;}
}

/* ----------------------------------------
effect
--------------------------------*/
.effect {
opacity: 0;
filter: alpha(opacity=0);
-ms-filter: "alpha( opacity=0 )";
transform: translateY(20px);
-webkit-transform: translateY(20px);
-moz-transform: translateY(20px);
-webkit-transition: 1.0s ease-out;
-moz-transition: 1.0s ease-out;
transition: 1.0s ease-out;
}
.effect.d_01 {
transition-delay: 0.1s;
-webkit-transition-delay: 0.1s;
}
.effect.d_02 {
transition-delay: 0.2s;
-webkit-transition-delay: 0.2s;
}
.effect.d_03 {
transition-delay: 0.3s;
-webkit-transition-delay: 0.3s;
}
.effect.d_04 {
transition-delay: 0.4s;
-webkit-transition-delay: 0.4s;
}
.effect.d_05 {
transition-delay: 0.5s;
-webkit-transition-delay: 0.5s;
}
.effect.d_06 {
transition-delay: 0.6s;
-webkit-transition-delay: 0.6s;
}
.effect.d_07 {
transition-delay: 0.7s;
-webkit-transition-delay: 0.7s;
}
.effect.d_08 {
transition-delay: 0.8s;
-webkit-transition-delay: 0.8s;
}

.effect.start {
opacity: 1;
filter: alpha(opacity=100);
-ms-filter: "alpha( opacity=100 )";
transform: translateY(0px);
-webkit-transform: translateY(0px);
-moz-transform: translateY(0px);
}
/* ----------------------------------------
レイアウト
------------------------------------------- */
body {
background:#fff;
color:#594747;
font-size: 18px;
line-height: 2.2;
font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
font-family: "Noto Sans JP", sans-serif;
/*font-family: "Noto Serif JP", serif;*/
/*font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;*/
/*font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Noto Sans JP", "Yu Gothic", "Meiryo", sans-serif;*/
word-wrap: break-word;
height: 100%;
margin: 0 auto;
padding: 0;
overflow-x: hidden;
box-sizing:border-box;
}
main {
width: 100%;
background: #fff;
}
section{
padding: 6em 0;
box-sizing:border-box
}
#subPage main {
width: 100%;
background:transparent;
}
#subPage section{
padding: 4em 0;
}

.wrap_xs {
width: 1000px;
max-width:100%;
margin:0 auto;
}
.wrap_s {
width: 1100px;
max-width:100%;
margin:0 auto;
}
.wrap {
width: 1200px;
max-width:100%;
margin:0 auto;
}
.wrap_w {
width: 1400px;
max-width:100%;
margin:0 auto;
}
.wrap_xw {
width: 1450px;
max-width:100%;
margin:0 auto;
}
.inner {
padding:1.2em;
}
.sub_txt{
text-align: center;
margin-bottom: 0.5em;
}

@media screen and (max-width:1280px) {
.wrap_w,.wrap,.wrap_s,.wrap_xw,.wrap_xs{width: 90%;margin: 0 auto;}
}
@media screen and (max-width:1024px) {
body {font-size: 16px;}
.wrap_w,.wrap,.wrap_s {max-width:96%;}
}
@media screen and (max-width:768px) {
body {font-size: 16px;line-height:2.0;}
section {padding:6em 0;}
#subPage section{padding: 3em 0;}
.inner {padding:1em;}
.txt_box {padding:1em;}
}

@media screen and (max-width:599px) {
body {font-size: 15px;}
.wrap_w,.wrap,.wrap_s,.wrap_xw,.wrap_xs{max-width: 90%;margin: 0 auto;}
.inner {padding:10px;}
.txt_box {padding:10px;}
.box_bg {padding:10px;}
.box_border {padding:10px;}
.sub_txt {/*text-align: left;*/padding:5px 0;}
}

/*-------------------------------
body_bg
-------------------------------*/
.body_bg_01{
background: url(../img/body_bg_01.jpg) no-repeat top center scroll;
}
section#home-works{
background: url(../img/bg-1.jpg) repeat top center scroll;
padding: 1em 0 6em;
}
section.body_bg_02{
background: #d4cbb6 url(../img/body_bg_02.jpg) no-repeat top center scroll;
background-size: cover;
}
section.body_bg_03{
background: url(../img/body_bg_03.png) no-repeat top center scroll;
background-size: cover;
}
@media screen and (max-width:1000px) {
section.body_bg_02{
background: #d4cbb6 url(../img/body_bg_02.jpg) no-repeat top center scroll;
background-size: auto;
padding:6em 0 5em;
}
}

/*-------------------------------
背景
-------------------------------*/
.bg-0 {background: rgba(255,255,255,0.4);}
.bg-1 {background: #f1f1f1;}
.bg-2 {background: #ece6e2;}
.bg-3 {background: #f6f3ee;}
.bg-4 {background: #efefef url(../img/bg-4.png) repeat top center scroll;}
.bg-5 {background: #f4efe8 url(../img/bg-c.png) repeat center top scroll;}
.bg-c {background: #efefef url(../img/bg-c.png) repeat top center scroll;}
.bg-s {background: #e4f3fd url(../img/bg-s.png) repeat top center scroll;}
.bg-w {background: #ffffff;}
.bg-b {background: #000;}
.rgba{background: rgba(0,0,0,0.2);}

/*-------------------------------
【共通】BOX
-------------------------------*/
.box_bg {
padding: 1.5em;
background: #f1f1f1;	
}
.box_bg2 {
padding: 1.5em;
background: #f6f2ed;
}
.box_bg5 {
background: #dfecef;
background: #f4efe8 url(../img/bg-5.jpg) repeat center top scroll;
padding: 1.5em;
border-radius: 20px;
}
.box_border {
background: #fff;
border: #a6937c 1px solid;
border-radius: 0px;
}
.box_01{
background: #f6f3ee url(../img/bg-4.png) repeat center center scroll;
padding: 2em;
margin: 0 auto;	
}
.box_02{
background:transparent url(../img/box_02.png) no-repeat center top scroll;
background-size:cover;
padding: 3em 3em;
margin: 0;	
}
.box_03{
background:transparent url(../img/box_03.png) no-repeat center top scroll;
background-size:cover;
padding: 3em 3em;
margin: 0;	
}

.waku{
background: #f6f3ee url(../img/waku_bg.jpg) repeat center center scroll;
padding:2em;
margin: 0;	
}
.waku_in{
background: #f6f3ee url(../img/waku_in.jpg) repeat center center scroll;
padding: 1em;
margin: 0;
}
@media screen and (max-width:768px) {
.waku {padding: 1em;}
.waku_in {padding: 1em;}
.box_01,.box_02,.box_03 {padding: 1.5em;}
}
@media screen and (max-width:599px) {
.waku {padding: 1em;}
.waku_in {padding: 0.5em;}
}

/* ----------------------------------------
title
------------------------------------------- */
h1,h2,h3,h4{
/*font-family: "Zen Maru Gothic", sans-serif;*/
font-family: "Noto Serif JP", serif;
font-weight: 600;
line-height: 1.8;
letter-spacing: 2px;
font-feature-settings: "palt";/*文字詰め*/
}
.title_top{
font-family: "Cormorant Garamond", "Noto Serif JP", serif;
color: #594747;
font-size: 340%;
font-weight: 900;
padding: 0 0 0.5em;
margin: 0 auto 0.5em;
width: auto;
max-width: 100%;
height: auto;
background: url(../img/title_bg.png) center bottom no-repeat;
line-height: 1.2;
letter-spacing: 0;
text-align: center;
clear: both;
display: block;
}
.title_left{
text-align: left;
background-position: 0 bottom;
}
.title_top .small{
display: block;
font-size: 50%;
margin-top: 0.5em;
/* color: #a6937c; */
letter-spacing: 2px;
font-weight: bold;
}
.title_img{
max-width: 100%;
display: block;
margin: 0 auto;
}

/* ----------------------------------------
sub_title
------------------------------------------- */
.title_a{
background: #8b8783;
font-size: 120%;
color: #fff;
/* font-weight: normal; */
padding: 0.5em 1em;
line-height: 1.8;
margin-bottom: 1em;
/* border-radius: 5px; */
/* box-shadow: #ccc 2px 2px 2px;*/
}
/*.title_a:before {
content: "\f142";
font-family: FontAwesome;
padding:0 0.5em;
}*/
.title_b{
font-size: 140%;
background: transparent url(../img/title_b_bg.png) repeat-x bottom center scroll;
padding: 0 0 0.6em;
margin-bottom: 0.6em;
font-weight: bold;
}
.title_c{
font-family: "Noto Sans JP", sans-serif;
font-size: 115%;
border-left: #9d8b75 10px solid;
padding: 0px 0.8em 0px;
margin-bottom: 0.5em;
font-weight: bold;
}
.title_d{
font-size: 130%;
border-bottom: #9d8b75 3px dashed;
font-weight: bold;
padding: 0.5em 0 0.5em;
margin-bottom: 0.5em;
line-height: 1.6;
}
/*.title_d:before {
content: "\f142";
content: "\f265";
content: "\f184";
content: "\f260";
content: "\f299";
content: "\f069";
font-family: FontAwesome;
font-weight: normal;
padding: 0 0.5em;
}*/
.title_e{
font-family: "Noto Serif JP", serif;
color: #594747;
font-size: 200%;
font-weight: 900;
padding: 0 1em 1em;
margin: 0 auto 1em;
width: 700px;
max-width: 100%;
height: auto;
background: url(../img/title_bg.png) center bottom no-repeat;
background-size: auto;
line-height: 1.6;
letter-spacing: 0;
text-align: center;
clear: both;
display: block;
}
.title_f {
font-family: "Noto Serif JP", serif;
color: #594747;
font-size: 180%;
font-weight: 800;
padding: 0 0em 1em;
margin: 0 0 1em;
width: 700px;
max-width: 100%;
height: auto;
background: url(../img/title_bg.png) 0 bottom no-repeat;
background-size: auto;
line-height: 1.6;
letter-spacing: 0;
text-align: left;
clear: both;
display: block;
}

.title_g {
color: #463426;
background: #d8c7b4 url(../img/title_g.png) repeat bottom center scroll;
border: #f6f3ee 8px double;
box-shadow: #7e7262 3px 3px 3px;
font-size: 190%;
font-weight: 650;
padding: 0.6em 1em;
margin: 0 auto 1.5em;
width: 100%;
max-width: 100%;
height: auto;
line-height: 1.6;
letter-spacing: 3px;
text-align: center;
}
.title_h {
font-size: 130%;
background: #cccbc6;
padding: 1em 1em 1em;
margin-bottom: 2em;
font-weight: bold;
line-height: 1.4;
}
.title_z {
color: #594747;
font-size: 200%;
font-weight: 700;
padding: 0 0 0.6em;
margin: 0 auto 0.6em;
width: 700px;
max-width: 100%;
height: auto;
background: url(../img/bg-z.png) center center no-repeat;
background-size: cover;
line-height: 1.8;
letter-spacing: 2px;
text-align: center;
clear: both;
display: block;
}
.subtitle{
color: #e96054;
font-weight: bold;
font-size: 80%;
}
.title_e .subtitle,
.title_f .subtitle{
font-size: 60%;
padding-bottom: 15px !important;
}


@media screen and (max-width:1100px) {

}
@media screen and (max-width:1024px) {
.title_top,.title_top_bg{font-size: 280%;}
.title_e,.title_z {font-size: 180%;}
.title_img{width:auto;max-width:85%;display: block;margin: 0 auto;}
}
@media screen and (max-width:599px) {
.title_top,.title_top_bg{font-size: 7.6vw;}
.title_a {font-size: 110%;}
.title_b{font-size: 4.5vw;}
.title_e,.title_g {font-size: 4.5vw;}
.title_z {font-size: 5.2vw;}
.title_top .small,.title_top_bg .small{font-size: 50%;}
.title_img{width:100%;max-width: 100%;display: block;margin: 0 auto;}

}

/* ----------------------------------------
font
------------------------------------------- */
.font-min {font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;}
.font-go {font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;}
.font-robot{font-family: 'Roboto', sans-serif;}
.font-maru{font-family: 'Kosugi Maru', sans-serif;}

/*-------------------------------
BTN
-------------------------------*/
.btn_more a {
font-family: "Zen Maru Gothic", sans-serif;
color: #ffffff;
/* border: #ffffff 1px solid; */
background-color: transparent;
background-color: #6e6a67;
margin:0em auto;
padding: 1em 2em;
line-height: 1;
letter-spacing: 0.1em;
width: fit-content;
min-width: 260px;
max-width: 90%;
font-weight: normal;
text-align: center;
text-decoration: none;
clear: both;
display: block;
border-radius: 5px;
/* box-shadow: #ccc 3px 3px 3px;*/
}
.btn_more a:hover {
background-color: #b3a79f;
}
.btn_more a:before {
content: "\f178";
content: "\f105";
content: "\f138";
content: "\f101";
font-family: FontAwesome;
margin-right: 1em;
color: #fff;
}

/*-------------------------------
color
-------------------------------*/
.red {color: #cc0000;font-weight: bold;}
.blue {color: #6a9bc3;font-weight: bold;}
.pink {color: #e96054;font-weight: bold;}
.gold {color: #b39469;font-weight: bold;}
.orange{color: #eb6100;font-weight: bold;}
.white {color: #fff;}
.clr-1 {color: #9d8b75;font-weight: bold;}
.clr-2 {color: #61a33f;font-weight: bold;}
.clr-3 {color: #ff7622;font-weight: bold;}
.bgclr-1 a {background-color: #9d8b75;}
.bgclr-2 a {background-color: #d4cfac;}
.bgclr-3 a {background-color: #efefef;}

/*-------------------------------
【共通】bnr-01
-------------------------------*/
.bnr-01 .flexbox {
width: 100%;
margin: auto;
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-justify-content: space-between;
align-content: space-around;
align-items: stretch;
flex-direction: row;
justify-content: space-between;
}
.bnr-01 .w50 {width: 50%;}
.bnr-01 img{max-width: 90%;}

@media screen and (max-width:768px) {
.bnr-01 .flexbox {display: block;}
.bnr-01 .w50 {width: 100%;}
}

/*-------------------------------
【共通】bnr-02
-------------------------------*/
section.bnr-02 {
padding: 4em 0;
}
.bnr-02 ul.flexbox {
width: 100%;
margin: auto;
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-justify-content: space-between;
align-content: space-around;
align-items: stretch;
flex-direction: row;
justify-content: center;
}
.bnr-02 ul.flexbox li {
width: 46%;
margin: 2%;
}

@media screen and (max-width:768px) {
.bnr-02 ul.flexbox {
flex-direction: column;
justify-content: center;
}
.bnr-02 ul.flexbox li {
width: 80%;
margin:5% 5%;
}
}
@media screen and (max-width:599px) {
.bnr-02 ul.flexbox li {
width: 95%;
margin: 5% auto;
}
}
/*-------------------------------
【共通】bnr-03
-------------------------------*/
.bnr-03 ul.flexbox {
width: 100%;
margin: auto;
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
-webkit-flex-wrap: wrap;
-webkit-justify-content: space-between;
align-content: space-around;
align-items: stretch;
flex-direction: row;
justify-content: center;
flex-wrap: nowrap;
}
.bnr-03 ul.flexbox li {
margin: 2%;
}

@media screen and (max-width:768px) {
.bnr-03 ul.flexbox {
flex-direction: column;
justify-content: center;
flex-wrap: wrap;
}
.bnr-03 ul.flexbox li {
width: 90%;
margin:5% 5%;
}
}

/*-------------------------------
【HOME・下層】NEWS
-------------------------------*/
/*--【HOMEのみ】--*/
section#news {
font-size: 90%;
}
.homeNews {
background: #fff;
max-height: 300px;
overflow: auto;
margin:1.5em auto;
padding: 1em 3em 1.2em;
border-radius: 5px;
/*font-size: 90%;*/
}
.homeNews .newsBox {
margin: 0 auto;
}
/*-- 縦並び 
.homeNews dl.article {display: block;}
.homeNews dl.article dd {width: 100%;}
.homeNews dl.article dt {width: 100%;margin: 0;}
--*/

/*--【HOME・下層 共通】--*/
dl.article {
display: flex;
justify-content: flex-start;
align-items: flex-start;
line-height: 1.8;
border-bottom: #666666 1px dotted;
flex-direction: row;
flex-wrap: nowrap;
align-content: flex-start;
padding:1em 0;
/*padding-bottom: 0;*/
}
dl.article dt {
width: 18%;
padding: 0;
/*margin-bottom: 1em;*/
}
dl.article dd {
width: 82%;
margin: 0;
text-align: left;
}
dl.article dt:before {
color: #9d8b75;
content: "\f298";
content: "\f274";
content: "\f138";
font-family: FontAwesome;
padding-right:0.5em;
}

/*--記事--*/
dl.article dd .news_text {}

/*--タイトル--*/
dl.article dd h1,
dl.article dd h2,
dl.article dd h3,
dl.article dd h4,
dl.article dd h5,
dl.article dd h6{
font-weight: bold;
line-height: 2.0;
margin: 0;
padding: 0;
}
dl.article dd h1{font-size: 140%;}
dl.article dd h2{font-size: 130%;}
dl.article dd h3{font-size: 120%;}
dl.article dd h4{font-size: 100%;}
dl.article dd h5{font-size: 100%;}
dl.article dd h6{font-size: 100%;}

dl.article dd h4.news_title,
dl.article dd h4.news_title a, 
dl.article dd h4.news_title a:hover, 
dl.article dd h4.news_title a:visited {
color: #000;
font-size: 100%;
font-weight: bold;
letter-spacing: 2px;
text-decoration: none;
/*padding-bottom: 0.5em;*/
margin-bottom: 0em;
}
dl.article dd h4.news_title a:hover {
opacity: 0.9;
text-decoration: underline;
}
dl.article .tag{
color: #FFF;
font-size: 80%;
line-height: 1;
background-color: #a6937c;
padding: 3px 10px;
margin-right: 2em;
font-weight: normal;
}
dl.article .tag01{background-color: #61a33f;}
dl.article .tag02{background-color: #9d8b75;}
dl.article .tag03{background-color: #407da5;}
dl.article .tag04{background-color: #9d8b75;}

/*--画像--*/
dl.article dd .flexbox {
-webkit-justify-content: space-between;
align-content: flex-start;
align-items: stretch;
flex-direction: row;
justify-content: flex-start;
}
dl.article dd img {
max-width: 100%;
margin: 10px auto;
}

/*--記事詳細（detailのみ）--*/
.news_detail dl.article {
padding: 1em 1em 1em;
border-bottom: #666666 1px dotted;
display: flex;
flex-flow: row wrap;
width: 96%;
margin: 0 auto;
}
.news_detail dl.article dt {width: 100%;padding: 0;}
.news_detail dl.article dd {width: 100%;}
.news_detail dl.article dt:before {display: none;}
.news_detail dl.article dd h4.news_title {
font-size: 120%;
color: #333;
font-weight: bold;
text-decoration: none;
padding-bottom: 1em;
margin-bottom: 1em;
border-bottom: #a6937c 5px solid;
}

@media screen and (max-width: 1024px) {
.title_top_news{display: none;}

dl.article {
display: flex;
flex-flow: row wrap;
width: 100%;
margin: 0 auto;
padding:0.5em;
}
dl.article dt {width: 100%;padding: 0;margin-bottom: 0;}
dl.article dd {width: 100%;}
dl.article dd h4.news_title {}
/*dl.article dt:before {display: none;}*/
}
@media screen and (max-width: 768px) {
.homeNews {
max-height: 100%;
padding: 1em;
}
}
@media screen and (max-width: 599px) {
dl.article dd .tag {
padding: 5px 10px;
margin-right: 1em;
display: table;
}
}
/* ----------------------------------------
【下層】ご利用規約
------------------------------------------- */
.kiyaku .title_a{
font-family: "Noto Sans JP", sans-serif;
border-bottom: #9d8b75 1px dotted;
color: #ffffff;
background: #8b8783;
font-size: 100%;
font-weight: normal;
margin: 1em auto;
padding: 10px 20px;
}
.kiyaku .title_a:before{
font-family: FontAwesome;
content: "\f142";
margin-right: 0.8em;
}
ul.kiyaku_list li{
line-height: 1.8;
padding: 10px;
padding-left: 0;
list-style: disc;
margin-left: 2em;
}
/*-------------------------------
【下層】　個人情報保護方針
-------------------------------*/
.notes{
line-height: 1.8;
}
.notes dl dt{
border-bottom: #9d8b75 1px dotted;
color: #ffffff;
background: #8b8783;
font-size: 100%;
font-weight: normal;
margin: 1em auto;
padding: 10px 20px;
}
.notes dl dt:before{
font-family: FontAwesome;
content: "\f142";
margin-right: 0.8em;
}
.notes dl dd{
padding:0 1em 2em;
}

/*-------------------------------
【共通】Google map
-------------------------------*/
/*googlemap彩度*/
.googlemap iframe,
.googlemap object,
.googlemap embed {
width: 100%;
height: 400px;
-webkit-filter: saturate(60%);
filter: saturate(60%);
-webkit-transition: all 0.7s ease;
transition: all  0.7s ease;
}
.googlemap iframe:hover,
.googlemap object:hover,
.googlemap embed:hover {
-webkit-filter: saturate(90%);
filter: saturate(90%);
}

/*--------------------------------
【共通】footer
--------------------------------*/
section#footer_area {
background: #6d6a67;
color: #fff;
padding: 0;
width: 100%;
display: block;
clear: both;
margin: 0;
}
footer .wrap,
footer .wrap_w{
margin: auto;
padding: 5em 0px;
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-justify-content: space-between;
align-content: flex-start;
align-items: stretch;
flex-direction: row;
justify-content: space-between;
}

/* footer box */
footer .f_box {
width: 70%;
padding:0;
}
footer .lg {
width: 20%;
text-align: center;
}
footer .f_box p {
padding: 5px 0;
}
footer .f_box p.logo_footer {
font-size: 140%;
font-weight: bold;
margin-bottom: 10px;
}
footer .f_box p.logo_footer img {
width: auto;
}

/* footer link */
footer p.footer_title,
footer p.footer_title_bg {
color: #ffffff;
padding: 5px 0;
font-weight: bold;
letter-spacing: 2px;
}
footer ul.f_link {
width: 100%;
margin: auto;
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-justify-content: space-between;
align-content: space-around;
align-items: stretch;
flex-direction: row;
justify-content: flex-start;
}
footer ul.f_link li a {
display: block;
text-decoration: none;
font-size: 85%;
color: #ffffff;
text-align: left;
padding: 0 2em;
margin: 10px 0;
border-left: #ffffff solid 1px;
font-weight: normal;
line-height: 1.4;
}
/*footer ul.f_link li a::before {
color:#a6937c;
content: "\f138";
font-family: FontAwesome;
padding-right: 0.5em;
}*/
footer ul.f_link li.no-icon a::before {
color:#a6937c;
content:none;
padding-right: 0.5em;
}
footer ul.f_link li a:hover {
opacity: 0.7;
}
address {
font-size: 14px;
font-style: normal;
padding: 2em 0;
text-align: center;
letter-spacing: 1px;
}
footer .box_bg {
background:#fff;
padding: 0.8em 1.5em;
}

.sns-btn a{
color: #fff;
font-size: 30px;
margin: 10px;
font-weight: normal;
}
@media screen and (max-width:1279px) {
footer .wrap {
display: block;
max-width: 100%;
width: 100%;
padding: 2em 0 2em;
margin: 0 auto;
}
footer .f_box {
width: 100%;
padding: 0 2em;
}
footer .lg {
width: 100%;
padding: 2em !important;
}

}

@media screen and (max-width:1024px) {
footer ul.f_link li {
list-style-type: none;
width: 48%;
margin: 1%;
}
footer ul.f_link li a {
color: #fff;
border-radius: 5px;
border-left: none;
font-size: 100%;
display: block;
padding: 0px 10px;
}
footer ul.f_link li a::before {
color:#fff;
content: "\f101";
font-family: FontAwesome;
padding-right: 0.5em;
}
footer ul.f_link li a::hover {

}
footer p.footer_title, 
footer p.footer_title_bg {
font-size: 100%;
}
}
@media screen and (max-width:599px) {
footer .f_box {padding: 0 1em;}
}

/*--------------------------------
TOPへ戻る
--------------------------------*/
.to_top {
position: fixed;
bottom: 0px;
right: 0px;
z-index: 800;
}
.to_top a {
background-color:#6d6a67;
color: #fff;
text-decoration: none;
text-align: center;
display: block;
width: 45px;
height: 45px;
font-size: 25px;
line-height: 45px;
}
.to_top a:hover {
opacity: 0.9;
}

/*-------------------------------
【共通】CTA
-------------------------------*/
.cta_area{
background: #f6f3ee url(../img/cta_bg.png) repeat-x center center scroll;
padding: 5em 0 !important;
margin: 0em auto;
}
.cta_area_bg{
background: url(../img/cta_main_pc.jpg) no-repeat top center scroll;
height: 470px;
}
.cta_area .flexbox {
width: 100%;
margin: auto;
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-justify-content: space-between;
align-content: flex-start;
align-items: stretch;
flex-direction: row;
justify-content: center;
}
.cta_area .cta_btn{
padding:286px 0px 0px;
text-align: center;	
}
.cta_area .cta_btn a{
padding:10px;
}
.cta_area .cta_txt{
background: #eae3db;
line-height: 1.6;
padding: 0 1em;
width: fit-content;
font-weight: bold;
}

.cta_area .cta_btn a:hover{
opacity: 1.0;
}
.orange{color: #eb6100;}

@media screen and (max-width:1279px) {
.cta_area {
background: url(../img/cta_bg_sp.png) repeat center center scroll;
padding: 4em 0;
margin: 0em auto;
}
.cta_area_bg {
background: #ffffff;
/* background-size: contain; */
height: auto;
max-width: 500px;
padding: 0;
margin: 0 auto;
}
.cta_area .tb-sp {
display: block !important;
}
.cta_area .tb-sp img {
max-width: 100%;
}
.cta_area .cta_btn {
padding: 0 0 15px 0;
text-align: center;
}
.cta_area .cta_txt {
font-size: 14px;
width: 100%;
padding: 1em;
}
.cta_area {
margin: 0em auto;
}
.cta_area .btn-01 {
display: block;
}
}
/*-------------------------------
【共通】お問い合わせ　アンカーリンク
-------------------------------*/
ul.contact-link{
width: 100%;
margin: auto;
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-justify-content: space-between;
align-content: flex-start;
align-items: stretch;
flex-direction: row;
justify-content: flex-start;
}
ul.contact-link li a {
display: inline-block;
width: fit-content;
background: #ffffff;
color: #6c6a67;
font-size: 100%;
font-weight: bold;
letter-spacing: 3px;
line-height: 1.4;
padding:0.5em 1.5em;
margin: 0.5em 0.6em;
border-radius: 47px;
border: #6c6a67 2px solid;
box-shadow: #ccc 3px 3px 3px;
}
ul.contact-link li a:hover{
background-color: #f18589;
color: #ffffff;
border: #fff 2px solid;
}
#contact-tel ul.contact-link li a{
letter-spacing: 1px;
}
@media screen and (max-width:1024px) {
ul.contact-link li a {
padding:0.8em 1.5em;
margin: 0.8em 0.8em;
}
}
/*-------------------------------
【共通】フォーム
-------------------------------*/
#mailformpro {
width: 100%;
margin: 3em auto;
}
#mailformpro dl {
display: flex;
flex-wrap: nowrap;
width: 100%;
}
#mailformpro dt {
width: max(27.5%, 275px);
flex-shrink: 0;
display: flex;
align-items: center;
padding: 20px 20px;
box-sizing: border-box;
border-bottom: #E2DAD2 dashed 1px;
background-color: #fff;
}
#mailformpro dt:before {
content: "■";
font-family: FontAwesome;
margin-right: 1em;
}
#mailformpro dd {
flex-grow: 1;
width: auto;
background: #fff;
padding: 15px 20px;
display: flex;
flex-wrap: wrap;
box-sizing: border-box;
border-bottom: #E2DAD2 dashed 1px;
align-items: center;
}
.address_list{
width: auto!important;
margin-left: 10px!important;
}
#mailformpro input[type="text"],
#mailformpro input[type="email"] {
width: 100%;
border: solid 2px #aaa;
padding: 15px;
/* border-radius: 5px;*/
}
#mailformpro .hissu {
color: #ffffff;
background: #f5877f;
font-size: 12px;
line-height: 1;
padding: 5px;
border-radius: 5px;
margin-left: 1em;
font-weight: normal;
}
#mailformpro .exm {
display: block;
width: 100%;
font-size: .8em;
color: #999;
line-height: 1.0;
margin-top: 5px;
padding: 0;
}
#mailformpro label {
padding-left: 0.5em;
margin-right: 1.5em;
}

#mailformpro dd.address {
position: relative;
}

/*#mailformpro span {
display: block;
width: 100%;
}
#mailformpro span:not(:nth-of-type(1)) {
margin-top: .5rem;
}*/

#mailformpro textarea {
width: 100%;
height: auto;
aspect-ratio: 3/1;
}
#mailformpro button[type="submit"] {
background: #61462b;
color: #fff;
width: min(80%,300px);
display: flex;
align-items: center;
justify-content: center;
transition: .2s;
border: solid 1px #E2DAD2;
border-radius: 4px;
}
#mailformpro button[type="submit"]::before {
content: "";
display: inline-block;
width: .5rem;
height: 1rem;
background: #fff;
clip-path: polygon(0 0, 0 100%, 100% 50%);
margin-right: .5rem;
transition: .2s;
}
#mailformpro button[type="submit"]:hover {
background: #E2DAD2;
color: #61462b;
border: solid 1px #61462b;
}
#mailformpro button[type="submit"]:hover::before {
background: #61462b;
}

@media (max-width:768px) {
#mailformpro {}
#mailformpro dl {
flex-wrap: wrap;
}
#mailformpro dt,#mailformpro dd { width: 100%; }
}

#mailformpro .thanks {
width: min(94%, 1200px);
background: #fff;
min-height: 300px;
margin: 5rem auto;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-content: center;
padding: 2rem;
}
#mailformpro .thanks h2 {
width: 100%;
text-align: center;
font-size: 2rem;
font-weight: bold;
margin-bottom: 2rem;
}
#mailformpro .thanks p {
display: block;
width: 100%;
text-align: center;
margin-bottom: 2rem;
}
#mailformpro .thanks .linkBtn {
width: 100%;
margin: auto;
}
#mailformpro .thanks .linkBtn a {
background: #61462b;
color: #fff;
width: min(80%, 300px);
display: flex;
align-items: center;
justify-content: center;
transition: .2s;
border: solid 1px #E2DAD2;
border-radius: 4px;
padding: 10px;
margin: auto;
}
#mailformpro .thanks .linkBtn a::before {
content: "";
display: inline-block;
width: .5rem;
height: 1rem;
background: #fff;
clip-path: polygon(0 0, 0 100%, 100% 50%);
margin-right: .5rem;
transition: .2s;
}
#mailformpro div.prefcodeWrapper {
position: absolute !important;
top: 0;
width: 100%;
height: fit-content;
left: 0;
}
#mailformpro .submit{
width: 260px;
background: #00a0e9;
border: #00a0e9 1px solid;
color: #fff;
padding: 0.5em;
transition: opacity .6s;
cursor: pointer;
margin: 1em auto;
display: block;
border-radius: 80px;
box-shadow: #ccc 5px 5px 5px;
text-align: center;
}

#mailformpro input[type="submit"] {
width: 300px;
background: #f5877f;
border: #f5877f 1px solid;
color: #fff;
padding: 1em;
transition: opacity .6s;
cursor: pointer;
margin: 1em auto;
display: block;
border-radius: 80px;
box-shadow: #ccc 5px 5px 5px;
text-align: center;
}

/*カレンダー*/
.check h3 span {
color: #ef3030;
margin: 0 0 0 3px;
}
.q input[type="date"],
.q input[type="time"] {
-webkit-appearance: none;
display: inline-block;
width: 60%;
padding: 10px 8px;
font-size: 16px;
box-sizing: border-box;
border: 1px solid #d8d8d8;
border-radius: 3px;
position: relative;
background-color: #fff;
}
input[type="date"]::-webkit-date-and-time-value,
input[type="time"]::-webkit-date-and-time-value {
text-align: left;
}
input[type=time]::-webkit-calendar-picker-indicator {
position: absolute;
width: 100%;
height: 100%;
opacity: 0;
}
.q input[type="date"]:after,
.q input[type="time"]:after {
content: "";
display: block;
width: 10px;
height: 10px;
box-sizing: border-box;
border-bottom: 1px solid #d8d8d8;
border-right: 1px solid #d8d8d8;
position: absolute;
top: 48%;
right: 15px;
z-index: 0;
transform: translateY(-50%) rotate(45deg);
}
.datepicker_bg{
position: relative;
display: inline-block;
width: 60%;
background-color: #fff;
}
.datepicker_bg > input {
-webkit-appearance: none;
display: inline-block;
width: 100%;
padding: 10px 8px;
font-size: 16px;
box-sizing: border-box;
border: 1px solid #d8d8d8;
border-radius: 3px;
position: relative;
background-color: transparent;
z-index: 1;
}
.datepicker_bg:after {
content: "";
display: block;
width: 10px;
height: 10px;
box-sizing: border-box;
border-bottom: 1px solid #d8d8d8;
border-right: 1px solid #d8d8d8;
position: absolute;
top: 48%;
right: 15px;
z-index: 0;
transform: translateY(-50%) rotate(45deg);
}

/*--------------------
固定バナー
---------------------*/
.fixed-bar{

}
/* PC/SP共通 */
ul.fbr {
position: fixed;
z-index: 500;
top: 50%;
left: 0px;
background-color: rgba(217, 176, 115, 0.0);
border-radius: 8px 0px 0px 8px;
-webkit-border-radius: 8px 0px 0px 8px;
-moz-border-radius: 8px 0px 0px 8px;
}
ul.fbr li{
margin: 10px 0px;
}
ul.fbr li a {
display: block;
font-size: 14px;
line-height: 1.2;
color: #000000;
width: 60px;
text-align: center;
text-decoration: none;
padding: 5px;
}
ul.fbr li a:hover {
opacity: 1.0 !important;
}
ul.fbr li.color-1 a {background: #8bb674;}
ul.fbr li.color-2 a {background: #a99764;}
ul.fbr li.color-3 a {background: #84ccc9;}
ul.fbr li.color-4 a {background: #77acd7;}
ul.fbr li.color-5 a {background: #f7958e;}
ul.fbr li a i{
font-size: 20px;
line-height: 1.0;
padding:8px;
}
ul.fbr li a p {
display: block;
}

/* SP共通 */
.fbr-sp{
display: none;
}

@media screen and (max-width:1280px) {
.fbr-pc{
display: none !important;
}

.fbr-sp{
display: block;
}

ul.fbr li {
width:25%;
margin:0;
}

ul.fbr li a {
color: #fff;
height: 65px;
font-size: 14px;
line-height: 1.2;
padding: 5px;
text-align: center;
width: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border-radius: 0;
-webkit-border-radius: 0;
-moz-border-radius: 0;
}

ul.fbr li a:hover {
/*background-color:rgba(255,255,255,0.8);*/
opacity: 0.8;
}

ul.fbr li a i{
font-size: 18px;
padding: 8px;
}

ul.fbr {
width: 100%;
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
-webkit-box-lines: multiple;
-moz-box-lines: multiple;
-webkit-flex-wrap: wrap;
-moz-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: nowrap;
-webkit-justify-content: space-between;
justify-content: center;
top: auto;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border-radius: 0px;
-webkit-border-radius: 0px;
-moz-border-radius: 0px;
padding: 0px;
bottom: 0px;
flex-direction: row;
align-content: space-between;
align-items: stretch;
z-index: 100;
}

.catch{
position: fixed;
bottom: 65px;
font-size: 16px;
font-weight: bold;
line-height: 1.2;
width: 100%;
text-align: center;
padding: 10px;
background: #fff;
border-top: #88abda 1px solid;
}

.to_top a {
display: none !important;
}

footer {
padding-bottom: 65px;
background: #fff;
}

}

/*--------------------------------
【下層・共通】アニメーション
--------------------------------*/
@media screen and (min-width:1200px) {
.ani_pc{}
.ani_sp{display:none;}
}
@media screen and (max-width:1200px) {
.ani_pc{display:none;}
.ani_sp{display:block;}
}

/*-------------------------------*/
/*画像たち*/
.ani_img_area{
position: relative;
}
.ani_img_01 img {
position: absolute;
top: -35px;
right: -40px;
z-index: 1;
max-width: 100%;
}
.ani_img_txt img {
position: absolute;
top: 176px;
left: 0px;
z-index: 5;
}
.ani_img_mark img{
position: absolute;
top: 90px;
left: 0;
z-index: 6;
}
.ani_img_02 img {
position: absolute;
bottom: 100px;
left: 30px;
z-index: 4;
}
.ani_img_03 img{
position: absolute;
bottom: 0px;
left: 436px;
z-index: 3;
}
.ani_img_04 img{
position: absolute;
bottom: 0px;
right: 36px;
z-index: 2;
}
/*-------------------------------*/
/*右から左にフェードイン*/
div.ani_img_01 img {
padding: 10px;
animation: fadeIn-r 3s ease 0.5s 1 normal backwards;
}
@keyframes fadeIn-r {
from {
opacity: 0;
transform: translateX(50px);
}
to {
opacity: 1;
transform: translateX(0);
}
}
/*-------------------------------*/
/*左から右にフェードイン*/
div.ani_img_txt img {
padding: 10px;
animation: fadeIn-l 1s ease 0.3s 1 normal backwards;
}
@keyframes fadeIn-l {
from {
opacity: 0;
transform: translateX(-50px);
}
to {
opacity: 1;
transform: translateX(0);
}
}
/*-------------------------------*/
/*上から下にフェードイン*/
div.ani_img_mark img {
padding: 10px;
animation: fadeIn 3s ease 1s 1 normal backwards;
}
@keyframes fadeIn {
from {
opacity: 0;
transform: translateY(-20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
/*-------------------------------*/
/*ぽよぽよ*/
/*div.ani_img_mark img.poyopoyo {
animation: poyopoyo 2s ease-out infinite;
opacity: 1;
}
@keyframes poyopoyo {
0%, 40%, 60%, 80% {
transform: scale(1.0);
}
50%, 70% {
transform: scale(0.95);
}
}*/

/*-------------------------------*/
/*背景*/
.home_bg_01{
background: rgb(208 219 200 / 30%);
width: 1600px;
height: 837px;
position: absolute;
bottom: -25px;
left: -100px;
border-radius: 20px;
}

/*左から右にフェードイン*/
div.home_bg_01 {
padding: 10px;
animation: fadeIn-l 1s ease 0.3s 1 normal backwards;
}
@keyframes fadeIn-l {
from {
opacity: 0;
transform: translateX(-50px);
}
to {
opacity: 1;
transform: translateX(0);
}
}

/*-------------------------------*/
.home_bg_02{
background: rgb(209 219 202 / 40%);
width: 1527px;
height: 908px;
position: absolute;
top: 7px;
right: -139px;
border-radius: 20px;
}

div.home_bg_02 {
padding: 10px;
animation: fadeIn-r 3s ease 0.5s 1 normal backwards;
}
@keyframes fadeIn-r {
from {
opacity: 0;
transform: translateX(50px);
}
to {
opacity: 1;
transform: translateX(0);
}
}
/*-------------------------------*/