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

/*
* "Kiwi Maru" licensed under the SIL Open Font License 1.1
* by https://fonts.google.com/specimen/Kiwi+Maru
*/
@font-face {
  font-family: "Kiwi Maru";
  font-style: normal;
  font-weight: 300;
  src: url("fonts/KM-300.woff2") format("woff2"), url("fonts/KM-300.woff") format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Kiwi Maru";
  font-style: normal;
  font-weight: 500;
  src: url("fonts/KM-500.woff2") format("woff2"), url("fonts/KM-500.woff") format("woff");
  font-display: swap;
}


/*--------------------------------------------------------------------------
   reset
---------------------------------------------------------------------------*/

h1,
h2,
h3,
h4,
h5,
h6,
p,
span,
small,
dl,
dt,
dd,
ol,
ul,
li {
	margin: 0;
	font-size: 100%;
}

ul {
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

img {
	vertical-align: top;
}

li {
	list-style-type: none;
	vertical-align: baseline;
}

input,
button,
textarea,
select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}



/*--------------------------------------
　Base
---------------------------------------*/
*{
box-sizing: border-box;
}
img{
-webkit-backface-visibility: hidden;
}


body {
background: #fbfbfb;
font-family: "Kiwi Maru", "Hiragino Kaku Gothic ProN", Meiryo, "Helvetica Neue", Arial, sans-serif;
font-weight: 300;
font-size:1.6em;
line-height:2.1;
color: #4c1015;
}

img { 
  max-width: 100%; 
  height:auto;
}

a {
color: #4c1015;
text-decoration: none;
}

a:hover {
text-decoration: none;
}

p{
letter-spacing: .05em;
text-align: justify;
}

p a{
text-decoration: underline;
}


.fl {
  float: left;
}

.fr {
  float: right;
}

.strong {
  font-weight: bold;
}

.f110 {
  font-size: 110%;
}

.f120 {
  font-size: 120%;
}

.f130 {
  font-size: 130%;
}

.f150 {
  font-size: 150%;
}

.f200 {
  font-size: 200%;
}

.f300 {
  font-size: 300%;
}


/* Micro clearfix */

/* For modern browsers */
.cf:before,.cf:after { content:""; display:table; }
.cf:after { clear:both; }
/* For IE 6/7 (trigger hasLayout) */
.cf { zoom:1; }


.flImg{
float:left;
}
.frImg{
float:right;
}


h1,h2{
position: relative;
font-family: "Kiwi Maru", "Hiragino Kaku Gothic ProN", Meiryo, "Helvetica Neue", Arial, sans-serif;
font-weight: 500;
padding: 0;
line-height: 1.5;
letter-spacing: .05em;
}
h3,h4,h5,h6{
position: relative;
font-family: "Kiwi Maru", "Hiragino Kaku Gothic ProN", Meiryo, "Helvetica Neue", Arial, sans-serif;
font-weight: 500;
padding: 0;
line-height: 1.5;
letter-spacing: .05em;
}


.sttl{
position: relative;
margin: 0 0 12px;
font-size:2.4rem;
font-family: "Kiwi Maru", "Hiragino Kaku Gothic ProN", Meiryo, "Helvetica Neue", Arial, sans-serif;
font-weight: 500;
line-height: 1.5;
letter-spacing: .05em;
}
.catch{
position: relative;
margin: 0 0 12px;
font-size:2.2rem;
font-family: "Kiwi Maru", "Hiragino Kaku Gothic ProN", Meiryo, "Helvetica Neue", Arial, sans-serif;
font-weight: 500;
line-height: 1.6;
letter-spacing: .05em;
}


.fontS{
font-size: 67%;
}
.fontL{
font-size: 110%;
}

.fontBold{
font-weight: 500;
}





html {
font-size: 62.5%;
}



.ulBox,
.liBox{
position: relative;
}





/*------------
600px--common
------------*/

.sp,
.sp_br{
display:none!important;
}
.sp2{
display:none;
}


body{
position: relative;
width: 100%;
min-width:1000px;
}

.forTab{
overflow: hidden;
}


a{
transition: all .2s ease-in-out;
}
a:hover,
a:hover img{
opacity: 0.7;
}


.mainWrap h1 a, .mainWrap h2 a, .mainWrap h3 a, .mainWrap h4 a, .mainWrap h5 a, .mainWrap h6 a{
text-decoration: none;
}


.areaInner{
position: relative;
width: 1000px;
margin: 0 auto;
}





/*--------------------------------------
　body_PC
---------------------------------------*/
*{
text-underline-offset: 0.15em;
}


/*--------------------------------------
　header_PC
---------------------------------------*/
#header{
position: relative;
z-index: 14;
min-height: 180px;
margin: 0 0 0;
background: url("./img/headbg.png") 100% 0 no-repeat;
}
#header::before{
}

#header .topArea{
position: absolute;
width: 100%;
padding: 4px 20px 6px;
text-align: right;
}

#header .siteName,
#header .siteName a,
#header .sps{
position: relative;
margin: 4px 0;
font-size:1.3rem;
font-weight: 300;
line-height: 1.6;
text-align: right;
letter-spacing: 0;
}


#header .logo{
position: absolute;
left: 60px;
width: 282px;
}
#header .logo img{
width: 100%;
}

#header .btnArea{
display: flex;
flex-wrap: wrap;
justify-content: center;
padding: 65px 0 0 20rem;
}
#header .btnArea a{
display: flex;
align-items: center;
justify-content: center;
width: 180px;
min-height: 52px;
margin: 0 8px;
padding: 8px 20px 10px;
background: #eae9e5;
border-radius:20px;
font-size:1.6rem;
font-weight: 500;
line-height: 1.3;
letter-spacing: .1em;
text-align: center;
}
#header .btnArea a:first-child{
border: none;
}
#header .btnArea a:hover{
background: #fff;
opacity: 1;
}





/*--------------------------------------
　page-top_PC
---------------------------------------*/
#page-top {
position: fixed;
z-index: 101;
bottom: 30px;
right: 30px;
width: 70px;
}

#page-top{
  transition: .3s;
  /*デフォルトで非表示にする*/
  opacity: 0;
  visibility: hidden;
}
/*このクラスが付与されると表示する*/
#page-top.active{
  opacity: 1;
  visibility: visible;
}
/*このクラスが付与されると停止する*/
#page-top.absolute{
}



/*--------------------------------------
　fixBan_PC
---------------------------------------*/

#fixBan{
position: fixed;
display: inline;
z-index: 110;
top: 135px;
right: 0;

transition: .3s;
/*デフォルトで非表示にする*/
opacity: 0;
visibility: hidden;
}
/*このクラスが付与されると表示する*/
#fixBan.active{
opacity: 1;
visibility: visible;
}
/*このクラスが付与されると停止する*/
#fixBan.absolute{
/*opacity: 0;
visibility: hidden;*/
}

#fixBan{
width: 116px;
}
#fixBan .spbtn{
display:none;
}




/*--------------------------------------
　Main Contents_PC
---------------------------------------*/

#contents {
position: relative;
z-index: 14;
width: 100%;
overflow-x: hidden;
padding: 0 0 0;
}


.mainWrap {
position: relative;
z-index: 1;
padding: 50px 0 100px;
min-height: 500px;
}


.smappage{
}


.index a,
.mainWrap a{
display: block;
}
.index p a,.mainWrap p a,
.index li a,.mainWrap li a,
.index td a,.mainWrap td a{
display: inline;
}


/*--------------------------------------
　pankuzu_PC
---------------------------------------*/
#pankuzuWrap{
position: relative;
width: 100%;
margin: 0 0 0;
background: #f6f2e7;
}
#pankuzuWrap .areaInner{
width: 1000px;
}
#pankuzu{
width: 100%;
margin: 0 auto;
padding: 8px 0 13px;
font-size:1.2rem;
font-feature-settings: normal;
letter-spacing: 0;
}
#pankuzu a{
text-decoration: underline;
}





/*--------------------------------------
　h1Area_PC
---------------------------------------*/
.h1Area{
position: relative;
z-index: 2;
margin: 0 0 10px;
padding: 60px 0 60px;
background: url(./img/h1_bg.png) 0 0 no-repeat #f8edbe;
}

.h1Area h1{
position: relative;
font-size:4.8rem;
}
.h1Area .lower_eyecatch {
  width: 50%;
  margin: auto;
}
.h1Area .note{
font-size:1.2rem;
color: #707070;
}












/*--------------------------------------
　Footer_PC
---------------------------------------*/

footer{
position: relative;
z-index: 13;
width: 100%;
background: #f6f2e7;
padding: 0 0 20px;
}

footer .footInner{
width: 1000px;
margin: 0 auto;
padding: 60px 0 20px;
}


.footLogo{
position: relative;
width: 229px;
margin: 0 auto 30px;
}




footer .footBox{
position: relative;
z-index: 9;
margin: 0 0 40px;
text-align: left;
}


.footBox .sttl{
margin: 0 0 12px;
padding: 0 0 10px;
border-bottom: 1px solid rgba(83, 60, 46,.2);
}
.footBox .sttl a{
position: relative;
display: block;
padding: 4px 0 4px;
font-size:1.8rem;
line-height: 1.3;
}

footer .smap .sttl a{
font-size:1.6rem;
}

.footBox > ul{
padding: 0 0;
}
.footBox li{
display: inline-block;
}

.footBox li ul{
}

.footBox li a{
font-size:1.5rem;
}
.footBox li:after{
content: "　/　";
}
.footBox li:last-child:after{
content: "";
}


.footBox li.subCat{
display: inline;
margin: 0 20px 0 0;
}
.footBox li.subCat:after{
content: "";
}
.footBox li.subCat > a{
}
.footBox li.subCat > a:after{
}
.footBox ul.subList{
display: inline;
}

