@charset "utf-8";
/* CSS Document */
html {
	height:100%;
}
body {
    width: 100%;
	height:100%;
	color: #111;
    font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size:16px;
	line-height:2;
    margin: 0 auto;
	background:#FFF;
	/*background: url(../img/bg_washi.jpg);*/
   /* background-size: 100% 100%;*/
}

/*link*/
a:link,
a:visited,
a:hover {
	color:#111;
}
/*link*/
a:link {
	text-decoration: none;
}
.mtitle-box {
	border:2px solid #FFFF00;
	color:#333;
	text-align:center;
	padding: 2px 0;
	background:#FFFF00;
}
.mtitle {
	font-size: clamp(18px, 2.3vw, 28px);
	font-weight:700;
	line-height:1.8;
	text-align:center;
	margin:20px 0;
}
.mtitle span {
	color: #fa1496;
	font-size:1.2em;
	padding:0 3px;
	border-bottom: 5px dotted #fa1496;
}
.mtitle1 {
	font-size: clamp(14px, 1.6vw, 20px);
	line-height:1.6;
}
.mtitle1 span {
	color: #fa1496;
	font-weight:700;
	padding:0 3px;
}
.mtitle2 {
	background:#ffeeb5;
	color:#444;
	padding:10px 25px;
	font-size: clamp(14px, 1.6vw, 22px);
	font-weight:500;
	border-radius:15px;
	line-height:1.8;
}
.mtitle2 span {
	font-size:1.4em;
	font-weight:700;	
}
.mtitle3 {
	text-align:center;
	position:relative;
	line-height:1;
	margin-bottom:5px;
}
.mtitle3:before {
	content:"＼";
	margin-right:10px;
	padding-left:10px;
}
.mtitle3:after {
	content:"／";
	margin-left:10px;
	padding-right:10px;	
}
.mtitle4 {
	font-size:22px;
	margin:25px 0;
	line-height:1.6;
	text-align:center;
}
.mtitle4 span {
	font-size:16px;
	color:#666;
}
.mtitle5 {
	font-size: clamp(18px, 4vw, 60px);
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    line-height: 1.1;
    color: #D52B20;	
}
.mtitle-check {
	padding-left: 1.5em;
	text-indent: -1.5em;
	font-size:24px;
	letter-spacing:1px;
	font-weight:500;
	margin:20px 0 0;
	overflow:hidden;
	line-height:1.6;
}
.mtitle-check:before {
	font-family:'FontAwesome';
	content:"\f0a9";
	margin-right:6px;
	padding-left:3px;
	color:#4d9bc1
}
.mtitle-bline {
    position: relative;
	line-height: 1.5;
    font-size: clamp(18px, 2.4vw, 32px);
	font-weight:700;
    text-align:center;
    letter-spacing:2px;
	padding:0 0 10px;
	margin-bottom:15px;
	color:#444;
}
.mtitle-bline span {
	font-size: 14px;
	color:#888;
}
.mtitle-bline:before {
    content: '';
    position: absolute;
    bottom:0px;
    display: inline-block;
    width: 100px;
    height: 3px;
    left: 50%;
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color:#6FBA2C;
    border-radius: 2px;
}

.mtitle-bll {
	font-size:16px;
	border-bottom:2px solid #eee;
	color:#162133;
	background:#fff;
	position: relative;
	margin-bottom: 10px;
	text-indent:16px;
}
.mtitle-bll:after {
	position: absolute;
	font-family:'FontAwesome';
	content:"\f105";
	display: block;
	border-bottom: solid 2px #162133;
	bottom: -2px;
	width: 100px;
	text-indent:2px;
	color:#aaa;
}

.mtitle-bll span {
	background:#008db0;
	color:#555;
	font-weight:bold;
	border-radius:5px;
	font-size:13px;
	padding:5px 10px;
	margin-right:10px;
}

.mtitle-bl {
	background:#f2f2f2;
	color:#fecd2f;
	text-indent:1em;
	font-size:20px;
	overflow:hidden;
	font-weight:bold;
	border-left:2px solid #fecd2f;
	margin:0 0 5px;
	padding:3px 0;
	letter-spacing:1px;
}
.mtitle-bl span {
	background:#008db0;
	color:#fff;
	font-weight:bold;
	border-radius:5px;
	font-size:13px;
	padding:5px 10px;
	margin-right:10px;
}
.mtitle-bg {
	line-height:1.6;
	font-size:20px;
	background-color:#463825;
	color:#FFF;
	padding:5px;
	font-weight:300;
	text-indent:0.5em;
	margin:0;
}
.mtitle-bg:before {
	/*font-family:'FontAwesome';
	content:"\f073";
	margin-right:8px;
	padding-left:8px;
	color:#fff;
	font-size:20px;*/
}
.mtitle-line {
    border-top: 3px double #aaa;
    border-bottom: 3px double #aaa;
    font-weight: 500;
	font-size:26px;
	text-align:center;
	line-height:1.4;
	padding:10px 0;
	color:#444;
	margin:10px 0;
}
.mtitle-line span {
	font-size:0.8em;
	color:#333;
	font-weight:500;
}
/*head*/
@charset "UTF-8";
header {
  width: 100%;
  position:relative;
  z-index: 99999;
}
#headA {
  width: 100%;
}
.bg-head {
	position: absolute;
    top: 0;
    left: 0;
    width: 40%;
	height:130vh;
	z-index:-1;
}
header .logo {
	width:240px;
}
header .logo img {
	width:100%;
}
.bg-head_inner {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #f0eae2;
	z-index:-1;
}
#head {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#reserve-btn{
 position:fixed;
 right: 3px;
 bottom: 80px;
 z-index: 999999;
 line-height:1;
}
#reserve-btn a {
	display:block;
	transition-duration: .4s;
}
#reserve-btn a:hover {
  transform: scale(0.92);
}
#menuA {
	width:calc(100% - 250px);
	max-width:1200px;
	margin:5px 0 0;
	align-content:center;
}
#menu {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content:center;
  justify-content: flex-end;  
}
#menu li {
	margin-right:1vw;
	margin-bottom:5px;
}
#menu li a {
  padding:3px 0.5vw;
  line-height:1;
  display: block;
  font-weight:500;
  font-size: clamp(13px, 1.1vw, 15px);
  border-radius:5px;
}
#menu li a::before {
  font-family: 'FontAwesome';
  content: "\f0da";
  margin-right: 3px;
  color: #fa1496;
}
#menu li a:hover {
  background:#EEE;
}
#menu li a span {
  display: block;
  font-size: 12px;
  color:#777;
  letter-spacing:1px;
}
/*ドロップダウンリスト*/
#menu li .dropdown__lists {
    display: none;/*デフォルトでは非表示の状態にしておく*/
    width: 360px;
    position: absolute;
    top: 40px;
    left: 0;
	text-align:left;
}
#menu li:hover .dropdown__lists {
    display: block;/*Gナビメニューにホバーしたら表示*/
}
#menu li ul li.dropdown__list {
    background-color: #FFF;
    height: auto;
    transition: all .3s;
    position: relative;
	margin-left:0;
}
#menu li ul li.dropdown__list a {
    display: flex;
    /*justify-content: center;*/
    align-items: center;
    color: #111;
    text-decoration: none;
    position: relative;
	padding:15px 10px;
}
#menu li ul li.dropdown__list a::before {
    content: '';
    display: block;
    width: 5px;
    height: 5px;
    border-top: 2px solid #AAA;
    border-left: 2px solid #AAA;
    transform: rotate(135deg);
	margin-right:8px;
}
#menu li ul li.dropdown__list a:hover {
  border-bottom: none;
  background:#6FBA2C;
  color:#FFF;
}
/*.dropdown__list:not(:first-child)::before{
    content: "";
    width: 100%;
    height: 1px;
    background-color: #FFF;
    position: absolute;
    top: 0;
    left: 0;
}*/

/*カレント*/
.index .nav-index >a,
.service .nav-service>a,
.company .nav-company>a,
.doctor .nav-doctor>a,
.column .nav-column>a {
	border-bottom:solid 3px #6FBA2C;	
}
/* linkbtn */
.linkbtn {
}
.linkbtn,
.linkbtn2 {
	display:table;
	text-align:center;
	line-height:1.6;
}
.linkbtn a,
.linkbtn2 a {
	width:90px;
	height:80px;	
	display:table-cell;
	vertical-align:middle;
	/*background: linear-gradient(45deg,rgba(208, 3, 230, 1) 0%, rgba(250, 20, 150, 1) 40%, rgba(255, 250, 1, 1) 100%);*/
	background:#fa1496;
	color:#fff;
	font-size:14px;
	font-weight:600;	
}
.linkbtn2 a {
	background:#06c755;	
}
.linkbtn a i,
.linkbtn2 a i {
	font-size:26px;
}
.linkbtn li a:hover {
	background:#F0B800;
}
/*.linkbtn li a:before {
	font-family:'FontAwesome';
	content:"\f0a9";
	margin-right:10px;
}*/
.tel {
	line-height:1.2;
	display:table;
	text-align:right;
	margin-right: 15px;
}
.tel p {
	display:table-cell;
	vertical-align:middle;
	font-size:13px;
	font-size:300;
	letter-spacing:0.02em;
}
.tel p span {
	font-size:26px;
	font-weight:700;
}
.tel p span:before {
  font-family: "FontAwesome";
  content: "";
  margin-right: 5px;
  color:#fa1496;
}
/*ヘッダースクロール時*/
header.headscroll {
    position: fixed;
	top:0;
	left:0;
	background:#FFF;
	transition: all .4s ease-out;
}
header.headscroll .logo img {
	/*height:60px;*/
}
header.headscroll .linkbtn a {
	height:60px;
}
/*ヘッダースクロール時*/
/*FLASH*/
#flashA {
	width:100%;
	position:relative;
	overflow:hidden;	
}
.flash {
	width: 100%;
	/*height: 65vw;
    max-height: 95vh;*/
	position:relative;
}
.flash img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.flashimg {
	position: absolute;
    top:27vw;
    left: 0;
	right:0;
	margin:auto;
	z-index: 100;	
	width:54vw;
	/*max-width:900px;*/
}
.flashimg img {
	width:100%;
}
/*flashimg2*/
.flashimg2 {
	position: absolute;
    top: 1.5vw;
    left: 3vw;
	z-index: 100;
	font-weight: 700;
	line-height:1.5;
	font-size:50px;
	font-size: clamp(28px, 3.3vw, 54px);
	letter-spacing:0.02em;
}
.flashimg2 p {
	color:#FFF;
	text-shadow: 0px 1px 4px #111;
}
.flashimg2 p span {
	font-size:0.7em;
	display:block;
	font-weight:600;
	line-height:1.5;
	margin-top:1vw;
}
.flashimg3{
	width:70vw;
	/*max-width:960px;*/
	position: absolute;
    bottom:-15px;
	right:0;
    left:0;
	margin:auto;
	z-index: 100;	
}
.flashimg3 img {
	width:100%;
}
.flashimg4 {
	display:none;
	position: absolute;
    bottom:0;
    left: 12vw;
	z-index: 90;	
	width:41vw;
	max-width:600px;	
}
.flashimg4 img {
	width:100%;
	height:auto;	
}
.flashimg5 {
	display:none;
	position: absolute;
    bottom:0;
    right: 12vw;
	z-index: 90;	
	width:44vw;
	max-width:640px;
	
}
.flashimg5 img {
	width:100%;
	height:auto;
}
.flashimg6 {
	position: absolute;
    bottom:0;
	left:0;
    right: 0;
	margin:auto;
	z-index: 90;	
	width:78vw;
	/*max-width:1200px;*/
	
}
.flashimg6 img {
	width:100%;
	height:auto;
}
.flashtext {
	font-size: clamp(11px, 1vw, 13px);
	color:#555;
	/*text-align:right;*/
	margin-left:1vw;
}
@media screen and (max-width:820px) {
.flash{
}
.slide {
	border-radius:0;
}
.flashimg {
}
.flashimg2 {
	font-size:4vw;
}	
.flashimg3 {
	bottom:0;
}
.flashimg4 {
}
}
@media screen and (max-width:600px) {
#flashA {
}
.flash{
	height:103vw;	
}
.flashimg {
	width:75vw;
	top:50vw;
}
.flashimg2 {
	font-size: 5.4vw;
	line-height:1.6;
	top:auto;
	bottom:36vw;
}
.flashimg2 p span {
  font-size: 0.8em;
}
.flashimg3 {
	width:98vw;
	bottom:0;
}
.flashimg4 {
	width:110vw;
}
.flashimg4 {
	display:block;
	position: absolute;
    bottom:0;
    left: -9vw;
	z-index: 90;	
	width:67vw;
}
.flashimg4 img {
	width:100%;
	height:auto;	
}
.flashimg5 {
	display:block;	
	position: absolute;
    bottom:0;
    right: -4vw;
	z-index: 90;	
	width:71vw;
	
}
.flashimg5 img {
	width:100%;
	height:auto;
}
.flashimg6 {
	display:none;
	width:120vw;
	left: -15vw;
	
}
}

