@charset "utf-8";


/* <RESET> */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,textarea,p,blockquote,th,td,article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,i,a,span,ruby,rt,rp,rb{
	margin:0;
	padding:0;
	word-break: normal;
	font-style:normal;
    font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
html{font-size: 62.5%;}
body,input,select,option,textarea,button,pre{
	font-size: 1.6rem;
	line-height:1.75;
	color:#333333;
	font-family: 'Noto Sans JP', sans-serif;
	box-sizing:border-box;
}
@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
pre{
	border: none;
	overflow: visible;
	white-space:normal;
}
html,body{ height: 100%; }
body{
	overflow-x: hidden;
	text-align: center;
}
h1,h2,h3,h4,h5,h6{
	font-size:100%;
	font-weight:bold;
	line-height: 1.25;
}
img{
	border:0;
	vertical-align:top;
}
ul,ol{
	list-style:none;
}
table{
	border-collapse:collapse;
	border-spacing:0;
	font-size:100%;
}
textarea{
	font-size:100%;
}
th {
	text-align:left;
	font-weight:normal;
}
address,em{
	font-style:normal;
	font-weight:normal;
}
sup{
	font-weight:normal;
}
a{
    filter:alpha(opacity=1);
    opacity:1;
    -webkit-transition: .5s;
    -moz-transition: .5s;
    transition: .5s;
	color: #392b65;
	text-decoration: underline;
}
a:hover{
	text-decoration: none;
}
a:hover img,
input:hover{
    filter:alpha(opacity=0.6);
    opacity:0.6;
    -webkit-transition: .5s;
    -moz-transition: .5s;
    transition: .5s;
}
/* </ RESET> */


/* <MODULE> */
.smt{ display: none; }
.pc{ display:inherit; }
.cf:after{
	clear: both;
	content:"";
	display: table;
}
.center{
	text-align: center !important;
}
.button{
	text-align: center;
}
.button a,
.button input{
	display: inline-block;
	background: #57429a;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	font-weight: bold;
	font-size: 2.0rem;
	padding: 26px 75px;
	text-align: center;
	border:none;
	border-bottom: solid 1px #392b65;
}
.button-r a,
.button-r input{
	background: #fff;
	color: #57429a;
}
.button a:hover,
.button input:hover{
	background: #efefef;
	color: #392b65;
	border-bottom: solid 1px #2b2b2b;
}
.button-r a:hover,
.button-r input:hover{
	background: #392b65;
	color: #efefef;
}
.button a:after{
	font-family: "Font Awesome 5 Free";
	content: '\f105';
	font-weight: 900;
	vertical-align: top;
	color: #57429a;
	width: 22px;
	height: 22px;
	line-height: 22px;
	margin: 0.8rem 0 0 0.5em;
	padding-left: 2px;
	border-radius: 11px;
	display: inline-block;
	background: #dac956;
	box-sizing: border-box;
}
.button-r a:after{
	background: #392b65;
	color: #fff;
}
.ttl1{
	font-size: 3.6rem;
	font-weight: bold;
	margin-bottom: 40px;
}
h1.ttl1{
	margin-top: 60px;
	padding: 0 20px;
}
.ttl1 b{
	color: #b73284;
}
.ttl1 span{
	display: inline-block;
	padding: 0 60px;
	line-height: 60px;
	background: #f0ecfb;
	border-radius: 30px;
	font-size: 2.4rem;
	color: #392b65;
	font-weight: bold;
}
/* </ MODULE> */


/* <LAYOUT> */
#offcanvas-layer,
#offcanvas-menu,
#offcanvas-button{
	display: none;
}
#wrapper{
	/*max-width:1440px;*/
	min-width:1000px;
	margin: 0 auto;
	text-align: center;
}
#header{
	width:1110px;
	margin: 0 auto;
}
#header .logo{
	float: left;
	padding: 28px 68px 28px 0;
}
#header .nav{
	float: left;
	width: 289px;
	padding: 30px 0 0;
	text-align: center;
}
#header .nav li{ display: inline; }
#header .nav li a{
	display: block;
	float: left;
	height: 71px;
	border: solid 1px #c5bedb;
	border-radius: 4px;
	padding: 10px 0 0;
	text-decoration: none;
	font-weight: bold;
}
#header .nav li:nth-of-type(1) a{ width: 180px; }
#header .nav li:nth-of-type(2) a{ width: 100px;float: right; }
#header .nav li a:hover{
	background: #efefef;
}
#header .nav li a:before{
	display: block;
	content:"";
	margin: 0 auto;
	width: 30px;
	height: 28px;
	background-repeat: no-repeat;
	background-position: left top;
}
#header .nav li:nth-of-type(1) a:before{ background-image:url(../images/icon-cal.png); }
#header .nav li:nth-of-type(2) a:before{ background-image:url(../images/icon-mail.png); }
#header .tel{
	float: right;
	padding: 30px 0 0;
}
#header-nav{
	background:url(../images/header-navi-bg.png) repeat-x top;
}
#footer-nav{
	background:#392b65;
	margin-top: 100px;
}
.gnav ul{
	width: 100%;
	max-width: 1210px;
	display: flex;
	justify-content: space-between;
	height: 80px;
	margin: 0 auto;
}
.gnav ul li{
	width: 100%;
	text-align: center;
}
.gnav ul li a{
	font-weight: bold;
	display: block;
	height: 80px;
	position: relative;
	text-align: center;
	padding: 20px 0 0;
	font-size: 1.6rem;
	float: left;
	text-decoration: none;
	width: 100%;
	line-height: 1.2;
}
#footer-nav .gnav ul li a{
	color: #fff;
}
.gnav ul li:nth-of-type(1){ flex-basis:calc(3em + 150px); }
.gnav ul li:nth-of-type(2){ flex-basis:calc(12em + 150px); }
.gnav ul li:nth-of-type(3){ flex-basis:calc(4em + 150px); }
.gnav ul li:nth-of-type(4){ flex-basis:calc(4em + 150px); }
.gnav ul li:nth-of-type(5){ flex-basis:calc(4em + 150px); }
.gnav ul li:nth-of-type(6){ flex-basis:calc(6em + 150px); }
.gnav ul li a:hover{
	background: #efefef;
}
#footer-nav .gnav ul li a:hover{
	color: #392b65;
}
.gnav ul li a i{
	font-size: 1rem;
	display: block;
	margin: 4px auto 0;
}
.gnav ul li a:after{
	content:"";
	width: 1px;
	height: 38px;
	display: inline-block;
	left: 0;
	top:21px;
	position: absolute;
	z-index: 1002;
	background: #c5bedb;
}
.gnav ul li:nth-of-type(1) a:after{ content:none; }
#footer .logo{
	padding: 40px 0;
	text-align: center;
}
#footer .copy{
	background:url(../images/copy-bg.png) repeat-x top;
	text-align: center;
	font-size: 1.2rem;
	padding: 18px 20px;
}
/* </ LAYOUT> */