.footBox ul.subList > li:first-child::before{
content: "：";
}
.footBox ul.subList li:after{
content: " / ";
}
.footBox ul.subList li:last-child::after{
content: "";
}
.footBox ul.subList a{
font-weight: 300;
}


footer .noticeArea{
padding: 0 160px;
color: #666666;
}
footer .noticeArea p{
font-size:1.2rem;
text-align: center;
letter-spacing: 0;
}
footer .noticeArea p:nth-child(1){
margin: 0 0 10px;
padding: 18px 40px 0;
}
footer .noticeArea a{
color: #666666;
text-decoration: underline;
}
footer .noticeArea .botPrg{
padding: 12px 0 0;
}



footer .botArea{
position: relative;
min-width: 1000px;
box-sizing: border-box;
}
footer .botArea .botInner{
}
footer .botArea .copy{
padding: 10px 30px 16px;
font-size:1.2rem;
text-align: center;
color: #666666;
letter-spacing: 0;
}
footer .botArea .copy a{
text-decoration: none;
color: #666666;
}






/* ================== */
/*  PC共通パーツ　*/
/* ================== */
/* p */
.mainWrap p, .index p{
margin: 10px 0;
padding: 0 0;
word-break: break-all;
}

.areaInner .tab-note {
  display: none;
}


.mainWrap h2{
position: relative;
margin: 70px 0 35px;
padding: 20px 20px 25px 50px;
background: #533c2e;
border-radius:20px;
font-size:3.4rem;
color: #fff;
}
.mainWrap h2::before {
content: "";
position: absolute;
top: 23px;
left: 25px;
width: 4px;
height: calc(100% - 46px);
background: #f8cb50;
border-radius:9999px;
}
.mainWrap h2::after{
}



.mainWrap h2 a{
position: relative;
display: block;
padding: 0 45px 0 0;
color: #fff;
}
.mainWrap h2 a::before{
content: "";
position: absolute;
z-index: 10;
top: 0;
right: 7px;
width: 30px;
height: 100%;
background: url("./img/arrow_ccl_wt.svg") 99% calc(50% + 1px) no-repeat;
background-size: 30px auto;
transition: all .2s ease-in-out;
}
.mainWrap h2 a:hover::before{
}
.mainWrap h2 a::after{
}
.mainWrap h2 a:hover::after{
}




.mainWrap h3{
position: relative;
margin: 40px 0 30px;
padding: 14px 20px 16px 30px;
font-size:2.8rem;
}
.mainWrap h3::before{
content: "";
position: absolute;
z-index: -1;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: url(./img/h3_deco.svg) 12px 14px no-repeat #fff;
background-size: 51px auto;
border-radius:20px;
}

.mainWrap h3 a{
position: relative;
z-index: 1;
display: block;
padding: 0 45px 0 0;
}
.mainWrap h3 a::before{
content: "";
position: absolute;
z-index: 10;
top: 0;
right: 7px;
width: 30px;
height: 100%;
background: url("./img/arrow_ccl.svg") 99% calc(50% + 1px) no-repeat;
background-size: 30px auto;
transition: all .2s ease-in-out;
}
.mainWrap h3 a:hover::before{
}
.mainWrap h3 a::after{
}
.mainWrap h3 a:hover::after{
}



.mainWrap h4, .mainWrap h5, .mainWrap h6{
position: relative;
margin: 40px 0 30px;
padding: 10px 20px 12px 10px;
border-bottom: 2px solid rgba(83, 60, 46, .5);
font-size:2.0rem;
}
.mainWrap h4::before, .mainWrap h5::before, .mainWrap h6::before{
}
.mainWrap h4 a, .mainWrap h5 a, .mainWrap h6 a{
position: relative;
padding: 0 40px 0 0;
}
.mainWrap h4 a::before, .mainWrap h5 a::before, .mainWrap h6 a::before{
content: "";
position: absolute;
z-index: 10;
top: 0;
right: 7px;
width: 24px;
height: 100%;
background: url("./img/arrow_ccl.svg") 99% calc(50% + 1px) no-repeat;
background-size: 24px auto;
transition: all .2s ease-in-out;
}
.mainWrap h4 a:hover::before, .mainWrap h5 a:hover::before, .mainWrap h6 a:hover::before{
}
.mainWrap h4 a::after, .mainWrap h5 a::after, .mainWrap h6 a::after{
}
.mainWrap h4 a:hover::after, .mainWrap h5 a:hover::after, .mainWrap h6 a:hover::after{
}




/* ulol */
.mainWrap ul,
.index ul,
#mainVis ul{
margin: 20px 0 20px;
padding:10px 10px 0;
}
.mainWrap ul li,
.index ul li,
#mainVis ul li{
position: relative;
padding:3px 0 3px 20px;
}
.mainWrap ul li::before,
.index ul li::before{
position: absolute;
content: "";
top: 13px;
left: 2px;
width: 12px;
height: 12px;
background: #4db2a4;
border-radius:50%;
}

.mainWrap ol {
margin: 20px 0 20px;
padding:10px 10px 0;
}
.mainWrap ol li{
padding:3px 0 3px 22px;
list-style: none;
position: relative;
counter-increment: number;
}

.mainWrap ol li::before{
position: absolute;
top: 12px;
left: 0;
width: 15px;
height: 14px;
padding: 1px 0 2px;
background: #f8cb50;
text-align: center;
letter-spacing: -0.5px;
line-height: 1.0;
font-size:1.4rem;
}


.mainWrap ol li::before {
content: counter(number);
}


.mainWrap li a,
.index li a{
text-decoration: underline;
}
.mainWrap li a:hover,
.index li a:hover{
text-decoration: none;
}




/* btns */
.btn-internal,
.btn-web,
.btn-tel{
position: relative;
z-index: 1;
display: flex;
align-items: center;
justify-content: center;
margin: 30px auto;
text-align: center;
}
.btn-internal a,
.btn-web a,
.btn-tel a{
position: relative;
width: 360px;
min-height: 70px;
display: flex;
align-items: center;
justify-content: center;
padding: 14px 55px 16px;
border-radius:9999px;
text-align: center;
line-height: 1.5;
font-size:1.6rem;
font-weight: 500;
color: #fff;
}
.btn-internal a::before,
.btn-web a::before{
content: "";
position: absolute;
z-index: 10;
top: 0;
right: 24px;
width: 21px;
height: 100%;
background: url("./img/arrow.svg") 99% calc(50% + 1px) no-repeat;
background-size: 21px auto;
transition: all .2s ease-in-out;
}
.btn-internal a:hover::before,
.btn-web a:hover::before{
}
.btn-internal a::after,
.btn-web a::after{
}
.btn-internal a:hover::after,
.btn-web a:hover::after{
}



.btn-internal a{
background: #eae9e5;
color: #4c1015;
}


.btn-web a{
background: #3c7af5;
}
.btn-web a::before{
background-image: url("./img/arrow_wt.svg");
}


.btn-tel{
display: none;
}
.btn-tel a{
background: #4db2a4;
}
.btn-tel a::before{
content: "";
position: absolute;
top: 0;
left: 25px;
width: 20px;
height: 100%;
background: url(./img/ico_tel.svg) 0 50% no-repeat;
background-size: 20px auto;
}
.btn-tel a::after{
}

.btn-tel a:hover{
}
.btn-tel a:hover::after{
}




.btn-link{
margin: 20px 0;
text-align: right;
}
.btn-link a{
position: relative;
display: inline-block;
padding: 4px 22px 5px 0;
background: url("./img/arrow.svg") 99% calc(50% - 0px) no-repeat;
background-size: 16px auto;
line-height: 1.5;
font-weight: 500;
text-align: right;
text-decoration: none;
}
.btn-link a:hover{
}







/* ================== */
/*  テーブル　　　　　*/
/* ================== */
table {
width: 98%;
margin:5rem auto 7rem;
}
table th {
width: 22%;
padding: 20px 16px;
background: #eae9e5;
border: 1px solid #c1b6b0;
line-height: 1.6;
text-align:center;

word-break: break-all;
}
table td {
background: #fff;
border: 1px solid #c1b6b0;
padding: 20px 16px;
line-height: 1.6;
word-break: break-all;
}
table a{
text-decoration: underline;
}
table a:hover{
text-decoration: none;
}

table td .caption{
white-space:normal;
}






/* ================== */
/*  PCカスタマイズ共通　*/
/* ================== */
.caption,
.source{
margin: 10px 0 0;
padding: 0 0 4px;
font-size:1.0rem;
line-height: 1.5;
color: #999;
/*overflow: auto;*/
letter-spacing: 0;
text-align: center;
word-break: break-all;
}

.caption a {
display: inline;
color: #999;
text-decoration: underline;
}
.caption a:hover{
text-decoration: none;
}




.marker{
position: relative;
display: inline;
/*background: linear-gradient(transparent 60%, rgba(255, 85, 0, .3) 0%) no-repeat bottom 0 left; */
/*border-bottom: 1px solid #fa4f05;*/
background: linear-gradient(transparent 50%, rgba(253, 229, 128, 1.0) 0%) no-repeat bottom 0 left; 
padding: 0 .5% 0;
margin: 0 .5%;
font-weight: 500;
line-height: 1;
}
.txt_bold{
font-weight: 500; 	
color: #3c7af5; 	
font-size: 1.9rem; 	
/* background: linear-gradient(transparent 50%, rgba(253, 229, 128, 1.0) 0%) no-repeat bottom 0 left; */ 	
} 

/* float-wrap */

.float-wrap{
margin: 50px 0;
padding: 0 20px;
}
.float-wrap .catch{
margin: 0 0 15px;
text-decoration: underline;
font-size:2.2rem;
}