/*パンくず*/
#pankuzu {
	float:right;
	margin: 20px 0 0;
	padding:0 8px;
	font-size:11px;
	background:rgba(255,255,255,0.8);
	
}
#pankuzu li {
	display: inline;
}
#pankuzu li a {
	display: inline;
	padding:0;
}
#pankuzu li + li:before {
    margin: 0 10px;
    content: ">";
}


/* singlepage */
#singlepage {
	padding:0 0 350px;
}
.single {
	width:90%;
	max-width:1100px;
	margin:0 auto;
	padding:50px 0;
	overflow:hidden;
}
.single1 {
	width:96%;
	max-width:1200px;
	margin:0 auto;
	padding:20px 0 40px;	
	overflow:hidden;
}
.single2 {
	width:96%;
	max-width:1500px;
	margin:0 auto;
	padding:50px 0;
	overflow:hidden;
}
.single3 {
	width:90%;
	max-width:1300px;
	padding:50px 0;
	margin:0 auto;
	overflow:hidden;
}
.single4 {
	width:100%;
	max-width:1300px;
	margin:0 auto;
	overflow:hidden;
}
.single5 {
	width:100%;
	padding:50px 0;
	overflow:hidden;
	position:relative;	
}
.single5::before {
  position: absolute;
  top: 60%;
  left: 0;
  display: block;
  width: 100vw;
  height: 100%;
  background: #EEE;
  content: "";
  z-index: -1;
}
#singlepage section {
	width:1000px;
	margin:0 auto;
	padding:30px 0;
}
.textwrap {
	width:1000px;
	margin:0 auto;
	padding:50px 0;
	background:rgba(255,255,255,0.8);
}
.textwrap2 {
	width:1000px;
	margin:50px auto ;
	background:rgba(255,255,255,0.8);
}

.mt-pink2 {
	color:#147240;
	font-size:18px;
	font-weight:bold;
	margin:10px 0;
	border-bottom:1px solid #555;
}
.pbox {
	padding:20px;
	overflow:hidden;
}
.textwrap h1 {
	text-align:center;
	width:auto;
	margin:0 0 20px;
}
.rss {
	width: 710px;
	margin:0 auto;
	padding:0 0 25px;
}
.pprice {
	background:rgba(255,255,255,0.3);
	padding:1px 10px;
	overflow:hidden;
	font-size:15px;
	border-radius:10px;
	margin:5px 0;
}
.pprice b {
	color:#E0FF00;
}
.pprice:before {
	font-family:'FontAwesome';
	content:"\f140";
	color:#E0FF00;
	margin-right:5px;
}

.mtitle-x {
	font-size:25px;
	text-align:center;
	color:#484848;
	margin:20px 0 5px;
}

/*containar*/
#body {
	position: relative;
    width: 100%;
    min-height: 100%;
    height: auto !important;
    height: 100%;
}
#containar {
	position: relative;
	width: 980px;
    min-height: 100%;
    height: auto !important;
    height: 100%;
	margin: 0 auto;
	padding: 0;
	background: #fff;
	box-shadow:rgba(125, 125, 125, 0.5) 0px 0px 2px 2px;
}
#wrapA {
	width:100%;
}
#wrap {
	width: 1000px;
	padding: 20px 0px 280px;
	margin: 0 auto;
}

/* main */
#main {
	float: left;
	width: 710px;
}
.box {
	position:relative;
	width:90%;
	max-width:960px;
	padding:40px 40px 0 40px;
	overflow:hidden;
	margin:-5% auto 0;
	background:#FFF;
    box-shadow: 0 5px 5px rgba(0, 0, 0, 0.05), 0 1px 1px rgba(0, 0, 0, 0.05);
	z-index:5555;
}
.mbox {
	max-width:1100px;
	margin:20px auto;
	overflow:hidden;
}
.name {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight:bold;
	font-size:1.2em;
	text-align:center;
	display:block;
	margin-top:3px;
}
.mbox1 {
	width:100%;
	max-width:1400px;
	margin:50px auto;
	overflow:hidden;
}
.mbox1 .right {
	float:right;
	margin-left:40px;
	max-width:45%;	
}
.mbox1 .left {
	float:left;
	margin-right:40px;
	max-width:45%;
}
.mbox1 h3 {
	font-size: clamp(16px, 2vw, 30px);
  font-weight: 700;
  margin-bottom: 15px;
  position: relative;
  display: table;
  padding-left: 65px;
  line-height: 1.6;
}
.mbox1 h3 span {
	font-size: 0.8em;
	font-weight:500;
	display:block;
}
.mbox1 h3::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 60px;
  height: 64px;
  background: url(../img/num/1.png) no-repeat;
  background-size: contain;
}
.mbox1.second h3:before {
	background:url(../img/num/2.png) no-repeat;
}
.mbox1.third h3:before {
	background:url(../img/num/3.png) no-repeat;
}
.mbox1.fourth h3:before {
	background:url(../img/num/4.png) no-repeat;
}
.mbox1.fifth h3:before {
	background:url(../img/num/5.png) no-repeat;
}
.mbox1.sixth h3:before {
	background:url(../img/num/6.png) no-repeat;
}
.mbox1 h4 {
	font-size: clamp(18px, 1.9vw, 26px);
	font-weight:700;
	color:#fa1496;
	letter-spacing:0.02em;
	margin:15px 0 10px;
}
.mbox1 h4:before {
    font-family: 'FontAwesome';
    content: "\f0a9";
    margin-right: 6px;
    padding-left: 3px;
}
@media screen and (max-width:820px) {
.mbox1 {
	margin:0 auto;
	font-size:16px;
}
.mbox1 .right,
.mbox1 .left {
	float:none;
	margin:0 auto 10px;
	display:block;
	max-width:100%;
}
.mbox1 h3 {
	font-size:2.8vw;

}
.mbox1 h4 {
	font-size:2.6vw;

}
}
@media screen and (max-width:600px) {
.mbox1 {
	font-size:15px;
	margin:0 auto;
}
.mbox1 h3 {
	font-size:5vw;
}
.mbox1 h4 {
	font-size:4.6vw;
}
}
.mbox2 {
	border:#CCC solid 1px;
	max-width:calc(96% - 32px);
	margin-top:15px;
	padding:15px;
	font-size:15px;
}
.mbox2 h1 {
	font-size:18px;
	font-weight:500;
	line-height:1.5;
	margin-bottom:10px;
	border-bottom:1px dashed #CCC;
}
.mbox2 h1:before {
	font-family:'FontAwesome';
	content:"\f0a9";
	margin-right:6px;
	padding-left:3px;
	color:#d52b20
}
.mbox2 img {
	max-width:100%;
	display:block;
}
.pager_arrow {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.pager_prev,
.pager_next {
	margin:10px;
	font-size:13px;
}
.pager_prev a,
.pager_next a {
	color:#555;
}
.pager_prev a:before {
	font-family:'FontAwesome';
	content:"\f100";
	margin-right:5px;
}
.pager_next a:after {
	font-family:'FontAwesome';
	content:"\f101";
	margin-left:5px;
}
.mbox3 {
    padding:20px 40px 30px;
    overflow: hidden;
	border:#AAA dashed 3px;
	border-radius:10px;
	margin:40px 0;
}
.mbox3 h3 {
	font-size: clamp(22px, 2.2vw, 34px);
	font-weight:600;
	color: #444;
	line-height:1.4;
}
.mbox3 h4 {
	font-weight:700;
	color: #6FBA2C;
	font-size: clamp(16px, 1.8vw, 22px);
	border-bottom:#EEE dashed 2px;	
	margin:15px 0 5px;
}
.mbox3 h4::before {
	font-family:'FontAwesome';
	content:"\f0a9";
	margin-right:8px;
	padding-left: 5px;
	color:#6FBA2C;
}
.mbox4 {
	margin:20px 0;
	overflow:hidden;
	padding:20px;
	background:#EEE;
	border-radius:8px;
}
.mbox4 h3 {
	font-size: clamp(22px, 2vw, 30px);
	font-weight:600;
	color: #444;
	text-align:center;
	line-height:1.4;
}
.mbox5 {
    padding:10px;
    overflow: hidden;
	background:#fecd2f;
}
.mbox6 {
  display: flex;
  flex-wrap: wrap;
  border:#fecd2f solid 5px;
  border-radius:20px;
  font-size:1.1em;
}
.mbox6 span {
	font-weight:600;
	color:#FF0000;
}
.mbox6 h5 {
	font-size: clamp(24px, 2.4vw, 30px);
	font-weight:600;
	margin-bottom:10px;
	line-height:1;
	margin-bottom:20px;
}
.mbox6 > div {
  width: 50%;
}
.mbox6 .imgbox {
	background:url(../img/imgbox.jpg);
	background-size:cover;
	background-position:center;
	border-radius:15px 0 0 15px;
}
.mbox6 .imgbox2 {
	background:url(../img/imgbox2.jpg);
	background-size:cover;
	background-position:center;
}
.mbox6 .txt_area {
  width: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 50px;
  background:#fff2c9;
  border-radius:0 15px 15px 0;  
}
.mbox6 .telephone {
 font-size: clamp(24px, 2.2vw, 28px);
 letter-spacing:1px;
  font-weight: 700;
  margin:10px 0 10px;
}
.mbox6 .telephone:before {
  font-family: "FontAwesome";
  content: "";
  margin-right: 5px;
  color:#fecd2f;
}
@media screen and (max-width: 820px) {
  .mbox6 {
    display: block;
	margin-bottom: 40px;
  }

  .mbox6 > div {
    width: 100%;
  }
  .mbox6 .imgbox {
	border-radius:15px 15px 0 0;	  
	min-height:470px;	
  }
  .mbox6 .txt_area {
    width: 100%;
    padding: 2em 1em;
    display: block;
	text-align: center;
	border-radius:0 0 15px 15px;  	
  }
  .mbox6 h5 {
	  font-size:3.4vw;
  }
  .mbox6 .telephone {
	  font-size:3.8vw;
  }  
}
@media screen and (max-width: 600px) {
	.mbox6 {
	font-size:4.1vw;
	margin-bottom: 20px;
	}
	.mbox6 h5 {
	  font-size:5.4vw;
	line-height:1.8;
	margin-bottom:10px;
	}
	.mbox6 .imgbox {	  
	min-height:250px;
	}
	.mbox6 .txt_area {
		padding:4vw;
		text-align:left;
	}
	.mbox6 .telephone {
	  font-size:5.6vw;
  } 
}
.voicebox {
	max-width:1000px;
	margin:50px auto;
	overflow:hidden;
}
.mbox7 {
	padding: 15px 20px ;
	border:#AAA 1px solid;
	overflow: hidden;
	background:#FFF;
}
.mbox7 h4 {
	font-size:26px;
	padding-bottom:10px;
/*	text-align:center;*/
	color:#222;
	font-weight:400;
	border-bottom:#444 dashed 2px;
	margin-bottom:20px;
}
.voicebox {
	max-width:1000px;
	margin:50px auto;
	overflow:hidden;
}
.topics {
	max-height:500px;
	overflow:auto;
}
/* side */
#side {
	float: right;
	width: 230px;
	font-size:12px;
	line-height:1.8;
	background:url(../img/bg-side.png) no-repeat;
}
.sbox {
	padding:10px;
	background:#EDE2CE;
	margin-bottom:20px;
}

