@charset "utf-8";

body {
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",'Noto Sans JP', sans-serif ,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Verdana;
	font-size: 16px;
	line-height: 1.5;
	text-align: center;
	font-weight: 500;
	color: #333333;
	min-width: 320px;
}
a {
	color: #000;
	outline: none;
	text-decoration: none;
	transition: .1s;
}
input[type=radio], input[type=checkbox] {
	margin:0 5px 0 0;
	width: auto;
}
small {
	font-size: 80%;
}
.container {
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
}
#topPage .container {
	max-width: 1100px;
}
article > section {
	padding: 60px 0;
}

.fo-futura {
	font-family: futura-pt, sans-serif;
	font-style: normal;
	font-weight: 400;
	line-height: .8;
}
.fo-tsuku {
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: 600;
	font-style: normal;
}
.fo-mincho {
	font-family: "dnp-shuei-nmincho-std", sans-serif;
	font-weight: 400;
	font-style: normal;
}
.menuIcon,.spContact,.spLogo {
	display: none;
}
/*header----------------------------*/
.hLogo {
	padding: 15px 5%;
	background: linear-gradient(to top,#ebebeb 0%,#fcfcfc 30%,#fff 100%);
}
.hLogo img {
	display: block;
	margin: 0;
	max-height: 24px;
}
._70th {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 15px;
}
._70th img[src*="70th"] {
	max-height: 35px;
	margin-bottom: -2px;
}
.nav {
	max-width: 1000px;
}
.nav > li {
	/*width: 16.66666%;*/
	width: 20%;
}
.nav li a {
	display: block;
	padding: 20px 5px;
	width: 100%;
	height: 100%;
	font-size: 15px;
	line-height: 1;
	position: relative;
}
.nav > li > a::after {
	content: "";
	display: block;
	width: 60%;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 15px;
	opacity: 0;
	-webkit-transition: .2s;
	-o-transition: .2s;
	transition: .2s;
	-webkit-transform: translateY(5px);
	-ms-transform: translateY(5px);
	transform: translateY(5px);
	margin: auto;
	background: #333;
	height: 2px;
}
.nav > li > a:hover::after {
	transform: translateY(3px);
	opacity: 1;
}
.dMenu {
	position: relative;
}
.dropDown {
	display: none;
	position: absolute;
	top: 100%;
	width: 100%;
	background: #c1c1c1;
}
.dropDown li {
	width: 100%;
}
.dropDown li:not(:last-of-type) {
	border-bottom: 1px solid #ccc;
}
.dropDown li a {
	width: 100%;
	padding: 14px 5px;
	background: #f1f1f1;
	color: #000;
	line-height: 1.5;
}
.dropDown li a:hover {
	background: #333;
	color: #fff;
}


/*top-------------*/
.mainVisual {
	background: url("../img/top/main.png") top center no-repeat;
	background-size: cover;
	height: 687px;
	padding-top: 80px;
	color: #fff;
	font-size: 14px;
	letter-spacing: .05em;
	text-indent: .05em;
}
.mainLogo {
	margin: 0 auto 30px;
	width: 170px;
}
.mainLogo img {
	width: 100%
}

.mainTxt p.fo-futura {
	line-height: 1;
	font-size: 28px;
	margin-bottom: 15px;
}
.ttlBox {
	font-size: 14px;
	color: #333;
	margin-bottom: 45px;
}
.ttlBox h2 {
	font-size: 32px;
	color: #000;
	margin-bottom: 10px;
}
.topBusinessWrap li {
	width: 33%;
	position: relative;
}
.topBusinessWrap li:not(:last-of-type) {
	margin-right: .5%;
}
.topBusinessWrap li figure img {
	width: 100%;
}
.delayCont {
	font-size: 14px;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	transition: .2s;
	background: rgba(0,0,0,.6);
}
.topCompany {
	background: rgba(0,0,0,.4);
}
.delayCont > * {
	width: 100%;
}
.topBusinessCont h3 {
	font-size: 24px;
	position: relative;
	margin-bottom: 20px;
}
.topBusinessCont h3::after {
	content: "";
	display: block;
	width: 30px;
	height: 1px;
	background: #ff0000;
	position: absolute;
	left: 0;
	right: 0;
	bottom: -10px;
	margin: auto;
}
.topBusinessWrap li:nth-of-type(2) .topBusinessCont h3::after {
	background: #00abff;
}
.topBusinessWrap li:nth-of-type(3) .topBusinessCont h3::after {
	background: #ef8b1e;
}
.topBusinessTxt {
	font-size: 16px;
	margin: 20px 0;
}
.btn a {
	font-size: 16px;
	border: 1px solid #fff;
	background: transparent;
	color: #fff;
	border-radius: 22px;
	line-height: 1;
	padding: 12px;
	display: block;
	max-width: 220px;
	margin: auto;
}
.delayCont.active {
	background: rgba(0,0,0,0)!important;
}
.delayCont.active {
	text-shadow: 1px 1px 5px rgba(0,0,0,1);
}
.delayCont.active a {
	background: #fff;
	color: #000;
	text-shadow: none;
}
#topCompany {
	background: url("../img/top/company_bg.png") center top no-repeat;
	background-size: cover;
	padding: 85px 0;
}
.topCompanyWrap {
	position: relative;
	background: url("../img/top/company.png") center center no-repeat;
	background-size: cover;
	height: 244px;
}
#topCompany .ttlBox {
	color: #fff;
	margin-bottom: 30px;
}
#topCompany .ttlBox h2 {
	color: #fff;
}
.topBnrArea {
	padding: 85px 0;
}
.topBnrWrap {
	position: relative;
	background: url("../img/top/csr.png") center center no-repeat;
	background-size: cover;
	height: 244px;
}
.topBnrArea .ttlBox {
	color: #fff;
	margin-bottom: 30px;
}
.topBnrArea .ttlBox h2 {
	color: #fff;
}
.topBnrArea .delayCont {
	background: rgba(0,0,0,.1)
}


/*footer---------------------*/
.footwrWrap {
	background: #333;
	color: #fff;
	padding: 60px 0;
	position: relative;
}
.footer {
	max-width: 850px;
}
.footerTop {
	border-bottom: 1px solid #fff;
	padding-bottom: 25px;
	margin-bottom: 25px;
}
.fLogo {
	margin-right: 5px;
}
.fLogo img {
	max-height: 40px;
	display: block;
	margin: 0 0 7px 0;
}
.fLogo ._70th img[src*="70th"] {
	max-height: 62px;
	margin-bottom: -2px;
}
.telBox img {
	max-height: 22px;
	display: block;
	margin: 0 0 2px;
}
.telBox {
	font-size: 14px;
}
.btnContact a {
	background: #c1c1c1;
	color: #333;
	display: block;
	padding: 12px 16px;
	font-weight: 600;
	line-height: 1;
}
.btnContact a::before {
	content: "";
	display: inline-block;
	background: url("../img/ico_mail.png") center center no-repeat;
	background-size: contain;
	width: 22px;
	height: 14px;
	margin-right: 5px;
}
.btnContact a:hover {
	background: #fff;
}
.fNav li:not(:last-of-type) {
	margin-right: 60px;
}
.fNav a {
	display: block;
	color: #fff;
}
.fNav a:hover {
	text-decoration: underline;
}
.copyRight {
	color: #4d4d4d;
	font-size: 95%;
	padding: 10px 5%;
}
.sideFix {
	z-index: 50;
	position: fixed;
	top: 13%;
	right: 5px;
	width: 6%;
	max-width: 70px;
}
#pageTop {
	height: 0;
	width: 0;
	visibility: hidden;
}
.pageTop {
	position: absolute;
	left: 0;
	right: 0;
	top: -20px;
	margin: auto;
	width: 90%;
	max-width: 1000px;
	text-align: right;
}
.pageTop img {
	max-height: 40px;
}

