@charset "utf-8";
/*
	Description: initial setting
	Version: 1.0
	Author: idealgrow
*/
/*
===== CONTENTS ===========================================
*/
#slider img {
  width: 100%;
  height: auto;
}
#indexCatch {
  padding: 20px 15px 40px 15px;
}
#indexCatch h2 {
  color: #463b23;
  font-size: 20px;
  text-align: center;
  word-break: break-all;
  margin-bottom: 20px;
}
#indexCatch p {
  text-align: center;
}
#news {
  background: rgba(255, 255, 255, 0.4);
  padding: 40px 20px;
}
#news h2 {
  color: #acacac;
  font-family: garamond-premier-pro, serif;
  font-weight: 400;
  font-style: normal;
  margin-bottom: 10px;
}
#news h2 span {
  margin-left: 10px;
  font-size: 16px;
}
#news ul li {
  margin-bottom: 30px;
}
#news ul li:last-of-type {
  margin-bottom: 0;
}
#news ul li a, #column article a {
  display: flex;
  flex-wrap: wrap;
}
#news ul li a:hover, #column article a:hover {
  opacity: 0.6;
}
#news ul li a:hover img, #column article a:hover img {
  opacity: 1;
}
#news ul li .ph, #column article .ph {
	min-height:200px;
  margin-bottom: 10px;
	background: url("../img/shared/no_photo.jpg")center center no-repeat,#fff;
	background-size:80% auto ;
	width: 100%;
	overflow: hidden;
	position: relative;
}
#news ul li .ph img, #column article .ph img {
	height: 200px;
	width: auto;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
}
#news ul li time, #column article time {
  color: #000;
  margin-right: 10px;
  padding-right: 10px;
  position: relative;
}
#news ul li time:after, #column article time:after {
  content: "";
  width: 1px;
  height: 50%;
  background: #b6b6b6;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
#news ul li .category, #column article .category {
  color: #b69c63;
}
#news ul li .read, #column article .read {
  margin-top: 10px;
	width: 100%;
}
#indexBanar {
  background: rgba(255, 255, 255, 0.4);
  padding: 0 20px 40px 20px;
}
#indexBanar ul {
  border-top: solid 1px #e8e8e8;
  padding-top: 40px;
}
#indexBanar ul li img {
  width: 100%;
  height: auto;
}
#indexBanar ul li:not(:first-of-type){
  margin-top: 20px;
}
#pageTit {
  margin-bottom: 40px;
}
#pageTit h1 {
  padding: 0 20px;
  font-family: garamond-premier-pro, serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1.4;
  font-size: 44px;
}
#pageTit h1 span {
  display: block;
  font-size: 18px;
}
#pageTit.subDir {
  margin-bottom: 20px;
}
#pageTit.subDir p, #pageTit.subDir h1 {
  font-size: 30px;
  padding: 0 20px;
  font-family: garamond-premier-pro, serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1.4;
}
#pageTit.subDir p span, #pageTit.subDir h1 span {
  display: block;
  font-size: 16px;
}
#column {
  padding: 0 20px 40px 20px;
}
#column article {
  display: block;
  margin-bottom: 30px;
}
#column article:last-of-type {
  margin-bottom: 0;
}
#column .pagenation {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 40px;
}
#column .pagenation li {
  width: 20px;
  margin: 0 5px;
  text-align: center
}
#column .pagenation li.stay {
  color: #9a7f44;
  border-bottom: solid 1px #9a7f44;
}
#column .pagenation li a {
  color: #bababa;
  display: block;
}
#column .pagenation li a:hover {
  color: #9a7f44;
  border-bottom: solid 1px #9a7f44;
}
#column #blogNav {
  padding-top: 40px;
}
#column #blogNav dl {
  border-left: solid 2px #dbdbda;
}
#column #blogNav dt {
  font-family: garamond-premier-pro, serif;
  font-weight: 400;
  font-size: 20px;
  color: #9a7f44;
  padding: 5px 15px;
  position: relative;
}
#column #blogNav dt:before {
  content: "";
  background: #bcb093;
  width: 2px;
  height: 100%;
  position: absolute;
  left: -2px;
  top: 0;
}
#column #blogNav dl:first-of-type dd:last-child {
  padding-bottom: 40px;
}
#column #blogNav dd a {
  display: block;
  padding: 10px 0 10px 30px;
  background: url("../img/shared/ico_arrow.svg")left 15px center no-repeat;
  background-size: auto 8px;
}
.ninja_onebutton_output .wrap-omatome-icnfont-button .count {
  padding: 0 5px 2px !important;
}
.ninja_onebutton_output .twitter_tweet_count_no_m {
  margin-right: 10px;
}
#blogInfo figure {
  width: 100%;
  margin-bottom: 20px;
}
#blogInfo figure img {
  width: 100%;
  height: auto;
}
#blogInfo #subBlock {
  display: flex;
  flex-wrap: wrap;
}
#blogInfo #subBlock time {
  font-family: garamond-premier-pro, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 18px;
  position: relative;
  margin-right: 10px;
  padding-right: 10px;
}
#blogInfo #subBlock time:after {
  content: "";
  width: 1px;
  height: 50%;
  background: #b6b6b6;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