.lsingle {
	float:left;
	width:48%;
	overflow:hidden;
	margin-top:30px;	
}
.rsingle {
	float:right;
	width:48%;
	overflow:hidden;
	margin-top:30px;	
}
/* footer */
/*totop*/
#page-top {
  position: fixed;
  bottom: 8px;
  left: 8px;
  font-size: 12px;
  font-weight: bold;
	z-index:9999999;
}
#page-top a {
  color: #FFF;
  font-size: 20px;
  font-family: 'FontAwesome';
  content: "\f102";
  text-decoration: none;
  padding: 2px 12px 2px;
  text-align: center;
  display: block;
  background: #555;
  border-radius: 10px;
  /*box-shadow: rgba(0, 0, 0, 0.2) 2px 2px 2px;*/
}
#page-top a:hover {
  background: #AAA;
  text-decoration: none;
}
@media screen and (max-width:600px) {
#page-top {
	bottom: 70px;
}	
#page-top a {
  font-size: 16px;
  padding: 2px 10px 2px;
}	
}
/*-------------*/
#page-top2 {
  position: fixed;
  bottom: 10px;
  right: 10px;
  font-size: 77%;
}
#page-top2 a {
    /*width: 250px;
	height:250px;*/
    color: #fff;
    /*background: url(../img/kaitori.png) no-repeat;*/
    /*border-radius: 50%;    
    padding: 30px 0;*/
    text-align: center;
    display: block;
	z-index:5555;
}
#page-top2:hover {
      text-decoration: none;
      color: #FFFFFF;
}
/*-------------*/
/* footer */
@charset "UTF-8";
/* footer */
footer {
    display: flex;
    justify-content: space-around;
    flex-direction: column;
	background: #EEE;
}
#footer {
    width:90%;
    max-width: 1100px;
    margin: 0 auto 0;
    padding: 20px 0;
    font-size: 15px;
}
.logo-f {
    float: right;
    width: 50%;
	text-align:right;
	/*margin-right:50px;*/
    line-height: 1.8;
    overflow: hidden;
}
.f_navi {
	display: flex;
	flex-wrap: wrap;
}
.f_navi li {
	margin-right:20px;
	margin-bottom:5px;
}

.f_navi li a {
    display: block;
    text-decoration: none;
    font-size: 14px;
}
.f_navi li a:before {
	font-family:'FontAwesome';
	content:"\f0da";
	margin-right:5px;
}

.foottel {
	font-size:14px;
}
.foottel span {
	font-size:1.6em;
	font-weight:600;
	letter-spacing:0.05em;
}
.foottel a {
    color:#111 !important;
    text-decoration:none !important;

}
.footsns {
    display: flex;
    flex-wrap: wrap;
    /*justify-content:center;	*/
}
.footsns li {
	margin:0 10px 0 10px;
	font-size:24px;	
}
.footsns li:first-child a {
	color:#333;
/*	background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
	background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;/*
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;*/
}
.footsns li:nth-child(2) a {
	/*color:#18a718;*/
	color:#333;	
}
.foottxt {
	font-size:14px;
	margin-bottom:5px;
	font-weight:600;
}
.foottxt span {
	font-size:1.3em;
	font-weight:700;
	color:#fa1496;
	padding:0 5px;
	border-bottom:dotted 3px #fa1496;
}
#footer address {
    line-height: 1.8;
    font-weight: 300;
    font-size: 13px;
    letter-spacing: 0.1em;
}

#footer address span {
    font-size: 16px;
    font-weight: 500;
}

/* fnavi */

#fnavi {
    width: 100%;
    margin: 0px 0 5px;
    border-bottom: 1px #CCC solid;
    padding-bottom: 5px;
}

#fnavi li {
    display: inline-block;
    list-style: none;
    text-align: center;
    padding: 0;
    margin: 0 10px;
    font-size: 13px;
    letter-spacing: 1px;
    font-weight: 400;
}

#fnavi li:before {
    font-family: 'FontAwesome';
    content: "\f0da";
    margin-right: 5px;
}

#fnavi li a:link,
#fnavi li a:visited,
#fnavi li a:hover {
    color: #222 !important;
    text-decoration: none;
}

@media screen and (max-width: 820px) {
    .f_navi {
        /*width: calc(100% - 200px);*/
		display:none;
    }
    .logo-f {
		float:none;
		width:100%;
		text-align:left;
		margin-bottom:10px;
    }
    #fnavi {
        display: none;
    }
}
@media screen and (max-width:600px) {
    .f_navi {
        display:none;
    }
	.logo-f {
	}
	.foottel {
	}
	.foottel span {
		font-size:5vw;
	}
	.footsns li {
		font-size:9vw;
		margin:0 20px 0 0;
	}
	.footsns li a {
		padding-left:3px;
	}
}
.copyright {
	/*text-align:center;*/
  letter-spacing:1px;
  font-size: 10px;
  font-weight:300;
  line-height:1.6;
  margin-top:10px;
}
@media screen and (max-width: 768px) {
  #fmenu-lg {
    display: none;
  }
  address {
    margin-top: 10px;
  }

  #footer {
    width: 1000px;
    margin: 10px auto 0;
    font-size: 12px;
  }
}
/*TOPICS背景*/
.bg-wall {
	overflow:hidden;
	position:relative;
}
.bg-wall::before {
    position: absolute;
    top: 0;
    left:10vw;
    display: block;
    width: 70vw;
    height: calc(100% + 80px);
    -webkit-transform: skew(30deg);
    transform: skew(150deg);
    background: linear-gradient(140deg,#d52b20,#309700);
	background:#EEE;
    content: "";
    z-index: -1;
	/*opacity:0.2;*/
}
.bg-wall2 {
	position:relative;
}
.bg-wall2::before {
    position: absolute;
    bottom: 10vh;
    right:0;
    display: block;
    width: 95vw;
    height: 70vh;
	background-image:url(../img/wall2.svg);
	background-repeat:no-repeat;
	background-size:contain;
    content: "";
	opacity:.1;
}
.bg-wall3 {
	overflow:hidden;
	position:relative;
}
.bg-wall3::before {
    position: absolute;
    top: 0;
    left:10vw;
    display: block;
    width: 50vw;
    height: calc(100% + 80px);
    -webkit-transform: skew(150deg);
    transform: skew(30deg);
    background: linear-gradient(140deg,#d52b20,#309700);
	background:#F7F7F7;
    content: "";
    z-index: -1;
	/*opacity:0.2;*/
}
.bg-wall4 {
	background-image: url(../img/wall4.png);
    background-position: bottom;
    background-repeat: repeat-x;	
}
.bg-01 {
	position: relative;
	background: linear-gradient(180deg,rgba(208, 3, 230, 1) 0%, rgba(255, 255, 255, 1) 0%, rgba(235, 235, 235, 1) 100%);
}
.bg-01:before {
	content: "";
  display: block;
  background: url(../img/girl.webp) no-repeat;
    background-size: auto;
  background-size: contain;
  width: 36vw;
  max-width: 600px;
  height: 45vw;
  max-height: 100%;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 100;
}
.bg-01::after {
  content: "";
  display: block;
  background: url(../img/arrow.svg) no-repeat;
    background-size: auto;
  background-size: contain;
  width: 250px;
  height: 90px;
  position: absolute;
  right: 0;
  bottom: -55px;
  left: 0;
  margin: auto;
  z-index: 100;
}
@media screen and (max-width: 820px) {
.bg-01 {
	padding-bottom:45vw;
}
.bg-01::before {
	width: 44vw;
	height: 55vw;
	right: 0;
    bottom:0;
	left:0;
	margin:auto;
	z-index:99999;
}
.bg-01::after {
	z-index:999999;
}
}
@media screen and (max-width: 600px) {
.bg-01 {
	padding-bottom:73vw;
}
.bg-01::before {
	width: 72vw;
	height: 90vw;
}
.bg-01::after {
    width: 125px;
    height: 45px;
	bottom: -28px;
  }
}
.bg-02 {
	position: relative;
}
.bg-02:before {
	content: "";
  display: block;
  background: url(../img/bg02.webp) no-repeat;
    background-size: auto;
  background-size: contain;
  width: 40vw;
  max-width: 800px;
  height: 50vw;
  max-height: 1000px;
  position: absolute;
  right: 0;
  bottom: -3vw;
  z-index: 100;
}
@media screen and (max-width: 820px) {
.bg-02 {
	padding-bottom:60vw;
}
.bg-02::before {
	width: 60vw;
	height: 75vw;
	right: 0;
    bottom:-3vw;
	left:0;
	margin:auto;
	z-index:99999;
}
}
@media screen and (max-width: 600px) {
.bg-02 {
	padding-bottom:85vw;
}
.bg-02::before {
	width: 80vw;
	height:100vw;
    bottom:0;	
}
}
.bg-03 {
	position: relative;
}
.bg-03:before {
	content: "";
  display: block;
  background: url(../img/bg03.webp) no-repeat;
    background-size: auto;
  background-size: contain;
  width: 40vw;
  max-width: 800px;
  height: 32vw;
  max-height: 640px;
  position: absolute;
  right: 1vw;
  bottom: 0;
  z-index: 100;
}
@media screen and (max-width: 820px) {
.bg-03 {
	padding-bottom:53vw;
}
.bg-03::before {
	width: 75vw;
	height: 60vw;
	right: 0;
    bottom:0;
	left:0;
	margin:auto;
	z-index:99999;
}
}
@media screen and (max-width: 600px) {
.bg-03 {
	padding-bottom:64vw;
}
.bg-03::before {
	width: 85vw;
	height:68vw;	
}
}
/*テーブル*/
table {
}
table th {
	vertical-align: middle;
	padding: 5px 10px;
	border: #AAA 1px solid;
}
table td {
	padding: 5px 10px;
	vertical-align:middle;
	border: #AAA 1px solid;
}
/*fee*/
.fee {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
  max-width: 1100px;
  margin:10px 0 40px;
  overflow: hidden;
  text-align: center;
}
.fee tr {
  background-color: #e6f1f6;
}
.fee tr:nth-child(even) {
  background-color: #fff;
}
.fee thead th {
  border:none;	
  background-color: #4d9bc1;
  color: #fff;
  font-weight: 700;
  text-align: center;
}
.fee tbody th {
  color: #4d9bc1;
  border:none;
  font-weight: 700;
  font-size:1.1em;
}
.fee tbody th span {
	font-size:2.4em;
}
.fee td {
  padding: 15px 5px;
  border:none; 
  font-size:1.1em;
}
.fee td span {
	display:block;
	font-size:0.9em;
	font-weight: 800;
	color:#666;
}
@media screen and (max-width: 787px) {
  .fee {
    border-radius: 0;
    text-align: left;
  }
  .fee thead {
    display:none;
  }
  .fee tr {
    background-color: unset;
  }
  .fee th, .fee td {
    display: block;
    border: 0;
    border-bottom: 1px dashed #AAA;
  }
  .fee td:last-child {
	border-bottom:none;
	margin-bottom:10px;
}
  .fee tbody th{
    background: #4d9bc1;
    color:#fff;
    text-align: center;
	font-size:6vw;
	letter-spacing:0.1em;
	padding:0;
	line-height:1.4;
  }
  .fee tbody th span {
	font-size:1.6em;
}
  .fee td::before{
    content: attr(data-label);
    background-color: #e6f1f6;
    font-weight: 500;
	font-size:3.4vw;
    display: inline-block;
    width: 20%;
    min-width: 4em;
    text-align: center;
    margin-right: 1em;
    padding: 4px;
    border-radius: 100vh;
  }
  .fee td {
	  font-size:1em;
  }
  .fee td span {
	  display:inline-block;
	  margin-right:5px;
  }
}
/*fee2 */
  .fee2 {
	  margin:20px 0;  
  }
  .fee2 th {
	  background:#fa1496;
	  padding:8px 15px;
	  color:#FFF;
	  font-weight:600;
  }  
  .fee2 td {
	  background:#FFF;
	  padding:8px 20px;
	  font-weight:600;
  }   
@media screen and (max-width: 640px) {
  .fee2 {
	  width:99%;
  }	
  .fee2 th {
	  border:#6FBA2C 1px solid;
	  display: block;
	  font-size:1.1em;
	  border:none;	  
  }
  .fee2 td {
    display: block;
	border-top:none;
	text-align:center;
	font-size:1.1em;	
  }   
}
/*fee2 */
  .fee3 {
	  margin:20px 0;  
  }
  .fee3 th {
	  background:#CCC;
	  padding:8px 15px;
	  font-weight:600;
	  min-width:130px;	  
  }  
  .fee3 td {
	  background:#FFF;
	  padding:8px 20px;
	  font-weight:500;
  }
  .fee3 td i {
	  color: #fa1496;
	  margin-right:3px;
  }
@media screen and (max-width: 640px) {
  .fee3 {
  }	
  .fee3 th {
	  display: block;
	  font-size:1.1em;
  }
  .fee3 td {
    display: block;
	border-top:none;
  }   
}
/*新メールフォーム*/
.form {
	margin:10px auto 10px;
	width:96%;
}
.form dt span {
	color:#fff;
	background:#fa1496;
	padding: 0 5px 2px;
	margin-right:7px;
	font-size:10px;
	border-radius:3px;
	position:relative;
	top:-2px;
}
.form dt span.optional {
	background:#DDD;
	color:#333;
	font-weight:300;	
}
.form dl {
	margin:10px 0;
}
.form dt {
	float: left;
	width:250px;
	padding-top: 20px;
	margin-right:30px;
	text-align:right;
}
.form dd {
	padding-left:280px;
	padding-bottom: 20px;
	padding-top: 23px;
}
.form dd p {
	font-size:15px;
	padding-top:5px;
	color:#444;
}
.form dd a:link,
.form dd a:visited,
.form dd a:hover {
	color:#932e4b;
	font-weight:500;
}
.form dd:last-child {
	border-bottom:0px;
	margin-bottom:0px;
}
.textarea, textarea, .dropdown {
	border-radius:2px;
	border:1px solid #ddd;
	padding:10px;
}
.textarea {
	border-radius:2px;
	border:1px solid #ddd;
	height:30px;
	padding:0 5px;
}

.form button {
}
.form-button {
	padding:5px;
	border-radius:5px;
	text-align:center;
	margin:10px 0;
}
#mailform button {
	cursor:pointer;
	display: block;
	margin: 0 auto 5px;
	padding: 10px 0 10px;
	color: #fff;
	text-align: center;
	width: 250px;
	border-radius: 3px;
	background:#fa1496;
	font-size: 16px;
	border-radius:5px;
	/*font-weight: bold;*/
}
#mailform button:before{
	font-family:'FontAwesome';
	content:"\f003";
	margin-right:6px;
}
#mailform button:hover {
	color: #FFF;
    background-color:#F0B800;
}
#mailform button *,
.form-button * {
	-moz-transition: 0.2s;
	-ms-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}