/* <OTHER LIBRARY> */

/* </OTHER LIBRARY> */


/* <TOP> */
#top-main{
	position: relative;
	height: 558px;
	background:url(../images/top/main.png) no-repeat top center;
	position: relative;
}
#top-main .txt{
	background: rgba(0,0,0,0.3);
	position: absolute;
	bottom: 0;
	left: calc(50% - 720px);
	width: 1440px;
	text-align: center;
	color: #fff;
	letter-spacing: 0.05em;
	padding: 46px 0 40px;
}
#top-main .txt h1{
	font-size: 4.8rem;
	font-weight: bold;
	margin-bottom: 20px;
}
#top-main .txt h1 b{
	color: #e9cc08;
}
#top-main .txt p{
	font-size: 3.0rem;
	line-height: 1.25;
}
#top-b1{
	text-align: center;
	background:url(../images/top/b1-bg.png) no-repeat center bottom;
	padding: 100px 0 160px;
}
#top-b1 .catch{
	font-size: 2.4rem;
	background: rgba(255,255,255,0.5);
	padding: 48px 60px;
	display: inline-block;
	box-shadow: 0 0 10px 10px rgba(82,99,149,0.15);
	font-weight: bold;
}
#top-b2{
	padding: 80px 0;
	border-top: solid 450px #432d85;
}
#top-b2 h2{
	margin-top: -450px;
	margin-bottom: 32px;
	font-size: 3.6rem;
	font-weight: bold;
	color: #fff;
}
#top-b2 h2 b{
	color: #e9cc08;
}
#top-b2 p.intro{
	font-size: 1.6rem;
	margin-bottom: 48px;
	color: #fff;
}
#top-b2 h3{
	color: #fff;
	font-weight: bold;
	font-size: 2.4rem;
	position: relative;
	max-width:1110px;
	margin: 0 auto 30px;
	padding: 0 20px;
	background: #432d85;
}
#top-b2 h3:before{
	content:"";
	position: absolute;
	z-index: 1;
	width: 100%;
	height: 1px;
	top:50%;
	left: 0;
	background: #fff;
}
#top-b2 h3 span{
	padding: 0 20px;
	position: relative;
	z-index: 2;
	background: #432d85;
}
#top-b2 ul{
	max-width:1110px;
	margin: 0 auto 40px;
	display: flex;
	justify-content: space-between;
}
#top-b2 ul li{
	width: 48.6%;
	padding: 20px;
	background: #fff;
	box-shadow: 0 0 10px 10px rgba(82,99,149,0.15);
	text-align: left;
}
#top-b2 ul li .photo{
	margin-bottom: 20px;
}
#top-b2 ul li h4{
	font-size: 1.8rem;
	color: #392b65;
	font-weight: bold;
	margin-bottom: 10px;
}
#top-b2 ul li .name{
	color: #7d7227;
	font-weight: bold;
	margin-bottom: 16px;
}
#top-b2 ul li p{
	font-size: 1.6rem;
}
#top-b3{
	margin-bottom: 120px;
}
#top-b3 ul{
	max-width:1110px;
	margin: 0 auto 80px;
	display: flex;
	justify-content: space-between;
}
#top-b3 ul li{
	width: 48.6%;
	text-align: left;
}
#top-b3 h4{
	font-size: 2.4rem;
	color: #392b65;
	font-weight: bold;
	margin: 40px 0 24px;
}
#top-b3 p{
	font-size: 1.6rem;
	margin-bottom: 40px;
}
#top-b4{
	background:url(../images/top/b4-bg.png) no-repeat center top;
	padding: 300px 0 0;
	margin-bottom: 80px;
}
#top-b4 .content{
	max-width:920px;
	margin: 0 auto;
	padding: 54px 0 60px;
	background: #57429a;
	color: #fff;
}
#top-b4 .content h2{
	font-size: 3.6rem;
	font-weight: bold;
	margin-bottom: 36px;
}
#top-b4 .content h2 b{
	color: #e9cc08;
}
#top-b4 .content p{
	font-size: 1.6rem;
	margin-bottom: 1em;
}
#top-b4 .content p.large{
	font-size: 2.0rem;
	margin-bottom: 40px;
}
#top-b4 .content p span{
	color: #e9cc08;
}
#ban-inq{
	max-width:1110px;
	margin:0 auto;
}
#ban-inq a{
	display: block;
	border:solid 3px #57429a;
	padding: 40px 65px;
	position: relative;
	text-align: left;
	text-decoration: none;
}
#ban-inq a:hover{
	background: #efefef;
}
#ban-inq span{display: inline-block;}
#ban-inq a .ttl{
	font-size: 3.2rem;
	font-weight: bold;
	color: #57429a;
}
#ban-inq a .ttl b{
	color: #7d7227;
}
#ban-inq a .txt{
	color: #333;
	font-size: 1.8rem;
}
#ban-inq a .btn{
	width: 320px;
	line-height: 60px;
	border-radius: 30px;
	background: #57429a;
	color: #fff;
	font-weight: bold;
	text-align: center;
	position: absolute;
	right: 45px;
	bottom:40px;
	z-index: 3;
	font-size: 1.8rem;
}
#ban-inq a .btn:after{
	font-family: "Font Awesome 5 Free";
	content: '\f105';
	font-weight: 900;
	vertical-align: top;
	color: #57429a;
	width: 22px;
	height: 22px;
	line-height: 22px;
	margin: 19px 0 0 0.5em;
	padding-left: 2px;
	border-radius: 11px;
	display: inline-block;
	background: #dac956;
	box-sizing: border-box;
}
#top-sche{
	margin: 100px 0;
}
#nav-inq ul{
	max-width:1110px;
	margin: 0 auto 40px;
	display: flex;
	justify-content: space-between;
}
#nav-inq ul li{
	width: 48.6%;
	padding: 20px 0 16px;
}
#nav-inq ul li:nth-of-type(1){ background: #7d7227; }
#nav-inq ul li:nth-of-type(2){ background: #57429a; }
#nav-inq h4{
	font-size: 2.4rem;
	color: #392b65;
	position: relative;
	max-width:1110px;
	padding: 0 20px;
	margin: 0 auto 10px;
}
#nav-inq h4:before{
	content:"";
	position: absolute;
	z-index: 1;
	width: 100%;
	height: 1px;
	top:50%;
	left: 0;
	background: #392b65;
}
#nav-inq h4 span{
	padding: 0 20px;
	font-weight: bold;
	position: relative;
	z-index: 2;
	background: #fff;
}
/* </TOP> */
.below-main{
	margin: 0 0 40px;
}
.below-intro{
	max-width: 1110px;
	margin: 0 auto 40px;
	text-align: left;
}
.below-intro p,
.below-intro ul{
	font-size: 1.8rem;
	margin-bottom: 16px;
}
.below-intro p:last-of-type{
	margin-bottom: 0;
}
.consul-b1{
	background: #57429a;
	padding: 20px;
	margin-bottom: 140px;
	position: relative;
}
.consul-b1:after{
	content:"";
	display: inline-block;
	position: absolute;
	bottom: -56px;
	left: calc(50% - 100px);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 56px 100px 0 100px;
	border-color: #56429a transparent transparent transparent;
}
.consul-b1 .info{
	max-width: 1110px;
	margin: 0 auto;
	text-align: left;
	background: #fff;
	padding: 40px;
}
.consul-b1 .info h2.ttl1{
	text-align: center;
	border-bottom: solid 1px #000;
	padding-bottom: 20px;
	margin-bottom: 20px;
}
.consul-b1 .info ul{ 
	max-width: 840px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-left: 40px;
}
.consul-b1 .info ul li{
	width: 48%;
	font-size: 2.1rem;
	line-height: 2.4;
}
.consul-b1 .info ul li:before{
	font-family: "Font Awesome 5 Free";
	content: '\f00c';
	font-weight: 900;
	color: #b73284;
	margin-right: 6px;
}
.consul-b2{
	max-width:1110px;
	margin: 0 auto 80px;
}
.consul-b2 h2{
	font-size: 5.6rem;
}
.consul-b2 p{
	font-size: 1.8rem;
	text-align: left;
}
.consul-b2 .figure{
	margin-top: 40px;
}
.consul-b3{
	background: #57429a;
	padding: 40px 0;
	color: #fff;
}
.consul-b3 ol{ 
	max-width: 840px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-left: 40px;
	text-align: left;
}
.consul-b3 ol li{
	width: 48%;
	font-size: 2.1rem;
	line-height: 2.8;
	font-weight: bold;
}
.consul-b3 ol li i{
	line-height: 36px;
	width: 36px;
	display: inline-block;
	color: #57429a;
	background: #fff;
	border-radius: 18px;
	text-align: center;
	margin-right: 6px;
	font-weight: bold;
}
.below-voice{
	margin: 40px auto;
}
.below-flow{
	background: #57429a;
	padding: 40px 0;
	margin: 0 0 80px;
	color: #fff;
}
.below-flow ol{
	max-width: 1110px;
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
}
.below-flow ol li{
	width: 25%;
	padding-right: 40px;
}
.below-flow ol li:last-of-type{
	padding-right: 0;
}
.below-flow ol li .arrow{
	background: #fff;
	padding: 0 0 30px 20px;
	position: relative;
}
.below-flow ol li:last-of-type .arrow{
	padding: 0 20px 30px;
}
.below-flow ol li .arrow:after{
	content:"";
	position: absolute;
	right: -40px;
	top: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 92px 0 92px 40px;
	border-color: transparent transparent transparent #ffffff;
}
.below-flow ol li:last-of-type .arrow:after{
	content:none;
}
.below-flow ol li .arrow i{
	color: #7d7227;
	font-weight: bold;
	display: block;
	font-size: 3.6rem;
	line-height: 63px;
	text-align: left;
	border-bottom: solid 1px #000;
	background-position: right 5px;
	background-repeat: no-repeat;
}
.below-flow ol li:nth-of-type(1) .arrow i{ background-image:url(../images/consulting/flow-icon1.png)}
.below-flow ol li:nth-of-type(2) .arrow i{ background-image:url(../images/consulting/flow-icon2.png)}
.below-flow ol li:nth-of-type(3) .arrow i{ background-image:url(../images/consulting/flow-icon3.png)}
.below-flow ol li:nth-of-type(4) .arrow i{ background-image:url(../images/consulting/flow-icon4.png)}
.below-flow ol li .arrow h3{
	color: #000;
	font-size: 2.4rem;
	padding: 20px 0 0;
	height: 90px;
}
.below-flow ol li .arrow h3 span{
	font-size: 2.1rem;
	color: #b73183;
}
.below-flow ol li p{
	text-align: left;
	margin-top: 10px;
}
.consul-b4{
	margin: 0 0 80px;
}
.consul-b4 .info{
	max-width: 1110px;
	background: #efefef;
	margin: 0 auto 20px;
	padding: 40px;
}
.consul-b4 .info h3{
	font-size: 2.8rem;
	border-bottom: solid 1px #000;
	padding-bottom: 20px;
	margin-bottom: 20px;
}
.consul-b4 .info dl{
	display: table;
	margin: 0 auto;
}
.consul-b4 .info dl dt{
	display: table-cell;
	font-size: 2.4rem;
	text-align: left;
	flex-basis: auto;
}
.consul-b4 .info dl dd{
	display: table-cell;
	font-size: 1.8rem;
	color: #b73183;
	text-align: right;
	vertical-align: bottom;
}
.consul-b4 .info dl dd:before{
	content:"・・・";
	margin-right: 1em;
	color: #333;
}
.consul-b4 .info dl dd b{
	font-weight: bold;
	font-size: 2.4rem;
}
.consul-b4  .note{
	max-width: 1110px;
	margin: 0 auto;
	text-align: left;
}
.training-b1{
	margin-bottom: 80px;
}
.training-b1 ul{
	max-width: 1110px;
	margin: 40px auto 0;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.training-b1 ul:after{
	content:"";
	display: block;
	width: 330px;
}
.training-b1 ul li{
	width: 330px;
	position: relative;
	margin-bottom: 60px;
}
.training-b1 ul li i{
	position: absolute;
	display: inline-block;
	width: 80px;
	height: 80px;
	background: #b73183;
	color: #fff;
	border-radius: 40px;
	right: -20px;
	top: -20px;
	z-index: 2;
	padding-top: 16px;
	font-size: 1.6rem;
	line-height: 24px;
}
.training-b1 ul li h3{
	font-size: 2.4rem;
	margin: 15px 0 5px;
}
.training-b1 ul li p span{
	color: #b73183;
}
.training-b1 ul li p span b{
	font-size: 1.8rem;
}
.training-b1 .note{
	max-width: 1110px;
	margin: -30px auto 0;
	text-align: left;
}
.below-intro .icon{
	max-width: 1040px;
	display:flex;
	justify-content: space-between;
	margin: 36px auto;
}
.below-intro .icon li{
	width: 240px;
	height: 240px;
	border-radius: 120px;
	background: #57429a;
	color: #fff;
	font-weight: bold;
	font-size: 2.1rem;
	padding-top: 40px;
	text-align: center;
	position: relative;
}
.below-intro .icon li:nth-of-type(2){
	padding-top: 60px;
}
.below-intro .icon li:after{
	display: block;
	margin: 12px auto 0;
	width: 100%;
	height: 80px;
	content:"";
	position: absolute;
	bottom: 20px;
	left: 0;
	background-repeat: no-repeat;
	background-position: center bottom;
}
.below-intro .icon li:nth-of-type(1):after{ background-image:url(../images/training/theme-icon1.png); }
.below-intro .icon li:nth-of-type(2):after{ background-image:url(../images/training/theme-icon2.png); }
.below-intro .icon li:nth-of-type(3):after{ background-image:url(../images/training/theme-icon3.png); }
.below-intro .icon li:nth-of-type(4):after{ background-image:url(../images/training/theme-icon4.png); }

.seminar-b2{
	background: #efefef;
	padding: 40px 0;
	margin: 120px 0 80px;
}
.seminar-b3{
	max-width: 1110px;
	margin: 0 auto 80px;
	text-align: left;
}
.seminar-b3 .ttl1,
.seminar-b3 p{
	text-align: center;
}
.ttl2{
	font-size: 3rem;
	color: #57429a;
	margin: 0 0 20px;
}
.ttl2:before{
	content:"";
	background:url(../images/logo.png) no-repeat left top;
	width: 38px;
	height: 44px;
	margin-right: 6px;
	display: inline-block;
	vertical-align: top;
}
.seminar-b3 h3.ttl2{
	margin-top: 40px;
}
table.tbl1{
	width: 100%;
	border-collapse: collapse;
	border:solid 1px #000;
	margin-bottom: 40px;
}
table.tbl1 th{
	background: #fdf9d9;
	padding: 15px;
	border:solid 1px #000;
	vertical-align: top;
}
table.tbl1 td{
	padding: 15px;
	border:solid 1px #000;
	vertical-align: top;
}
.seminar-b3 table.tbl1 th{
	width: 37%;
}
.company-b1{
	margin-bottom: 80px;
}
.company-b1 dl{
	display: flex;
	justify-content: space-between;
	max-width: 1110px;
	margin: 0 auto;
}
.company-b1 dl dd{
	padding-left: 40px;
}
.company-b1 dl h2{
	font-size: 2.8rem;
	margin: 20px 0 16px;
}
.company-b1 dl h2 span{
	font-size: 1.4rem;
	margin-left: 10px;
}
.company-b1 dl ul{
	font-size: 1.4rem;
}

.company-b1 dl dd p{
	margin-bottom: 1em;
	text-align: left;
}
.company-b2{
    background: #efefef;
    padding: 40px;
    margin: 0 0 80px;
}
.company-b2 .info{
	max-width: 1110px;
	margin: 0 auto 80px;
	text-align: left;
	background: #fff;
	padding: 60px 80px;
}
.company-b2 .info:last-of-type{
	margin-bottom: 0;
}
.company-b2 .info .ttl2:last-of-type{
	margin-top: 60px;
}
.company-b2 dl{
	font-size: 1.8rem;
	padding-left: 44px;
}
.company-b2 dl dt{
	width: 240px;
	float: left;
	margin: 0 0 20px;
	font-weight: bold;
}
.company-b2 dl dd{
	margin: 0 0 20px 240px;
	font-weight: bold;
}
.inquiry-b1{
	margin-bottom: 80px;
}
.inquiry-b1 .tel{
	font-size: 7.2rem;
	font-weight: bold;
	line-height: 1.33;
}
.inquiry-b1 .tel:before{
	content:"";
	display: inline-block;
	width: 98px;
	height: 55px;
	background:url(../images/inquiry/icon-fd.png) no-repeat left top;
	background-size: contain;
	margin-right: 6px;
}
.inquiry-b1 .tel span{
	font-size: 1.8rem;
	color: #b73284;
}
.inquiry-b1 p{
	font-size: 1.8rem;
	font-weight: bold;
}
.inquiry-b2{
	background: #efefef;
	padding: 40px 0 60px;
	margin: 120px 0 80px;
}
.inquiry-b2 dl{
	display: flex;
	justify-content:space-between;
	max-width: 1110px;
	margin: 0 auto;
}
.inquiry-b2 dl dd{
	padding-left: 40px;
	text-align: left;
}
.inquiry-b2 dl dd p{
	margin-bottom: 16px;
}
.inquiry-b2 dl dd p.logo img{
	width: 80px;
	margin-right: 17px;
}
.inquiry-b3{
	max-width: 1110px;
	margin: 0 auto 80px;
}
.inquiry-b3 ol{
	max-width: 780px;
	display:flex;
	justify-content: space-between;
	margin: 36px auto;
}
.inquiry-b3 ol li{
	width: 220px;
	height: 280px;
	position: relative;
	text-align: left;
	background: #7d7227;
	box-shadow: 0 0 5px 3px rgba(125,114,39,0.25);
}
.inquiry-b3 ol li b{
	position: relative;
	z-index: 3;
	font-size: 1.8rem;
	font-weight: bold;
	margin-top: 80px;
	display: block;
	text-align: center;
	color: #fff;
}
.inquiry-b3 ol li i{
	position: absolute;
	width: 48px;
	line-height: 48px;
	border-radius: 24px;
	text-align: center;
	display: inline-block;
	top:20px;
	left:calc(50% - 24px);
	background:#fff;
	color: #7d7227;
	font-weight: bold;
	z-index: 3;
	font-size: 2.8rem;
}
#inquiry-form{
	max-width:1110px;
	margin: 0 auto;
}
#inquiry-form #submit input{
	padding-left: 60px;
	padding-right: 60px;
	font-size: 2.1rem;
	cursor:pointer;
}
#privacy{
	height: 220px;
	padding: 30px;
	overflow-y: scroll;
	background: #f1f1f1;
	margin: 30px 30px 60px;
	text-align: left;
}
#privacy h3{
	font-size: 2.1rem;
	margin: 0 0 10px;
	font-weight: bold;
}
#privacy h4{
	font-size: 1.8rem;
	font-weight: bold;
	margin: 10px 0;
}
#privacy h5{
	font-weight: bold;
	margin: 10px 0;
}
#privacy p{
	margin-bottom: 16px;
}
dl.form_block1{
    display: block;
    overflow: hidden;
	border-bottom: 1px dotted #ccc;
}
dl.form_block1:first-of-type{
	margin-top: 36px;
}
dl.form_block1 dt{
	font-weight: bold;
}
dl.form_block1 dt p.tit {
    width: 20%;
    padding: 20px 9px 13px;
    font-weight: normal;
    text-align: right;
    float: left;
    min-height: 30px;
    line-height: 30px;
}
dl.form_block1 dt p.must {
    text-align: right;
    width: 8%;
    vertical-align: top;
    float: left;
    padding: 10px;
    margin-top: 8px;
}
dl.form_block1 dt p.must span {
    text-align: center;
    font-weight: bold;
    display: block;
    width: 46px;
    height: 23px;
    line-height: 21px;
    border-radius: 3px;
    vertical-align: middle;
    color: #fff;
    background: #EB2C2F;
	margin-top: 0.6rem;
    font-size: 1.2rem;
}
dl.form_block1 dd {
    width: 68%;
    padding: 20px 10px;
    float: left;
    word-break: break-all;
    text-align: left;
}
dl.form_block1 dd input,
dl.form_block1 dd select,
dl.form_block1 dd textarea {
    border: #bbb solid 1px;
    padding: 6px;
	width: 100% !important;
}
dl.form_block1 dd textarea{
	min-height:120px;
}
#thanks p{
	margin-bottom: 16px;
}
#thanks .button{
	margin-top: 40px;
}