/*ufb--------------------------*/
.ufbMain {
	background: url("../img/ufb/main.png") top center no-repeat;
	background-size: cover;
	height: 795px;
}
#ufbTop {
	background: url("../img/ufb/ufb_bg.png") top center no-repeat;
	background-size: cover;
	padding: 150px 0 90px;
	margin-top: -110px;
}
#ufbTop h2 {
	margin-bottom: 40px;
}
#ufbTopAbout {
	padding-top: 30px;
}
.ufbTopCont01 li:not(:last-of-type) {
	margin-right: 5%;
}
.ufbTtl01 {
	margin-bottom: 50px;
}
.ufbTtl01 span {
	display: inline-block;
	background: url("../img/ufb/ttl_border01.png") bottom center no-repeat;
	background-size: contain;
	padding-bottom: 20px;
	font-size: 36px;
	color: #0071ba;
}
.ufbTopAboutWrap > p {
	width: 41%;
}
.ufbTopAboutWrap dl {
	width: 50%;
	text-align: left;
	font-size: 18px;
}
.ufbTopAboutWrap dt {
	font-size: 20px;
	margin-bottom: 20px;
	font-weight: 600;
}
.btn02 a {
	display: inline-block;
	background: #0071ba;
	color: #fff;
	padding: 10px 30px;
	border: 1px solid #0071ba;
}
.btn02 a:hover {
	background: #fff;
	color: #0071ba;
}
.ufbTopAboutWrap .btn02 {margin-top: 15px;}
#efficacy {
	background: #e1e8f4 url("../img/ufb/efficacy_bg.png") bottom center no-repeat;
}
.efficacy {
	width: 31.5%;
	background: #fff;
}
.efficacy h3 {
	font-size: 24px;
	padding: 7px 10px;
	background: #3fa7f3;
	color: #fff;
	line-height: 1.2;
	letter-spacing: .1em;
}
.efficacy:nth-of-type(2) h3 {background: #ff77a0}
.efficacy:nth-of-type(3) h3 {background: #00a79b}
.efficacy dl {
	text-align: left;
	padding: 20px;
	font-size: 15px;
}
.efficacy dt {
	color: #3fa7f3;
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 5px;
}
.efficacy:nth-of-type(2) dt {color: #ff77a0}
.efficacy:nth-of-type(3) dt {color: #00a79b}
.efficacy dd:not(:last-of-type) {
	margin-bottom: 7px;
}
#ufbdual {
	background: -webkit-gradient(linear,left top, right top,color-stop(60%, #e2eff6),to(#f5f5f5));
	background: -ms-linear-gradient(left,#e2eff6 60%,#f5f5f5 100%);
	background: -o-linear-gradient(left,#e2eff6 60%,#f5f5f5 100%);
	background: linear-gradient(to right,#e2eff6 60%,#f5f5f5 100%);
}
.ufbdualWrap {
	position: relative;
}
.ufbdualBox {
	font-size: 18px;
	margin-bottom: 15px;
}
.ufbdualBox h2 {
	font-size: 28px;
	margin-bottom: 20px;
}
.ufbdualImg {
	width: 106.5%;
	margin-left: -3.25%;
}
#ufbdualAbout {
	background: #0071ba;
	padding: 50px 0 90px;
}
#ufbdualAbout .ttlBox {
	color: #fff;
}
#ufbdualAbout .ttlBox h2 {
	font-size: 39px;
	color: #fff;
}
.ufbdualAboutWrap {
	background: #fff;
	padding: 50px 3% 30px;
	margin-bottom: 50px;
}
.ufbTtl02 {
	margin-bottom: 30px;
}
.ufbTtl02 span {
	display: inline-block;
	background: url("../img/ufb/ttl_border02.png") bottom center no-repeat;
	background-size: contain;
	padding-bottom: 8px;
	font-size: 26px;
	color: #29a9e0;
}
.ufbdualAboutCont {
	margin-bottom: 45px;
}
.ufbdualAboutCont figure {
	width: 48%;
	margin-right: 2%;
}
.ufbdualAboutCont dl {
	width: 50%;
	text-align: left;
}
.ufbdualAboutCont dt {
	font-size: 19px;
	letter-spacing: .01em;
	color: #0071ba;
	margin-bottom: 10px;
}
.ufbdualAboutCont dt span {
	display: block;
	font-size: 115%;
}
.pointTtl {
	color: #0071ba;
	border: 1px solid #0071ba;
	border-radius: 30px;
	font-size: 30px;
	font-weight: 600;
	padding: 15px;
	margin-bottom: 40px;
}
.ufbdualPoint {
	width: 32%;
	background: #e9f4fc;
	border-radius: 10px;
	padding: 20px 2%;
	margin-bottom: 20px;
}
.ufbdualPoint dt {
	color: #0071ba;
	font-size: 23px;
	line-height: 1.3;
	margin-bottom: 15px;
	min-height: 58px;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-wrap: wrap;
}
.ufbdualPoint dt small {
	font-size: 17px;
	display: block;
	width: 100%;
}
.ufbdualPoint dd p {
	text-align: left;
	padding-top: 15px;
}
.licenseWrap {
	margin-bottom: 50px;
}
.licenseBox {
	width: 49%;
	background: #e9f4fc;
	border-radius: 10px;
	padding: 20px 4% 30px;
}
.licenseBox h4 {
	color: #0071ba;
	font-size: 23px;
	margin-bottom: 20px;
}
.licenseTxt {
	width: 71%;
	padding-left: 5%;
	text-align: left;
	font-size: 15px;
}
#ufbdualAbout .btn a {
	max-width: 365px;
	font-size: 18px;
}
#ufbdualAbout .btn a:hover {
	color: #0071ba;
	background: #fff;
}
.mitsumori {
	background: url("../img/ufb/wave_top.png") top left repeat-x,url("../img/ufb/wave_btm.png") bottom left repeat-x;
	padding: 17px 0;
}
.mitsumoriArea {
	background: #ffeb2c;
	padding: 60px 0;
}
.mitsumori .container {
	max-width: 640px;
}
.mitsumori h2 {
	margin-bottom: 15px;
	font-size: 33px;
}
.mitsurmoriWrap {
	background: #fff;
	padding: 20px 10px 10px;
	position: relative;
	font-size: 14px;
	margin-bottom: 30px;
}
.mitsurmoriWrap strong {
	display: block;
	color: #0071ba;
	font-size: 20px;
	margin-bottom: 5px;
}
.mitsumori:last-of-type {
	margin-bottom: 60px;
}
.zenkoku {
	position: absolute;
	right: 10px;
	top: -50px;
}
.mitsumori .btnContact a {
	background: #0071ba;
	color: #fff;
	border-radius: 30px;
	font-size: 20px;
	line-height: 1;
	padding: 14px 30px 19px;
}
.mitsumori .btnContact a:hover {
	background: #000;
}
.mitsumori .btnContact a::before {
	background-image: url("../img/ico_mail02.png");
	width: 34px;
	height: 22px;
	margin-bottom: -4px;
}
.mitsumoriTel {
	margin-top: 20px;
}
.mitsumori .telBox {
	text-align: left;
}
.mitsumori .telBox img {
	max-height: 26px;
	margin-bottom: 3px;
}
.mitsumori.mt-20 {
	margin-top: -20px;
}
#ufbLife {
	padding-bottom: 0;
}
.ufbLifeTopTtl {
	margin-bottom: 90px;
}
.ttl02 span {
	position: relative;
}
.ttl02 span::before,.ttl02 span::after {
	content: "";
	background: url("../img/ufb/ttl_l.png") left bottom no-repeat;
	background-size: contain;
	display: block;
	width: 21px;
	height: 27px;
	position: absolute;
	left: -35px;
	bottom: 10px;
}
.ttl02 span::after {
	background-image: url("../img/ufb/ttl_r.png");
	background-position: right bottom;
	left: inherit;
	right: -35px;
}
#ufbLife .container {
	max-width: 1200px;
}
.ufbLifeArea {
	background: url("../img/ufb/life_bg.svg") top center no-repeat;
	background-size: 100% 100%;
	padding: 80px 0;
}
.ufbLifeWrap {
	background: #fff;
	border-radius: 30px;
	position: relative;
	padding: 90px 4.5% 70px;
}
.ufbLifeIllust {
	position: absolute;
	left: 0;
	right: 0;
	top: -140px;
	margin: auto;
}
.ufbLifeBox {
	margin-top: 85px;
	position: relative;
	width: 100%;
	background: #ffeff4;
	padding: 100px 4.4% 35px;
}
#ufbLife02 {background: #e9f4fc;}
#ufbLife03 {background: #feefdd;}
#ufbLife04 {background: #ffeaeb;}
#ufbLife05 {background: #e8f7f1;}
#ufbLife06 {background: #e8f7f1;}
.ufbLifeBox:nth-of-type(n+3) {
	width: 49%;
	padding: 100px 2% 35px;
}
.ufbLifeBox h3 {
	background: -webkit-gradient(linear,left bottom, left top,color-stop(20%, #ff77a0),to(#ff9bba));
	background: -ms-linear-gradient(bottom,#ff77a0 20%,#ff9bba 100%);
	background: -o-linear-gradient(bottom,#ff77a0 20%,#ff9bba 100%);
	background: linear-gradient(to top,#ff77a0 20%,#ff9bba 100%);
	width: 90%;
	max-width: 435px;
	color: #fff;
	font-weight: 600;
	position: absolute;
	left: 0;
	right: 0;
	top: -30px;
	margin: auto;
	border-radius: 30px;
}
.ufbLifeBox h3 span {
	line-height: 1;
	letter-spacing: .05em;
	font-size: 30px;
	display: block;
	padding: 15px 10px;
	width: 100%;
	height: 100%;
	background: url("../img/ufb/point_ttl_light.svg") left 7px top 4px no-repeat;
	background-size: auto 30%;
}
#ufbLife02 h3{
	background: -webkit-gradient(linear,left bottom, left top,color-stop(20%, #29a9e0),to(#7ac9eb));
	background: -ms-linear-gradient(bottom,#29a9e0 20%,#7ac9eb 100%);
	background: -o-linear-gradient(bottom,#29a9e0 20%,#7ac9eb 100%);
	background: linear-gradient(to top,#29a9e0 20%,#7ac9eb 100%);
}
#ufbLife03 h3{
	background: -webkit-gradient(linear,left bottom, left top,color-stop(20%, #f5911e),to(#f9ae3b));
	background: -ms-linear-gradient(bottom,#f5911e 20%,#f9ae3b 100%);
	background: -o-linear-gradient(bottom,#f5911e 20%,#f9ae3b 100%);
	background: linear-gradient(to top,#f5911e 20%,#f9ae3b 100%);
}
#ufbLife04 h3{
	background: -webkit-gradient(linear,left bottom, left top,color-stop(20%, #f97c68),to(#faa77e));
	background: -ms-linear-gradient(bottom,#f97c68 20%,#faa77e 100%);
	background: -o-linear-gradient(bottom,#f97c68 20%,#faa77e 100%);
	background: linear-gradient(to top,#f97c68 20%,#faa77e 100%);
}
#ufbLife05 h3{
	background: -webkit-gradient(linear,left bottom, left top,color-stop(20%, #39b34a),to(#8ac43f));
	background: -ms-linear-gradient(bottom,#39b34a 20%,#8ac43f 100%);
	background: -o-linear-gradient(bottom,#39b34a 20%,#8ac43f 100%);
	background: linear-gradient(to top,#39b34a 20%,#8ac43f 100%);
}
#ufbLife06 h3{
	background: -webkit-gradient(linear,left bottom, left top,color-stop(20%, #00c193),to(#4dcdb3));
	background: -ms-linear-gradient(bottom,#00c193 20%,#4dcdb3 100%);
	background: -o-linear-gradient(bottom,#00c193 20%,#4dcdb3 100%);
	background: linear-gradient(to top,#00c193 20%,#4dcdb3 100%);
}
.ufbLife {
	width: 32%;
	background: #fff;
	position: relative;
}
.ufbLifeBox:nth-of-type(n+3) .ufbLife {
	width: 49%;
	max-width: 100%;
}
.ufbLifeTtl {
	background: -webkit-gradient(linear,left top, left bottom,color-stop(20%, #ff77a0),to(#ff9bba));
	background: -ms-linear-gradient(135deg,#ff77a0 20%,#ff9bba 100%);
	background: -o-linear-gradient(135deg,#ff77a0 20%,#ff9bba 100%);
	background: linear-gradient(-45deg,#ff77a0 20%,#ff9bba 100%);
	width: 82px;
	height: 82px;
	position: absolute;
	top: -35px;
	left: 10px;
	border-radius: 50%;
	z-index: 10;
}
.ufbLifeTtl span {
	color: #fff;
	line-height: 1.3;
	font-size: 17px;
	width: 100%;
	height: 100%;
	background: url("../img/ufb/point_ttl_light02.svg") left 2px top 2px no-repeat;
	background-size: 80% auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
#ufbLife02 .ufbLifeTtl{
	background: -webkit-gradient(linear,left bottom, left top,color-stop(20%, #29a9e0),to(#7ac9eb));
	background: -ms-linear-gradient(135deg,#29a9e0 20%,#7ac9eb 100%);
	background: -o-linear-gradient(135deg,#29a9e0 20%,#7ac9eb 100%);
	background: linear-gradient(-45deg,#29a9e0 20%,#7ac9eb 100%);
}
#ufbLife03 .ufbLifeTtl{
	background: -webkit-gradient(linear,left bottom, left top,color-stop(20%, #f5911e),to(#f9ae3b));
	background: -ms-linear-gradient(135deg,#f5911e 20%,#f9ae3b 100%);
	background: -o-linear-gradient(135deg,#f5911e 20%,#f9ae3b 100%);
	background: linear-gradient(-45deg,#f5911e 20%,#f9ae3b 100%);
}
#ufbLife04 .ufbLifeTtl{
	background: -webkit-gradient(linear,left bottom, left top,color-stop(20%, #f97c68),to(#faa77e));
	background: -ms-linear-gradient(135deg,#f97c68 20%,#faa77e 100%);
	background: -o-linear-gradient(135deg,#f97c68 20%,#faa77e 100%);
	background: linear-gradient(-45deg,#f97c68 20%,#faa77e 100%);
}
#ufbLife05 .ufbLifeTtl{
	background: -webkit-gradient(linear,left bottom, left top,color-stop(20%, #39b34a),to(#8ac43f));
	background: -ms-linear-gradient(135deg,#39b34a 20%,#8ac43f 100%);
	background: -o-linear-gradient(135deg,#39b34a 20%,#8ac43f 100%);
	background: linear-gradient(-45deg,#39b34a 20%,#8ac43f 100%);
}
#ufbLife06 .ufbLifeTtl{
	background: -webkit-gradient(linear,left bottom, left top,color-stop(20%, #00c193),to(#4dcdb3));
	background: -ms-linear-gradient(135deg,#00c193 20%,#4dcdb3 100%);
	background: -o-linear-gradient(135deg,#00c193 20%,#4dcdb3 100%);
	background: linear-gradient(-45deg,#00c193 20%,#4dcdb3 100%);
}
.ufbLifeCont {
	height: 100%;
}
.ufbLife dl {
	padding: 20px 5% 10px;
	text-align: left;
}
.ufbLife dt {
	font-size: 18px;
	color: #ff77a0;
	margin-bottom: 5px;
}
.ufbLife dd {
	font-size: 14px;
	margin-bottom: 10px;
}
#ufbLife02 dt {color: #3fa7f3;}
#ufbLife03 dt {color: #f5911e;}
#ufbLife04 dt {color: #f5815e;}
#ufbLife05 dt {color: #39b34a;}
#ufbLife06 dt {color: #00a79b;}
.beforeAfter {
	margin-top: 5px;
}
.ufbBnrs {
	padding: 60px 0;
}
.ufbBnrs li:first-of-type {
	margin-bottom: 30px;
}


/*subheader---------------------*/
.subHeader {
	background: url("../img/company/header.png") center center no-repeat;
	background-size: cover;
	height: 330px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 0 5%;
}
.subTtl {
	font-size: 14px;
	color: #fff;
}
.subTtl h2 {
	font-size: 46px;
	margin-bottom: 15px;
}

/*company---------------------*/
#business {
	background: -webkit-gradient(linear,left bottom, left top,from(#e9e9e9),to(#fff));
	background: -ms-linear-gradient(bottom,#e9e9e9 0%,#fff 100%);
	background: -o-linear-gradient(bottom,#e9e9e9 0%,#fff 100%);
	background: linear-gradient(to top,#e9e9e9 0%,#fff 100%);
}
.bussinessWrap {
	max-width: 770px;
	margin: 0 auto;
}
.bussinessWrap dt,.bussinessWrap dd {
	border-bottom: 1px solid #cbcbcb;
	padding: 15px 5%;
}
.bussinessWrap dt:first-of-type,.bussinessWrap dd:first-of-type {
	border-top: 1px solid #cbcbcb;
}
.bussinessWrap dt {
	width: 33%;
	background: #333;
	color: #fff;
}
.bussinessWrap dd {
	width: 67%;
	text-align: left;
	padding-left: 7%;
}
#access {
	background: #151b37;
	color: #fff;
}
#access .ttlBox ,#access .ttlBox h2 {
	color: #fff;
}
#access .container {
	max-width: 905px;
}
.accessWrap:not(:last-of-type) {
	margin-bottom: 50px;
}
.accessWrap dl {
	width: 30%;
	text-align: left;
}
.accessWrap dt {
	font-size: 18px;
	position: relative;
	line-height: 1;
	padding-left: 20px;
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid #fff;
}
.accessWrap dt::before {
	content: "";
	display: block;
	background: #ff0000;
	width: 10px;
	height: 10px;
	position: absolute;
	left: 0;
	top: 3px;
}
.gMap {
	width: 65%;
	height: 225px;
}
.gMap figure {
	width: 49%;
}
.gMap figure + iframe {
	width: 49%;
}
#history {
	background: url("../img/company/history.png") top center no-repeat;
	background-size: cover;
	padding-bottom: 100px;
}
#history .ttlBox ,#history .ttlBox h2 {
	color: #fff;
}
.historyArea {
	background: #fff;
	max-width: 800px;
	margin: 0 auto;
	padding: 50px 8%;
}
.historyGallery img {
	max-height: 102.5px;
}
.historyGallery li:not(:last-of-type) {
	margin-right: 3%;
	margin-bottom: 50px;
}
.historyWrap dt,.historyWrap dd {
	border-bottom: 1px solid #cbcbcb;
	padding: 15px 5%;
	text-align: left;
}
.historyWrap dt {
	width: 22%;
	text-align: right;
}
.historyWrap dd {
	width: 78%;
	padding-left: 5%;
}

/*salon----------------------*/
#salon .subHeader {
	background-image: url("../img/salon/header.png");
}
#kingssalon {
	background: -webkit-gradient(linear,left bottom, left top,from(#e9e9e9),to(#fff));
	background: -ms-linear-gradient(bottom,#e9e9e9 0%,#fff 100%);
	background: -o-linear-gradient(bottom,#e9e9e9 0%,#fff 100%);
	background: linear-gradient(to top,#e9e9e9 0%,#fff 100%);
}
#kingssalon h2 {
	font-size: 28px;
	margin-bottom: 30px;
}
#kingssalon h2 span {
	display: block;
	font-size: 20px;
	margin-bottom: 25px;
	letter-spacing: .15em;
	font-weight: 500;
}
.bnrSalon {
	margin-bottom: 50px;
}
#shopInfo {
	padding-bottom: 100px;
}
#shopInfo .container {
	max-width: 800px;
}
.shopInfoWrap {
	margin-bottom: 50px;
}
.shopInfoImg {
	width: 42%;
}
.shopInfo {
	width: 50%;
	text-align: left;
	padding-top: 15px;
}
.shopInfo dt {
	font-size: 18px;
	position: relative;
	line-height: 1;
	padding-left: 20px;
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid #000;
}
.shopInfo dt::before {
	content: "";
	display: block;
	background: #ee8a1e;
	width: 10px;
	height: 10px;
	position: absolute;
	left: 0;
	top: 3px;
}
#shopInfo .gMap {
	width: 100%;
	height: 300px;
	margin-bottom: 50px;
}
.btn03 a {
	background: #171c61;
	color: #fff;
	display: block;
	max-width: 375px;
	margin: auto;
	border-radius: 30px;
	padding: 18px 40px;
	font-weight: 600;
}
.btn03 a::after {
	content: "";
	display: inline-block;
	background: url("../img/ico_blank.png") center center no-repeat;
	background-size: contain;
	width: 11px;
	height: 10px;
	margin-left: 10px;
}
.btn03 a:hover {
	background: #333;
}
.btnWrap {
	margin-top: 80px;
}
.btnWrap h3 {
	margin-bottom: 20px;
}
.btnWrap h3 span {
	font-size: 40px;
	letter-spacing: .05em;
	color: #172a88;
	font-weight: 800;
	background:#f8df08;
	background: -webkit-gradient(linear,left bottom, left top,color-stop(30%, #f8df08),color-stop(30%, transparent));
	background: -o-linear-gradient(bottom,#f8df08 30%,transparent 30%);
	background: linear-gradient(to top,#f8df08 30%,transparent 30%);
}
.salonImg {
	margin-top: 60px;
}
.salonImg li {
	width: 20%;
}

/*about---------------------------*/
.sh02 {
	background: url("../img/about/header.png") bottom center no-repeat;
	background-size: cover;
	height: 186px;
	color: #000;
}
.sh02 .subTtl {
	color: #000;
}
.sh02 .subTtl h2 {
	color: #0071ba;
	font-size: 40px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 5px;
}
.anchor {
	padding: 40px 0 60px;
}
.anchor li {
	width: 44%;
}
.anchor li:not(:last-of-type) {
	margin-right: 3%;
}
#ufbAbout01 {
	background: url("../img/about/about01_bg.png") top left repeat;
}
.ttlWave {
	max-width: 600px;
	margin: 0 auto 55px;
	background: url("../img/about/ttl_wave.png") bottom left repeat-x;
	padding-bottom: 20px;
	font-size: 36px;
	color: #0071ba;
	letter-spacing: -.03em;
}
.aboutBox {
	background: #fff;
	border-radius: 10px;
	padding: 45px 2%;
}
.aboutBox:not(:last-of-type) {
	margin-bottom: 30px;
}
.aboutBox .ufbTtl02 span {
	color: #000;
	font-size: 20px;
}
.aboutTxt {
	margin-bottom: 30px;
}
#ufbAbout02 {
	background: #0071ba;
}
#ufbAbout02 .ttlWave,#difference .ttlWave {
	color: #fff;
	background-image: url("../img/about/ttl_wave02.png");
}
.about02Box h3 {
	margin-bottom: 20px;
}
.about02Box h3 span {
	color: #0071ba;
	font-size: 27px;
	display: block;
}
.about02Box .aboutTxt {
	font-size: 23px;
	margin: 30px auto 0;
}
#difference {
	background: #3fa7f3;
}
#difference .ttlWave {
	font-size: 30px;
}
.differenceWrap {
	max-width: 840px;
	margin: 0 auto 40px;
}
.differenceWrap > figure {
	width: 37%;
}
.differenceList {
	width: 60%;
}
.differenceList li {
	text-align: left;
	background: url("../img/about/check.png") left top 10px no-repeat;
	background-size: auto 30px;
	padding-left: 60px;
	color: #fff;
	font-size: 24px;
}
.differenceList li:not(:last-of-type) {
	margin-bottom: 20px;
}
.differenceList li small {
	display: block;
	font-size: 18px;
	line-height: 1.2;
}
.differenceList li span {
	background: url("../img/about/ttl_border.png") bottom left no-repeat;
	background-size: 100% 8px;
	padding-bottom: 5px;
}
.differenceCont {
	max-width: 840px;
	margin: 0 auto 60px;
}
.differenceCont li {
	width: 22.3%;
}
.differenceTable {
	background: #fff;
	width: 100%;
}
.differenceTable th,.differenceTable td {
	border: 1px solid #979797;
	padding: 7px 0;
}
.differenceTable thead {
	background: #000;
	color: #fff;
}
.differenceTable thead th:last-of-type {
	color: #fff;
	background: #0071ba;
}
.differenceTable td {
	width: 18%;
}
.differenceTable tbody {
	font-size: 15px;
}
.differenceTable tbody th {
	background: #e9f4fc;
}
.differenceTable tbody tr td:last-of-type {
	background: #FFFCC2;
}
.differenceTable .dtHead td {
	font-size: 13px;
}
.clrBlue {
	color: #0071ba;
}
.differenceTxt {
	margin-top: 40px;
	color: #fff;
	font-size: 20px;
}
.movieTtl {
	color: #fff;
	font-size: 22px;
	margin-bottom: 15px;
}
.movieArea {
	flex-wrap: wrap;
}
.movieWrap {
  width: 48.5%;
}
.movie {
    position: relative;
    padding-top: 56.25%;
    margin: 0 auto 40px;
}
.movie iframe {
    position: absolute;
    left: 0;
    top: 0;
}

/*faq-------------------------------*/
.faqSub {
	height: 186px;
	background: #eff0ec;
}
.faqSub .container {
	height: 100%;
	background: url("../img/faq/header.png") bottom right no-repeat;
	background-size: auto 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	max-width: 910px;
}
.faqSub h2 {
	font-size: 36px;
	color: #534741;
}
.faqAnc {
	max-width: 910px;
}
.faqAnc li {
	width: 48%;
}
.faqAnc a {
	display: block;
	background: #534741;
	padding: 20px 10px;
	border-radius: 5px;
}
.faqAnc li:nth-of-type(2) a {
	background: #be451e;
}
.faqAnc img {
	max-height: 20px;
	display: block;
	margin: 0 auto;
}
#works {
	background: url("../img/faq/works_bg.png") left top repeat;
}
#works .ttlWave {
	background-image: url("../img/about/ttl_wave03.png");
	color: #534741;
}
.worksWrap {
	border-radius: 10px;
	background: #fff;
	padding: 50px 5%;
	margin-top: 50px;
}
.worksWrap .ufbTtl02 {
	text-align: left;
	margin-bottom: 20px;
}
.worksWrap .ufbTtl02 span {
	color: #1a1a1a;
	font-size: 20px;
	font-weight: 800;
}
.worksWrap dl {
	text-align: left;
	width: 60%;
}
.worksWrap > figure {
	width: 34%;
}
.worksTxt {
	font-size: 20px;
	margin-top: 50px;
}
#faqArea {
	background: #534741;
}
#faqArea .ttlWave {
	background-image: url("../img/about/ttl_wave02.png");
	color: #fff;
}
#faqArea .container {
	max-width: 900px;
}
.faqWrap {
	background:  #fff;
	padding: 50px 5%;
}
.faqWrap:not(:last-of-type) {
	margin-bottom: 30px;
}
.faqWrap h3 {
	color: #fff;
	background: #be451e;
	font-size: 20px;
	padding: 12px 10px;
	margin-bottom: 30px;
}
.faq {
	padding: 25px 0;
	border-bottom: 1px dotted #1a1a1a;
	margin: 0 4%;
	text-align: left;
}
.faq dt,.faq dd {
	background: url("../img/faq/question.png") top left no-repeat;
	background-size: auto 18px;
	padding-left: 40px;
}
.faq dt {
	font-weight: 800;
	font-size: 18px;
}
.faq dd {
	background-image: url("../img/faq/answer.png");
	margin-top: 15px;
}

/*contact------------------------*/
#contact .subHeader {
	background-image: url("../img/contact/header.png");
}
#contactArea .container {
	max-width: 750px;
}
.contactTopTxt {
	font-size: 18px;
	margin-bottom: 25px;
}
.contactTop {
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	padding: 25px 10px;
	margin-bottom: 50px;
}
.contactTop img {
	max-height: 25px;
}
.uketsuke {
	display: inline-block;
	background: #efefef;
	font-size: 15px;
	padding: 8px 40px;
	line-height: 1;
	margin-left: 25px;
}
.contactWrap dt,.contactWrap dd {
	padding: 10px 5%;
}
.contactWrap dt {
	background: #efefef;
	width: 36%;
	text-align: right;
	position: relative;
	padding-right: 70px;
}
.contactWrap dt.req::after {
	content: "必須";
	color: #fff;
	background: #0071b2;
	font-size: 12px;
	display: inline-block;
	padding: 5px;
	line-height: 1;
	margin-left: 5px;
	position: absolute;
	right: 30px;
}
.contactWrap dd {
	width: 64%;
	text-align: left;
}
.contactWrap label {
	width: 48%;
	cursor: pointer;
	display: inline-block;
}
.contactWrap input[type="text"],
.contactWrap input[type="email"],
.contactWrap input[type="tel"] {
	padding: 5px;
}
.contactWrap input[type="email"] {
	width: 100%;
}
.contactWrap input[name="address"] {
	width: 100%;
	display: block;
	margin-top: 10px;
}
.yourname input[type="text"] {
	width: 35%;
	margin-right: 10px;
}
.contactWrap textarea {
	width: 100%;
	padding: 5px;
}
.contactWrap dl + p {
	font-size: 14px;
	margin-top: 40px;
}
.formBtn {
	margin-top: 40px;
}
.linkbtn01 {
	display: inline-block;
	color: #fff;
	background: #0071b2;
	border-radius: 20px;
	padding: 12px 50px;
	border: none;
	cursor: pointer;
	transition: .1s;
}
.linkbtn01:hover {
	background: #333;
}
.thxBox {
	border: 1px solid #1a1a1a;
	padding: 30px 5%;
}
.thxBox a {
	display: block;
	text-decoration: underline;
	margin-top: 10px;
}

/*works-------------------------*/
#signWorks .subHeader {
	background-image: url("../img/works/header.png");
        border-bottom: 1px solid #00ffff;
    box-shadow: 0px -6px 8px -4px #00ffff inset;
}
#signWorksArea {
	background: #011726;
}
#signWorksArea .container {
	max-width: 1040px;
}
.signWorks {
	width: 48.1%;
	margin-left: 3.8%;
	margin-bottom: 40px;
	color: #fff;
}
.signWorks:nth-of-type(odd) {
	margin-left: 0;
}
.signWorks.col-3,.signWorks.col-3:nth-of-type(odd)  {
	width: 30.9%;
	margin-left: 3.65%;
}
.signWorks.col-3:nth-child(3n) {
	margin-left: 0;
}
.signWorks dl {
	text-align: left;
	padding-top: 12px;
}
.signWorks dt {
	font-size: 18px;
	font-weight: 800;
	margin-bottom: 5px;
}
.footContact {
	background: -webkit-gradient(linear,left bottom, left top,from(#e8e8e8),to(#fff));
	background: -ms-linear-gradient(bottom,#e8e8e8 0%,#fff 100%);
	background: -o-linear-gradient(bottom,#e8e8e8 0%,#fff 100%);
	background: linear-gradient(to top,#e8e8e8 0%,#fff 100%);
}
.footContactBox {
	border-top: 1px solid #808080;
	border-bottom: 1px solid #808080;
	padding: 30px 10px;
}
.footContactBox a span {
	display: block;
}
.footContactBox .telBox img {
	max-height: 28px;
}
.footContactBox .btnContact a {
	background: #ff0000;
	color: #fff;
	border-radius: 30px;
	font-size: 20px;
	line-height: 1;
	padding: 14px 30px 19px;
	margin-left: 30px;
}
.footContactBox .btnContact a:hover {
	background: #000;
}
.footContactBox .btnContact a::before {
	background-image: url("../img/ico_mail02.png");
	width: 34px;
	height: 22px;
	margin-bottom: -4px;
	display: inline-block;
	margin-right: 10px;
}
/*sign------------------------------*/
#sign .subHeader {
	background-image: url("../img/works/header.png");
    border-bottom: 1px solid #00ffff;
    box-shadow: 0px -6px 8px -4px #00ffff inset;
}
#signTop {
	color: #fff;
	background: #011726;
	padding: 60px 0;
}
.kanbanyaLogo {
	margin-bottom: 60px;
}
.signTopWrap {
	background: url("../img/sign/sign_bg.png") center bottom no-repeat;
	background-size: cover;
	padding: 75px 0 290px;
	margin-bottom: 110px;
}
.signTopBox {
	background: rgba(0,0,0,.6);
	max-width: 800px;
	margin: 0 auto;
	font-size: 14px;
	padding: 50px 3.5% 40px;
}
.signTopBox h2 {
	font-size: 18px;
	margin-bottom: 20px;
}
.signTopBox h2 img {
	max-height: 34px;
	display: block;
	margin-bottom: 15px;
}
.signTopTxt {
	font-size: 21px;
	font-weight: 800;
	margin-top: 15px;
	padding-top: 15px;
	border-top: 1px solid #fff;
}
.signTxt {
	background: url("../img/sign/txt_bg.png") center center no-repeat;
	background-size: cover;
	font-size: 18px;
	max-width: 1200px;
	line-height: 1.8;
	padding: 55px 10px;
}
#signAbout {
	background: #031931;
	color: #fff;
	padding: 100px 0 80px;
}
#signAbout h2 {
	font-size: 24px;
	margin-bottom: 40px;
	letter-spacing: .1em;
}
.signImg {
	margin: 80px auto ;
}
.btn04 a {
	display: inline-block;
	font-size: 22px;
	font-weight: 800;
	color: #fff;
	line-height: 1;
	background: #ff0000;
	/*border-radius: 40px;*/
	padding: 25px 100px;
    background: url("../img/sign/bg_btn04.png") no-repeat center center;
    background-size: cover;
    color: #000;
}
.btn04 a:hover {
	opacity:0.8;
	filter: alpha(opacity=80);
}
#signAbout .supportBox {
	position: relative;
	background: #fff;
	width: 94%;
	margin-left: 6%;
	color: #000;
	font-size: 20px;
	text-align: left;
	line-height: 1.8;
	padding: 30px 10px 30px 70px;
	margin-top: 80px;
}
.supportBox .zenkoku {
	top: 20px;
	left: -5%;
	right: inherit;
}

/*csr
---------------------------------------------------------*/
#csrPage {
	background: #000;
	color: #fff;
}
.csrTtl {
	background: url("../img/csr/pagettl.jpg") top center no-repeat;
	background-size: cover;
	height: 300px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.csrTtl h2 {
	font-size: 40px;
	text-shadow: 0 0 15px #000,0 0 15px #000,0 0 15px #000,0 0 15px #000;
}
#csrTop h2 {
	font-size: 32px;
	margin-bottom: 40px;
}
#csrTop h2 + .txt {
	font-size: 18px;
	margin-bottom: 40px;
}
#csrTop .movieWrap {
	width: 100%;
	max-width: 560px;
	margin: 0 auto;
}
#matsuriTxt {
	background: url("../img/csr/textare_bg.jpg") center center no-repeat;
	background-size: cover;
}
.matsuriTxtWrap {
	background: rgba(255,255,255,.85);
	padding: 60px 5%;
	color: #000;
	line-height: 1.75
}
.matsuriTxtWrap h2 {
	font-size: 40px;
	line-height: 1.4;
	padding-bottom: 40px;
	margin-bottom: 40px;
	position: relative;
}
.matsuriTxtWrap h2::after {
	content: "";
	display: block;
	width: 40px;
	height: 1px;
	background: #000;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0 auto;
}
#csrContents {
	overflow: hidden;
}
#csrContents .container {
	max-width: 1100px;
}
.csrWrap + .csrWrap {
	margin-top: 140px;
}
.csrWrap:nth-of-type(even) {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
.csrWrap .img {
	position: relative;
	width: 45%;
	height: 500px;
	z-index: 1
}
.csrWrap .img::before {
	content: "";
	display: block;
	width: 50vw;
	height: 100%;
	background: url("../img/csr/img01.jpg") center right no-repeat;
	background-size: cover;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
}
.csrWrap._02 .img::before {
	background-image: url("../img/csr/img02.jpg")
}
.csrWrap._03 .img::before {
	background-image: url("../img/csr/img03.jpg")
}
.csrWrap:nth-of-type(even) .img::before {
	right: auto;
	left: 0;
	background-position: left center;
}
.csrWrap dl {
	text-align: left;
	width: 50%;
}
.csrWrap dt span {
	display: inline-block;
	background: #fff;
	color: #000;
	font-size: 30px;
	letter-spacing: .05em;
	padding: 0 .5em;
	margin: 5px 0
}
.csrWrap dd {
	margin-top: 20px;
	line-height: 1.8
}
#csrHistory {
	background: url("../img/csr/history_bg.jpg") top center no-repeat;
	background-size: cover;
}
.csrHistoryWrap {
	position: relative;
	max-width: 1100px;
	padding-left: 260px;
}
.csrHistoryTtl {
	position: absolute;
	top: 0;
	left: 0;
	width: 200px;
	font-size: 50px;
	height: 100%;
}
.csrHistoryTtl .ttl {
	display: inline-block;
	background: #000;
	color: #fff;
	position: absolute;
	padding: 20px;
	line-height: 1;
	white-space: nowrap;
}
.csrHistoryTtl .ttl._01 {
	top: 0;
	right: 0;
}
.csrHistoryTtl .ttl._02 {
	background: #fff;
	color: #000;
	font-size: 68%;
	padding-bottom: 10px;
	top: 470px;
	left: 0;
}
.csrHistoryCont {
	position: relative;
	padding-bottom: 45px;
}
.csrHistoryCont::after {
	content: "";
	position: absolute;
	left: 132px;
	bottom: 0;
	background: url("../img/csr/dots.png") bottom center no-repeat;
	background-size: contain;
	width: 4px;
	height: 45px;
	z-index: 1;
}
.csrHistoryCont dl {
	display: flex;
	font-weight: 600;
	font-size: 18px;
	text-align: left;
}
.csrHistoryCont dt,.csrHistoryCont dd {
	position: relative;
	padding: 20px;
}
.csrHistoryCont dt {
	white-space: nowrap;
	width: 135px;
	min-width: 135px;
	background: rgba(47,17,0,.6);
	border-right: 3px solid #fff;
}
.csrHistoryCont dl:nth-of-type(n + 12) dt {
	background: rgba(255,255,255,.25)
}
.csrHistoryCont dt big {
	font-size: 150%;
	font-weight: 800
}
.csrHistoryCont dt::after {
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	border: 3px solid #fff;
	background: #4c2202;
	position: absolute;
	top: 20px;
	right: -11px;
	z-index: 1;
}
.csrHistoryCont dd {
	width: 100%;
}
#csrHistory h3 {
	margin-top: 50px;
	font-size: 32px;
	line-height: 1.8
}
#interactive .container {
	max-width: 1300px;
}
.intBnrArea {
	background: #fff;
	padding: 60px 100px;
	color: #000;
}
.intBnrArea h2 {
	font-size: 30px;
	margin-bottom: 20px;
}
.intBnrArea .eng {
	color: #dcb98c;
	font-size: 14px;
	margin-bottom: 30px;
}
.intBnrArea .eng + .txt {
	font-size: 18px;
	margin-bottom: 50px;
}
.bnrs01 li {
	width: 30%;
	position: relative;
}
.bnrs01 li a {
	background: rgba(0,0,0,.5);
	color: #fff;
	width: 100%;
	height: 100%;
	font-size: 30px;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 1
}
.bnrs01 li a:hover {
	background: rgba(0,0,0,0);
	text-shadow: 0 0 5px #000
}
.bnrs01 li p {
	display: inline-flex;
	justify-content: center;
	align-items: center;
}
.intBnrArea .topBnrWrap {
	width: 100%;
	margin-top: 70px;
	background-image: url("../img/csr/bnr04.jpg")
}
.intBnrArea .topBnrWrap .ttlBox {
	margin-bottom: 20px;
}
.intBnrArea .topBnrWrap .ttlBox * {
	color: #fff;
}
.intBnrArea .topBnrWrap .delayCont {
	background-color: rgba(0,0,0,.25)
}
.intBnrArea .topBnrWrap .btn a:hover {
	background-color: #000;
	color: #fff;
}
.matsuriBnr {
	background: url("../img/csr/link_bnr.jpg") center center no-repeat;
	background-size: cover;
	border: 1px solid #fff;
	margin-top: 80px;
}
.matsuriBnr a {
	display: block;
	background: rgba(0,0,0,.25);
	padding: 75px 10px;
	color: #fff;
	font-size: 30px;
}
.matsuriBnr a:hover {
	background-color: rgba(0,0,0,0)
}






/*ieハック*/
@media screen\0  {
	.nav li a {padding-bottom: 15px;}
	.btn a,.btn02 a {padding-bottom: 7px;}
	.btnContact a,.mitsumori .btnContact a {padding-bottom: 10px;}
	.efficacy h3 {padding: 17px 5px 7px}
	.ufbdualPoint dt {height: 58px;margin-bottom: 10px;}
	.ufbLifeBox h3 span {padding: 20px 5px 7px;}
	.ufbLifeTtl span {padding-top: 8px;}
	.btn03 a{padding-bottom: 13px;}
	.bussinessWrap dt, .bussinessWrap dd,.historyWrap dt,.historyWrap dd {padding-bottom: 10px;}
	.differenceTable thead th {padding: 10px 0 4px;}
	.faqWrap h3{padding-bottom: 7px;}
	.footContactBox .btnContact a {padding-bottom: 10px;}
	.dropDown li a {padding-bottom: 10px;}
}

/*********************************/
/* タブレット用のスタイル記述 */
/*********************************/
@media screen and (max-width: 1050px) {
	.ufbdualBox {
		width: 46%;
		font-size: 1.7vw;
	}
	.ufbdualBox h2 {
		font-size: 2vw;
	}
	.bnrs01 li {
		width: 32%;
	}
	.bnrs01 li a {
		font-size: 20px;
	}
}
@media screen and (max-width: 1020px) {
	.topBusinessCont h3 {
		font-size: 20px;
	}
	.topBusinessTxt {
		font-size: 12px;
		margin: 15px 0;
	}
	.btn a {
		font-size: 14px;
		padding: 10px;
	}
}
@media screen and (max-width: 870px) {
	.topBusinessWrap {
		flex-wrap: wrap;
		justify-content: center;
	}
	.topBusinessWrap li:first-of-type {
		margin-right: 2%;
	}
	.topBusinessWrap li {
		width: 49%;
		margin-bottom: 10px;
	}
}
/*********************************/
/* スマートフォン用のスタイル記述 */
/*********************************/
@media screen and (max-width: 620px) {
/*全体レイアウト
------------------------------------------------*/
	body {
		font-size: 12px;
	}
	body.active {
		overflow: hidden;
	}
	article > section {
		padding: 40px 0;
	}
	.sideFix {
		display: none;
	}
	/*header-------------------------------------*/

	.headerWrap {
		display: block;
		margin-bottom: 0;
		padding: 15px 0;
	}
	.menuIcon, .menuIcon span {
		display: inline-block;
		-webkit-transition: all .4s;
		transition: all .4s;
		box-sizing: border-box;
	}
	.menuIcon {
		position: fixed;
		top: 10px;
		right: 5%;
		width: 30px;
		height: 22px;
		z-index: 9990;
		cursor: pointer;
	}
	.menuIcon span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #37b3fe;
		z-index: 10;
	}
	.menuIcon span:nth-of-type(1) {top: 0px;}
	.menuIcon span:nth-of-type(2) {top: 10px;	}
	.menuIcon span:nth-of-type(3) {bottom: 0px;	}
	.menuIcon.active span:nth-of-type(1) {
		-webkit-transform: translateY(10px) rotate(45deg);
		transform: translateY(10px) rotate(45deg);
	}
	.menuIcon.active span:nth-of-type(2) {
		opacity: 0;
	}
	.menuIcon.active span:nth-of-type(3) {
		-webkit-transform: translateY(-10px) rotate(-45deg);
		transform: translateY(-10px) rotate(-45deg);
	}
	.hLogo {
		padding: 12px 5%;
	}
	.hLogo img {
		max-width: 190px;
		max-height: 17px;
	}
	._70th img[src*="70th"] {
		max-height: 26px;
	}
	.spLogo img {
		margin: 0;
		max-height: 18px;
	}
	#nav {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 999;
		width: 100%;
		height: 100%;
		opacity: 0;
		background-color: #fff;
		transition: all 0.3s ease-in-out;
		visibility: hidden;
		overflow-y: auto;
		overflow-x: hidden;
	 -webkit-overflow-scrolling: touch;
		padding: 60px 0 30px;
	}
	#nav.active {
		right: 0;
		opacity: 1;
		-moz-transform: translateX(0);
		-webkit-transform: translateX(0);
		transform: translateX(0);
		visibility: visible;
		z-index: 999;
	}
	.nav {
		margin: 20px auto;
		display: block;
		width: 90%;
	}
	.nav > li {
		list-style-type: none;
		width: 100%;
		margin-left: 0;
	}
	.nav li a {
		border-bottom: 1px solid #f1f1f1;
	}
	.nav .nacContact a {
		background: #0071ba;
    color: #fff;
    display: block;
    padding: 12px 16px;
    font-weight: 600;
    line-height: 1;
		margin-top: 20px;
	}
	.nav .nacContact a::before {
		content: "";
    display: inline-block;
    background: url(../img/ico_mail02.png) center center no-repeat;
    background-size: contain;
    width: 22px;
    height: 14px;
		margin-right: 5px;
		margin-bottom: -1px;
	}
	#nav > ul li a  {
		display: block;
		padding: 15px 5%;
		transition: all 0.2s ease-in-out;
		text-decoration: none;
		font-size: 14px;
		background-position: left center!important;
		cursor: pointer;
		position: relative;
	}
    #nav > ul li li a  {
     background: #f1f1f1;
     }
	.headerWrap .hTel,.nav > li > a::after {
		display: none;
	}
	.spContact,.spLogo {
		display: block;
	}
	img[src*="/tel.png"] {
		max-height: 22px;
		margin-bottom: 7px;
	}
	.telTime {
		line-height: 1.4;
		margin-left: 0;
	}
	.telTime > p {
		margin: 0 5px 0 0;
		padding: 0 10px 1px;
	}
	.dropDown {
		display: block!important;
		position: static;
		background: none;
	}
	.dropDown li a {
		background: none;
		line-height: 1;
	}
	.dropDown li:not(:last-of-type) {
		border: none;
	}
	.dropDown li a br {
		display: none;
	}
	.dropDown li a span.onlysp {
		display: inline;
	}
	/*footer-------------------*/
	.footwrWrap {
		padding: 40px 0 30px;
	}
	.pageTop {
		top: -15px;
	}
	.pageTop img {
		max-height: 30px;
	}
	.fNav {
		display: none;
	}
	.footerTop {
		display: block;
		padding-bottom: 0;
		margin-bottom: 0;
		border: none;
	}
	.fLogo {
		margin: 0 auto 10px;
	}
	.fLogo img {
		max-height: 25px;
		margin: 0;
	}
	.fLogo ._70th img[src*="70th"] {
		max-height: 46px;
	}
	.telBox {
		font-size: 12px;
		margin: 0 auto 20px;
	}
	.telBox img {
		margin: 0 auto 3px;
		max-height: 18px;
	}
	.btnContact {
		max-width: 205px;
		margin: 0 auto;
	}
	
	/*top--------------------------*/
	.mainVisual {
		padding-top: 0;
		position: relative;
		background: #fff;
		height: auto;
		font-size: 3.5vw;
	}
	.mainTxt {
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		margin: auto;
		width: 100%;
		padding-top: 12vw;
	}
	.mainTxt p.fo-futura {
		font-size: 4.8vw;
		line-height: 1.4;
		margin-bottom: 4.5vw;
	}
	.mainLogo {
		width: 70px;
		margin-bottom: 20px;
	}
	.ttlBox {
		margin-bottom: 30px;
		font-size: 12px;
	}
	.ttlBox h2 {
		font-size: 20px;
	}
	.topBusinessWrap {
		display: block;
	}
	.topBusinessWrap li,.topBusinessWrap li:first-of-type {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}
	.topBusinessCont h3 {
		font-size: 20px;
	}
	.topBusinessTxt {
		font-size: 13px;
		margin: 15px 0;
		line-height: 1.6;
	}
	.btn a {
		font-size: 14px;
		padding: 10px;
	}
	#topCompany {
		padding: 30px 0 45px;
	}
	.topCompanyWrap {
		height: 150px;
	}
	#topCompany .ttlBox {
		margin-bottom: 15px;
	}
	.topBnrArea {
		padding: 30px 0 45px;
	}
	.topBnrWrap {
		height: 150px;
	}
	.topBnrArea .ttlBox {
		margin-bottom: 15px;
	}
	
	/*ufb-------------------------*/
	.ufbMain {
		height: 75vw;
	}
	#ufbTop {
		margin-top: -10vw;
		padding: 50px 0 40px;
	}
	#ufbTop h2 {
		width: 80%;
		margin: 0 auto 20px;
	}
	.ufbTtl01 {
		margin-bottom: 20px;
	}
	.ufbTtl01 span {
		font-size: 16px;
		padding-bottom: 10px;
	}
	.ufbTopAboutWrap {
		display: block;
	}
	.ufbTopAboutWrap > p {
		width: 100%;
		margin-bottom: 15px;
	}
	.ufbTopAboutWrap dl {
		width: 100%;
		font-size: 12px;
	}
	.ufbTopAboutWrap dt {
		font-size: 14px;
		margin-bottom: 5px;
	}
	.btn02 {
		text-align: center;
	}
	.efficacyWrap {
		display: block;
	}
	#efficacy {
		background-size: 235% auto;
	}
	.efficacy {
		width: 100%;
		margin-bottom: 30px;
	}
	.efficacy h3 {
		font-size: 16px;
	}
	.efficacy dl {
		font-size: 12px;
	}
	.efficacy dt {
		font-size: 14px;
	}
	.ufbdualBox {
		width: 100%;
		font-size: 12px;
		margin-bottom:5px;
	}
	.ufbdualBox h2 {
		font-size: 16px;
		margin-bottom: 10px;
	}
	.ufbdualBox p {
		text-align: left;
	}
	#ufbdualAbout .ttlBox h2 {
		font-size: 20px;
		margin-bottom: 3px;
		line-height: 1;
	}
	.ufbdualAboutWrap {
		padding-top: 30px;
	}
	.ufbTtl02 span {
		font-size: 16px;
	}
	.ufbdualAboutCont {
		display: block;
		margin-bottom: 40px;
	}
	.ufbdualAboutCont figure {
		width: 100%;
		margin: 0 0 15px;
	}
	.ufbdualAboutCont dl {
		width: 100%;
	}
	.ufbdualAboutCont dt {
		font-size: 3.7vw;
		letter-spacing: normal;
	}
	.pointTtl {
		font-size: 18px;
		margin-bottom: 30px;
	}
	.ufbdualPoint {
		width: 100%;
		padding: 20px 5%;
	}
	.ufbdualPoint dt {
		font-size: 16px;
		min-height: inherit;
	}
	.ufbdualPoint dt small {
		font-size: 13px;
	}
	.licenseWrap {
		margin-bottom: 30px;
		display: block;
	}
	.licenseBox {
		width: 100%;
		padding: 20px 5%;
		margin-bottom: 15px;
	}
	.licenseBox h4 {
		font-size: 16px;
		margin-bottom: 10px;
	}
	.license {
	}
	.licenseTxt {
		padding: 0 0 0 5%;
		font-size: 12px;
	}
	.licenseImg {
		width: 30%;
		margin: 0 auto;
	}
	#ufbdualAbout .btn a {
		font-size: 14px;
	}
	.mitsumori {
		background-size: auto 10px;
		padding: 10px 0;
	}
	.mitsumoriArea {
		padding: 30px 0;
	}
	.mitsumori h2 {
		font-size: 16px;
	}
	.mitsurmoriWrap {
		font-size: 12px;
		margin-bottom: 20px;
	}
	.mitsurmoriWrap strong {
		font-size: 14px;
	}
	.zenkoku {
		right: 1%;
		width: 14%;
		top: -20%;
	}
	.mitsumoriTel {
		display: block;
	}
	.mitsumori .telBox {
		text-align: center;
		margin-bottom: 12px;
	}
	.mitsumori .telBox img {
		max-height: 18px;
	}
	.mitsumori .btnContact a {
		font-size: 14px;
		padding: 9px 10px 12px;
	}
	.mitsumori .btnContact a::before {
		width: 24px;
    height: 13px;
		margin-bottom: -2px;
	}
	.ufbLifeTopTtl {
		margin-bottom: 70px;
	}
	.ttl02 span::before, .ttl02 span::after {
		width: 11px;
		height: 17px;
		left: -18px;
		bottom: 5px;
	}
	.ttl02 span::after {
		right: -18px;
		left: inherit;
	}
	.ttl02 span {
		font-size: 4.5vw;
	}
	.ufbLifeIllust {
		width: 65%;
		max-width: 200px;
		top: -110px;
	}
	.ufbLifeArea {
		padding: 50px 0;
	}
	.ufbLifeWrap {
		border-radius: 15px;
		padding: 0 5% 30px;
	}
	.ufbLifeBox h3 {
		top: -18px;
	}
	.ufbLifeBox h3 span {
		font-size: 16px;
		padding: 10px;
		background-size: 27% 42%;
		background-position: left 3px top 3px;
	}
	.ufbLifeBox,.ufbLifeBox:nth-of-type(n+3) {
		margin-top: 50px;
		padding: 50px 5% 30px;
		width: 100%;
	}
	.ufbLifeCont {
		display: block;
	}
	.ufbLife ,.ufbLifeBox:nth-of-type(n+3) .ufbLife {
		width: 100%;
	}
	.ufbLifeTtl {
    width: 60px;
    height: 60px;
		top: -15px;
    left: -12px;
	}
	.ufbLifeTtl span {
		font-size: 12px;
		background-size: 80% 80%;
		background-position: left 2px top 2px;
	}
	.ufbLifeCont .ufbLife:not(:last-of-type) {
		margin-bottom: 40px;
	}
	.ufbLife dt {
		font-size: 14px;
		line-height: 1.4;
	}
	.ufbLife dd {
		font-size: 12px;
	}
	.ufbBnrs {
		padding: 40px 0;
	}
	.ufbBnrs li:first-of-type {
		margin-bottom: 15px;
	}
	
	/*company---------------------*/
	.subHeader {
		height: 45vw;
	}
	.subTtl {
		font-size: 12px;
	}
	.subTtl h2 {
		font-size: 24px;
		margin-bottom: 7px;
	}
	.bussinessWrap dt, .bussinessWrap dd {
		padding: 13px 3%;
	}
	.bussinessWrap dt {
		width: 30%;
	}
	.bussinessWrap dd {
		width: 70%;
	}
	.accessWrap {
		display: block;
	}
	.accessWrap:not(:last-of-type) {
		margin-bottom: 40px;
	}
	.accessWrap dl {
		width: 100%;
		margin-bottom: 20px;
	}
	.accessWrap dt {
		font-size: 14px;
		padding-bottom: 12px;
		margin-bottom: 12px;
	}
	.accessWrap dt::before {
		top: 1px;
	}
	.gMap {
		width: 100%;
		height: auto;
		display: block;
	}
	.gMap iframe {
		width: 100%;
		height: 50vw;
	}
	.gMap > * {
		width: 100% !important;
	}
	.gMap figure {
		margin-bottom: 10px;
	}
	#history {
		padding-bottom: 60px;
	}
	.historyArea {
		padding: 30px 5%;
	}
	.historyGallery li:not(:last-of-type) {
		margin-bottom: 20px;
	}
	.historyWrap dt, .historyWrap dd {
		padding: 10px 3%;
	}
	.historyWrap dt {
		text-align: left;
	}
	
	/*salon------------------*/
	#salon .subHeader {
		background-position: right 20% center;
	}
	#kingssalon h2 {
		font-size: 16px;
		margin-bottom: 20px;
	}
	#kingssalon h2 span {
		font-size: 12px;
		margin-bottom: 7px;
	}
	.bnrSalon {
		margin-bottom: 20px;
	}
	.shopInfoWrap {
		display: block;
		margin-bottom: 30px;
	}
	.shopInfoImg {
		width: 100%;
	}
	.shopInfo {
		width: 100%;
	}
	.shopInfo dt {
		font-size: 14px;
		padding-bottom: 15px;
		margin-bottom: 15px;
	}
	.shopInfo d::before {
		top: 1px;
	}
	#shopInfo .gMap {
		height: 40vw;
		margin-bottom: 40px;
	}
	.btn03 a {
		padding: 15px 25px;
	}
	.btnWrap {
		margin-top: 50px;
	}
	.btnWrap h3 span {
		font-size: 20px;
	}
	.salonImg {
		margin-top: 40px;
	}
	.salonImg li {
		width: 50%;
	}
	
	/*about------------------------*/
	.sh02 .subTtl h2 {
		font-size: 24px;
	}
	.anchor {
		display: block;
		padding: 40px 0;
	}
	.anchor li {
		width: 100%;
	}
	.anchor li:not(:last-of-type) {
		margin: 0 0 10px 0;
	}
	.ttlWave,#difference .ttlWave {
		font-size: 18px;
		background-size: auto 6px;
		padding-bottom: 10px;
		margin-bottom: 30px;
	}
	.movieTtl {
		font-size: 16px;
	}
	.movieArea {
		display: block;
	}
	.movieWrap {
		width: 100%;
	}
	.aboutBox {
		padding: 30px 5%;
	}
	.aboutBox .ufbTtl02 {
		margin-bottom: 20px;
	}
	.aboutBox .ufbTtl02 span {
		font-size: 15px;
	}
	.aboutTxt {
		text-align: left;
		margin-bottom: 20px;
	}
	.about02Box h3 span {
		font-size: 22px;
	}
	.about02Box .aboutTxt {
		margin-top: 20px;
		font-size: 14px;
		text-align: center;
	}
	#difference .ttlWave {
		font-size: 16px;
	}
	.differenceWrap {
		display: block;
	}
	.differenceWrap > figure {
		width: 70%;
		margin: 0 auto 20px;
	}
	.differenceList {
		width: 100%;
	}
	.differenceList li {
		font-size: 4.5vw;
		padding-left: 30px;
		background-size: auto 16px;
	}
	.differenceList li small {
		font-size: 3.5vw;
	}
	.differenceCont {
		width: 80%;
		margin-bottom: 40px;
		flex-wrap: wrap;
	}
	.differenceCont li {
		width: 47%;
		margin-bottom: 10px;
	}
	.differenceTableWrap {
		overflow-x: auto;
	}
	.differenceTable {
		width: 760px;
	}
	.differenceTable .dtHead td {
		font-size: 11px;
	}
	.differenceTable tbody {
		font-size: 12px;
	}
	.spScroll {
		margin-bottom: 5px;
	}
	.differenceTxt {
		font-size: 14px;
		margin-top: 40px;
	}
	.movie {
		margin-bottom: 25px;
	}
	
	/*faq-------------------------*/
	.faqSub {
		height: 35vw;
	}
	.faqSub .container {
		width: 100%;
		background-position: bottom right -12vw;
		background-size: 80% auto;
		text-align: left;
	}
	.faqSub h2 {
		font-size: 4.8vw;
		background: rgba(255,255,255,.6);
		padding: 5px 10px 5px 15px;
		display: inline-block;
	}
	.faqAnc img {
		max-height: 14px;
	}
	.faqAnc a {
		padding: 12px;
	}
	.worksWrap {
		margin-top: 30px;
		padding: 30px 5%;
	}
	.worksWrap dl {
		width: 100%;
	}
	.worksWrap .ufbTtl02 {
		margin-bottom: 15px;
	}
	.worksWrap .ufbTtl02 span {
		font-size: 3.9vw;
		text-align: center;
		display: block;
	}
	.worksWrap dd figure {
		float: right;
		width: 40%;
		margin: 5px 0 0 5px;
	}
	.worksTxt {
		font-size: 3.8vw;
		margin-top: 30px;
	}
	.faqIllsut {
		width: 50%;
		margin: 0 auto;
	}
	.faqWrap {
		padding: 30px 5%;
	}
	.faqWrap h3 {
		font-size: 14px;
		padding: 10px 5px;
		margin-bottom: 20px;
	}
	.faq {
		padding: 15px 0;
	}
	.faq dt, .faq dd {
		background-size: auto 14px;
		padding-left: 27px;
		background-position: top 3px left;
	}
	.faq dt {
		font-size: 14px;
	}
	/*contact------------------*/
	.contactTopTxt {
		font-size: 12px;
	}
	.contactTop {
		display: block;
		padding: 15px 0;
		margin-bottom: 40px;
	}
	.uketsuke {
		font-size: 12px;
		margin-left: 0;
		padding: 5px 10px;
	}
	.contactTop img {
		max-height: 18px;
	}
	.contactWrap dt,.contactWrap dd {
		width: 100%;
		padding: 12px 10px;
	}
	.contactWrap label {
		width: 100%;
		margin-bottom: 5px;
	}
	.contactWrap dt {
		text-align: left;
	}
	.contactWrap dt.req::after {
		position: static;
		font-size: 10px;
		margin-left: 5px;
	}
	.contactWrap dl + p {
		font-size: 12px;
		margin-top: 30px;
		text-align: left;
	}
	#contactArea {
		padding-bottom: 60px;
	}
	.contactWrap input[type="text"], .contactWrap input[type="email"], .contactWrap input[type="tel"] {
		width: 100%;
	}
	.yourname input[type="text"] {
    width: 35%;
	}
	.zip {
		width: 50%!important;
	}
	/*works----------------------*/
	.signWorks {
		margin-bottom: 20px;
	}
	.signWorks dl {
		font-size: 10px;
	}
	.signWorks dt {
		font-size: 12px;
	}
	.footContactBox {
		display: block;
		padding: 15px 10px;
	}
	.footContactBox .telBox img {
    max-height: 22px;
	}
	.footContactBox .btnContact a {
		margin-left: 0;
		font-size: 14px;
		padding: 9px 10px 12px;
	}
	.footContactBox .btnContact a::before {
		width: 22px;
		height: 13px;
		margin-bottom: -2px;
	}
	
	/*sign-----------------------*/
	#signTop {
		padding: 40px 0;
	}
	.kanbanyaLogo {
		width: 40%;
		margin: 0 auto 30px;
	}
	.signTopWrap {
		padding: 12vw 0 30vw;
		margin-bottom: 60px;
	}
	.signTopBox {
		padding: 20px 5%;
		font-size: 12px;
	}
	.signTopBox h2 {
		font-size: 14px;
		margin-bottom: 15px;
	}
	.signTopBox h2 img {
		max-height: 24px;
		margin-bottom: 10px;
	}
	.signTopTxt {
		font-size: 14px;
		text-align: left;
	}
	.signTxt {
		padding: 30px 5%;
		font-size: 12px;
		text-align: left;
	}
	#signAbout {
		padding: 40px 0;
	}
	#signAbout h2 {
		font-size: 16px;
		margin-bottom: 30px;
	}
	#signAbout h2 + p {
		text-align: left;
	}
	.signImg {
		margin: 30px 0;
	}
	.btn04 a {
		display: block;
		padding: 15px 5px;
		font-size: 14px;
		width: 90%;
		margin: 0 auto;
	}
	#signAbout .supportBox {
		width: 100%;
		padding: 40px 5% 15px;
		line-height: 1.6;
		font-size: 13px;
		margin: 60px auto 0;
	}
	.supportBox .zenkoku {
		width: 20%;
		top: -25px;
		left: 0;
		right: 0;
		margin: auto;
	}
	/*csr
	-----------------------------------------------------*/
	.csrTtl {
		height: 100px;
		background-size: auto 150%
	}
	.csrTtl h2 {
		font-size: 28px;
	}
	#csrTop h2 {
		font-size: 20px;
	}
	#csrTop h2 + .txt {
		font-size: 14px;
		text-align: left;
		line-height: 1.8;
	}
	.matsuriTxtWrap {
		padding: 30px 5%;
	}
	.matsuriTxtWrap h2 {
		font-size: 20px;
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
	.matsuriTxtWrap .txt {
		text-align: left;
	}
	.csrWrap {
		display: block;
	}
	.csrWrap .img {
		width: 100%;
		height: 54vw;
	}
	.csrWrap .img::before {
		width: 100vw;
	}
	.csrWrap dl {
		width: 100%;
		margin-top: 15px;
	}
	.csrWrap dt span {
		font-size: 18px
	}
	.csrWrap dd {
		margin-top: 15px;
		line-height: 1.6
	}
	.csrWrap + .csrWrap {
    margin-top: 80px;
	}
	.csrHistoryWrap {
		padding: 0;
	}
	.csrHistoryTtl {
		width: 100%;
		height: auto;
		margin-bottom: 20px;
		position: static;
		font-size: 20px;
	}
	 .csrHistoryTtl .ttl {
		position: static;
		 letter-spacing: .05em;
		 padding: 12px 15px;
		 margin: 5px 0;
	}
	.csrHistoryTtl .ttl._02 {
		margin-left: 35%;
		font-size: 75%;
		padding: 10px 5px 10px 15px;
	}
	.csrHistoryCont dl {
		font-size: 14px;
	}
	.csrHistoryCont dt,.csrHistoryCont dd {
		padding: 15px 10px;
	}
	.csrHistoryCont dt {
		min-width: 80px;
		width: 80px;
	}
	.csrHistoryCont dt big {
    font-size: 120%;
	}
	.csrHistoryCont dt::after {
		width: 10px;
		height: 10px;
		border-width: 2px;
		top: 16px;
    right: -8px;
	}
	.csrHistoryCont dd {
		padding-left: 15px;
	}
	.csrHistoryCont::after {
		left: 77px
	}
	#csrHistory h3 {
		font-size:18px;
	}
	.intBnrArea {
		padding: 40px 5%
	}
	.intBnrArea h2 {
		font-size: 22px;
	}
	.intBnrArea .eng + .txt {
		text-align: left;
		font-size: 14px;
		margin-bottom: 30px;
	}
	.bnrs01 {
		display: block;
	}
	.bnrs01 li {
		width: 100%;
		margin-top: 10px;
	}
	.bnrs01 li a {
		font-size: 22px;
	}
	.intBnrArea .topBnrWrap {
		margin-top: 30px;
		height: 220px;
	}
	.matsuriBnr {
		margin: 30px auto;
	}
	.matsuriBnr a {
		font-size: 22px;
		padding: 30px 0;
	}
	
	
	
	
	
	
	
	
	
}