/*RadioとText*/
label.radio_text {
	cursor       : pointer;
	position     : relative;
	margin-right : 20px;
	overflow     : hidden;
	padding-left : 20px;
	display      : inline-block;
}
label.radio_text:before {
	position      : absolute;
	width         : 15px;
	height        : 15px;
	border        : 1px solid #ccc;
	border-radius : 50%;
	left          : 0px;
	top           : 2px;
	content       : '';
	z-index       : 3;
}
label.radio_text:after {
	content          : '';
	position         : absolute;
	width            : 11px;
	height           : 11px;
	border-radius    : 100%;
	left             : 3px;
	top              : 5px;
	background-color : #aaa;
	z-index          : 1;
}
label.radio_text input[type="radio"] {
	-moz-appearance: none;
	-webkit-appearance: none;
	position   : absolute;
	z-index    : 2;
	width      : 20px;
	height     : 20px;
	left       : -23px;
	top        : 0px;
	margin     : 0px;
	box-shadow : 20px -1px #FFF;
}
label.radio_text input[type="radio"]:checked {
	box-shadow : none;
}
label.radio_text input[type="radio"]:focus {
	opacity    : 0.2;
	box-shadow : 20px -1px #FFF;
}
/*CheckBoxとText */
label.checkbox_text {
	cursor       : pointer;
	position     : relative;
	padding-left : 25px;
	padding-bottom : 5px;	
	margin-right : 20px;
	overflow     : hidden;
	display      : inline-block;
	box-sizing   : border-box;
	line-height:1;
}
label.checkbox_text:before {
	content  : '';
	position : absolute;
	width    : 18px;
	height   : 18px;
	left     : 0px;
	top      : 0;
	border   : 1px solid #ccc;
	z-index  : 3;
}
label.checkbox_text:after {
	content           : '';
	position          : absolute;
	top               : 40%;
	left              : 5px;
	display           : block;
	margin-top        : -9px;
	width             : 8px;
	height            : 12px;
	border-right      : 3px solid #aaa;
	border-bottom     : 3px solid #aaa;
	transform         : rotate(45deg);
	z-index           : 1;
}
label.checkbox_text input[type="checkbox"] {
	-moz-appearance: none;
	-webkit-appearance: none;
	position   : absolute;
	left       : -40px;
	width      : 20px;
	height     : 20px;
	display    : block;
	box-shadow : 41px 0px #FFF;
	z-index    : 2;
	margin     : 0px;
	padding    : 0px;
}
label.checkbox_text input[type="checkbox"]:checked {
	box-shadow : none;
}
label.checkbox_text input[type="checkbox"]:checked:focus {
	box-shadow : 40px 0px #666;
	opacity    : 0.1;
}
label.checkbox_text input[type="checkbox"]:focus {
	box-shadow : 41px 0px #EEE;
}
.fm-text {
	padding:10px;
	font-size:12px;
	margin:10px 0;
	text-align:center;
}
/* /新メールフォーム */
/*枠*/
.tbox {
    padding: 15px 20px;
}
/*新着情報（トピックス）*/
.news-ttl {
  width: 20%;
  font-family: 'Montserrat', sans-serif;
  vertical-align: middle;
  text-align: left;
  color: #FFF;
  font-size: 32px;
  text-align:center;
  /*border-right: 1px solid #EEE;*/
  line-height: 1.2;
  letter-spacing: 2px;
}
.news-ttl  span {
    font-family: -apple-system,BlinkMacSystemFont,"Helvetica Neue",YuGothic,"ヒラギノ角ゴ ProN W3",Hiragino Kaku Gothic ProN,Arial,"メイリオ",Meiryo,sans-serif;
    font-size: 1.2rem !important;
    display: block;
  }
.news-bx {
  flex: 1;
  width: calc(100% - 60px);
  padding:0 30px;
}
.news {
	width:100%;
	max-width:800px;
	max-height: 550px;
	overflow:auto;
	margin:0 auto 30px;
	font-weight:300;
	font-size:15px;
}
.news dt {
	float: left;
	width: 100px;
	padding-top: 5px;
}
.news dd {
	padding-left:120px;
	padding-bottom: 5px;
	padding-top: 5px;
	border-bottom: dashed 1px #CCC;
}
.news dd a:link,
.news dd a:visited,
.news dd a:hover {
	color:#FFF;
}
.news dd .cat2223 {
	background:#fecd2f;
	color:#FFF;
	padding:2px 10px;
	border-radius:5px;
	margin-left:15px;
	letter-spacing:1px;
}
.news dd .cat2224 {
	background:#a5a6cd;
	color:#FFFF;	
	padding:2px 10px;
	border-radius:5px;
	margin-left:15px;
	letter-spacing:1px;	
}
.news dd:last-child {
/*	border-bottom:0px;
	padding-bottom:0px;
*/
}
/*新着情報（トピックス）*/
.newsl dl {
}
.newsl dt {
	float: left;
	width:130px;
	padding-top: 10px;
	line-height: 1.3;
	color:#333;
	font-weight:bold;
}
.newsl dd {
	padding-left:140px;
	padding-bottom: 20px;
	padding-top: 10px;
	line-height: 1.6;
	font-size:15px;
	border-bottom: dotted 1px #b6ae83;
}
.news dd:last-child {
/*	border-bottom:0px;
	padding-bottom:0px;
*/
}
.newsl dd b {
	color:#594C39;
}
.news-s {
	font-size:15px;
	margin-bottom:10px;
}
.news-s dt {
	float: left;
	width: 6em;
	padding-top: 10px;
	line-height: 1.6;
	font-weight:600;
	letter-spacing:1px;
	color:#AAA;
}
.news-s dd {
	padding-left:7em;
	padding-bottom: 15px;
	padding-top: 10px;
	line-height: 1.6;
	border-bottom: dashed 1px #333;
}
.news-s dd:last-child {
/*	border-bottom:0px;
*/
}
.news-sr {
	font-size:14px;
	font-weight:300;
	letter-spacing:1px;
}
.news-sr li {
	margin-bottom:5px;
	border-bottom:dashed #CCC 1px;
	text-indent:1em;
}
.news-sr li a:link,
.news-sr li a:visited,
.news-sr li a:hover {
	color:#333;
}
.news-bl {
	overflow:hidden;
	margin:0 auto;
	padding:10px;
}
.news-bl:nth-child(odd) {
  background:#F7F7F7; !important;
}
.news-bl dt {
	float: left;
	width: 10em;
	color:#444;
	text-align:center;
	font-weight:600;
	font-size:16px;	
}
.news-bl dd {
	padding-left:11em;
	/*border-bottom: dotted 1px #aaa;*/
}
.news-bl dd h3 {
	font-size:18px;
	font-weight:500;
}
.news-r {
	overflow:hidden;
}
.news-r dt {
	float: left;
	width: 8em;
	text-align:center;
	margin-top:10px;
	margin-right:15px;
	padding: 5px 0;
	line-height: 1.3;
	border-radius:10px;
	color:#22ac38;
	background:#f4ffda;
	font-weight:bold;
}
.news-r dd {
	padding-bottom: 8px;
	padding-top: 13px;
	padding-left:10em;
	line-height: 1.6;
	border-bottom: dotted 1px #ccc;
}
/* list-check */
.list-check {
    display: flex;
    flex-wrap: wrap;
	gap:10px;
}
.list-check li:before {
	font-family:'FontAwesome';
	content:"\f0a9";
	margin-right:8px;
	padding-left: 5px;
	color:#fa1496;
}
.list-check li {
	font-size: 16px;
	font-weight:500;
	border-bottom:dashed 1px #CCC;
}
/* list-check */
.list-check2 {
	max-width:80%;
    display: flex;
    flex-wrap: wrap;
	margin:40px 0 30px;
	z-index:100;
	position:relative;
}
.list-check2 li:before {
	font-family:'FontAwesome';
	content:"\f0da";
	margin-right:8px;
	color:#AAA;
}
.list-check2 li {
	font-size: clamp(18px, 1.6vw, 24px);
	background:#FFF;
	font-weight:600;
	padding:10px 15px 10px;
	box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1), 0 1px 1px rgba(0, 0, 0, 0.2);
	border:#CCC solid 1px;
	border-radius: 25px;
	margin:0 15px 18px 0;
	line-height:1.5;
}
/* list-check3 */
.list-check3 {
    display: flex;
    flex-wrap: wrap;
	gap:20px;
	max-width:65%;	
	margin-top:20px;
}
.list-check3 li:before {
	font-family:'FontAwesome';
	content:"\f0a9";
	margin-right:5px;
	color: #fa1496;
}
.list-check3 li {
	font-size: clamp(18px, 1.7vw, 24px);
	line-height:1.2;
	font-weight:700;
}