/*▼スマホ対応*/
@media screen and (max-width: 768px) {

html{font-size: 54.6875%;}
/* <MODULE> */
.smt{ display: inherit; }
.pc{ display: none; }
img,iframe{max-width:100%;}
.button a,
.button input{
	font-size: 1.8rem;
	padding: 20px 0;
	width: 100%;
}
.button a:after{
	margin: 0.5rem 0 0 0.5em;
}
/* </ MODULE> */

/*オフキャンバス設定*/
body{
    position: relative;
	overflow-x: hidden;
	padding-top: 52px;
}
#wrapper{
    position: relative;
	overflow-x: hidden;
	right: 0;
	min-width:initial;
}
#offcanvas-menu{
	display: block;
	position: fixed;
	top: 0;
	padding-top: 52px;
	right: -300px;
	width: 300px;
	height: 100%;
	background: #fff;
	z-index: 100000;
	overflow-y: auto;
}
#offcanvas-menu ul{
	margin: 0 16px;
}
#offcanvas-menu li{
	display: inline;
}
#offcanvas-menu li a{
	font-size: 1.8rem;
	padding: 13px 12px;
    display: block;
    border-bottom: solid 1px #cccccc;
    text-align: left;
    position: relative;
    text-decoration:none;
}

#offcanvas-menu li a:after{
	font-family: "Font Awesome 5 Free";
	content: '\f061';
	font-weight: 900;
	vertical-align: middle;
    right: 12px;
	top:18px;
	position: absolute;
}
#offcanvas-menu ul ul li a:after {
	top: 50%;
	margin-top: -4px;
}
#offcanvas-menu>ul>li.art.close>a:after{
    background: url(../images/common/arrow-below2.png) no-repeat left top;
	transform: scale(1, -1);
}
#offcanvas-menu ul ul{
	margin: 0;
	display: none;
}
#offcanvas-menu ul ul li a{
	font-size: 12px;
	padding: 6px 22px 6px 32px;
}
#offcanvas-menu ul ul li a span{
	display: block;
	margin-bottom: 4px;
	font-size: 16px;
}
#offcanvas-container{
	display: block;
	position: relative;
	top:0 ;
	right:0 ;
	width: 100%;
}
#offcanvas-button{
	display: block;
	background: #57429a;
	width: 52px;
	height: 52px;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 999999999999;
}
#offcanvas-button:after{
	content:"MENU";
    color: #fff;
    bottom: 6px;
    position: absolute;
    text-align: center;
    left: 0;
    font-size: 9px;
	font-family: 'Cormorant Garamond';
    width: 100%;
}
#offcanvas-button span,
#offcanvas-button span:before,
#offcanvas-button span:after{
    position: absolute;
    top: 50%;
    left: 50%;
    height: 2px;
    width: 26px;
    cursor: pointer;
    background: #fff;
    display: block;
    content: '';
    -webkit-transition: all 500ms ease-in-out;
    transition: all 500ms ease-in-out;
}
#offcanvas-button span{
	transform: translate3d(-50%,-4px,0);
	-webkit-transform: translate3d(-50%,-4px,0);
}
#offcanvas-button span:before {
    transform: translate3d(-50%,-10px,0);
    -webkit-transform: translate3d(-50%,-10px,0);
}
#offcanvas-button span:after {
    transform: translate3d(-50%,7px,0);
    -webkit-transform: translate3d(-50%,7px,0);
}
#offcanvas-button.close:after{
	content:"";
}
#offcanvas-button.close span{
	background-color: transparent;	
}
#offcanvas-button.close span:before {
    -ms-transform: translateX(-50%)rotate(45deg);
    transform: translateX(-50%)rotate(45deg);
    -webkit-transform: translateX(-50%)rotate(45deg);
	top:4px;
	width: 36px;
}
#offcanvas-button.close span:after {
    -ms-transform: translateX(-50%)translateY(-10px)rotate(-45deg);
    transform: translateX(-50%)translateY(-10px)rotate(-45deg);
    -webkit-transform: translateX(-50%)translateY(-10px)rotate(-45deg);
    top: 14px;
	width: 36px;
}