.float-wrap .flame{
position: relative;
}


.float-wrap img{
width: auto;
}
.float-wrap p{
margin: 10px 0;
padding: 0;
}
.float-wrap ul{
display: inline-block;
margin: 10px 0;
}
.float-wrap .fl{
width: 320px;
padding: 0 30px 20px 0;
text-align: left;
}
.float-wrap .fr{
width: 320px;
padding: 0 0 20px 30px;
text-align: left;
}

.float-wrap .ct{
width: auto;
margin: 0 auto;
padding: 0 0 20px;
text-align: center;
}



/* ================== */
/*  サイトマップ*/
/* ================== */
.smap h2{
margin: 0 0 25px;
}
.smap ul{
margin: 0 0 70px;
}






/* ================== */
/*  追加パーツ*/
/* ================== */



/*--------------------------------------
　mokuji_PC
---------------------------------------*/

.mokuji{
transition: .3s;
/*デフォルトで非表示にする*/
opacity: 1;
/*visibility: hidden;*/
}
/*このクラスが付与されると表示する*/
.mokuji.active{
opacity: 1;
visibility: visible;
}
/*このクラスが付与されると停止する*/
.mokuji.absolute{
}


.mokuji{
position: relative;
width: 800px;
margin: 30px auto 80px;
}


.mokuji .sttl{
z-index: 2;
margin: 0;
padding: 10px 40px 12px;
background: #533c2e;
border-radius:30px 30px 0 0;
color: #fff;
}

.mokuji .sttl::before{
content: "";
position: absolute;
z-index: 10;
top: 24px;
left: 105px;
width: 50px;
height: 13px;
background: url("./img/eng_idx.svg") 0 0 no-repeat;
background-size: auto 13px;
}
.mokuji .sttl .inner::after{
}



.mokuji #toc{
position: relative;
padding: 0 0 30px;
background: #efeeea;
border-radius:0 0 30px 30px;
}

.mokuji #toc ul{
margin:0;
padding:20px 40px 20px;
}
.mokuji #toc ul li{
position: relative;
margin: 0 0;
padding: 2px 0 2px 35px;
text-align: left;
line-height: 1.4;
}
.mokuji #toc ul li.chapter-h-two{
counter-increment: count;
}
.mokuji #toc ul li.chapter-h-two::before {
content: counter(count, decimal-leading-zero)".";/*2桁対応*/
position: absolute;
top: 12px;
left: 0;
transform: translate(0,-50%);
background: none;
font-size:1.6rem;
font-weight: 500;
color: #4db2a4;
}

.mokuji #toc ul li.chapter-h-three::before{
width: 0;
height: 0;
background: none;
border: none;
}

.mokuji li a{
display: inline-block;
width: auto;
padding: 4px 0 6px;
background: none;
font-weight: 500;
font-size:1.6rem;
text-decoration: none;
letter-spacing: 0;
}
.mokuji #toc ul li.chapter-h-three a{
position: relative;
padding: 4px 0 6px 1.5rem;
}
.mokuji #toc ul li.chapter-h-three a::before{
content: "";
position: absolute;
top: 0;
left: 0;
width: 8px;
height: 100%;
background: url("./img/l_deco.svg") 0 7px no-repeat;
background-size: 8px auto;
}


/* accordion_grd */
.mokuji .text {
height: 160px;
overflow: hidden;
}
.mokuji .show_more2 {
position: absolute;
bottom: 0;
left: 0px;
width: 100%;
height: 60px;
padding-top: 50px;
text-align: center;
line-height: 70px;
background: linear-gradient(
180deg,
rgb(239, 238, 234, 0) 0%,
rgb(239, 238, 234, 1) 40%
);
border-radius:0 0 15px 15px;
cursor: pointer;
transition: bottom 0.2s;
}
.mokuji .active{
background: none;
/*bottom: -20px;*/
}
.mokuji .show_more2 span{
position: relative;
top: -30px;
display: inline-block;
width: 140px;
padding: 8px 30px 10px;
background: url(./img/plus.svg) 90% calc(50% - 1px) no-repeat #fff;
background-size: 12px auto;
border-radius:9999px;
border: 1px solid #c1b6b0;
text-align: center;
line-height: 1.5;
color: #4c1015;
font-weight: 500;
font-size:1.3rem;
}
.mokuji .active span{
background: url(./img/minus.svg) 90% 50% no-repeat #fff;
background-size: 12px auto;
}



.mokuji li br{
display: none;
}







/* relations_PC */
.relations{
position: relative;
width: 800px;
margin: 30px auto 80px;
}


.relations .relations-title{
position: relative;
z-index: 2;
padding: 10px 40px 12px;
background: #533c2e;
border-radius:30px 30px 0 0;
line-height: 1.5;
font-weight: 500;
font-size:2.0rem;
letter-spacing: .1em;
color: #fff;
}
.relations .relations-title::before{
content: "";
position: absolute;
z-index: 10;
top: 20px;
left: 140px;
width: 50px;
height: 13px;
background: url("./img/eng_links.svg") 0 0 no-repeat;
background-size: auto 13px;
}

.relations .relations-wrapper{
position: relative;
padding: 20px 40px 25px;
background: #efeeea;
border-radius:0 0 30px 30px;
}
.relations ul{
margin: 0;
}
.relations ul li{
position: relative;
margin: 0 0;
padding: 0 0 0 0!important;
text-align: left;
line-height: 1.2;
}
.relations ul li::before{
width: 0!important;
height: 0!important;
background: none!important;
border: none!important;
}

.relations li a{
position: relative;
display: inline-block;
width: auto;
padding: 0 0 0 30px;
font-size:1.5rem;
text-decoration: none;
}
.relations li a::before{
content: "";
position: absolute;
z-index: 10;
top: 0;
left: 0;
width: 22px;
height: 100%;
background: url("./img/arrow_ccl.svg") 0 8px no-repeat;
background-size: 22px auto;
transition: all .2s ease-in-out;
}
.relations li a:hover::before{
}
.relations ul li a::after {
}
.relations ul li a:hover::after{
}
.relations-box__pic {
  display: none;
}




/* ================== */
/*  アイコン付き見出し*/
/* ================== */
.point{
position: relative;
margin: 40px 0 40px 25px;
padding: 18px 40px 20px 85px;
background: #f6f2e7;
border-radius:20px;
line-height: 1.5;
font-size:2.2rem;
font-weight: 500;
}
.point::before{
content: "";
position: absolute;
top: -13px;
left: -25px;
width: 90px;
height: 90px;
background: url(./img/eng_pt.svg) 50% 50% no-repeat #fde580;
background-size: auto 13px;
border-radius:50%;
}

.check{
position: relative;
margin: 40px 0 40px 25px;
padding: 18px 40px 20px 85px;
background: #f6f2e7;
border-radius:20px;
line-height: 1.5;
font-size:2.2rem;
font-weight: 500;
}
.check::before{
content: "";
position: absolute;
top: -13px;
left: -25px;
width: 90px;
height: 90px;
background: url(./img/eng_ck.svg) 50% 50% no-repeat #4db2a4;
background-size: auto 13px;
border-radius:50%;
}




/* spv_PC */
.spv{
position: relative;
min-height: 268px;
margin: 1rem 0 7rem;
padding: 40px 50px;
background: #fff;
border-radius:30px;
}
.spv::before{
content: "";
position: absolute;
top: -20px;
right: -20px;
width: 88px;
height: 88px;
background: url("./img/sps_ccl.png") 0 0 no-repeat;
background-size: 88px auto;
}
.spv .flame{
position: absolute;
top: 40px;
left: 50px;
width: 190px;
}
.spv .flame::before{
content: "";
position: absolute;
top: -25px;
left: -35px;
width: 158px;
height: 130px;
background: url("./img/shape1.svg") 0 0 no-repeat;
background-size: 158px auto;
transform: scale(1, -1) rotate(15deg);
opacity: .5;
}
.spv .flame::after {
content: "";
position: absolute;
z-index: 2;
bottom: -18px;
right: -32px;
width: 110px;
height: 110px;
background: #dcf2ef url(/wp/wp-content/uploads/ohkuma02.png) 0 0 no-repeat;
background-size: 110px auto;
border-radius: 6rem;  
}
.spv .flame img{
position: relative;
object-fit: cover;
border-radius:50%;
}

.spv .headArea{
margin: 0 0 10px 230px;
}
.spv .mainArea{
margin: 0 0 0 230px;
}

.spv .headArea .pos{
position: relative;
top: -2px;
display: inline-block;
margin: 0 25px 0 0;
padding: 5px 20px 7px;
background: #533c2e;
border-radius:10px;
line-height: 1;
font-size:2.0rem;
font-weight: 500;
color: #fff;
}
.spv .headArea .sttl{
display: inline-block;
margin: 0;
font-size:3.0rem;
}
.spv .headArea .sttl .fontS{
font-size:2.4rem;
}
.spv .txtArea{
margin: 0 0 20px;
padding: 0 0 10px;
border-bottom: 2px solid rgba(83, 60, 46,.50);
font-weight: 500;
font-size:1.8rem;
}
.spv .tags{
}
.spv .tags .tag{
display: inline-block;
margin: 0 .5rem 0 0;
padding: 8px 20px 10px;
background: #fbfbfb;
border: 1px solid #c1b6b0;
border-radius:9999px;
line-height: 1;
font-weight: 500;
font-size:1.4rem;
}