/* list-check4 */
.list-check4 {
	display: flex;
	flex-wrap: wrap;
	gap:1.5vw;
}
.list-check4 li {
	border-bottom: dashed 1px #888;
	font-size: clamp(14px, 1.4vw, 18px);
	font-weight:600;
}
.list-check4 li:before {
	font-family:'FontAwesome';
	content:"\f046";
	margin-right:8px;
	color:#fa1496;
}
.list-check4 li span {
	color:#D10000;
	font-size:1.1em;
}
.list-check4 li p {
	font-weight:normal;
	color:#333;
	font-size:16px;
}
/* list-check4 */
.list-check5 {
	display: flex;
	flex-wrap: wrap;
	gap:1.5vw;
	justify-content: center;
	margin-top:15px;
}
.list-check5 li {
	border: dashed 1px #aaa;
	font-size: clamp(18px, 1.6vw, 22px);
	font-weight:600;
	background:#FFF;
	padding:3px 15px;
	border-radius:25px;
}
.list-check5 li.hanten {
	background:#fa1496;
	color:#FFF;
}
.list-check5 li:before {
	font-family:'FontAwesome';
	content:"\f046";
	margin-right:8px;
	color:#fa1496;
}
.list-check5 li.hanten:before {
	color:#FFF;	
}
/*.list-bnr*/
.list-bnr {
/*  margin: 20px auto;*/
  font-size:18px;
  font-weight: 500;
  overflow: hidden;
  line-height: 1.5;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
}
.list-bnr li {
  width: calc(24% - 10px);
  background:#fecd2f;
  margin-bottom: 15px;
  position: relative;
  box-shadow: rgba(0, 0, 0, 0.4) 4px 4px 0 0;
}
.list-bnr li:before {
	font-family:'FontAwesome';
	content:"\f101";
	font-weight: 900;
	content: "";
	/*margin-right: 5px;*/
  position: absolute;
  left: 90%;
  bottom: 25%;
  color: #777;
  -moz-transition: 0.3s;
  -ms-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  
}
.list-bnr li:hover:before {
  left: 92%;
}
.list-bnr li a {
  width: 100%;
  height: 100%;
  display: block !important;
  padding: 13px;
  font-weight:400;
  text-decoration:none;
}
.list-bnr li a span {
	font-size:0.8em;
	letter-spacing:1px;
	font-style:italic;
	color:#babff6;
}
.list-bnr li a:link, .list-bnr li a:visited, .list-bnr li a:hover {
  color: #777;
}
.list-bnr li:hover {
  background: #daccb7;
}
.list-bnr li:nth-child(3n+2):last-child {
  /*margin-right: 33.4%;*/
}
/*.list-bnr2*/
.list-bnr2 {
/*  margin: 20px auto;*/
  font-size:18px;
  font-weight: 500;
  overflow: hidden;
  line-height: 1.5;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;  
}
.list-bnr2 li {
  width: calc(50% - 10px);
    background:#178524;
  margin-bottom: 15px;
  position: relative;
  box-shadow: rgba(0, 0, 0, 0.4) 4px 4px 0 0;
}
.list-bnr2 li:before {
	font-family:'FontAwesome';
	content:"\f101";
	font-weight: 900;
	content: "";
	/*margin-right: 5px;*/
  position: absolute;
  left: 90%;
  bottom: 25%;
  color: #FFF;
  -moz-transition: 0.3s;
  -ms-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  
}
.list-bnr2 li:hover:before {
  left: 92%;
}
.list-bnr2 li a {
  width: 100%;
  height: 100%;
  display: block !important;
  padding: 13px;
  font-weight:400;
  text-decoration:none;
}
.list-bnr2 li a span {
	font-size:0.8em;
	letter-spacing:1px;
	font-style:italic;
	color:#babff6;
}
.list-bnr2 li a:link, .list-bnr2 li a:visited, .list-bnr2 li a:hover {
  color: #FFF;
}
.list-bnr2 li:hover {
  background: #88AAFF;
}
.list-bnr2 li:nth-child(3n+2):last-child {
  /*margin-right: 33.4%;*/
}
/* list-pdf */
.list-pdf {
  display: flex;
  flex-wrap: wrap;
  margin-top:30px;
}
.list-pdf li {
	width:calc(31% - 14px);
	margin-right:2%;
	font-size: clamp(16px, 1.6vw, 22px);
	margin-bottom:10px;
	border:2px solid #CCC;
	background:#FFF;
	text-align:center;
	padding:5px 5px;
	border-radius:4px;
	font-weight:600;
}
.list-pdf li a {
	display:block;
}
.list-pdf li a:before {
	content:url(../img/icon_pdf.gif);
	margin-right:8px;
}
.list-photo {
	overflow:hidden;	
}
.list-photo li {
	width:calc(100% - 22px);
	border:#AAA 1px solid;
	padding:10px;
	margin-bottom:15px;
}
.list-photo li img {
	width:100%;
}
/*FAQ*/
.faq {
	/*box-shadow: 0px 0px 10px rgb(0 6 117 / 16%);*/
    width:calc(96% - 52px);
    margin:30px auto 0;
	border:#DDD solid 1px;
	padding:10px 25px;
	background:#FFF;
}
.faq dt {
	padding: 15px 0 20px;
    font-weight: 500;
	font-size:20px;
	position:relative;
}
.faq dt p {
	padding:0 3em;
}
.faq dt:before {
	position:absolute;
	content: "Q";
	color: #FFF;
	background: #CCC;
	font-size:20px;	
	width: 2em;
	height: 2em;
	font-weight:600;
	display:inline-block;
	text-align:center;
	line-height:1.7;
	border-radius:4px;	
}
.faq dd {
	padding:20px 0;
	border-top: #EEE solid 1px;
	position:relative;
}
.faq dd:before {
	position:absolute;
	content:"A";
	color: #FFF;
	background: #fa1496;
	font-size:20px;	
	width: 2em;
	height: 2em;	
	font-weight:600;
	display:inline-block;
	text-align:center;
	line-height:1.8;
	border-radius:4px;
}
.faq dd p {
	padding:0 3.3em;
}
.guide_title {
}
.faq dt::after {
	font-family:'FontAwesome';
	color: #AAA; 
	content: "\f067";
	position: absolute;
	top: 0.2em;
	right: 0;
	bottom:0;
	margin:auto;
	font-size:1.6em;
}
.faq dt.active::after {
	font-family:'FontAwesome';
	content: "\f068";
	color: #AAA; 
}
.guide_detail { 
display: none;
}
@media screen and (max-width: 820px) {
.faq dt {
	font-size:18px;
}
}
@media screen and (max-width: 600px) {
.faq {
	width: calc(100% - 9vw);
	padding: 0 3vw;
    margin:25px auto 0;	
}
.faq dt {
	font-size:4.4vw;
	padding: 3vw 0;
	line-height:1.5;
}
.faq dt::before,
.faq dd::before {
	font-size:3vw;
	top:4vw;
	left:0;	
}
.faq dt p,
.faq dd p {
  padding: 0 7vw 0 9vw;
}
.faq dd {
	font-size:14px;
	padding: 10px 0 20px;
}
.faq dt::after,
.faq dt.active::after {
	font-size:5vw;
	top: 47%;
	right: 0;
	transform: translateY(-50%);
}
}
.faq2 {
    margin:20px 0;
}
.faq2 dt {
    width:90%;
	max-width:450px;	
	padding: 10px 0 10px;
    font-weight: 700;
	font-size: clamp(20px, 1.8vw, 26px);
	background:#fa1496;
	color:#FFF;
	border-radius:40px;
	text-align:center;
	position:relative;
}
.faq2 dt p {
	padding:0 1em;
}
.faq2 dt p:before {
	font-family:'FontAwesome';
	content: "\f067";
	color: #FFF;
	margin-right:8px;
}
.faq2 dd {
    width:100%;
	max-width:none;	
	padding:30px 0;
	position:relative;
}
.guide_title {
}
.guide_detail { 
display: none;
}
@media screen and (max-width: 820px) {
.faq2 dt {
	font-size:2.8vw;
	margin:0 auto;
	padding: 10px 0;	
}
}
@media screen and (max-width: 600px) {
.faq2 {
}
.faq2 dt {
	font-size:4.8vw;
	padding: 7px 0 9px;
}
.faq2 dd {
}
}
.faq3 {
}
.faq3 dt {
    width:96%;
	max-width:660px;
    margin:0 auto;	
	padding: 10px 0 10px;
    font-weight: 700;
	font-size: clamp(22px, 2.3vw, 32px);
	background:#fa1496;
	color:#FFF;
	border-radius:50px;
	text-align:center;
	position:relative;
}
.faq3 dt p {
	padding:0 1em;
}
.faq3 dt p:before {
	font-family:'FontAwesome';
	content: "\f067";
	color: #FFF;
	margin-right:8px;
}
.faq3 dd {
    width:100%;
	max-width:none;	
	padding:30px 0;
	position:relative;
}
.guide_title {
}
.guide_detail { 
display: none;
}
@media screen and (max-width: 820px) {
.faq3 dt {
	font-size:2.8vw;
	margin:0 auto;
	padding: 10px 0;	
}
}
@media screen and (max-width: 600px) {
.faq3 {
}
.faq3 dt {
	font-size:5.2vw;
	padding: 12px 0 13px;
	line-height:1.3;
}
.faq3 dd {
}
}

.cbtn {
	width:100%;
	max-width:300px;
	margin:5px 0 10px;
}
.cbtn a {
	text-align:center;
	display:block;
	font-weight:500;
	background:#fecd2f ;
	color:#333;	
	border-radius:10px;
	padding:3px 0;
}
.cbtn a i {
	color:#333 !important;
	margin-right:3px;	
}
.cbtn a.line {
	text-align:center;
	display:block;
	font-weight:500;
	background:#06c755 ;
	color:#FFF;
	border-radius:10px;
	padding:3px 0;
}
.cbtn a.line i {
	color:#FFF !important;
	margin-right:3px;
}
.cbtn a:hover{
	background:#6FBA2C;
	color:#FFF;
}
.cbtn a:before {
 	/*font-family:'FontAwesome';
	content:"\f105";
	margin-right:5px;*/
 }
/*.cbtn2*/
.cbtn2 {
	width:100%;
	max-width:300px;
	margin:5px 0;
}
.cbtn2 a{
	text-align:center;
	display:block;
	font-weight:500;
	background:	#00B900 ;
	border-radius:10px;
	padding:3px 0;
	color:#FFF;	
}
.cbtn2 a:hover{
	background:#6FBA2C;
	color:#FFF;
}
.cbtn2 a:before {
 	font-family:'FontAwesome';
	content:"\f3c0";
	margin-right:5px;
 }

/*.cbtn3*/ 
.cbtn3 {
	width:100%;
	max-width:500px;
	margin:30px auto;
}
.cbtn3 a {
	text-align:center;
	display:block;
	letter-spacing:1px;
	font-weight:600;
	padding:5px 0;
	border-radius:4px;
	font-size:1.2em;
	background:#6FBA2C;
}
.cbtn3 a:link,
.cbtn3 a:visited{
	color: #FFF;
	text-decoration:none;
}
.cbtn3 a:hover {
	background:#F0B800;
	text-decoration:none;
	/*border: 1px solid #FFF;*/
}
.cbtn3 a:before {
 	font-family:'FontAwesome';
	content:"\f105";
	margin-right:10px;
 }
