@charset "UTF-8";
@import url(//use.fontawesome.com/releases/v5.3.1/css/all.css);
@import url("https://fonts.googleapis.com/css?family=Prata&display=swap");
*, *::before, *::after {
  box-sizing: border-box;
}

::selection {
  background: #d4dcd6;
}

img {
  max-width: 100%;
  height: auto;
  -webkit-backface-visibility: hidden;
}

body, html {
  width: 100%;
  height: 100%;
}

body {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: #333;
  line-height: 2;
  letter-spacing: 0.05em;
}

a {
  color: inherit;
  text-decoration: none;
}

.link {
  color: #cbaf88;
  text-decoration: underline;
}

.link:hover {
  text-decoration: none;
}

a[href^="tel"] {
  cursor: default;
}
.sp-navi {
  display: none;
}
#header {
  position: fixed;
  z-index: 10;
  width: 100%;
}
#header .h-inner{  
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 30px 40px 30px;
}
.g-navi{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.g-navi a{
  color: #fff;
  font-size: 12px;
}
.g-navi li{
  margin-right: 50px;
}
.g-navi li.contact{
  border: 1px solid #916f4c;
  height: 52px;
  width: 142px;
  line-height: 52px;
  text-align: center;
  margin-right:0px;
}
.g-navi li.contact a{
  color: #916f4c;
  width: 100%;
    display: block;
}
.g-navi li.contact:hover{
  background: #916f4c;
}
.g-navi li.contact a:hover{
  color: #fff;
}

#middle{
  
}
#video{
  min-height: 100%;
  min-height: 100vh;
  min-width: 100%;
  min-width: 100vw;
  bottom:10px;
  position:absolute;
}
.video_area{
  position: relative;
  height: 100vh;
  overflow: hidden;
}
.video_txt {
  position: absolute;
  background: -moz-linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.3));
  background: -webkit-linear-gradient( rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.3));
  background: linear-gradient( rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.3));
  width: 100%;
  height: 100vh;
  z-index: 5;
  
}
.video_txt h2{
  position: absolute;
top:42%;
left:15%;
line-height: 120px;
font-family: 'Prata', serif;
	font-weight: 400; font-style: normal;
}

.video_txt .jp{
  position: absolute;
  top:35%;
  left:15%;
  color: #fff;
  font-size: 21px;
}
.video_txt .jp::before{
  content: url(../images/br01.png);
  display: inline-block;
  width: 83px;
  height: 20px;
  margin-right: 25px;
}

.video_txt h2 .en{
  color: #916f4c;
  background:rgba(0, 0, 0, 0.6);
  font-size: 70px;
  margin-bottom: 20px;
}
.footer {
  background: #000;
  color: #fff;
  height: 20px;
  position: fixed;
  bottom: 0;
  width: 100%;
  z-index: 10;
}
.foote a{
  color: #fff;
}
.footer .policy{
  float: left;
  font-size: 11px;
  padding: 5px;
}
.footer .copyright{
  float: right;
  font-size: 11px;
  padding: 5px
}


.under #header,
.under .footer  {
  position:static;
}
.under .g-navi a{
	color:#000000;
}
.h1_ttl{
	position:relative;
	height: 455px;
    margin-bottom: 110px;
}

.h1_ttl::before {
    content: "";
    width: 85%;
    height:430px;
    background: #f5f7f8;
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
}
.h1_ttl h1{
	position:absolute;
	top:130px;
	left:165px;
	padding:50px 30px;
	background:rgba(0, 0, 0, 0.6);
	color:#FFF;
	line-height: 320%;
	
}
.h1_ttl h1::before{
	content: url(../images/under/sub_main.jpg);
	width:80%;
	height:440px;
	position: absolute;
    top:-105px;
	left:-165px;
	z-index:-1;
}
.h1_ttl.mission h1::before{
	content: url(../images/under/mission_img01.jpg);
}
.h1_ttl.service h1::before{
	content: url(../images/under/service_img01.jpg);
}
.h1_ttl.contact h1::before{
	content: url(../images/under/contact_img01.jpg);
}
.h1_ttl h1 .jp{
	font-size:16px;
	display:block;
}
.h1_ttl h1 .en{
	font-size:48px;
	display:block;
	font-family: 'Prata', serif;
	font-weight: 400; font-style: normal;
}

.about_cont01 {
	background: url(../images/under/about__img01.jpg) no-repeat center/cover;
    background-attachment: fixed;
	margin-bottom:117px;
}
.about_cont01 .inner{
	width:1024px;
	padding:75px 95px;
	background:rgba(255, 255, 255, 0.6);
	margin:0px auto;
}
.about_cont01 em{
  font-size: 1.5rem;
}
.about_cont01 .inner p{
	margin-bottom:60px;
	font-weight:900;
}
.about_cont01 .inner p.last{
	margin-bottom:0px;
}