/* talks_PC */
.talks{
position: relative;
margin: 10rem 0;
}
.talk .imgArea{
width: 170px;
float: right;
}
.talk .imgArea img{
margin: 0 0 15px;
height: 170px;
object-fit: cover;
border-radius:50%;
}
.talk .imgArea .cap{
padding: 6px 20px 8px;
background: #4db2a4;
border-radius:10px;
line-height: 1;
text-align: center;
color: #fff;
}
.talk .txtArea{
position: relative;
width: 755px;
float: left;
padding: 20px 40px;
background: #efeeea;
border-radius:30px;
}
.talk .txtArea::before{
content: "";
position: absolute;
top: 0;
right: -35px;
width: 36px;
height: 100%;
background: url(./img/tri1.svg) 0 50% no-repeat;
background-size: 36px auto;
}
/*　右回り込み　*/
.left .talk .imgArea {
  float: left;
}
.left .talk .txtArea {
 float: right;
}
.left .talk .txtArea::before {
transform: translateY(0%) rotate(180deg);
right: 75rem;
}


/* intv_PC */
.intv{
position: relative;
margin: 10rem 0;
}
.intv .sttl{
margin: 0 0 30px;
padding: 0 0 0 70px;
font-size:2.6rem;
}
.intv .sttl::before{
content: "";
position: absolute;
top: 18px;
left: 0;
width: 50px;
height: 2px;
background: #533c2e;
}
.intv .ywBox{
position: relative;
padding: 30px 50px;
background: #FBF6DE;
border-radius:30px;
overflow: hidden;
}
.intv .ywBox::before{
content: "";
position: absolute;
bottom: -120px;
right: -95px;
width: 255px;
height: 210px;
background: url("./img/shape1.svg") 0 0 no-repeat;
background-size: 255px auto;
transform: scale(1, -1) rotate(15deg);
opacity: .4;
}
.intv .imgArea{
position: absolute;
width: 150px;
top: 30px;
left: 50px;
}
.intv .imgArea img{
margin: 0 0 15px;
object-fit: cover;
border-radius:50%;
}
.intv .imgArea .cap{
padding: 6px 20px 8px;
background: #4db2a4;
border-radius:10px;
line-height: 1;
text-align: center;
color: #fff;
}
.intv .txtArea{
position: relative;
padding: 0 0 0 190px;
}
.intv .caption{
margin: 15px 0 0;
text-align: left;
}
.intv .txtArea .txt_bold{
color:#3c7af5;
}





/* case_PC */
.case{
position: relative;
margin: 10rem 0;
}

.case .headArea{
position: relative;
z-index: 1;
margin: 0 0 -22px;
}
.case .headArea .catch{
margin: 0 50px;
padding: 2px 50px 4px;
background: #fde580;
border-radius:10px;
text-align: center;
font-size:2.4rem;
}

.case .wtBox{
position: relative;
background: #fff;
padding: 60px 50px 30px;
border: 2px solid #efeeea;
border-radius:30px;
}
.case .wtBox .imgArea{
  position: absolute;
  top: 60px;
  left: 50px;
  width: calc((100% - 55rem) / 3);
}
.case .wtBox .imgArea img{
/* object-fit: cover; */
object-fit: contain;
}
.case .wtBox .txtArea{
  padding: 0 0 0 20rem;
  width: calc((100% - -90rem) / 2);
}
.case .wtBox .ttlArea{
margin: 0 0 20px;
}
.case .wtBox .ttlArea .pos{
position: relative;
top: -2px;
display: inline-block;
margin: 0 15px 0 0;
padding: 5px 20px;
background: #fcfaf2;
border-radius:10px;
line-height: 1;
font-weight: 500;
}
.case .wtBox .ttlArea .sttl{
display: inline-block;
margin: 0;
font-size:3.0rem;
}
.case .wtBox .ttlArea .sttl .fontS{
font-size:2.4rem;
}
.case .botArw{
padding: 30px 0;
text-align: center;
}
.case .botArw img{
width: 45px;
}
.botArw {
  text-align: center;
}






/* botCommon_PC */
.botCommon{
position: relative;
padding: 130px 0;
background: url(./img/lineart1.svg) 100% 55px no-repeat #f8cb50;
background-size: 100vw auto;
}
.botCommon::before{
content: "";
position: absolute;
top: 130px;
left: calc(50% - 500px);
width: calc(50% + 500px);
height: calc(100% - 260px);
background: url(./img/lineart1_yw.svg) 100% -75px no-repeat #fff;
background-size: 100vw auto;
border-radius:50px 0 0 50px;
}

.botCommon .areaInner{
padding: 90px 80px 30px;
}
.botCommon .areaInner::before{
content: "";
position: absolute;
top: -35px;
left: 0;
width: 100%;
height: 110px;
background: url("./img/sps_ccl.png") 50% 0 no-repeat;
background-size: 110px auto;
}

.botCommon .sctTtlArea {
margin: 0 0 50px;
text-align: center;
}
.botCommon .sctTtlArea .catch{
margin: 0 0 30px;
font-size:2.4rem;
color: #4db2a4;
}
.botCommon .sctTtlArea .catch .fontS{
font-size:1.8rem;
}
.botCommon .sctTtlArea .fuki{
display: inline-block;
margin: 0 0 15px;
padding: 2px 20px 6px;
background: #533c2e;
border-radius:10px;
line-height: 1;
font-size:2.4rem;
font-weight: 500;
color: #fff;
}
.botCommon .sctTtlArea .sctTtl{
margin: 0 0 20px;
font-size:4.0rem;
}
.botCommon .sctTtlArea .sctTtl .fontL{
display: inline;
background: url(./img/marker2_yw.png) 0 90% repeat-x;
background-size: 78px auto;
font-size:5.0rem;
}
.botCommon .sctTtlArea p{
padding: 0 20px;
}


.botCommon .mainArea{
width: 510px;
margin: 0 0 20px 335px;
}
.botCommon .mainArea .flame{
position: absolute;
left: 150px;
width: 230px;
margin: 15px 0 0;
}
.botCommon .mainArea .flame::before{content: "";position: absolute;z-index: 2;bottom: -36px;right: -35px;width: 130px;height: 130px;background: #dcf2ef url("./img/ohkuma01.png") 0 0 no-repeat;background-size: 129px auto;border-radius: 6rem;}
content: "";	
position: absolute;
top: -20px;
left: -110px;
width: 260px;
height: 210px;
background: url(./img/shape1.svg) 0 0 no-repeat;
background-size: 260px auto;
transform: scale(1, -1) rotate(15deg);
opacity: .5;
}
.botCommon .mainArea .flame img{
position: relative;
z-index: 1;
}

.botCommon .intro{
margin: 0 0 15px;
}
.botCommon .intro .pos{
position: relative;
top: -2px;
display: inline-block;
margin: 0 25px 0 0;
padding: 5px 20px 7px;
background: #533c2e;
border-radius:10px;
line-height: 1;
font-size:2.0rem;
font-weight: 500;
color: #fff;
}
.botCommon .intro .sttl{
display: inline-block;
margin: 0;
font-size:3.0rem;
}
.botCommon .intro .sttl .fontS{
font-size:2.4rem;
}
.botCommon .txtArea{
margin: 0 0 30px;
padding: 10px 25px;
background: #fcfaf2;
border-radius:20px;
}
.botCommon .botArea{
margin: 0 30px 70px;
padding: 0 0 15px;
border-bottom: 2px solid rgba(83, 60, 46, .50);
font-weight: 500;
position: relative;
}
.botArea.inview_re::before {
  content: "";
  position: absolute;
  z-index: 2;
  bottom: -83px;
  right: -11.5rem; 
  width: 143px;
  height: 170px;
  background: url(./img/cat.png) 0 0 no-repeat;
  background-size: auto;
  background-size: 143px auto;
}

.botCommon .btns{
position: relative;
display: flex;
flex-wrap: wrap;
padding: 0 6%;
}
.botCommon .btns > div{
position: relative;
display: flex;
width: 44%;
margin: 20px auto 5px;
}
.botCommon .btns > div a{
display: flex;
align-items: center;
justify-content: center;
width: 100%;
}
.botCommon .btns .btn-tel{
display: none;
}

.botCommon .btns .fuki{
position: absolute;
z-index: 1;
top: -48px;
left: 5%;
width: 90%;
padding: 12px 10px 14px;
background: #f8cb50;
border-radius:10px;
line-height: 1;
font-size:1.4rem;
font-weight: 500;
}
.botCommon .btns .fuki::before{
content: "";
position: absolute;
bottom: -17px;
left: 0;
width: 100%;
height: 18px;
background: url(./img/tri2.svg) 50% 0 no-repeat;
background-size: 18px auto;
}



/* End_PC */






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


/*------------
common--480px
------------*/

html{
}

.mainWrap .catch, .mainWrap .sttl,
.index .catch, .index .sttl{
font-size: 1.9rem;
}

#contents{
position: relative;
z-index: 0;
}



body{
min-width: 320px;
text-align:left;
line-height:1.9;
word-break: break-all;
overflow-x: hidden;
}


.sp,
.sp_br{
display:block!important;
}

.pc,
.pc_br{
display:none!important;
}

img:not([width]) {
width:100%;
height:auto;
max-width: 100%;
}

a{
text-decoration: none;
}
a:hover,
a:hover img{
opacity: 1;
}

.areaInner{
width: auto;
margin: 0;
}



/* notice 30px_4% */



/*--------------------------------------
　body_SP
---------------------------------------*/





/*--------------------------------------
　header_SP
---------------------------------------*/
#header{
position: relative;
z-index: 14;
min-height: 0;
margin: 0;
padding: 0 3% 30px;
background: url("./img/headbg_sp.png") 100% 100% no-repeat;
background-size: contain;
}
#header::before{
}

#header .topArea{
position: static;
width: 100%;
margin: 0 0 10px;
padding: 4px 0 10px;
text-align: left;
}


#header .siteName,
#header .siteName a,
#header .sps{
margin: 0 0;
font-size:1.0rem;
font-weight: 300;
line-height: 1.6;
text-align: left;
}