/*.cbtn4*/
.cbtn4 {
	width:100%;
	max-width:400px;
	margin:15px auto ;
}
.cbtn4 a {
	font-size: clamp(16px, 2.6vw, 28px);
	font-weight:600;
	background:#d52b20;
	text-align:center;
	display:block;
	border-radius:15px;
}
.cbtn4 a:link,
.cbtn4 a:visited {
	color: #FFF;
	text-decoration:none;
}
.cbtn4 a:hover{
	background:#111;
}
.cbtn4 a:before {
 	font-family:'FontAwesome';
	content:"\f101";
	margin-right:5px;
}
/* tab */
.tab {
	zoom: 1;
	list-style: none;
	margin: 0 auto 5px;
	padding: 0;
	padding:3px 0;
	font-size:12px;
	width:1000px;
}
.tab li {
	float:left;
	text-align:left;
	font-weight:bold;
	margin-right:10px;
	text-decoration: none;
}
.tab li a {
	display:block;
	padding: 3px 5px;
	cursor:pointer;
	width:220px;
border-top: 1px solid #ccc;  
    border-right: 1px solid #999;  
    border-bottom: 1px solid #999;  
    border-left: 1px solid #ccc;  
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+1,e8ddce+100 */
background: #ffffff; /* Old browsers */
background: -moz-linear-gradient(top,  #ffffff 1%, #e8ddce 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  #ffffff 1%,#e8ddce 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  #ffffff 1%,#e8ddce 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e8ddce',GradientType=0 ); /* IE6-9 */
}
.tab li a:before {
	font-family:'FontAwesome';
	content:"\f0da";
	margin-right:3px;
}
.tab li a:hover {
	background: #E5D6C3;
	color:#555;
	text-decoration:none;
}
.tab .active {
	background: #E5D6C3;
	color:#555;
}
.tab .active:before {
	margin-right:3px;
}
.tab li:last-child {
	margin-right:0px;
}
.panel {
	display:none;
}
.pcshow {
	display:block;
}

/* Flow */
.flowtitle {
	font-weight:bold;
}
.flowtitle span:before {
	background:#00A0E9;
	color:#FFFFFF;
	border-radius:5px 5px 0 0;
	padding:5px;
}
.flowtitle:before {
	font-family:'FontAwesome';
	content:"\f0a4";
	margin-right:5px;
}
.flow_box {
	position: relative;
	background: #fff;
	border: 5px solid #00a0e9;
	padding:5px;
	margin-bottom:20px;
}
.flow_boxa {
	position: relative;
	background: #fff;
	border: 5px solid #00a0e9;
	padding:5px;
	margin-bottom:20px;
}
.flow_box:after, .flow_box:before {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}
.flow_box:after {
	border-top-color: #00a0e9;
	border-width: 20px;
	margin-left: -20px;
}
.flow_box:before {
	border-top-color: #00a0e9;
	border-width: 27px;
	margin-left: -27px;
}
/* 背景100% */
.bg-title1 {
	background-image:url(../img/bg-title1.jpg);
}
.bg-title2 {
	background-image:url(../img/bg-title2.jpg);
}
.bg-title3 {
	background-image:url(../img/bg-title3.jpg);
}
.bg-title4 {
	background-image:url(../img/bg-title4.jpg);
}
.bg-title5 {
	background-image:url(../img/bg-title5.jpg);
}
.bg-title6 {
	background-image:url(../img/bg-title6.jpg);
}
.bg-title7 {
	background-image:url(../img/bg-title7.jpg);
}
.bg-title8 {
	background-image:url(../img/bg-title8.jpg);
}
.bg-title9 {
	background-image:url(../img/bg-title9.jpg);
}
.bg-title1 {
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	-moz-background-size:cover;
	background-attachment:fixed;
	padding:80px 0;
	min-height:500px;
	overflow:hidden;
}
.bg-title2 {
	background-position: center;
	background-repeat:no-repeat;
	background-size:cover;
	-moz-background-size:cover;
	background-attachment:scroll;
	padding:50px 0;
	margin:0;
}
.bg-title3 {
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	-moz-background-size:cover;
	background-attachment:fixed;
	padding:50px 0;
	overflow:hidden;
}
.bg-title4,
.bg-title5,
.bg-title6,
.bg-title7,
.bg-title8 {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    -moz-background-size: cover;
    background-attachment: scroll;
    padding: 80px 0;
    overflow: hidden;
}
.bg-title9 {
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	-moz-background-size:cover;
	background-attachment:fixed;
	padding:70px 0;
	min-height:300px;
	margin:0;	
	overflow:hidden;
}
.bg-title1:hover,
.bg-title2:hover,
.bg-title3:hover,
.bg-title4:hover,
.bg-title50hover,
.bg-title6:hover,
.bg-title7:hover,
.bg-title8:hover,
.bg-title9:hover  {
	z-index:9999;
}
@media screen and (max-width:820px) {
.bg-title1,
.bg-title2,
.bg-title3,
.bg-title9 {
	background-attachment: scroll;
	min-height:25vh;
  } 
.bg-title4,
.bg-title5,
.bg-title6,
.bg-title7,
.bg-title8 {
    background-attachment: scroll;	
    padding: 30px 0 ;
}   
}
@media screen and (min-width : 320px) and (max-width: 600px) {
.bg-title1 {
	min-height:20vh;
}
.bg-title2,
.bg-title3,
.bg-title9 {
	/*padding:15px 0;*/
	background-attachment: scroll;
	min-height: 150px;
  }
.bg-title4,
.bg-title5,
.bg-title6,
.bg-title7,
.bg-title8 {
    padding: 15px 0;
	margin:0;
} 
}

.bg-img1 {
	padding:30px 0;
	background-image:url(../img/bgp3.jpg);
	background-attachment:fixed;
}

/* accordion */
dl.accordion {
	background:#FFF;
	width:710px;
	margin:5px auto 20px;
	font-size:13px;
}
dl.accordion dt {
	padding-left: 25px;
    background:url(img/open.png) 1% center no-repeat,-moz-linear-gradient(top, #FFF, #FFF);
    background:url(img/open.png) 1% center no-repeat,-webkit-gradient(linear, left top, left bottom, from(#FFF), to(#FFF));
    border-bottom:1px solid #DDD;
	height:40px;
	text-indent:10px;
	line-height:40px;
	color:#41822b;
	font-weight:bold;
	cursor:pointer;
}
dl.accordion dt:hover {
	opacity:0.7;
	filter: alpha(opacity=70);
}
dl.accordion dt.open {
    background:url(img/close.png) 1% center no-repeat,-moz-linear-gradient(top, #FFF, #FFF);
    background:url(img/close.png) 1% center no-repeat,-webkit-gradient(linear, left top, left bottom, from(#FFF), to(#FFF));
}
dl.accordion dd {
	background:#f0f4ee;
	margin: 10px;
	padding:10px;
	line-height:1.5;
	display:none;
	border-radius: 10px;
}
dl.accordion dd strong {
	display:block;
	margin: 10px 0;
}
/* SNS LINK */
#snslink {
	font-family:'FontAwesome';
	width:100%;
	font-size:20px;
	padding-top:20px;
}
#snslink li {
	line-height:30px;
	padding:10px 13px;
	background:#fff;
	color:#000;
	border-radius:1000px;
	display:inline;
	margin:10px;

}
#snslink li:hover {
	opacity:0.5;
}
/*link*/
#snslink a:link,
#snslink a:visited,
#snslink a:hover {
	color:#000;
	text-decoration:none;
}

.tarea {
	width:90%;
	margin:0 auto;
}
/*youtube*/
.youtube{
  width: 100%;
  position: relative;
  padding-top: 56.25%;
}
.youtube iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
/* title */
.mtitle-point {

	font-size:15px;
	font-weight:bold;
	line-height:20px;
	margin:10px 0;
	color:#247B4B;
}
.mtitle-point span {
	background:#247B4B;
	display:inline-block;
	padding:10px;
	width:10px;
	height:10px;
	line-height: 12px;
	text-align:center;
	border-radius:100px;
	color:#fff;
	margin-right:5px;
}


/* tcon */
.tcon2 {
	width:296px;
	font-size:13px;
	background:#fff;
	position:relative;
	padding:5px;
    box-shadow:rgba(0,0,0,0.2) 0 0 2px 1px;
	border-radius:5px;
	margin:0 auto 20px;
}
.tcon2 dt {
	margin-bottom:10px;
}
.tcon2 dd {
	padding:10px;
}
.tclink a {
	display: block;
	width: 180px;
	height: 30px;
	line-height: 30px;
	position: absolute;
	top: 220px;
	left: 156px;
	background: #fecd2f;
	text-align: left;
	color: #fff;
	font-size: 15px;
	font-weight:bold;
	text-indent: .5em;
	box-shadow:rgba(0,0,0,0.3) 0 2px 1px;
	border-radius:5px;
}
	
/* tcon */
.tcon {
	width:230px;
	font-size:12px;
	position:relative;
	margin-bottom:20px;
}
.tcon dl {
}
.tcon dt {
	text-align:center;
	font-weight:bold;
	color:#58350A;
	margin:5px 0;
}
.tcon dd {
	font-size:12px;
	line-height:1.3;
}
.tclink a {
	display: block;
	width: 150px;
	height: 30px;
	line-height: 30px;
	position: absolute;
	top: 211px;
	left: 186px;
	background: #363636;
	text-align: left;
	color: #fff;
	font-size: 12px;
	text-indent: .5em;
	box-shadow:rgba(0,0,0,0.3) 0 2px 1px;
}
.tclink a:hover {
	text-decoration:none;
	background:#313AA3;
}
.tclink * {
  -moz-transition: 0.3s;
  -ms-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;

}
.tclink a:before {
	font-family:'FontAwesome';
	content:"\f0a9";
	margin-right:5px;
	font-size:12px;
}




/* mtitle-cline */
.mtitle-cline {
	display: table;
	text-align: center;
	white-space: nowrap;
	font-size:25px;
	letter-spacing:2px;
	color:#0065b3;
	margin-bottom:20px;
	line-height:0.5;
}
.mtitle-cline span {
  font-size:13px;
}
.mtitle-cline:after, .mtitle-cline:before {
color:#0065b3;
content: '';
display: table-cell;
width: 50%;
background: -webkit-linear-gradient(transparent 50%, currentColor 50%, currentColor -webkit-calc(50% + 5px), transparent -webkit-calc(50% + 5px));
background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(50%, currentColor), color-stop(currentColor calc(50% + 5px)), to(transparent calc(50% + 5px)));
background: linear-gradient(transparent 50%, currentColor 50%, currentColor calc(50% + 2px), transparent calc(50% + 2px));
-webkit-background-clip: padding;
background-clip: padding;
}
.mtitle-cline:after {
border-left: 2em solid transparent;
}
.mtitle-cline:before {
border-right: 2em solid transparent;
}
 
 /* halfbox */
#contentwrap {
	padding:0;
}
.mtitle-big0 {
	font-size: clamp(18px, 2.6vw, 38px);
	font-weight:700;
    letter-spacing: 0.1em;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    line-height: 1.6;
	background:#F0B800;
	color:#FFF;
	padding:15px 0;
}
.mtitle-big0 span {
	background:#6FBA2C;
	display:block;
}
.mtitle-big {
	font-size: clamp(18px, 2.8vw, 40px);
	text-align:center;
	line-height:1.5;
	letter-spacing:0.02em;
	font-weight:700;
	color:#6FBA2C;
}
.mtitle-big span {
	font-size:0.7em;
	color:#555;
}
.mtitle-big1 {
	font-size:50px;
	font-size: clamp(18px, 2.6vw, 38px);	
	line-height:0.4;
	font-weight:700;
	color:#6FBA2C;
	text-align:center;
	margin-bottom:25px;
}
.mtitle-big1 span {
	font-family: 'Poppins', sans-serif;	
	font-size: clamp(18px, 6.6vw, 100px);
	font-weight:600;
	color:#EEE;
	display:block;
}
.mtitle-big2 {
	font-size: clamp(18px, 2.6vw, 38px);	
	font-weight:700;
	text-align:center;
	line-height:1.6;
}
.mtitle-big2 span {
	font-size: 1.3em;
	font-weight:800;
	padding:0 5px;
	color:#fa1496;
}
.mtitle-big2 span.pinktext {
	color:#f37c92;
}
.mtitle-big3 {
	font-size: clamp(20px, 2.4vw, 30px);
	font-weight:700;
	text-align:center;
	margin:40px 0;
}
.mtitle-big3 span {
	color: #fa1496;
  font-size: 1.2em;
  padding: 0 3px;
  border-bottom: 5px dotted #fa1496;
}
.mtitle-big4 {
   font-size: clamp(18px, 1.6vw, 26px);
	font-weight:600;
	line-height:1.8;
}
.mtitle-big4 span {
	color: #fa1496;
	font-size:1.2em;
	font-weight:700;	
}
.mtitle-big5 {
	font-size:36px;
	font-weight:400;
	line-height:1;
	color:#444;
	letter-spacing:0.1em;
	font-family: 'Montserrat', sans-serif;
	text-align:center;
}
.mtitle-big5 span {
	font-size:16px;
	color:#666;
}
.mtitle-middle {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	border-bottom: 1px solid #AAA;
/*	padding-bottom:5px;*/
	font-size: clamp(18px, 2.2vw, 30px);
	font-weight:normal;
	line-height:1.4;
}
.mtitle-middle span {
	font-size:0.8em;
	color:#777;	
}
.mtitle-middle:first-letter {
    font-size: 1.3em;
	/*color:#CCC;*/
	padding-right:3px;
}
.mtitle-middle2 {
	border-bottom: 1px dashed #777;
	padding-bottom:5px;
	font-size:24px;
	color:#555;
	line-height:1.4;
	letter-spacing:1px;
	font-weight:500;
	margin:15px 0 10px;
}
.mtitle-middle2 span {
	color:#fecd2f;
	font-size:2.6em;
	font-style:italic;
	padding-right:5px;
}
.mtitle-middle2:first-letter {
    font-size: 1.2em;
	color:#f97233;
}
.mtitle-middle2:before {
 	/*font-family:'FontAwesome';
	content:"\f0a9";
	margin-right:5px;
	font-style:normal;
	padding-left:3px;*/
}
.mtitle-tel {
	font-size: clamp(18px, 2.6vw, 38px);
	font-weight: 700;
	text-align: center;
	line-height: 1.6;
	letter-spacing:0.04em;
}
.mtitle-tel::before {
  font-family: "FontAwesome";
  content: "";
  margin-right: 5px;
  font-size:0.9em;
  color: #fa1496;
}
.mtitle-cap {
	color:#111;
	font-size:22px;
	margin-bottom:10px;
	line-height:1.6;
	border-bottom:#111 1px dashed;
	padding-bottom:5px;
}
.mtitle-cap span {
	font-size:1.2em;
	color:#fecd2f;
}
.mtitle-cap2 {
	/*position: relative;*/
	border-bottom: 1px dashed #555;
	padding-bottom:5px;
	margin:0px 0 10px;
	font-size:24px;
	font-weight:normal;
	text-align:left;
	line-height:1.2;
	color:#222;
	letter-spacing:1px;
}
.mtitle-cap2 span {
	font-size:0.8em;
	color:#555;
}
.mtitle-cap2:first-letter {
    font-size: 1.4em;
	color:#fecd2f;
	padding-right:2px;
}
/* listFlow */
.listFlow {
	margin-top:20px;
}
.listFlow li {
	padding-bottom:9px;		
	margin-bottom:9px;
	background:transparent url("../img/bg_listflow.png") 42px 100% no-repeat;
	overflow:hidden;
}
.listFlow .lastItem {
	margin-bottom:0;
	padding-bottom:0;
	background:none;
}
.listFlow dl {
	display:table;
	width:100%;
}
.listFlow dl dt {
	display:table-cell;
	padding:10px 0;
	border:1px solid #DDD;
	width:25%;
	background:#DDD;
	color:#444;
	font-size:20px;
	text-align:center;
	vertical-align:middle;
	line-height:1.2;
	font-weight:600;
	border-radius:10px 0 0 10px;
}
.listFlow dl dt .num {
	display:block;
	font-size:1.8em;
	font-weight:600;
}
.listFlow dl dd {
	display:table-cell;
	padding:15px 20px;
	border-top:1px solid #c8c8c8;
	border-right:1px solid #c8c8c8;
	border-bottom:1px solid #c8c8c8;
	vertical-align:middle;
	border-radius:0 10px 10px 0;
	background:#FFF;
}
.listFlow h4 {
	font-weight:700;
	font-size:18px;
	margin: 10px 0;
	border-bottom: 2px dashed #ccc;
	color:#444;
}
.listFlow dl dd i {
	color: #AAA;
}
.listFlow dl dd img {
	width:250px;
}
.hidden {
	display:none;
}
/* ビフォーアフター */
.ba {
    margin: 10px auto 30px;
    width:100%;
    position: relative;
    line-height: 1.4; /* 繝�く繧ｹ繝医�謖�ｮ� */
}
.ba:before {
    margin: -20px 0 0 -10px; 
    border: 20px solid transparent;
    border-left-color: #d52b20;
    content: "";
    position: absolute;
    top: 43%; 
    left: 50%;
}
 
/* float繧剃ｽｿ縺��縺ｧclearfix縺ｮ謖�ｮ� */
.ba:after {
    height: 0;
    visibility: hidden;
    content: ".";
    display: block;
    clear: both;
}
 
/* ビフォーアフター */
.beforeBox,
.afterBox {
    padding: 3px;
    width: 45%;
	background-color:#fff;
    position: relative;
	color: #333;
	text-align: center;
}
.ba .beforeBox {
    float: left;
}
.ba .beforeBox img{
    width:100%;
}
.ba .afterBox {
    float: right;
}
.ba .afterBox img{
    width:100%;
}
.ba .beforeBox p,
.ba .afterBox p {
	margin-top:5px;
}
.shadow {
    box-shadow: 0 5px 5px rgba(0, 0, 0, 0.05), 0 1px 1px rgba(0, 0, 0, 0.05);	
}
.feature {
	margin-top:40px;
}
.feature li {
	font-weight:500;
	margin-bottom:30px;

}
.feature li h5 {
	font-size: clamp(16px, 2.2vw, 28px);
	font-weight:700;	
	letter-spacing:1px;
	margin-bottom:5px;
	position:relative;
	display:table;
	padding-left:64px;
}
.feature li h5 span {
	display:block;
	font-size: 16px;
	font-family: 'Poppins', sans-serif;
	font-weight:600;
	color:#09b2ba;
	line-height:1.1;
}
.feature li h5:before {
    content: '';
    position: absolute;
	top:0;
	left:0;
	width:60px;
	height:64px;
	background:url(../img/num/1.png) no-repeat;
	background-size:contain;
}
.feature li.second h5:before {
	background:url(../img/num/2.png) no-repeat;
	background-size:contain;	
}
.feature li.third h5:before {
	background:url(../img/num/3.png) no-repeat;
	background-size:contain;	
}
.feature li.fourth h5:before {
	background:url(../img/num/4.png) no-repeat;
	background-size:contain;	
}
.feature li p {
	font-size:16px;
	font-weight:normal;
}
/*.feature li:before {
  content: "";
  display: block;
  background-image:url(../img/point-1.png);
  width: 45px;
  height: 45px;
  position: absolute;
  left: 0;
  background-size: contain;
  margin: auto;
  top: 0;
  bottom: 0;
}
.feature li:nth-child(2):before {
  background-image: url(../img/point-2.png);
}
.feature li:nth-child(3):before {
  background-image: url(../img/point-3.png);
}
.feature li:nth-child(4):before {
  background-image: url(../img/point-4.png);
}
.feature li:nth-child(5):before {
  background-image: url(../img/point-5.png);
}
.feature li:nth-child(6):before {
  background-image: url(../img/point-6.png);
}
.feature li:nth-child(7):before {
  background-image: url(../img/point-7.png);
}*/
.calendar_head {
  color: #fefefe;
  background: #111;
  text-align: center;
  padding: 4px;
}
.calendar-box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  font-size: 0.9em;
}
.calendar-box div.calendar {
  width: 49%;
}
.calendar-box table {
  width: 100%;
  text-align: center;
}
.calendar-box table th,
.calendar-box table td {
  width: 14.28%;
  border: 0.9px solid #aaa;
  font-weight: normal;
  padding: 5px;
  height: 45px;
  color: #555;
}
.calendar-box table th {
  background: #f0ebdd;
  vertical-align: middle;
  font-weight: 600;
  text-align: center;
}
.calendar-box table td {
  background: #fefefe;
}
.calendar-box th.sun,
.calendar-box td.sun {
  color: #FF0000;
}
.calendar-box th.sat,
.calendar-box td.sat {
  color: #104398;
}
.calendar-box .off {
  background: #ffd0bb;
}
.calendar-box .item {
  background: #ffe6e6;
  font-size: 1rem;
  color: #000;
}
.calendar-box .item-td {
  background: #ff9999;
}
.calendar-box .item-td .days {
  color: #FF6600;
}
.calendar-box .item-td .item {
  display: none;
}
.arrow {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  text-align: center;
  margin-bottom: 5px;
  font-size: 14px;
}
.arrow a {
  display: block;
  background: #eee;
  padding: 5px 8px;
  cursor: pointer;
}
.arrow a:link, .arrow a:visited {
  color: #333;
}
.arrow a:first-of-type {
  margin-right: 5px;
}
.arrow-before:before {
 	font-family:'FontAwesome';
	content:"\f0d9";
	margin-right:5px;
 }	