.about_cont02 .inner{
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
	width:1024px;
	margin:0px auto;
}
.about_cont02 h2,
.h2_ttl{
	font-size:24px;
	position:relative;
	width:335px;
}
.about_cont02 h2::after,
.h2_ttl::after{
	content: "";
	border-bottom:2px solid #916f4c;
	width:22px;
	height:2px;
	position:absolute;
	top:50px;
	left:0px;
}
.about_cont02 .about_list{
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
	width:600px;
	border-bottom:1px solid #cccccc;
	margin-bottom:30px;
	padding-bottom:17px;
	font-size:14px;
	position:relative;
}

.about_cont02 .about_list.last{
	margin-bottom:0px;
}
.about_cont03 {
	height:450px;
}
.about_cont03 iframe{
	filter: grayscale(100%);
}
.about_cont02 .about_list::after{
	content: "";
	border-bottom:2px solid #916f4c;
	width:22px;
	height:2px;
	position:absolute;
	bottom:-1px;
	left:0px;
}
.about_cont02 .about_list dt{
	font-weight:bold;
}
.about_cont02 .about_list dd{
	text-align:left;
	width: 75%;
} 
.tall.mission_cont01{
	position:relative;
	padding-bottom:150px;
}
.mission_cont01::before{
    content: "";
    width: 100%;
    height:675px;
    background: #f5f7f8;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1;
}

.mission_cont01 .inner,
.mission_cont02 .inner{
	width:1024px;
	margin:0px auto;
	position:relative;
}
.mission_cont01 .h2_ttl{
	margin-bottom:40px;
}
.mission_cont01 .sub_ttl_txt{
	text-align:right;
}
.mission_cont01 .sub_ttl_txt .en{
	font-size:60px;
	color:#916f4c;
	line-height: 120%;
	font-family: 'Prata', serif;
	font-weight: 400; font-style: normal;
}
.mission_cont01 .sub_ttl_txt .jp{
	font-size:18px;
}

.mission_cont01 .mission_area{
	position:relative;
	margin-top: -20px;
}