#header .logo{
position: relative;
left: 0;
width: 19rem;
}
#header .logo img{
width: 100%;
}






/*--------------------------------------
　page-top_SP
---------------------------------------*/
#page-top{
position: fixed;
z-index: 101;
bottom: 2%;
right: 2%;
width: 5.5rem;
}
#page-top{
  transition: .3s;
  /*デフォルトで非表示にする*/
  opacity: 0;
  visibility: hidden;
}
/*このクラスが付与されると表示する*/
#page-top.active{
  opacity: 1;
  visibility: visible;
}
/*このクラスが付与されると表示する*/
#page-top.absolute{
}


/*--------------------------------------
　fixBan_SP
---------------------------------------*/

#fixBan{
position: fixed;
z-index: 110;
width: 26rem;
top: auto;
bottom: 2%;
left: 0;
right: auto;

transition: .3s;
/*デフォルトで非表示にする*/
opacity: 0;
visibility: hidden;
}
/*このクラスが付与されると表示する*/
#fixBan.active{
opacity: 1;
visibility: visible;
}
/*このクラスが付与されると停止する*/
#fixBan.absolute{
opacity: 0;
visibility: hidden;
}
/ボタンエリア/ 	
#fixBan .spbtn { 	
display: flex; 	
line-height: 1.4; 	
} 	
#fixBan .spbtn .left { 	
background: #ed9534; 	
color: #fff; 	
padding: 1rem 1.5rem;
height: 5.5rem;
} 	
#fixBan .spbtn .right { 	
background: #4db2a4; 	
color: #fff; 	
padding: 0 .7rem;
line-height: 1.3;
height: 5.5rem;
} 	
#fixBan .spbtn .small { 	
font-size: 1.1rem; 	
}
#fixBan .spbtn {
display: flex;
width: 26rem
}
#fixBan img {
  width: 26rem;
}

/*--------------------------------------
　Global Nav_SP挙動
---------------------------------------*/
#gNav{
position: fixed;
top: 0;
right: 0;
z-index: 112;

transition: .3s;
/*デフォルトで非表示にする*/
opacity: 1;
visibility: hidden;
}
/*このクラスが付与されると表示する*/
#gNav.active{
opacity: 1;
visibility: visible;
}
/*このクラスが付与されると表示する*/
#gNav.absolute{
}


/*--------------------------------------
　Global Nav_SP
---------------------------------------*/

/* ハンバーガーメニュー */
#gNav #showRight{
width: 5.2rem;
position: fixed;
top: 0;
right: 0;
z-index: 10000;
}
#gNav button.active{
background: url(./img/sp-btn-menu_off.png) 0 0 no-repeat;
background-size: 50px auto;
}
#gNav button.active img{
opacity: 0;
}


/* General styles for all menus */
.cbp-spmenu {
position: fixed;
padding: 50px 0 0;
background: #f6f2e7;
/*overflow: auto;*/
}


.cbp-spmenu #mainMenu{
overflow-y: scroll;   
-ms-overflow-style: none; /* IE, Edge 対応 */
scrollbar-width: none;/* Firefox 対応 */
position: relative;
z-index: 1;
overflow: auto;
margin: 0 0;
padding: 20px 0 0;
height: 100%;
/*border-top: 1px solid #cccccc;*/
}

.cbp-spmenu #mainMenu::-webkit-scrollbar{
display: none;/* Chrome, Safari 対応 */
}


.cbp-spmenu a {
display: block;
padding: 14px 10% 14px;
text-decoration: none;
line-height: 1.3;
font-size:1.4rem;
}
.cbp-spmenu li a {
padding: 16px 10% 16px;
}
.cbp-spmenu .sttl{
margin: 0;
font-size:1.6rem;
letter-spacing: 0;
}

.cbp-spmenu .sttl a {
background: url(./img/arrow.svg) 95.5% 50% no-repeat;
background-size: 15px auto;
}

.cbp-spmenu .sttl.tglMenu a {
background: none;
}
.cbp-spmenu .sttl.tglMenu a::before {
content: '';
display: inline-block;
width: 1.4rem;
height: .1rem;
background-color: #293040;
position: absolute;
right: 1.7rem;
top: 50%;
transform: translateY(-50%);
transition: opacity .5s;
}
.cbp-spmenu .sttl.tglMenu a::after {
content: '';
display: inline-block;
width: 1.4rem;
height: .1rem;
background-color: #293040;
position: absolute;
right: 1.7rem;
top: 50%;
transform: translateY(-50%) rotate(-90deg);
transition: transform .5s;
}
.cbp-spmenu .sttl.open a::before {
opacity: 0;
}
.cbp-spmenu .sttl.open a::after {
transform: translateY(-50%) rotate(-180deg);
}



.cbp-spmenu .home a {
background: url(./img/arrow.svg) 95.5% 50% no-repeat;
background-size: 15px auto;
}
.cbp-spmenu .subList a{
padding: 14px 10% 14px calc(5% + 2em);
font-weight: 300;
}

.cbp-spmenu li a {
background: url(./img/arrow.svg) 95.5% 50% no-repeat #f8edbe;
background-size: 15px auto;
padding: 14px 10% 14px calc(5% + 1em);
font-weight: 300;
}



.cbp-spmenu a:hover {
opacity: 1;
}
.cbp-spmenu a:active {
}

/* Orientation-dependent styles for the content of the menu */
.cbp-spmenu-vertical {
/*width: calc(100% - 100px);*/
width: 100%;
height: 100%;
top: 0;
z-index: -1;
}
.cbp-spmenu-vertical a {
border-bottom: 1px solid #d5cec2;
padding: 16px 11% 16px 5%;
}
.cbp-spmenu-vertical .home a {
border-bottom: 1px solid #d5cec2;
}
.cbp-spmenu-vertical .smap .home a {
border-top:none;
}



/* Vertical menu that slides from the left or right */
.cbp-spmenu-right {
opacity: 0;
right: -100%;
/*right: -280px;*/
/*right: 0;*/
}
.cbp-spmenu-right.cbp-spmenu-open {
opacity: 1;
right: 0;
z-index: 1000;
}


/* Transitions */
.cbp-spmenu,
.cbp-spmenu-push {
transition: all 0.3s ease;
}

#gNav .accChild {
display: none;
}

body.body-fix{
overflow: hidden;
}






/*--------------------------------------
Main Contents_SP
---------------------------------------*/

#contents {
position: relative;
z-index: 14;
width: 100%;
overflow-x: hidden;
padding: 0 0 0;
}

.mainWrap {
position: relative;
z-index: 1;
padding: 30px 0 100px;
min-height: 0;
width: auto;
float: none;
}



/*--------------------------------------
pankuzu_SP
---------------------------------------*/

#pankuzuWrap{
overflow: auto;
white-space: nowrap;
margin: 0 0 0;
padding: 4px 5% 2px;
position: static;
box-sizing: border-box;
width: auto;
}
#pankuzuWrap::-webkit-scrollbar{
height: 3px;
}
#pankuzuWrap::-webkit-scrollbar-track{
border-radius: 3px;
background: #eee;
}
#pankuzuWrap::-webkit-scrollbar-thumb{
border-radius: 3px;
background: #bbb;
}

#pankuzu{
box-sizing: border-box;
width: 100%;
padding: 0.3em 0;
font-size:1.1rem;
}
#pankuzu a{
text-decoration: underline;
color: #666;
}


/*--------------------------------------
　h1Area_SP
---------------------------------------*/
.h1Area{
position: relative;
z-index: 2;
padding: 20px 5%;
background: url(./img/h1_bg.png) 0 0 no-repeat #f8edbe;
background-size:125px auto;
}

.h1Area h1{
position: relative;
margin: 0 0 12px;
font-size:2.6rem;
line-height: 1.4;
}
.h1Area h1::before{
}
.h1Area .note{
line-height: 1.5;
font-size:1.2rem;
color: #707070;
}
.h1Area .lower_eyecatch {
  width: 85%;
}



/*--------------------------------------
　Footer_SP
---------------------------------------*/

footer{
position: relative;
z-index: 13;
width: 100%;
background: #f6f2e7;
padding: 0 0 10px;
}


footer .footInner{
width: auto;
margin: 0;
padding: 35px 0 0;
}


.footLogo{
position: relative;
width: 19rem;
margin: 0 auto 30px;
}

footer a{
line-height: 1.4;
font-size: 1.3rem;
}


footer .footBox{
margin: 0 0 0;
/*z-index: 0;*/
}
.footBox:first-of-type{
border-top: 1px solid rgba(151,154,158,.3);
}
.footBox a{
}
.footBox a:hover{
opacity: 1;
}


.footBox .sttl{
margin: 0;
padding: 0;
border: none;
background: none;
}
.footBox .sttl a{
display: block;
padding: 1.2em 10% 1.3em 4%;
font-size: 1.5rem;
border-bottom: 1px solid rgba(151,154,158,.3);
text-align: left;
letter-spacing: 0;
}

.footBox .sttl a::before {
content: '';
display: inline-block;
width: 1.4rem;
height: .1rem;
background-color: #293040;
position: absolute;
right: 1.7rem;
top: 50%;
transform: translateY(-50%);
transition: opacity .5s;
}
.footBox .sttl a::after {
content: '';
display: inline-block;
width: 1.4rem;
height: .1rem;
background-color: #293040;
position: absolute;
right: 1.7rem;
top: 50%;
transform: translateY(-50%) rotate(-90deg);
transition: transform .5s;
}


.footBox > ul{
padding: 0;
}
.footBox li{
display: block;
}


.footBox li:after{
content: "";
}