.arrow-after:after {
 	font-family:'FontAwesome';
	content:"\f0da";
	margin-left:5px;
 }	 
@media screen and (max-width:820px) { 
.calendar-box div.calendar {
	width:100%;
	margin-bottom:25px;
}
}
/*　facebook埋め込み */
.facebook_wrap{
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}
.fb-page,
.fb-page span,
.facebook_wrap iframe{
	width: 100% !important;
	height: 440px !important;
}
@media screen and (max-width:600px) { 
.fb-page,
.fb-page span,
.facebook_wrap iframe{
	height: 500px !important;
}
}
/*活動報告ページのfacebook埋め込み*/
.facebook_wrap2{
	margin-left: auto;
	margin-right: auto;
	width: 500px;
}
.facebook_wrap2 .fb-page,
.facebook_wrap2 .fb-page span,
.facebook_wrap2 iframe{
	width: 100% !important;
	height: 740px !important;
}
@media screen and (max-width:600px) { 
.facebook_wrap2{
	width: 100%;
}
.facebook_wrap2 .fb-page,
.facebook_wrap2 .fb-page span,
.facebook_wrap2 iframe{
	height: 540px !important;
}
}
.box_styleE {
  position: relative;
  margin: 70px 0;
  min-height: 300px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow:hidden;
}

.box_styleE:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  margin-bottom: 0;
  width: 50%;
  height: 100%;
  background: url(../img/bg_E.jpg) no-repeat center center;
  background-size: cover;
  border-radius:0 20px 20px 0;   
}
.box_styleE:after {
  content: "";
  display: block;
  position: absolute;
  top: -1px;
  left: 50%;
  z-index: -1;
 /* -webkit-transform: skewX(-25deg);
  -ms-transform: skewX(-25deg);
  transform: skewX(-25deg);*/
  width: 50%;
  height: 101%;
  background: #fff;
}

.box_styleE .inner {
  width: 45%;
  margin-left: auto;
}
.box_styleE .inner h2,
.box_styleE .inner h3 {
	font-size: clamp(18px, 2.4vw, 34px);
	font-weight: 700;
	margin-bottom: 10px;
	color: #6FBA2C;
}
@media screen and (max-width: 1024px) {
.box_styleE:before {
	width:75%;
}
.box_styleE .inner {
  width: 40%;
}
}
@media screen and (max-width: 820px) {
  .box_styleE {
    margin: 0;
    display: block;
	min-height:200px;
  }

  .box_styleE:before {
    position: relative;
    display: block;
    width: 100%;
    height: 30vh;
  }  
  .box_styleE:after {
    content: inherit;
  }
  .box_styleE .inner {
    width: 100%;
  }
  .box_styleE .inner h2 {
	  font-size:2.8vw;
  }
}
@media screen and (max-width: 600px) {
  .box_styleE .inner h2 {
	  font-size:5vw;
  }
}	
.box_styleF {
  position: relative;
  margin: 5em 0;
  min-height: 450px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.box_styleF:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
  margin-bottom: 0;
  width: 50%;
  height: 100%;
  background: url(../img/bg_F.jpg) no-repeat center center;
  background-size: cover;
  border-radius:20px 0 0 20px;  
}
.box_styleF.alter:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
  margin-bottom: 0;
  width: 50%;
  height: 100%;
  background: url(../img/bg_FF.jpg) no-repeat center center;
  background-size: cover;
}
.box_styleF:after {
  content: "";
  display: block;
  position: absolute;
  top: -1px;
  right: 50%;
  z-index: -1;
  /*-webkit-transform: skewX(-25deg);
  -ms-transform: skewX(-25deg);
  transform: skewX(-25deg);*/
  width: 50%;
  height: 101%;
  background: #fff;
}