.mission_cont01 .mission_area .vision{
	background:#fff;
	position:absolute;
	right:0px;
	bottom:-65px;
	padding:100px 85px;
	width:723px;
}
.mission_cont01 .mission_area .vision li{
	padding-left:30px;
	font-size:18px;
	position:relative;
	margin-bottom:47px;
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.mission_cont01 .mission_area .vision li.last{
	margin-bottom:0px;
}
.mission_cont01 .mission_area .vision li::before{
	content: url(../images/under/icon01.png);
	width:22px;
	height:22px;
	position: absolute;
    top:2px;
	left:0px;
}

.mission_area .vision li .en{
	color:#916f4c;	
	display:block;
}
.mission_area .vision li .jp{
	width:70%;
}
.tall.mission_cont02{
	position:relative;
	padding-bottom:240px;
}
.mission_cont02::before{
    content: "";
    width: 100%;
    height:776px;
    background: #f5f7f8;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1;
}
.mission_cont02 .h2_ttl{
	margin-bottom:90px;
}
.mission_cont02 .mission_area{
	position:relative;
}
.mission_cont02 .mission_area .r-img{
	text-align:right;
}
.mission_cont02 .mission_area .vision{
	background:#fff;
	position:absolute;
	left:0px;
	bottom:-65px;
	padding:57px 85px;
	width:723px;
}
.mission_cont02 .mission_area .signature{
	font-weight:bold;
	text-align:right;
}
.service_cont01 {
	background:#f5f7f8;
	position:relative;
}
.service_cont01:before{
    content: "";
    width: 100%;
    height:288px;
    background: #ffff;
    position: absolute;
    top: 0;
    right: 0;
}
.service_cont01 .inner{
	width:1024px;
	margin:0px auto;
	position:relative;
}
.service_area{
	margin-bottom:80px;
}
.service_area .service_txt{
	width:58%;
}
.service_area.l-imgR .l-img{
	width:44%;
}
.service_area .service_txt p span{
	color:#74502a;
	border-bottom:1px solid #74502a;
}

.contact_cont01{
  background:#f5f7f8;
	position:relative;
}
.contact_cont01 .inner{
	width:1024px;
	margin:0px auto;
	position:relative;
}

.form-group label{
  display: block;
}
.form-group input[type="text"]{
  width: 100%;
  border: 1px solid #e1e0e0;
  line-height: 72px;
  padding: 0px 10px;
}
.form-group .form-item{
  margin-bottom: 60px;
}
.form-group .form-item a{
  text-decoration: underline;
}
.form-group .form-item a:hover{
  text-decoration: none;
}
.form-group span{
  color:red;
  font-size: 12px;
  margin-left: 10px;
}
.form-group textarea{
  width: 100%;
  border: 1px solid #e1e0e0;
  padding: 0px 10px;
}
.submit{
  border: 1px solid #916f4c;
  font-size: 16px;
  color:#916f4c;
  width: 510px;
  line-height: 83px;
  text-align: center;
  background: #f5f7f8;
  display: block;
  margin: 0px auto;
}
.submit:hover{
  background: #916f4c;
  color: #f5f7f8;
}
.submit_area{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.submit_area .submit{
  width: 48%;
}
.submit_area .submit02{
  width: 48%;
  border: 1px solid #CCC;
  font-size: 16px;
  color:#FFF;
  line-height: 83px;
  text-align: center;
  background: #333;
}
.submit_area .submit02:hover{
  color:#333;
  background: #ccc;
}
.h2_ttl02{
	border-bottom:1px solid #cccccc;
	position:relative;
	font-size:24px;
	padding-bottom:25px;
	margin-bottom:25px;
}
.h2_ttl02::after{
	content: "";
	border-bottom:2px solid #916f4c;
	width:22px;
	height:2px;
	position:absolute;
	bottom:-1px;
	left:0px;
}
.h3_ttl{
	font-weight:bold;
	margin-bottom:30px;
}

.short + .short {
  margin: 50px 0 0;
}

.tall {
  padding: 80px 0;
}

.u-container {
  max-width: 1024px;
  margin: 0 auto;
}

.col2, .col2-col2,
.col3, .col3-col2,
.col4, .col4-col2,
.col2-nomg {
  display: flex;
  flex-wrap: wrap;
}

.col2-nomg {
  justify-content: space-between;
}

.col2-nomg > li {
  width: 48%;
}

.col2, .col2-col2 {
  justify-content: space-between;
}

.col2 > li, .col2-col2 > li {
  margin: 0 0 30px;
  width: 49%;
}

.col3, .col3-col2 {
  margin: 0 -1%;
}

.col3 > li, .col3-col2 > li {
  margin: 0 1% 25px;
  width: 31.3333333%;
}

.col4, .col4-col2 {
  margin: 0 -1%;
}

.col4 > li, .col4-col2 > li {
  margin: 0 1% 15px;
  width: 23%;
}

.l-imgR, .l-imgL {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.l-imgR .l-img, .l-imgL .l-img {
  margin: 0 40px 0 0;
  width: 40%;
}

.l-imgR .l-desc, .l-imgL .l-desc {
  flex: 1;
}

.l-imgR.w-25 .l-img, .l-imgL.w-25 .l-img {
  margin: 0 30px 0 0;
  width: 25%;
}

.l-imgR.w-10 .l-img, .l-imgL.w-10 .l-img {
  margin: 0 30px 0 0;
  width: 10%;
}

.l-imgR {
  flex-direction: row-reverse;
}

.l-imgR .l-img {
  margin: 0 0 0 40px;
}

.l-imgR.w-25 .l-img, .l-imgR.w-10 .l-img {
  margin: 0 0 0 30px;
}

.pic_l {
  float: left;
  width: 40%;
  margin-right: 4%;
}

.pic_r {
  float: right;
  width: 40%;
  margin-left: 4%;
}

/*------------
common
--------------*/
.fixed:after {
  clear: both;
  content: "";
  display: block;
}

.pc-only {
  display: block;
}

.sp-only {
  display: none;
}

.fade {
  transition: .2s;
}

.fade:hover {
  opacity: .5;
}

.bold, strong {
  font-weight: bold;
}

.red {
  color: #F44336;
}

.org {
  color: #D35230 !important;
}

.green {
  color: #00B050;
}

.notice {
  font-size: 13px;
  text-indent: -1rem;
  padding: 0 0 0 15px;
}

.mb0 {
  margin-bottom: 0 !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}
.mb40 {
  margin-bottom: 40px !important;
}
.mb45 {
  margin-bottom: 45px !important;
}


.mb30-15 {
  margin-bottom: 30px !important;
}

.mb50-30 {
  margin-bottom: 50px !important;
}

.mt0 {
  margin-top: 0 !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mt50-30 {
  margin-top: 50px !important;
}

.tac {
  text-align: center;
}

.tar {
  text-align: right;
}

.tal {
  text-align: left;
}

.tar-c {
  text-align: right;
}

.tal-c {
  text-align: left;
}

.tac-l {
  text-align: center;
}

.tac-r {
  text-align: center;
}