#blogInfo #subBlock .category {
  color: #b69c63;
}
#blogInfo #subBlock #blogSns {
  margin-top: 10px;
}
#blogInfo h1 {
  font-size: 28px;
  line-height: 1.6;
  margin: 20px 0;
}
#blogInfo #blogTxt {
  font-size: 18px;
}
#blogInfo .backList {
  margin-top: 40px;
}
#blogInfo .backList a {
  display: block;
  position: relative;
  padding-left: 15px;
}
#blogInfo .backList a:before {
  content: "";
  background: url("../img/shared/ico_arrow.svg")center center no-repeat;
  width: 6px;
  height: 6px;
  background-size: 100%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%) scale(-1, 1);
}
#lessonTit {
  background-image: -moz-linear-gradient(90deg, rgb(236, 236, 234) 0%, rgb(210, 210, 208) 15%, rgb(148, 148, 148) 30%, rgb(136, 133, 132) 34%, rgb(149, 147, 142) 57%, rgba(144, 144, 135, 0.99608) 100%);
  background-image: -webkit-linear-gradient(90deg, rgb(236, 236, 234) 0%, rgb(210, 210, 208) 15%, rgb(148, 148, 148) 30%, rgb(136, 133, 132) 34%, rgb(149, 147, 142) 57%, rgba(144, 144, 135, 0.99608) 100%);
  background-image: -ms-linear-gradient(90deg, rgb(236, 236, 234) 0%, rgb(210, 210, 208) 15%, rgb(148, 148, 148) 30%, rgb(136, 133, 132) 34%, rgb(149, 147, 142) 57%, rgba(144, 144, 135, 0.99608) 100%);
  padding-top: 10px;
}
#lessonTitIn {
  position: relative;
  height: 400px;
  margin-bottom: 40px;
}
#lessonTitIn:after {
  content: "";
  background: url("../img/lesson/main_img.webp")center center no-repeat;
  background-size: auto 100%;
  height: 300px;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
}
#lessonTit #breadCrumbs ol li {
  color: #fff;
}
#lessonTit #breadCrumbs ol li a {
  color: #fff;
  background: url("../img/shared/ico_arrow_wh.svg") right center no-repeat;
  background-size: auto 40%;
}
#lessonTit h1 {
  padding: 0 20px;
  font-family: garamond-premier-pro, serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1.4;
  font-size: 44px;
  color: #fff;
}
#lessonTit h1 span {
  display: block;
  font-size: 18px;
}
.priceBox {
  padding: 0 20px 40px 20px;
  margin-bottom: 40px;
  border-bottom: dotted 2px #c6c6c6;
}
.priceBox:last-of-type {
  border-bottom: none;
  padding-bottom: 40px;
  margin-bottom: 0;
}
.priceBox .infoText {
  margin-bottom: 30px;
}
.priceBox h2 {
  font-size: 24px;
}
.priceBox h2 span {
  font-size: 14px;
  display: block;
  color: #9a7f44;
  margin-bottom: 20px;
}
.priceBox ul li {
  padding-left: 20px;
  color: #9a0404;
  font-size: 16px;
  margin-bottom: 10px;
  position: relative;
  line-height: 1.4;
}
.priceBox ul li:before {
  content: "※";
  position: absolute;
  left: 0;
  top: 0;
}
.priceBox ul li:last-of-type {
  margin-bottom: 0;
}
.priceBox .priceTable table {
  width: 100%;
  border-collapse: collapse;
  background: rgba(255, 255, 255, 0.60);
  box-shadow: 0px 2px 5px 0px rgba(4, 0, 0, 0.15), 0px -2px 5px 0px rgba(4, 0, 0, 0.02);
  border-radius: 3px;
}
.priceBox .priceTable table th {
  text-align: left;
  font-weight: normal;
  padding: 10px;
}
.priceBox .priceTable table tr:nth-of-type(even) {
  background: #e9e9e9;
}
.priceBox .priceTable table th span {
  font-size: 20px;
  margin-right: 3px;
}
.priceBox .priceTable table td {
  text-align: right;
  padding: 10px;
}
.priceBox .priceTable table td.txtalc {
  text-align: center !important;
}
.priceBox .priceTable table td span {
  font-size: 20px;
  margin-right: 3px;
}
#studioPh {
  padding-bottom: 10px;
}
#studioPh img {
  width: 100%;
  object-fit: cover;
}
#studioPh #ftPh {
  height: 400px;
  margin-bottom: 10px;
}
#studioPh #ftPh img {
  height: 400px;
}
#studioPh #scPh {
  display: flex;
}
#studioPh #scPh > img {
  width: 50%;
  height: 300px;
  margin-right: 10px;
}
#studioPh #scPh ul li {
  height: 145px;
}
#studioPh #scPh ul li:first-of-type {
  margin-bottom: 10px;
}
#studioPh #scPh ul li img {
  height: 145px;
}
#access {
  background: rgba(255, 255, 255, 0.4);
}
#access h2 {
  font-family: garamond-premier-pro, serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1.4;
  font-size: 44px;
  margin-bottom: 30px;
}
#access h2 span {
  display: block;
  font-size: 18px;
}
#access #accessHead, #access #accessBot {
  padding: 40px 20px;
}
#access #accessHead p:first-of-type {
  margin-bottom: 20px;
}
#access #accessHead h3 {
  font-size: 16px;
}
#access #accessHead h3:before {
  content: "";
  background: #747474;
  width: 1px;
  height: 16px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
  margin-bottom: 4px;
}
#access #accessHead h3:after {
  content: "";
  background: #747474;
  width: 1px;
  height: 16px;
  display: inline-block;
  vertical-align: middle;
  margin-left: 10px;
  margin-bottom: 4px;
}
#access #accessHead span.tel:before{
	content: "";
	background: url("../img/access/ico_tel.svg")center center no-repeat;
	background-size: 100%;
	width: 20px;
	height: 20px;
	display: inline-block;
	margin:0 5px 3px 0;
	vertical-align: middle;
}
#access #accessHead span.mail:before{
	content: "";
	background: url("../img/access/ico_mail.svg")center center no-repeat;
	background-size: 100%;
	width: 20px;
	height: 20px;
	display: inline-block;
	margin:0 5px 3px 0;
	vertical-align: middle;
}
#access #accessHead p:last-of-type span {
  color: #9a0404;
}
#access #googleMap {
  height: 300px;
  width: 100%;
}
#access #googleMap iframe {
  width: 100%;
  height: 100%;
}
#access #accessBot h3 {
  text-align: center;
  font-size: 22px;
  margin-bottom: 20px;
}
#access #accessBot p {
  text-align: center;
  font-size: 18px;
}
#access #accessBot ul li {
  margin-top: 20px;
}
#access #accessBot ul li img {
  width: 100%;
  height: auto;
}
#staffTop {
  padding: 40px 20px;
}
#staffTop img {
  width: 100%;
  height: auto;
}
#staffTop div {
  position: relative;
  top: -50px;
  padding: 20px 25px;
}
#staffTop div .btn{
	background:#B69C63;
	color: #fff;
	border-radius: 3px;
	margin: 10px 20px 0 20px;
	border-bottom: solid 2px #9A7F44;
	transition: all 0.2s;
}
#staffTop div .btn:hover{
	letter-spacing: 1px;
}
#staffTop div:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  -webkit-mask-image: linear-gradient(rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0));
  mask-image: linear-gradient(rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0));
  background: #fff;
  width: calc(100% - 25px);
  height: 100%;
}
#staffTop div h2, #staffTop div p {
  position: relative;
  z-index: 2;
  text-align: center;
}
#staffTop div h2 span {
  color: #9a7f44;
  font-size: 14px;
  margin-left: 10px;
}
#staffMain {
  padding: 0 20px 40px 20px;
}
#staffMain .ph {
  position: relative;
  margin-bottom: 20px;
}
#staffMain .ph:before {
  content: "";
  background: url("../img/staff/bg_symbol.webp")center center no-repeat;
  background-size: 100%;
  height: 230px;
  width: 230px;
  position: absolute;
  right: -10px;
  top: 0;
}
#staffMain .ph img {
  width: 100%;
  height: auto;
  position: relative;
  z-index: 2;
}
#staffMain h1 {
  font-size: 36px;
  line-height: 1.4;
  text-align: center;
  margin-bottom: 10px;
}
#staffMain h1 span {
  color: #b69c63;
  font-size: 22px;
  display: block;
}
#staffMain p {
  text-align: center;
  font-size: 18px;
}
.staffProf {
  padding: 0 20px 40px 20px;
}
.staffProf img {
  width: 100%;
  height: auto;
  margin-bottom: 20px;
}
.staffProf dl dt {
  color: #9a7f44;
}
.staffProf dl dd {
  border-bottom: dotted 2px #c6c6c6;
  padding-bottom: 5px;
  margin-bottom: 5px;
}
.staffProf dl dd:last-of-type {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
#form {
  padding: 0 20px 40px 20px;
}
#form p {
  margin-bottom: 20px;
}
#form p span{
	font-size: 18px;
	line-height: 1.8;
	display: block;
}
#form dt {
  padding: 10px 0;
}
#form dt span {
  background: #9a0404;
  color: #fff;
  padding: 0 10px;
  font-size: 14px;
  margin-left: 10px;
}
#form dd {
  border-bottom: solid 1px #d9d9d9;
  padding-bottom: 10px;
  margin-bottom: 10px;
}
#form dd:last-of-type {
  border-bottom: none;
}
#form .formBtn li:nth-of-type(2) {
  margin-top: 20px;
}
#others{
	padding:40px 20px;
}
.sitemap li{
	border-bottom: solid 1px #d9d9d9;
	padding: 10px 0;
}
.sitemap li a{
	display: block;
	padding: 5px 0;
}
.sitemap li ul{
	padding-left: 30px;
}
.sitemap li ul li{
	border-bottom: none;
}
#others h2{
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 10px;
}
#others p,
#others ul{
	margin-bottom: 40px;
}
#others ul{
	margin-bottom: 40px;
	padding-left: 20px;
}
#others ul li{
	list-style: disc;
	margin-bottom: 10px;
}
#others ul li ul{
	margin-top: 20px;
}
.campaignBanar{
	padding: 0 20px 40px 20px;
}
.campaignBanar img{
	width: 100%;
	height: auto;
}
@media screen and (min-width: 1099px) {
  #slider {
    width: 1100px;
    margin: 40px auto 0 auto;
  }
  #indexCatch {
    width: 900px;
    margin: 0 auto;
    padding: 20px 0 100px 0;
  }
  #indexCatch h2 {
    color: #463b23;
    font-size: 28px;
    margin-bottom: 40px;
  }
  #indexCatch h2 br:first-of-type,#indexCatch h2 br:nth-of-type(3) {
	  display: none;
  }
  #indexCatch p {
    font-size: 20px;
  }
  #news {
    padding: 100px 0;
  }
  #newsIn {
    width: 1100px;
    margin: 0 auto;
    padding: 0 50px;
    position: relative;
  }
  #news h2 {
    position: absolute;
    right: 0;
    top: 0;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    color: #acacac;
    margin-bottom: 0;
    font-size: 32px;
  }
  #news h2 span {
    margin-left: 0;
    margin-top: 10px;
  }
  #news ul {
    display: flex;
  }
  #news ul li {
    margin-bottom: 0;
    width: 23.5%;
  }
  #news ul li {
    margin-right: 2%;
  }
  #news ul li:last-of-type {
    margin-right: 0;
  }
  #news ul li .ph, #column article .ph {
    height: 230px;
	  width: 100%;
  }
  #news ul li .ph img, #column article .ph img {
    height: 230px;
	  width: 100%;
	  object-fit: cover;
  }
  #indexBanar {
    background: rgba(255, 255, 255, 0.4);
    padding: 0 0 100px 0;
  }
  #indexBanar ul {
    width: 1000px;
    margin: 0 auto;
    display: flex;
	  flex-wrap: wrap;
	  justify-content: center;
    padding-top: 80px;
  }
  #indexBanar ul li {
    width: 48%;
  }
  #indexBanar ul li:nth-of-type(even) {
    margin-top: 0;
    margin-left: 4%;
  }
  #pageTit {
    width: 1100px;
    margin: 0 auto;
    margin-top: 60px;
    margin-bottom: 70px;
    position: relative;
  }
  #pageTit h1 {
    font-size: 60px;
  }
  #pageTit h1 span {
    font-size: 24px;
  }
  #pageTit.subDir {
    margin-bottom: 40px;
  }
  #pageTit.subDir p, #pageTit.subDir h1 {
    font-size: 34px;
  }
  #column {
    width: 1100px;
    margin: 0 auto;
    display: flex;
    padding: 0 0 100px 0;
  }
  #column #articleList {
    width: 860px;
    display: flex;
    flex-wrap: wrap;
    margin-right: 40px;
  }
  #column article {
    width: 30%;
    margin-right: 5%;
    margin-bottom: 40px;
  }
  #column article:nth-of-type(3n) {
    margin-right: 0;
  }
  #column .pagenation {
    width: 100%;
  }
  #column #blogNav {
    width: 240px;
    padding-top: 0;
  }
  #blogInfo {
    width: 860px;
    margin-right: 40px;
  }
  #blogInfo #subBlock {
    align-items: center;
  }
  #blogInfo .category {
    width: calc(100% - 390px);
  }
  #blogInfo #subBlock time {
    width: 90px;
  }
  #blogInfo #subBlock #blogSns {
    width: 290px;
  }
  #blogInfo figure {
    width: 100%;
    height: 550px;
    margin-bottom: 20px;
	  overflow: hidden;
  }
  #blogInfo figure img {
    width: auto;
    height: 100%;
	  position: relative;
	  left: 50%;
	  transform: translateX(-50%);
  }
  #blogInfo h1 {
    font-size: 32px;
    line-height: 1.8;
  }
  #blogInfo #blogTxt {
    line-height: 2.2;
  }
  #blogInfo .backList {
    margin-top: 60px;
  }
  #lessonTit {
    margin: 40px 0 60px 0;
  }
  #lessonTitIn {
    position: relative;
    height: 440px;
    width: 1100px;
    margin: 0 auto;
  }
  #lessonTitIn #breadCrumbs {
    top: 20px;
  }
  #lessonTitIn:after {
    height: 400px;
  }
  #lessonTit h1 {
    position: absolute;
    left: 0;
    top: 45%;
    transform: translateY(-50%);
    font-size: 60px;
  }
  #lessonTit h1 span {
    font-size: 24px;
  }
  .priceBox {
    width: 1100px;
    margin: 0 auto;
    padding: 0 0 50px 0;
    margin-bottom: 50px;
    border-bottom: dotted 3px #c6c6c6;
    display: flex;
  }
  .priceBox:last-of-type {
    padding-bottom: 100px;
  }
  .priceBox .infoText {
    width: 550px;
    margin-bottom: 0;
    padding: 0 60px 0 40px;
  }
  .priceBox h2 {
    font-size: 32px;
    line-height: 1.6;
  }
  .priceBox h2 span {
    padding-left: 5px;
  }
  .priceBox ul li {
    font-size: 18px;
  }
  .priceBox .priceTable {
    width: 550px;
    padding-right: 40px;
  }
  .priceBox .priceTable table th {
    font-size: 20px;
    padding: 10px 30px;
  }
  .priceBox .priceTable table th span {
    font-size: 24px;
  }
  .priceBox .priceTable table td {
    font-size: 20px;
    padding: 10px 30px;
  }
  .priceBox .priceTable table td span {
    font-size: 24px;
  }
  #studioPh {
    padding-bottom: 20px;
  }
  #studioPh #ftPh {
    height: 640px;
    margin-bottom: 20px;
  }
  #studioPh #ftPh img {
    height: 640px;
  }
  #studioPh #scPh {
    display: flex;
  }
  #studioPh #scPh > img {
    width: 70%;
    height: 500px;
    margin-right: 20px;
  }
  #studioPh #scPh ul {
    width: calc(30% - 20px);
  }
  #studioPh #scPh ul li {
    height: 190px;
  }
  #studioPh #scPh ul li img {
    height: 190px;
  }
  #studioPh #scPh ul li:first-of-type {
    margin-bottom: 20px;
    height: 290px;
  }
  #studioPh #scPh ul li:first-of-type img {
    height: 290px;
  }
  #access h2 {
    font-size: 60px;
  }
  #access h2 span {
    font-size: 24px;
  }
  #access #accessHead, #access #accessBot {
    padding: 80px 0;
    width: 1100px;
    margin: 0 auto;
  }
  #access #accessHead {
    display: flex;
  }
  #access #accessHead h2 {
    width: 250px;
  }
  #access #accessHead .accessInfo {
    width: 850px;
    text-align: right;
  }
  #access #accessHead p {
    font-size: 18px;
  }
  #access #accessHead p:first-of-type br {
    display: none;
  }
  #access #accessHead p:first-of-type span {
    display: block;
  }
	#access #accessHead p:first-of-type span span{
		display: inline-block;
	}
  #access #accessHead h3 {
    font-size: 18px;
  }
  #access #accessHead p:last-of-type span {
    color: #9a0404;
    display: block;
  }
  #access #googleMap {
    height: 400px;
  }
  #access #accessBot h3 {
    font-size: 28px;
  }
  #access #accessBot p {
    font-size: 20px;
    margin-bottom: 60px;
  }
  #access #accessBot ul {
    display: flex;
  }
  #access #accessBot ul li {
    margin-top: 0;
    width: 32%;
    margin-right: 2%;
  }
  #access #accessBot ul li:last-of-type {
    margin-right: 0;
  }
  #staffTop {
    padding: 0 0 100px 0;
    width: 1100px;
    margin: 0 auto;
  }
  #staffTop ul {
    display: flex;
  }
  #staffTop ul li {
    width: 32%;
    margin-right: 2%;
  }
  #staffTop ul li:last-of-type {
    margin-right: 0;
  }
  #staffMain {
    padding: 0 0 60px 0;
    width: 1100px;
    margin: 0 auto;
    display: flex;
    align-items: center;
  }
  #staffMain .ph {
    order: 2;
    width: 50%;
    margin-bottom: 0;
  }
  #staffMain .txt {
    width: 50%;
    padding-right: 120px;
  }
  #staffMain .ph:before {
    height: 390px;
    width: 380px;
  }
  #staffMain .ph img {
    width: 430px;
    height: auto;
  }
  #staffMain h1 {
    font-size: 70px;
    text-align: right;
    margin-bottom: 20px;
  }
  #staffMain h1 span {
    font-size: 30px;
  }
  #staffMain p {
    text-align: right;
    font-size: 20px;
  }
  .staffProf {
    padding: 0 0 60px 0;
    width: 1100px;
    margin: 0 auto;
    display: flex;
    align-items: flex-start;
  }
  .staffProf.history {
    padding: 0 0 100px 0;
  }
	.staffProf.history dl{
		width: 48%;
	}
	.staffProf.history dd{
		font-size: 18px;
	}
  .staffProf img {
    width: 48%;
    height: auto;
    margin-bottom: 0;
    margin-right: 4%;
  }
  .staffProf.history.fujii img {
    margin-left: 52%;
  }
  .staffProf.history img {
    order: 2;
    margin-right: 0;
    margin-left: 4%;
  }
  .staffProf dl dt {
    font-size: 18px;
  }
  .staffProf dl dd {
    font-size: 20px;
  }
  #form {
    padding: 0 0 100px 0;
    width: 1060px;
    margin: 0 auto;
  }
  #form p {
    font-size: 20px;
    margin-bottom: 40px;
  }
  #form dl {
    display: flex;
    flex-wrap: wrap;
  }
  #form dt {
    width: 40%;
    padding: 15px 0;
    border-bottom: solid 1px #d9d9d9;
    font-size: 20px;
  }
  #form dt:last-of-type {
    border-bottom: none;
  }
  #form dt span {
    padding: 3px 10px;
    font-size: 16px;
  }
  #form dd {
    width: 60%;
    padding: 15px 0;
    margin-bottom: 0;
  }
  #form .formBtn {
    margin-top: 40px;
    display: flex;
    justify-content: center;
  }
  #form .formBtn li input {
    width: 400px;
    padding: 20px;
    font-size: 20px;
  }
  #form .formBtn li:first-of-type {
    order: 2;
  }
  #form .formBtn li input[type="button"] {
    width: 200px;
  }
  #form .formBtn li:nth-of-type(2) {
    margin-top: 0;
    margin-right: 20px;
  }
	#others{
		padding: 0 0 100px 0;
		width: 1060px;
		margin: 0 auto;
	}
	.campaignBanar{
		padding: 0 0 80px 0;
	}
.campaignBanar img{
	width: 480px;
	height: auto;
	display: block;
	margin: 0 auto;
}
}