.box_styleF .inner {
  width: 45%;
  margin-right: auto;
}
.box_styleF .inner h2,
.box_styleF .inner h3 {
	font-size: clamp(18px, 2.4vw, 34px);
	font-weight: 700;
	margin-bottom: 10px;
	color: #6FBA2C;
}
@media screen and (max-width: 820px) {
  .box_styleF {
    margin: 0;
    display: block;
	min-height:200px;	
  }

  .box_styleF:before {
    position: relative;
    display: block;
    width: 100%;
    height: 35vh;
  } 
  .box_styleF.alter:before {
    position: relative;
    display: block;
    width: 100%;
    height: 35vh;
  } 
  .box_styleF:after,
  .box_styleF.alter:after {
    content: inherit;
  }

  .box_styleF .inner {
    width: 100%;
  }
  .box_styleF .inner h3 {
	  font-size:2.8vw;
  }  
}
@media screen and (max-width: 600px) {
.box_styleF::before,
.box_styleF.alter::before {
    height: 30vh;
}
.box_styleF .inner h3 {
	font-size:5vw;
}
}	
.content_box {
  max-width: 1400px;
  width: 90%;
  min-height:400px;
  margin: auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  position: relative;
  padding: 60px 0;
}
@media screen and (max-width: 820px) {
  .content_box {
    padding: 30px 0;
    width: 90%;
	min-height: inherit;
  }
}
.pdfbox {
	margin-top:20px;
}
.pdfbox iframe[src$=".pdf"] {
    width:100%;
    height:80vh;
}
@media screen and (max-width: 600px) {
.pdfbox iframe[src$=".pdf"] {
    width:100%;
    height:75vh;
}	
}
/**/
.tp_bg {
    position: relative;
    width: 90%;
    max-width: 1400px;
    padding-top: 8%;
    margin:60px auto 100px;	
}
.tp_bg:before {
	content:"";
	position:absolute;
	background-image:url(../img/top_bg.jpg);
	background-position:top left;
	background-size:cover;
	background-repeat:no-repeat;
	width:60%;
	height:100%;
	top:0;
	right:0;
	z-index:-1
}
.tp_deco {
    position: absolute;
    width: 15%;
	max-width:160px;
	right: 3vw;
    display: block;
    top: 0;
	z-index:100;
   backdrop-filter: blur(1px);
   -webkit-backdrop-filter: blur(1px);	
}
.tp_deco img {
	width:100%;
	height:auto;
}
.tp_cont {
	margin-left:35%;
}
.tp_cont figure {
    position: relative;
}
.tp_cont figure img {
	width:100%;
	height:auto;
	border-radius:20px;
}
.tp_bg .img-sub {
    position: absolute;
    top: 2%;
    left: 60px;
    width: 25.25%;
}
.tp_bg .tp_text {
    position: absolute;
    bottom: 5%;
    left: 7%;
	background: #FFF;
	width: 40%;
	padding: 10px 30px 40px 40px;
	border-radius:20px;
}
.tp_bg .tp_text h3 {
	font-size: clamp(14px, 2.2vw, 30px);
	margin-bottom:10px;
	line-height:1.4;
}
.tp_bg .tp_text h3 span {
	color:#6FBA2C;
}
.tp_bg .tp_text h3 span.suuji {
	font-size:1.8em;
	padding:0 3px 0 5px;
}

@media screen and (max-width:820px) {
.tp_bg {
	padding-top:30px;
}
.tp_deco {
  top: -20px;
  right:0;
}
.tp_cont {
	margin-left:0;
}
.tp_bg .img-sub {
	top: 0;
	left: 20px;
	width: 30%;
}
.tp_bg .tp_text {
	left:-2vw;
	bottom:-140px;
	width: 60%;
	padding: 5px 25px 20px 25px;
}
.tp_bg .tp_text h3 {
	font-size:3.2vw;
}
}
@media screen and (max-width:600px) {
.tp_bg {
	margin: 35px auto;
}
.tp_deco {
	top: -8px;
    width: 25%;
    left: 5px;
	right:auto;
}
.tp_bg .img-sub {
	display:none;
}
.tp_bg .tp_text {
	position:relative;
	bottom:0;
	/*width:calc(100% - 40px);
	padding:20px;*/
	left: 0;
	width:100%;
	padding:20px 0;
	font-size:14px;
}
.tp_bg .tp_text h3 {
	font-size:5vw;
}
}
/*ページ下部MAP*/
.mapbox {
	width:90vw;
	max-width:1400px;
	margin: 15px auto 0;
}
.mapbox iframe {
	/*border-radius:10px;*/
}
@media screen and (max-width:820px) {
.mapbox iframe {
	height:400px;
}	
}
@media screen and (max-width:600px) {
.mapbox iframe {
	height:280px;
}	
}
/*成長ステップ*/
.way_flow {
	margin:20px 0;
}
.way_flow dt {
    background-color: #EEE;
    color: #444;
	line-height:1.8;
    padding: 5px 15px;
	font-size: clamp(18px, 1.7vw, 22px);
	font-weight:600;
    border-radius: 3px;
}
.way_flow dd {
    border-left: 4px dotted #555;
    margin-left: 25px;
    padding: 10px 15px 15px;
    box-sizing: border-box;
	overflow:hidden;	
}
.way_flow dd h3 {
	font-size: clamp(16px, 1.4vw, 20px);
	margin:10px 0;
	color:#444;
}
.way_flow dd img {
	max-width:40%;
	margin-left:20px;
	float:right;
}
.way_flow dd:last-child {
    border: none;
}
.waybox {
	border:#fa1496 solid 2px;
	border-radius:8px;
	padding:10px;
	margin-top:10px;
}
.waybox h4 {
	font-size:1.2em;
	line-height:1.5;
	margin-bottom:10px;
	color: #fa1496;
}
	
@media screen and (max-width: 820px) {
.way_flow dt {
	font-size:2.8vw;	
}
.way_flow dd h3 {
	font-size:2.6vw;
}
.way_flow dd img {
}
}
@media screen and (max-width: 600px) {
.way_flow dt {
    font-size: 4.6vw;
}
.way_flow dd h3 {
	font-size:4.5vw;
}
.way_flow dd img {
	max-width:100%;
}
}
/*利用者の声*/
.voiceimg {
	margin-bottom:10px;
	text-align:center;	
}
.voiceimg img {
 /* border: dashed 3px #AAA;*/
  background: #FFF;
}
.voice  {
	overflow: hidden;
}
.voice dt {
	font-size: clamp(15px, 1.4vw, 20px);
	line-height: 1.3;
	text-align:center;
	font-weight:700;
	color:#555;
}
.voice dt span{
	font-size: 0.8em;
	font-weight:400;
	display:block;
}
.voice dd {
	position: relative;
	border-radius: 10px;
	display: inline-block;
 	margin: 25px auto;
	background:#FFF;
	padding:15px 15px;
	box-shadow: 3px 3px 3px #777;
	width:calc(100% - 40px);
}
.voice dd:before {
	content: "";
	position: absolute;
 	margin-top: -15px;
	border: 15px solid transparent;
	top: -12px;
	left: 47%;
	border-bottom: 15px solid #FFF;
}
.voice dd h4 {
	font-weight:700;
	margin:5px 0;
}
.voice dd h4 span {
	font-size:1.3em;
	color:#fa1496;
	padding:0 3px;
}
@media screen and (max-width: 820px) {
.voice dt {
	font-size:2vw;
}	
}
@media screen and (max-width: 600px) {
.voice dt {
	font-size:4.8vw;
	line-height: 1.6;
}
.voice dt span {
	font-size:0.8em;
}
.voice dd {
	font-size:15px;
}	
}
/*ホプラスでの1日*/
.flowbox {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top:50px;
}
.flow {
  padding-left: 120px;
  position: relative;
}
.flow::before {
  content: "";
  width: 15px;
  height: 100%;
  background: #eee;
  margin-left: -8px;
  display: block;
  position: absolute;
  top: 0;
  left: 120px;
}
.flow li {
  position: relative;
}
.flow li:not(:last-child) {
  margin-bottom: 8vh;
}
.flow li .icon {
  font-size: 18px;
  font-weight:600;
  color: #444;
  background:#DDD;
  padding: 10px 15px 10px 15px;
  display: block;
  position: absolute;
  top: 5px;
  left: -120px;
  z-index: 100;
  width:60px;
  line-height:1;
  border-radius:10px;
  text-align:center;
}
.flow li .icon span {
	font-size:1.5em;
	font-weight:600;
	margin-left:3px;
	/*color:#111;*/
}
.flow li .icon::after {
  content: "";
  border-style: solid;
  border-width: 5px 0 5px 10px;
  /*border-color: transparent transparent transparent #cce0f0;*/
  border-color: transparent transparent transparent #DDD;
  position: absolute;
  top: 50%;
  left: 100%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.flow li dl {
  padding-left: 70px;
  position: relative;
}
.flow li dl::before,
.flow li dl::after {
  content: "";
  display: block;
  position: absolute;
  top: 25px;
}
.flow li dl::before {
  width: 7px;
  height: 7px;
  margin-top: -3px;
  background: #fa1496;
  border-radius: 50%;
  left: -4px;
}
.flow li dl::after {
  width: 50px;
  border-bottom: 1px dashed #999;
  position: absolute;
  left: 5px;
}
.flow li dl dt {
  font-size: clamp(18px, 1.8vw, 26px);
  font-weight: 600;
  margin-bottom: 1vh;
  color:#444;
}
.flow li dl dd a {
	font-weight:600;
	color:#008459;
	text-decoration:underline;
}
@media screen and (max-width: 820px) {
.flowbox {
	margin-top:30px;
}
.flow li:not(:last-child) {
	margin-bottom:30px;
}
.flow li dl dt {
  font-size: 2.6vw;
}	
}
@media screen and (max-width: 600px) {
.flowbox {
	margin-top:30px;
}
.flow {
  padding-left: 90px;
}
.flow::before {
  left: 90px;
}
.flow li .icon {
  font-size: 4vw;
  width:40px;
  left: -90px;
  padding: 10px;
}
.flow li dl {
	padding-left:35px;
}
.flow li dl::before {
	margin-top: -6px;	
}
.flow li dl::after {
  width: 20px;
  top:23px;
  left: 10px;
}
.flow li dl dt {
  font-size:4.6vw;
  line-height:1.6;
}	
}
/*よくある不安　会話型*/
.kaiwa,
.kaiwa2 {
  display:flex;
  flex-wrap: wrap;	
  justify-content:center; 
  margin:20px 0;
}

.kaiwa .faceicon {
	width:120px;
	margin-right:40px;
}
.kaiwa2 .faceicon {
	width:120px;	
  margin-left:40px;
}
.kaiwa .faceicon img,
.kaiwa2 .faceicon img {
  width: calc(100% - 6px);
  height: auto;
  border: dashed 3px #CCC;
  border-radius: 50%;
}

.kaiwa .chatting,
.kaiwa2 .chatting {
}

.says {
  display: inline-block;
  position: relative; 
  margin: 20px 0 0 ;
  padding: 17px 13px;
  border-radius: 12px;
  background: #e7f5e1;
}
.says:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px; 
  left: -24px;
  border: 12px solid transparent;
  border-right: 12px solid #e7f5e1;
}
.says2 {
  display: inline-block;
  position: relative; 
  margin: 20px 0 0 ;
  padding: 17px 13px;
  border-radius: 12px;
  background: #ffeff7;
}
.says2:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px; 
  right: -24px;
  border: 12px solid transparent;
  border-left: 12px solid #ffeff7;
}

.says p,
.says2 p {
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 600px) {
.kaiwa .chatting, 
.kaiwa2 .chatting {
	width:calc(100% - 28vw);
}
.says {
	padding:4vw 3vw;
}
.says2 {
	padding:2vw;
}
.kaiwa .faceicon {
  width: 23vw;
  margin-right:5vw;	
}
.kaiwa2 .faceicon {
  width: 23vw;
  margin-left: 5vw;
}
}
/*ミニキャラ*/
.minichara {
	text-align:center;
}
@media screen and (max-width: 820px) {
.minichara img {
	width:150px;
}	
}
@media screen and (max-width: 600px) {
.minichara img {
	width:30vw;
}	
}