.footBox li a{
display: block;
padding: 1.3em 10% 1.3em 10.5%;
background: url(./img/arrow.svg) 95.5% 50% no-repeat;
background-size: 15px auto;
border-bottom: 1px solid #d5cec2;
text-align: left;
font-size:1.3rem;
}
.footBox li li a{
padding: 1.3em 7% 1.3em 16.5%;
}
 
 
.footBox li a.ssttl{
display: block;
padding: 1.3em 10% 1.3em 4.5%;
background: url(./img/arrow.svg) 95.5% 50% no-repeat;
background-size: 15px auto;
border-bottom: 1px solid #d5cec2;
}

.footBox li.sp a{
padding: 1.3em 10% 1.3em 4.5%;
}

/* サイトマップ */
footer .smap .sttl a{
background: url(./img/arrow.svg) 95.5% 50% no-repeat;
background-size: 15px auto;
font-size:1.4rem;
}
footer .smap .sttl a::before,
footer .smap .sttl a::after{
width: 0;
height: 0;
background: none;
border: none;
}



.footBox.accordion .accChild{
display: none;
/*background: #d2ebee;*/
}
.footBox.accordion .accChild a{
background: url(./img/arrow.svg) 95.5% 50% no-repeat #f8edbe;
background-size: 15px auto;
border-bottom: 1px solid #d5cec2;
}


.footBox.accordion .open a::before {
opacity: 0;
}
.footBox.accordion .open a::after {
transform: translateY(-50%) rotate(-180deg);
}




.footBox li.subCat{
display: block;
margin: 0 0 0 0;
}

.footBox ul.subList{
display: block;
margin: 0 0 0;
}

.footBox ul.subList > li:first-child::before{
content: "";
margin: 0;
}

.footBox ul.subList li:after{
content: "";
}


footer .noticeArea{
padding: 10px 5% 0;
color: #666666;
}
footer .noticeArea p{
font-size:1.1rem;
text-align: center;
letter-spacing: 0;
}
footer .noticeArea p:nth-child(1){
margin: 0 0 10px;
padding: 14px 5% 0;
text-align: left;
}
footer .noticeArea a{
color: #666666;
text-decoration: underline;
font-size:1.1rem;
}
footer .noticeArea .botPrg{
padding: 0 0 0;
}



footer .botArea{
min-width: 0;
padding: 25px 5% 30px;
box-sizing: border-box;
text-align: center;
}
footer .botArea .copy{
padding: 0 0;
font-size:1.1rem;
text-align: center;
line-height: 1.6;
}
footer .botArea a{
display: inline-block;
text-decoration: none;
font-size:1.1rem;
}




/* ================== */
/*  SP共通パーツ　*/
/* ================== */

/* p */
.mainWrap p, .index p{
margin: 1rem 0;
line-height: 1.9;
}
.mainWrap > .areaInner > p, .index > .areaInner > p{
padding: 0 5%;
}

.areaInner .tab-note {
  display: block;
  width: 100%;
  margin: 0 auto 35px;
  padding: 15px 20px;
  line-height: 1;
  background: rgba(240, 224, 192, .50);
  border-radius: 20px;
  text-align: center;
}

.mainWrap h2 {
position: relative;
margin: 40px 5% 20px;
padding: 17px 3% 17px 3.5rem;
background: #533c2e;
border-radius:15px;
font-size:2.3rem;
color: #fff;
}
.mainWrap h2::before {
content: "";
position: absolute;
top: 1.8rem;
left: 1.5rem;
width: .3rem;
height: calc(100% - 36px);
background: #f8cb50;
border-radius:9999px;
}

.mainWrap h2 a{
position: relative;
display: block;
padding: 0 10% 0 0;
color: #fff;
}
.mainWrap h2 a::before{
content: "";
position: absolute;
top: 0;
right: .3rem;
width: 2rem;
height: 100%;
background: url("./img/arrow_ccl_wt.svg") 99% calc(50% + 0px) no-repeat;
background-size: 20px auto;
transition: all .2s ease-in-out;
}
.mainWrap h2 a:hover::before{
}
.mainWrap h2 a::after{
}
.mainWrap h2 a:hover::after{
}






.mainWrap h3{
position: relative;
margin: 30px 5%;
padding: 12px 2% 12px 3rem;
font-size:2.1rem;
}
.mainWrap h3::before{
content: "";
position: absolute;
z-index: -1;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: url(./img/h3_deco.svg) 10px 10px no-repeat #fff;
background-size: 35px auto;
border-radius:10px;
}

.mainWrap h3 a{
position: relative;
z-index: 1;
display: block;
padding: 0 10% 0 0;
}
.mainWrap h3 a::before{
content: "";
position: absolute;
top: 0;
right: .3rem;
width: 2.0rem;
height: 100%;
background: url("./img/arrow_ccl.svg") 99% calc(50% + 1px) no-repeat;
background-size: 20px auto;
transition: all .2s ease-in-out;
}
.mainWrap h3 a:hover::before{
}
.mainWrap h3 a::after{
}
.mainWrap h3 a:hover::after{
}





.mainWrap h4, .mainWrap h5, .mainWrap h6{
margin: 20px 5%;
padding: 10px 2% 10px .5rem;
border-bottom: 2px solid rgba(83, 60, 46, .5);
font-size:1.8rem;
}
.mainWrap h4::before, .mainWrap h5::before, .mainWrap h6::before{
}
.mainWrap h4 a, .mainWrap h5 a, .mainWrap h6 a{
position: relative;
padding: 0 5% 0 0;
}
.mainWrap h4 a::before, .mainWrap h5 a::before, .mainWrap h6 a::before{
content: "";
position: absolute;
z-index: 10;
top: 0;
right: 3px;
width: 1.6rem;
height: 100%;
background: url("./img/arrow_ccl.svg") 99% calc(50% + 1px) no-repeat;
background-size: 16px auto;
transition: all .2s ease-in-out;
}
.mainWrap h4 a:hover::before, .mainWrap h5 a:hover::before, .mainWrap h6 a:hover::before{
}
.mainWrap h4 a::after, .mainWrap h5 a::after, .mainWrap h6 a::after{
}
.mainWrap h4 a:hover::after, .mainWrap h5 a:hover::after, .mainWrap h6 a:hover::after{
}


.mainWrap ul{
margin: 1.5em 4% 1.5em;
padding:0.5em 1% 0;
}
.mainWrap ul li{
padding:0 0 .4rem 1.7rem;
}
.mainWrap ul li::before,
.index ul li::before{
position: absolute;
content: "";
top: 1.1rem;
left: .2rem;
width: 1.0rem;
height: 1.0rem;
}


.mainWrap ol {
margin: 1.5em 4% 1.5em;
padding:0.5em 1% 0;
}
.mainWrap ol li{
padding:0 0 .4rem 2.0rem;
}

.mainWrap ol li::before{
width: 1.6rem;
height: 1.7rem;
top: .7rem;
left: 0;
box-sizing: border-box;
padding: 0.13em 0 0;
letter-spacing: 0;
line-height: 1.0;
font-size:1.3rem;
}







/*  btns*/
.btn-internal,
.btn-web,
.btn-tel{
position: relative;
z-index: 1;
width: 85%;
display: flex;
align-items: center;
justify-content: center;
margin: 2em auto;
text-align: center;
}


.btn-internal a,
.btn-web a,
.btn-tel a{
position: relative;
width: 100%;
min-height: 7.0rem;
display: flex;
align-items: center;
justify-content: center;
padding: 1.2rem 18% 1.4rem;
border-radius:9999px;
text-align: center;
line-height: 1.5;
font-size:1.5rem;
font-weight: 500;
color: #fff;
}

.btn-internal a::before,
.btn-web a::before{
content: "";
position: absolute;
z-index: 10;
top: 0;
right: 2.3rem;
width: 2.0rem;
height: 100%;
background: url("./img/arrow.svg") 99% calc(50% + 0px) no-repeat;
background-size: 20px auto;
transition: all .2s ease-in-out;
}
.btn-internal a:hover::before,
.btn-web a:hover::before{
}
.btn-internal a::after,
.btn-web a::after{
}
.btn-internal a:hover::after,
.btn-web a:hover::after{
}


.btn-internal a{
background: #eae9e5;
color: #4c1015;
}


.btn-web a{
background: #3c7af5;
}
.btn-web a::before{
background-image: url("./img/arrow_wt.svg");
}




.btn-tel{
display: block;
}
.btn-tel a{
background: #4db2a4;
}
.btn-tel a::before {
position: absolute;
top: 0;
left: 2.8rem;
width: 1.9rem;
height: 100%;
background: url(./img/ico_tel.svg) 0 50% no-repeat;
background-size: 19px auto;
}
.btn-tel a::after {
}
.btn-tel a:hover{
}


.btn-link{
margin: 20px 5%;
text-align: right;
}
.btn-link a{
position: relative;
display: inline-block;
padding: 4px 2rem 4px 0;
background: url("./img/arrow.svg") 99% calc(50% + 1px) no-repeat;
background-size: 16px auto;
line-height: 1.5;
font-weight: 500;
text-align: right;
text-decoration: none;
}
.btn-link a:hover{
}


/* ================== */
/*  テーブル　　　　　*/
/* ================== */

table{
width: 88%;
margin:3rem auto;
border-bottom: 1px solid #d9d9d9;
}
table th {
width: 100%;
display: block;
padding: 1.5rem 2rem;
border-bottom: none;
line-height: 1.3;
text-align: center;
font-size:1.5rem;
}
table td {
width: 100%;
display: block;
padding: 1.5rem 2rem;
border-bottom: none;
line-height: 1.4;
text-align: center;
font-size:1.4rem;
}


.tableB .tblWrap{
overflow: auto;
width: 88%;
margin: 0 auto;
}
.tableB .note{
padding: 0 5%;
text-align: center;
color: #999999;
font-size:1.3rem;
}
.tableB table{
margin:10px auto;
}
.tableB table th {
white-space: nowrap;
width: 22%;
display: table-cell;
}
.tableB table td {
display: table-cell;
white-space: nowrap;
}