/* <LAYOUT> */
#header{
	padding:0;
	width: 100%;
	height:52px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100001;
	background: #fff;
}
#header .logo{
	padding: 10px 0 0 20px;
	float: left; 
}
#header .logo img{
	height: 32px;
}
#header .nav,
#header .tel,
#header-nav,
#footer-nav{
	display: none;
}
#footer{
	margin-top: 30px;
}
#footer .logo{
	display: none;
}

/* </ LAYOUT> */


/* <TOP> */
#top-main{
	height: 50vw;
	background-size: cover;
}
#top-main .txt{
	letter-spacing: 0.05em;
	padding: 25px 0 20px;
}
#top-main .txt h1{
	font-size: 2.6rem;
	margin-bottom: 10px;
}
#top-main .txt p{
	font-size: 1.8rem;
}
#top-b1{
	padding: 20px 0 80px;
	background-size: contain;
}
#top-b1 .catch{
	font-size: 2rem;
	padding: 20px;
	margin: 0 20px;
	box-shadow: 0 0 5px 5px rgba(82,99,149,0.15);
}
#top-b1 .catch br{ display: none; }
#top-b2{
	padding: 40px 20px;
	border-top: solid 450px #432d85;
}
#top-b2 h2{
	margin-top: -450px;
	margin-bottom: 32px;
	font-size: 2.4rem;
	font-weight: bold;
	color: #fff;
}
#top-b2 h2 b{
	color: #e9cc08;
}
#top-b2 p.intro{
	font-size: 1.4rem;
	margin-bottom: 24px;
	padding: 0 20px;
	color: #fff;
}
#top-b2 h3{
	font-size: 2rem;
	max-width:1110px;
	margin: 0 auto 20px;
}
#top-b2 ul{
	margin: 0 auto 20px;
	display: block;
}
#top-b2 ul li{
	box-shadow: 0 0 5px 5px rgba(82,99,149,0.15);
	width: auto;
	margin: 0 0 20px;
}
#top-b2 ul li .photo{
	margin-bottom: 15px;
}
#top-b2 ul li h4{
	font-size: 1.6rem;
	margin-bottom: 8px;
}
#top-b2 ul li .name{
	margin-bottom: 12px;
}
#top-b2 ul li p{
	font-size: 1.4rem;
}
#top-b3{
	margin: 0 20px 40px;
}
#top-b3 ul{
	margin: 0 auto 40px;
	display: block;
}
#top-b3 ul li{
	width:auto;
	text-align: left;
	margin: 0 0 40px;
}
#top-b3 h4{
	font-size: 2rem;
	color: #392b65;
	font-weight: bold;
	margin: 20px 0 10px;
}
#top-b3 p{
	font-size: 1.4rem;
	margin-bottom: 15px;
}
#top-b4{
	background-size: contain;
	padding: 100px 0 0;
	margin-bottom: 40px;
}
#top-b4 .content{
	margin: 0 20px;
	padding: 30px 20px 20px;
}
#top-b4 .content h2{
	font-size: 2.4rem;
	margin-bottom: 20px;
}
#top-b4 .content p{
	font-size: 1.4rem;
	margin: 0 20px 20px;
}
#top-b4 .content p.large{
	font-size: 1.8rem;
	margin: 0 20px 20px;
}
.ttl1 span{
	margin: 0;
	padding: 8px 20px;
	line-height: 1.33;
	border-radius: 20px;
	font-size: 2rem;
}
#ban-inq{
	margin:0 20px;
}
#ban-inq a{
	padding: 20px;
}
#ban-inq span{
	display: inline-block;
	margin-bottom: 0;
}
#ban-inq a .ttl{
	font-size: 2.4rem;
	line-height: 1.25;
	text-align: center;
	display: block;
}
#ban-inq a .ttl b{
	color: #7d7227;
	display: block;
	margin: 0 auto;
}
#ban-inq a .txt{
	color: #333;
	font-size: 1.4rem;
	line-height: 1.5;
	margin: 15px 0;
}
#ban-inq a .txt br{ display: none; }
#ban-inq a .btn{
	width: 100%;
	position: static;
}
#top-sche{
	margin: 50px 20px;
}
#nav-inq ul{
	margin: 0 20px 40px;
	display: block;
}
#nav-inq ul li{
	width: auto;
	max-width:400px;
	margin: 0 auto;
	padding: 20px;
}
#nav-inq ul li:nth-of-type(1){ background: #7d7227; }
#nav-inq ul li:nth-of-type(2){ background: #57429a; }
#nav-inq h4{
	font-size: 2rem;
	margin: 0 auto 10px;
}
#nav-inq h4:before{
	content:"";
	position: absolute;
	z-index: 1;
	width: 100%;
	height: 1px;
	top:50%;
	left: 0;
	background: #392b65;
}
#nav-inq h4 span{
	padding: 0 20px;
	font-weight: bold;
	position: relative;
	z-index: 2;
	background: #fff;
	display: inline-block;
}
/* </TOP> */
.ttl1{
	font-size: 2.6rem;
	margin-bottom: 20px;
}