/* ================== */
/*  SPカスタマイズ共通　*/
/* ================== */
.caption,
.source{
margin: 0.8em 0 0;
font-size:1.0rem;
line-height: 1.3;
word-break: break-all;
color: #999;
}
.caption a:hover{
text-decoration: underline;
}


.marker{
}



/*  float-wrap */

.mainWrap .float-wrap .flame{
position: relative;
}
.mainWrap .float-wrap .caption{
margin-bottom: 5px;
}
.mainWrap .float-wrap{
margin: 2.5em 6%;
padding: 0 1%;
}
.mainWrap .float-wrap .catch{
margin: 0em 0 0.4em;
line-height: 1.7;
}
.mainWrap .float-wrap p{
margin: 1rem 0;
padding: 0;
}
.float-wrap ul{
display: block;
margin: 6px 0;
}
.mainWrap .float-wrap .fl,
.mainWrap .float-wrap .fr,
.mainWrap .float-wrap .ct{
float: none;
padding: 0 0 0.5em;
width: 100%;
width: auto;
text-align: left;
}

.mainWrap .float-wrap .fl.t_small{
width: 40%;
float: left;
padding: 0 5% 0 0;
}
.mainWrap .float-wrap .fr.t_small{
width: 40%;
float: right;
padding: 0 0 0 5%;
}
.mainWrap .float-wrap img {
}






/* ================== */
/*  サイトマップ*/
/* ================== */
.smap h2{
margin: 0 0 25px;
}
.smap ul{
margin: 0 0 70px;
}




/* ================== */
/*  追加パーツ*/
/* ================== */


/*--------------------------------------
　mokuji_SP
---------------------------------------*/

.mokuji{
transition: .3s;
/*デフォルトで非表示にする*/
opacity: 1;
/*visibility: hidden;*/
}
/*このクラスが付与されると表示する*/
.mokuji.active{
opacity: 1;
visibility: visible;
}
/*このクラスが付与されると停止する*/
.mokuji.absolute{
}


.mokuji{
position: relative;
width: auto;
margin: 10px 5% 70px;
}

.mokuji .sttl{
z-index: 2;
margin: 0;
padding: 10px 5% 12px;
background: #533c2e;
border-radius:20px 20px 0 0;
font-size:1.8rem;
color: #fff;
}

.mokuji .sttl::before{
content: "";
position: absolute;
z-index: 10;
top: 2.0rem;
left: 6.5rem;
width: 5.0rem;
height: 1.3rem;
background: url("./img/eng_idx.svg") 0 0 no-repeat;
background-size: auto 11px;
}
.mokuji .sttl .inner::after{
}




.mokuji #toc{
position: relative;
padding: 0 0 30px;
background: #efeeea;
border-radius:0 0 20px 20px;
}

.mokuji #toc ul{
margin:0;
padding:10px 5%;
}
.mokuji #toc ul li{
position: relative;
margin: 2px 0;
padding: 1px 0 1px 3.5rem;
text-align: left;
line-height: 1.4;
}
.mokuji #toc ul li.chapter-h-two{
counter-increment: count;
}
.mokuji #toc ul li.chapter-h-two::before {
content: counter(count, decimal-leading-zero)".";/*2桁対応*/
position: absolute;
top: 1.0rem;
left: 0;
width: 4rem;
transform: translate(0,-50%);
background: none;
font-size:1.5rem;
font-weight: 500;
color: #4db2a4;
}

.mokuji #toc ul li.chapter-h-three::before{
width: 0;
height: 0;
background: none;
border: none;
}

.mokuji li a{
display: inline-block;
width: auto;
padding: 4px 0 6px;
background: none;
font-weight: 500;
font-size:1.5rem;
text-decoration: none;
}
.mokuji #toc ul li.chapter-h-three a{
position: relative;
padding: 4px 0 6px 1.5rem;
}
.mokuji #toc ul li.chapter-h-three a::before{
content: "";
position: absolute;
top: 0;
left: 0;
width: .8rem;
height: 100%;
background: url("./img/l_deco.svg") 0 7px no-repeat;
background-size: 8px auto;
}


/* accordion_grd */
.mokuji .text {
height: 16.0rem;
overflow: hidden;
}
.mokuji .show_more2 {
position: absolute;
bottom: 0;
left: 0px;
width: 100%;
height: 5.0rem;
padding-top: 4.0rem;
text-align: center;
line-height: 7.0rem;
background: linear-gradient(
180deg,
rgb(239, 238, 234, 0) 0%,
rgb(239, 238, 234, 1) 60%
);
border-radius:0 0 15px 15px;
cursor: pointer;
transition: bottom 0.2s;
}
.mokuji .active{
background: none;
/*bottom: -20px;*/
}
.mokuji .show_more2 span{
position: relative;
top: -30px;
display: inline-block;
width: 14.0rem;
padding: 8px 3.0rem 10px;
background: url(./img/plus.svg) 90% calc(50% - 1px) no-repeat #fff;
background-size: 12px auto;
border-radius:9999px;
border: 1px solid #c1b6b0;
text-align: center;
line-height: 1.5;
color: #4c1015;
font-weight: 500;
font-size:1.3rem;
}
.mokuji .active span{
background: url(./img/minus.svg) 90% 50% no-repeat #fff;
background-size: 12px auto;
}









/* relations_SP */
.relations{
position: relative;
width: auto;
margin: 5rem 5% 0;
}

.relations .relations-title{
z-index: 2;
margin: 0;
padding: 10px 5% 12px;
background: #533c2e;
border-radius:20px 20px 0 0;
line-height: 1.5;
font-weight: 500;
font-size:1.8rem;
color: #fff;
}
.relations .relations-title::before{
content: "";
position: absolute;
z-index: 10;
top: 2.0rem;
left: 10.5rem;
width: 5.0rem;
height: 1.3rem;
background: url("./img/eng_links.svg") 0 0 no-repeat;
background-size: auto 11px;
}



.relations .relations-wrapper{
position: relative;
padding: 15px 5% 15px;
background: #efeeea;
border-radius:0 0 20px 20px;
}
.relations ul{
margin: 0;
}
.relations ul li{
position: relative;
margin: 0 0;
padding: 0 0 0 1rem!important;
text-align: left;
line-height: 1.4;
}
.relations ul li::before{
width: 0!important;
height: 0!important;
background: none!important;
border: none!important;
}

.relations li a{
display: inline-block;
width: auto;
padding: 0 0 0 2.5rem;
background: none;
font-weight: 300;
font-size:1.5rem;
text-decoration: none;
}
.relations li a p{
margin: .5rem 0 1rem;
line-height: 1.6;
}
.relations li a::before{
content: "";
position: absolute;
z-index: 10;
top: 0;
left: 0;
width: 2.0rem;
height: 100%;
background: url("./img/arrow_ccl.svg") 0 6px no-repeat;
background-size: 20px auto;
transition: all .2s ease-in-out;
}
.relations li a:hover::before{
}
.relations ul li a::after {
}
.relations ul li a:hover::after{
}





/* ================== */
/*  アイコン付き見出し*/
/* ================== */
.point{
position: relative;
margin: 40px 5% 40px;
padding: 10px 5% 20px 8.5rem;
background: #f6f2e7;
border-radius:10px;
line-height: 1.5;
font-size:1.8rem;
font-weight: 500;
}
.point::before{
content: "";
position: absolute;
top: -1.0rem;
left: 1.0rem;
width: 6.3rem;
height: 6.3rem;
background: url(./img/eng_pt.svg) 50% 50% no-repeat #fde580;
background-size: auto 10px;
border-radius:50%;
}

.check{
position: relative;
margin: 40px 5% 40px;
padding: 10px 5% 20px 8.5rem;
background: #f6f2e7;
border-radius:10px;
line-height: 1.5;
font-size:1.8rem;
font-weight: 500;
}
.check::before{
content: "";
position: absolute;
top: -1.0rem;
left: 1.0rem;
width: 6.3rem;
height: 6.3rem;
background: url(./img/eng_ck.svg) 50% 50% no-repeat #4db2a4;
background-size: auto 10px;
border-radius:50%;
}





/* spv_SP */
.spv{
position: relative;
min-height: 0;
margin: 0rem 5% 3rem;
padding: 40px 5% 20px;
background: #fff;
border-radius:15px;
}
.spv::before{
content: "";
position: absolute;
top: -1.5rem;
right: -1.5rem;
width: 6.6rem;
height: 6.6rem;
background: url("./img/sps_ccl.png") 0 0 no-repeat;
background-size: 66px auto;
}
.spv .flame{
position: absolute;
top: -2rem;
left: 11%;
width: 10.5rem;
}
.spv .flame::before{
content: "";
position: absolute;
top: 1rem;
left: -2.5rem;
width: 8.0rem;
height: 7.0rem;
background: url("./img/shape1.svg") 0 0 no-repeat;
background-size: 80px auto;
transform: scale(1, -1) rotate(15deg);
opacity: .5;
}
.spv .flame::after {
  content: "";
  position: absolute;
  z-index: 2;
  bottom: -11px;
  right: -22px;
  width: 70px;
  height: 70px;
  background: #dcf2ef url(/wp/wp-content/uploads/ohkuma02.png) 0 0 no-repeat;
  background-size: 70px auto;
  border-radius: 6rem;  
  }

.spv .flame img{
position: relative;
height: 12.5rem;
object-fit: cover;
border-radius:50%;
}

.spv .headArea{
 margin: 0 0 25px 16.5rem;
}
.spv .mainArea{
margin: 0 0 0;
}