.below-main{
	margin: 0 0 20px;
}
.below-intro{
	margin: 0 20px 40px;
}
.below-intro p,
.below-intro ul{
	font-size: 1.6rem;
	margin-bottom: 14px;
}
.below-intro br{
	display: none;
}
.consul-b1{
	background: #57429a;
	padding: 20px;
	margin-bottom: 70px;
	position: relative;
}
.consul-b1 .info{
	padding: 20px;
}
.consul-b1 .info h2.ttl1{
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.consul-b1 .info ul{
	margin: 0 auto;
	display: table;
	padding-left: 0;
}
.consul-b1 .info ul li{
	width: auto;
	font-size: 2.1rem;
}
.consul-b1 .info ul li:before{
	font-family: "Font Awesome 5 Free";
	content: '\f00c';
	font-weight: 900;
	color: #b73284;
	margin-right: 6px;
}
.consul-b2{
	margin: 0 20px 40px;
}
.consul-b2 h2{
	font-size: 3rem;
}
.consul-b2 h2 br{
	display: none;
}
.consul-b2 p{
	font-size: 1.6rem;
}
.consul-b2 .figure{
	margin-top: 40px;
}
.consul-b3{
	padding: 40px 20px;
}
.consul-b3 ol{ 
	display: table;
	padding-left: 0;
	margin: 0 auto;
}
.consul-b3 ol li{
	width: auto;
}
.below-voice{
	margin: 40px 20px;
}
.below-flow{
	background: #57429a;
	padding: 20px 0;
	margin: 0 0 40px;
	color: #fff;
}
.below-flow ol{
	display: block;
	margin: 0 20px;
}
.below-flow ol li{
	width: auto;
	padding-right: 0;
	position: relative;
	margin-bottom: 60px;
}
.below-flow ol li:last-of-type{
	padding-right: 0;
	margin-bottom: 0;
}
.below-flow ol li:after{
	content:"";
	position: absolute;
	left: calc(50% - 20px);
	bottom: -40px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 20px 0 20px;
	border-color: #ffffff transparent transparent transparent;
}
.below-flow ol li:last-of-type:after{
	content:none;
}
.below-flow ol li .arrow{
	padding: 0 0 20px;
}
.below-flow ol li:last-of-type .arrow{
	padding: 0 0 20px;
}
.below-flow ol li .arrow:after{
	content:none;
}
.below-flow ol li .arrow i{
	padding: 0 20px;
	background-position: calc(100% - 5px) 5px;
}
.consul-b4{
	margin: 0 20px 40px;
}
.consul-b4 .info{
	margin: 0 auto 20px;
	padding: 20px;
}
.consul-b4 .info h3{
	font-size: 2.2rem;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.consul-b4 .info dl{
	display: block;
	margin: 0 auto;
}
.consul-b4 .info dl dt{
	display: block;
	font-size: 1.8rem;
}
.consul-b4 .info dl dd{
	display: block;
	font-size: 1.4rem;
	color: #b73183;
	text-align: right;
	vertical-align: bottom;
	margin-bottom: 20px;
}
.consul-b4 .info dl:last-of-type dd{
	margin-bottom: 0;
}
.consul-b4 .info dl dd:before{
	content:none;
}
.consul-b4 .info dl dd b{
	font-weight: bold;
	font-size: 2.4rem;
}
.consul-b4  .note{
	max-width: 1110px;
	margin: 0 auto;
	text-align: left;
}
.training-b1{
	margin: 0 20px 40px;
}
.training-b1 ul{
	margin: 30px 0 0;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.training-b1 ul li{
	width: 48.6%;
	position: relative;
	margin-bottom: 30px;
	line-height: 1.33;
}
.training-b1 ul li i{
	position:relative;
	width: auto;
	height: auto;
	border-radius: 100px;
	padding: 10px;
	font-size: 1.4rem;
	line-height: 1.33;
	top:auto;
	right: auto;
}
.training-b1 ul li i br{
	display: none;
}
.training-b1 ul li img{
	margin-top: -10px;
}
.training-b1 ul li h3{
	font-size: 1.8rem;
	margin: 15px 0 5px;
}
.training-b1 ul li p span{
	color: #b73183;
}
.training-b1 ul li p span b{
	font-size: 1.8rem;
}
.training-b1 .note{
	margin: 0 20px;
}
.below-intro .icon{
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 16px auto;
}
.below-intro .icon li{
	width: 100%;
	height: auto;
	line-height: 60px;
	border-radius: 10px;
	font-size: 1.8rem;
	padding-top: 0 !important;
	margin: 0 0 10px;
}
.below-intro .icon li:last-of-type{
	margin-bottom: 0;
}
.below-intro .icon li:after{
	display: inline-block;
	margin: 0;
	width: 40px;
	height: 40px;
	position: absolute;
	bottom: 10px;
	left: auto;
	right: 10px;
	background-size: 40px 40px;
}
#calendar{
	margin: 0 20px;
	padding-top: 52px;
	margin-top: -52px;
}
#calendar iframe{
	width: 100%;
	height: 60vh;
	margin-top: 20px;
}
.seminar-b2{
	padding: 20px 0;
	margin: 40px 0;
}
.seminar-b2 .below-intro{
	margin-bottom: 0;
}
.seminar-b3{
	margin: 0 20px 40px;
	text-align: left;
}
.ttl2{
	font-size: 2rem;
	color: #57429a;
	margin: 0 0 15px;
}
.ttl2:before{
	width: 19px;
	height: 22px;
	background-size: contain;
	margin-right: 6px;
}
.seminar-b3 h3{
	margin-top: 40px;
}
.seminar-b3 table{
	border:solid 1px #000;
}
.seminar-b3 table th{
}
.seminar-b3 table td{
	padding: 10px 15px;
	display: block;
}
table.tbl1{
	margin-bottom: 20px;
	display: block;
	border:none;
}
table.tbl1 th{
	padding: 10px 15px;
	display: block;
	width: auto !important;
	border:none;
	font-weight: bold;
}
table.tbl1 td{
	padding: 10px 15px;
	display: block;
	border:none;
}

.company-b1{
	margin-bottom: 40px;
}
.company-b1 dl{
	display: block;
	margin: 0 20px;
}
.company-b1 dl dd{
	padding-left: 0;
}
.company-b1 dl ul{
	margin: 0 20px 20px;
	padding-bottom: 20px;
	list-style:disc outside;
	text-align: left;
	border-bottom:dotted 1px #000;
}
.company-b1 dl dd p br{
	display: none;
}
.company-b2{
    padding: 20px;
    margin: 0 0 40px;
}
.company-b2 .info{
	margin: 0 0 40px;
	padding: 20px;
}
.company-b2 .info .ttl2:last-of-type{
	margin-top: 30px;
}
.company-b2 dl{
	font-size: 1.6rem;
	padding-left: 0;
}
.company-b2 dl dt{
	width: auto;
	float: none;
	margin: 0;
}
.company-b2 dl dd{
	margin: 0 0 10px;
	font-weight: normal;
}
.inquiry-b1{
	margin-bottom: 40px;
}
.inquiry-b1 .tel{
	font-size: 3.6rem;
}
.inquiry-b1 .tel:before{
	width: 49px;
	height: 27px;
}
.inquiry-b1 .tel span{
	font-size: 1.4rem;
	display: block;
	margin-bottom: 20px;
}
.inquiry-b1 p{
	font-size: 1.4rem;
}
.inquiry-b2{
	padding: 20px;
	margin: 60px 0 40px;
}
.inquiry-b2 dl{
	display: block;
	margin: 0 auto 20px;
}
.inquiry-b2 dl dd{
	padding-left: 0;
	margin: 16px 0 0;
}
.inquiry-b3{
	margin: 0 20px 40px;
}
.inquiry-b3 p{
	text-align: left;
}
.inquiry-b3 p br{
	display: none;
}
.inquiry-b3 .ttl1 br{
	display: none;
}
.inquiry-b3 ol{
	display:block;
	margin: 20px auto 0;
}
.inquiry-b3 ol li{
	width: auto;
	height: auto;
	box-shadow: none;
	margin: 0 0 15px;
	padding: 10px;
	min-height:68px;
}
.inquiry-b3 ol li b{
	margin: 0;
	text-align: left;
}
.inquiry-b3 ol li b br{
	display: none;
}
.inquiry-b3 ol li i{
	font-size: 2.8rem;
	position: static;
	float: left;
	margin-right: 10px;
}
#inquiry-form{
	margin: 0 20px;
	padding-top: 52px;
	margin-top: -52px;
}
#inquiry-form p{
	text-align: left;
}
#inquiry-form br{
	display: none;
}
#inquiry-form #submit input{
	white-space: pre-line;
	word-break: break-all;
	line-height: 1.4;
}
#privacy{
	height:160px;
	margin-bottom: 30px;
}
dl.form_block1{
	padding: 15px 0 0;
}
dl.form_block1 dt{
	text-align: left;
}
dl.form_block1 dt p.tit {
    width: auto;
    padding: 0 0 10px;
    text-align: left;
    float: none;
    min-height: initial;
    line-height: 1.8;
	display: inline-block;
}
dl.form_block1 dt p.must {
    text-align: left;
	display: inline-block;
    width: auto;
    vertical-align: top;
    float: none;
    padding: 0;
    margin: 0 0 0 6px;
}
dl.form_block1 dd {
    width: auto;
    padding: 0 0 20px;
    float: left;
    word-break: break-all;
    text-align: left;
}
dl.form_block1 dd textarea{
	min-height:120px;
}

#thanks p{
	margin-bottom: 16px;
}
#thanks .button{
	margin-top: 40px;
}



}
/*▲スマホ対応*/