.spv .headArea .pos{
position: relative;
top: -2px;
display: block;
width: 5.5rem;
margin: 0 0 0;
padding: 4px 5% 5px;
background: #533c2e;
border-radius:5px;
line-height: 1;
text-align: center;
font-size:1.3rem;
font-weight: 500;
color: #fff;
}
.spv .headArea .sttl{
display: inline-block;
margin: 0;
font-size:2.2rem;
}
.spv .headArea .sttl .fontS{
font-size:1.8rem;
}
.spv .txtArea{
margin: 0 0 20px;
padding: 0 0 15px;
border-bottom: 2px solid rgba(83, 60, 46,.50);
line-height: 1.6;
font-weight: 500;
font-size:1.6rem;
}
.spv .tags{display: flex;flex-wrap: wrap;gap: 8px;}
.spv .tags .tag{display: inline-block;/* margin: 0 .5rem 10px 0; */padding: 8px 12px;background: #fbfbfb;border: 1px solid #c1b6b0;border-radius:9999px;line-height: 1;font-weight: 500;font-size:1.2rem;white-space: nowrap;}




/* talks_SP */
.talks{
position: relative;
margin: 5rem 5%;
}
.talk{
padding: 20px 5%;
background: #efeeea;
border-radius:15px;
}
.talk .imgArea{
width: 8.5rem;
float: left;
margin: 0 8% 0 0;
}
.talk .imgArea img{
margin: 0 0 10px;
height: 8.5rem;
object-fit: cover;
border-radius:50%;
}
.talk .imgArea .cap{
padding: 4px 5% 5px;
background: #4db2a4;
border-radius:5px;
line-height: 1;
font-size:1.2rem;
text-align: center;
color: #fff;
}
.talk .txtArea{position: relative;width: auto;float: none;padding: 0;background: none;border-radius:0;}
.talk .txtArea::before{
width: 0;
height: 0;
background: none;
border: none;
}
.talk .txtArea .catch{
margin: 10px 0 30px;
}





/* intv_SP */
.intv{
position: relative;
margin: 5rem 5%;
}
.intv .sttl{
margin: 0 0 20px;
padding: 0 0 0 4.5rem;
font-size:1.9rem;
}
.intv .sttl::before{
content: "";
position: absolute;
top: 1.4rem;
left: 0;
width: 3.5rem;
height: .2rem;
background: #533c2e;
}
.intv .ywBox{
position: relative;
padding: 20px 5%;
background: #f8edbe;
border-radius:15px;
overflow: hidden;
}
.intv .ywBox::before{
content: "";
position: absolute;
bottom: -7.0rem;
right: -4.0rem;
width: 13.0rem;
height: 11.0rem;
background: url("./img/shape1.svg") 0 0 no-repeat;
background-size: 130px auto;
transform: scale(1, -1) rotate(15deg);
opacity: .4;
}
.intv .imgArea{position: static;width: 7.5rem;float: left;margin: 0 8% 0 0;}
.intv .imgArea img{margin: 0 0 10px;height: 7.5rem;object-fit: cover;border-radius:50%;}
.intv .imgArea .cap{
padding: 4px 5% 5px;
background: #4db2a4;
border-radius:5px;
line-height: 1;
font-size:1.2rem;
text-align: center;
color: #fff;
}
.intv .txtArea{
position: relative;
padding: 0 0 0;
}
.intv .txtArea .catch{
margin: 10px 0 30px;
font-size:1.8rem;
}
.intv .caption{
margin: 15px 0 0;
text-align: left;
}






/* case_SP */
.case{
position: relative;
margin: 5rem 5% 4rem;
}

.case .headArea{
position: relative;
z-index: 1;
margin: 0 0 -2rem;
}
.case .headArea .catch{
margin: 0 6%;
padding: 2px 5% 4px;
background: #fde580;
border-radius:10px;
text-align: center;
font-size:1.6rem;
}

.case .wtBox{
position: relative;
background: #fff;
padding: 4rem 5% 1.5rem;
border: 2px solid #efeeea;
border-radius:15px;
}
.case .wtBox .imgArea{
position: static;
width: 90%;
margin: 0 auto 10px;
}
.case .wtBox .imgArea img{
height: 190px;
/* object-fit: cover; */
object-fit: contain;
}
.case .wtBox .txtArea{
padding: 0 0 0;
max-width: 100%;
}
.case .wtBox .ttlArea{
margin: 0 0 10px;
}
.case .wtBox .ttlArea .pos{
position: relative;
top: -3px;
display: inline-block;
margin: 0 1rem 0 0;
padding: 7px 5% 9px;
background: #fcfaf2;
border-radius:5px;
line-height: 1;
font-weight: 500;
font-size:1.4rem;
}
.case .wtBox .ttlArea .sttl{
display: inline-block;
margin: 0;
font-size:2.7rem;
}
.case .wtBox .ttlArea .sttl .fontS{
font-size:2.0rem;
}
.case .botArw{
padding: 20px 0 0;
text-align: center;
}
.case .botArw img{
width: 3rem;
}






/* botCommon_SP */
.botCommon{
position: relative;
padding: 6.5rem 0;
background: url(./img/lineart1_sp.svg) 100% 15px no-repeat #f8cb50;
background-size: 100vw auto;
}
.botCommon::before{
content: "";
position: absolute;
top: 6.5rem;
left: 0;
width: 100%;
height: calc(100% - 130px);
background: url(./img/lineart1_yw_sp.svg) 100% -50px no-repeat #fff;
background-size: 100vw auto;
border-radius:25px;
}

.botCommon .areaInner{
padding: 45px 5% 15px;
}
.botCommon .areaInner::before{
content: "";
position: absolute;
top: -3.4rem;
left: 0;
width: 100%;
height: 6.6rem;
background: url("./img/sps_ccl.png") 50% 0 no-repeat;
background-size: 66px auto;
}

.botCommon .sctTtlArea {
margin: 0 0 25px;
text-align: center;
}
.botCommon .sctTtlArea .catch{
margin: 0 0 15px;
line-height: 1.4;
font-size:1.8rem;
color: #4db2a4;
}
.botCommon .sctTtlArea .catch .fontS{
font-size:1.3rem;
}
.botCommon .sctTtlArea .fuki{
display: inline-block;
margin: 0 0 15px;
padding: 2px 5% 6px;
background: #533c2e;
border-radius:5px;
line-height: 1;
font-size:1.8rem;
font-weight: 500;
color: #fff;
}
.botCommon .sctTtlArea .sctTtl{
margin: 0 0 20px;
font-size:2.0rem;
}
.botCommon .sctTtlArea .sctTtl .fontL{
display: inline;
background: url(./img/marker2_yw.png) 0 90% repeat-x;
background-size: 46px auto;
font-size:2.6rem;
}
.botCommon .sctTtlArea p{
padding: 0 0;
}


.botCommon .mainArea{
position: relative;
width: auto;
margin: 0 0 20px;
}
.botCommon .mainArea .flame{
position: absolute;
top: 0;
left: calc(50% - 10rem);
width: 20rem;
margin: 15px 0 0;
}
.botCommon .mainArea .flame::before{
content: "";
position: absolute;
z-index: 2;
bottom: 0;
right: -7.0rem;
width: 12rem;
height: 12rem;
background: #dcf2ef url("/wp/wp-content/uploads/ohkuma02.png") 0 0 no-repeat;
background-size: 120px auto;
}
.botCommon .mainArea .flame::after {
content: "";
position: absolute;
top: -15px;
left: -10.0rem;
width: 21.5rem;
height: 18.0rem;
background: url(./img/shape1.svg) 0 0 no-repeat;
background-size: 215px auto;
transform: scale(1, -1) rotate(15deg);
opacity: .5;
}
.botCommon .mainArea .flame img{
position: relative;
z-index: 1;
}

.botCommon .intro{
margin: 0 0 22.5rem calc(50% + 60px);
text-align: left;
}
.botCommon .intro .pos{
position: relative;
top: 0;
display: block;
width: 5.5rem;
margin: 0 1rem 5px 0;
padding: 4px 2% 5px;
background: #533c2e;
border-radius:5px;
line-height: 1;
text-align: center;
font-size:1.3rem;
font-weight: 500;
color: #fff;
}
.botCommon .intro .sttl{
display: block;
margin: 0;
font-size:2.5rem;
}
.botCommon .intro .sttl .fontS{
font-size:2.0rem;
}
.botCommon .txtArea{
margin: 0 0 30px;
padding: 10px 5%;
background: #fcfaf2;
border-radius:10px;
}
.botCommon .botArea{
margin: 0 0 75px;
padding: 0 12.5rem 1.5rem 0;
border-bottom: 2px solid rgba(83, 60, 46, .50);
font-weight: 500;
}
.botArea.inview_re::before {
  bottom: -70px;
  right: -20px;
  width: 128px;
  background-size: 110px auto;
}

.botCommon .btns{
position: relative;
display: block;
flex-wrap: wrap;
padding: 0 5%;
}
.botCommon .btns > div{
position: relative;
display: flex;
width: 100%;
margin: 20px auto 5px;
}
.botCommon .btns > div a{
display: flex;
align-items: center;
justify-content: center;
width: 100%;
}
.botCommon .btns .btn-tel{
display: block;
}

.botCommon .btns .fuki{
position: absolute;
z-index: 1;
top: -45px;
left: 5%;
width: 90%;
padding: 10px 5% 12px;
background: #f8cb50;
border-radius:5px;
line-height: 1;
font-size:1.3rem;
font-weight: 500;
}
.botCommon .btns .fuki::before{
content: "";
position: absolute;
bottom: -15px;
left: 0;
width: 100%;
height: 16px;
background: url(./img/tri2.svg) 50% 0 no-repeat;
background-size: 16px auto;
}


}
/* End_SP */