@charset "UTF-8";

/* ==========================================
   ヘッダー (site-header)
   ================================---------- */
.site-header {
  width: 100%;
  padding: 10px 0;
  /* 背景を透過させて下の背景画像を透けさせる場合（必要に応じて背景色を入れてもOK） */
  background-color: rgba(255, 255, 255, 0.85); /* 半透明の白で上品に視認性を確保 */
  backdrop-filter: blur(5px); /* サポートブラウザならすりガラス風にぼかす */
  position: sticky;
  top: 0;
  z-index: 100;
  border-bottom: 1px solid rgba(220, 214, 208, 0.5);
}

.site-header .inner {
	width: 90%;
	max-width: 1300px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

/* ロゴ */
.site-header .logo img {
	height: 15px;
	width: auto;
	display: block;
}

@media (min-width: 760px) {
	
.site-header {
  padding: 25px 0;
}
/* ロゴ */
.site-header .logo img {
	height: 35px;
}
/* ナビゲーション (PC) 
.main-nav ul {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 30px;
}

.main-nav a {
  text-decoration: none;
  font-size: 0.85rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #333;
  transition: opacity 0.3s;
}

.main-nav a:hover {
  opacity: 0.6;
}*/
}


/* ==========================================
   TOPページ固有のデザイン
   ========================================== */

/* --- ベース・背景の設定 --- */
.main-visual {
	background: url('../img/bg-texture.jpg') center / cover no-repeat; 	
	width: 100%;
	min-height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 40px 0;
	overflow: hidden;
}
.mv-inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 60px;
	width: 90%;
	max-width: 1200px;
}
.mv-logo img {
	width: 270px;
	height: auto;
}
.mv-text p {
	font-size: 1.7rem;
	line-height: 2.2;
	letter-spacing: 0.1em;
	font-weight: 800;
	color: var(--color-primary);
}
@media (min-width: 760px) {
.mv-inner {
    flex-direction: row;
    justify-content: center;
    gap: 240px;
}
.mv-logo img {
  width: 520px;
  height: auto;
}
.mv-text p {
	font-size: 3.8rem;
}
}
@media (min-width: 760px) and (max-width: 1024px) {
.mv-inner {
    gap: 100px;
}
.mv-logo img {
	width: 320px;
	height: auto;
}
.mv-text p {
	font-size: 3rem;
}
}


/*--- カバー写真 ---*/
.section-photo {
	width: 100%;
	/*height: 60vh;  スマホやiPadでの表示高さを固定またはmin-heightで指定 */
	aspect-ratio: 16 / 9;
	overflow: hidden;
}
.full-width-img {
	width: 100%;
	height: 100%;
	object-fit: cover; /* 画像の比率を保ったまま、エリアいっぱいに切り抜いて表示 */
	object-position: center; /* 見せたい中心位置を調整（例: left, right, topなど） */
}
@media (min-width: 760px) {
.section-photo {
	height: 100vh;
	aspect-ratio: auto; /* アスペクト比を解除して高さを優先 */
}
}
@media (min-width: 760px) and (max-width: 1024px) {
.section-photo {
	width: 100%;
	height: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
}
}


/*代表挨拶*/
/* --- Greeting Section --- */
#greeting{  
	font-family: var(--font-base);
	color: var(--color-primary);
	padding: 120px 0;
	overflow: hidden;
}
.section-greeting {
	position: relative;
	padding: var(--spacing-large) 0;
	background: url('../img/bg-greeting.jpg') center / cover no-repeat;  
	background-size: cover;
}
.decoration-arrow { /* 装飾用矢印のスタイル */
	position: absolute;
	right: 0;
	top: 50px;
	width: 150px;
	height: auto;
	z-index: 10; 
}
h2.section-greeting-title{
	font-size: 2.5rem;
	font-weight: bold;
	text-align: center;
	margin-bottom: var(--spacing-medium);
}
.greeting-lead {
	font-weight: bold;
	font-size: 2.1rem;
    line-height: 1.4;
	letter-spacing: 1px;
    font-feature-settings: "palt";
	text-align: center;
	margin-bottom: var(--spacing-medium);
}
.greeting-content {
	display: flex;
	flex-direction: column;
	gap: 30px;
}
.greeting-text p {
	font-size: 1.5rem;/*少し大きく*/
	margin-bottom: 20px;
	line-height: 1.8;
	font-weight: 600;
}
.greeting-photo img {
	width: 100%;
	height: auto;
}
.photo-caption {
	display: flex;
    gap: 60px;
    align-items: flex-start;
	justify-content: flex-end;
	margin-top: 15px;
}
.photo-caption .job{
	font-size: 1.4rem;
	white-space: nowrap;
	font-weight: 600;
}
.photo-caption .job span{
	font-size: 1.2rem;
}
@media (min-width: 760px) {

#greeting{  
	padding: 150px 0;
}
.decoration-arrow { /* 装飾用矢印のスタイル */
	top: 70px;
	width: 365px;
}
h2.section-greeting-title{
	font-size: 2.7rem;
	margin-bottom: var(--spacing-large);
}
.greeting-lead {
	font-size: 3rem;
	margin-bottom: var(--spacing-large);
}
.greeting-content {
    flex-direction: row;
    gap: 60px;
    align-items: flex-start;
}
.greeting-text p {
	font-size: 1.7rem;/*少し大きく*/
    flex: 1; /* テキストを広く取る */
}
.greeting-photo {
    width: 35%; /* 写真は全体の3.5割 */
}
}
@media (min-width: 760px) and (max-width: 1024px) {
.greeting-lead {
	font-size: 2.7rem;
}
.decoration-arrow {
    width: 250px;
}
.photo-caption {
    gap: 30px;
}
.greeting-photo {
    width: 150%;
}
}


/*ビジョン*/
/* --- Vision Section --- */
#vision{  
	color: var(--color-secondary);
	padding: 100px 0 200px;
	overflow: hidden;
}
.section-vision {
	position: relative;
	padding: var(--spacing-large) 0;
	background: url('../img/bg-vision.jpg') center / cover no-repeat;  
	z-index: 0;
}
.section-vision::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.2);
	z-index: -1;
}
.vision-title {
	margin-bottom: 30px;
}
.vision-catch {
	font-family: var(--font-base);
	font-size: 2.2rem;
	font-weight: bold;
	margin-bottom: 5px;
	line-height: 1.4;
}
.vision-sub-catch {
	font-size: 0.9rem;
    letter-spacing: 1.6px;	
	opacity: 0.8;
	margin-bottom: 40px;
	font-family: var(--font-base);
}
.vision-description {
    font-weight: 600;
	line-height: 2.0;
	letter-spacing: 1px;
	display: flex;
	flex-direction: column;
	gap: 2em;
}
@media (min-width: 760px) {
#vision{  
	padding: 200px 0 300px;	
}
.section-vision {
    padding: 120px 0;
	display: flex;
    justify-content: flex-start; 
    align-items: center;
    position: relative;
}
.vision-inner {
    max-width: 1600px;
}
.vision-text-content {
    width: 50%;
    text-align: left;
	max-width: 550px;
    margin-left: auto;
    margin-right: 0;	
}
.vision-title {
    margin-bottom: 50px;
}
.vision-catch {
    font-size: 3.5rem;
}
.vision-sub-catch {
    font-size: 1.3rem;
    letter-spacing: 2.3px;
}
.vision-description {
    font-size: 1.8rem;
}
}
@media (min-width: 760px) and (max-width: 1024px) {
#vision{  
	padding: 150px 0 200px;	
}
.vision-catch {
    font-size: 2.2rem;
}
}

	
/*ミッション*/
/* --- Mission Section --- */
#mission{  
	color: var(--color-secondary);
	padding: 100px 0 150px;
	overflow: hidden;
}
.section-mission {
	background: url('../img/bg-mission.jpg') center / cover no-repeat;  
	position: relative;
	z-index: 0;
}
.section-mission::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.4);
	z-index: -1;
}
.mission-inner {
	text-align: left;
}
.mission-text-content {
	position: relative;
	z-index: 1;
}
.mission-title {
	margin-bottom: 30px;
}
.mission-catch {
	font-family: var(--font-base);
	font-size: 4rem;
	font-weight: 600;
    margin-bottom: 40px;
    line-height: 1.4;
}
.mission-description {
	font-size: 1.8rem;
	line-height: 2.3;
	letter-spacing: 1px;
    font-weight: 600;
    display: flex;
    flex-direction: column;
}
@media (min-width: 760px) {
	
#mission{  
	padding: 200px 0 250px;	
}
.section-mission {
    padding: 120px 0;
}
.mission-inner {
    max-width: 1600px;
}
.mission-text-content {
    width: 50%;
}
.mission-title {
    margin-bottom: 50px;
}
.mission-catch {
    font-size: 8rem;
}
.mission-description {
    font-size: 2.8rem;
}	
}
@media (min-width: 760px) and (max-width: 1024px) {
#mission{  
	padding: 150px 0 200px;	
}
.mission-catch {
    font-size: 4rem;
}
.mission-description {
    font-size: 2.3rem;
}
}


/*スタンダード*/
/* --- Standard Section --- */
#standard{  
	color: var(--color-primary);
	padding: 100px 0;
	/*overflow: hidden;*/
}
.section-standard {
	background: url('../img/bg-standard.jpg') center / cover no-repeat;  
	z-index: 0;
}
.standard-header {
  margin-bottom: 40px;
}
.item-title p{
	font-family: var(--font-base);
	font-size: 2rem;
    font-weight: 800;
    line-height: 1.4;
}
.standard-title{
	margin-bottom: 30px;
}
.standard-lead{
    font-weight: bold;
    margin-bottom: 5px;
    line-height: 2;
}
.standard-list {
  display: flex;
  flex-direction: column;
  gap: 60px;
}
.standard-item {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* アイコンとタイトルのグループ */
.item-header {
  display: flex;
  align-items: center;
  gap: 15px;
}
.item-icon {
  width: 70px;
  flex-shrink: 0;
}
.item-description {
	border-left: 1px solid #333;
	padding-left: 15px;
	margin-left: 12px;
	/*font-size: 1.5rem;*/
	font-weight: bold;
}
@media (min-width: 760px) {

#standard{  
	padding: 150px 0;
}
.standard-inner {
    max-width: 1600px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.standard-header {
	width: 27%;
    position: sticky;
    top: 80px;
}
.item-title p{
	font-size: 2.3rem;
	margin-top: 12px;
    line-height: 1.4;
}
.standard-title{
	margin-bottom: 50px;
}
.standard-lead{
    line-height: 2;
}
.standard-list {
    width: 63%;
}
.standard-item {
    flex-direction: row;
    align-items: flex-start;
    gap: 40px;
}  
/* アイコンとタイトルのグループ */
.item-header {
    /*flex: 0 0 475px;*/
    flex: 0 0 50%;
	gap: 30px;
}
.item-icon {
	width: 100px;
}
.item-description {
	margin-left: 10px; /* アイコンの幅に合わせて調整 */
	font-size: 1.8rem;
	font-weight: bold;
}
}
@media (min-width: 760px) and (max-width: 1024px) {
.standard-header {
	width: 27%;
    position: sticky;
    top: 80px;
}
.standard-list {
    width: 67%;
}
.standard-item {
    gap: 10px;
}
.item-icon {
	width: 60px;
}
.item-title p {
	font-size: 1.6rem;
}
.item-header {
	gap: 15px;
}
.item-description {
    font-size: 1.4rem;
}
}


/*私たちがやっていること*/
/* --- what-we-do Section --- */
#what-we-do{  
	color: var(--color-primary);
	padding: 100px 0 100px;
}
.section-what-we-do {
	background: url('../img/bg-what-we-do.jpg') center / cover no-repeat;  
	z-index: 0;
}
.what-we-do-title{
	display: flex;
	justify-content: center; /* 横方向の中央揃え */
	align-items: center;     /* 縦方向の中央揃え */
}
.what-we-do-lead{
	font-family: var(--font-base);
	font-size: 1.8rem;
    font-weight: 800;
    margin-top: 10px;
    text-align: center;
}
.what-we-do-lead-sub{
	font-size: 1.2rem;
    font-weight: 600;
	text-align: center;
	margin: 5px 0 30px;
}

/* --- 図形とテキストの親ラッパー --- */
.pillars-diagram-wrapper {
	position: relative;
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
}
.diagram-img {
	width: 100%;
	height: auto;
	display: block;
}
/* 中央テキスト */
.diagram-center-text {
	position: absolute;
	top: 55%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	width: 70%;
}
.diagram-center-text p {
	font-family: var(--font-base);
	font-size: 1.5rem;
	font-weight: 700;
	margin-top: 10px;
}

/* 周囲の補足テキスト（スマホでは位置を％指定で大まかに調整） */
.label-text {
	position: absolute;
    line-height: 1.3;
    font-weight: 600;
    border-left: solid 6px #b9b2a5;
    padding-left: 5px;
    font-size: 1.1rem;
	letter-spacing: -0.5px;
}

/* スマホでの大まかな位置 */
.label-produce { top: 20%; left: -2%;}
.label-operation { bottom: 0%; left: 38%; }
.label-update { top: 34%; right: 0%; }

@media (min-width: 760px) {
	
#what-we-do{  
	padding: 200px 0 250px;	
}
.section-what-we-do {
}
.what-we-do-lead{
	font-size: 3.8rem;
    margin-top: 20px;
}
.what-we-do-lead-sub{
	font-size: 1.6rem;
	margin: 5px 0 80px;
}
.diagram-center-text {
	top: 50%;
    width: 50%;
}
.diagram-center-text p {
    font-size: 2.2rem;
}

.label-text {
    font-size: 1.6rem;
	letter-spacing: normal;
}
/* --- デザイン画像に合わせたミリ単位の位置調整 --- */
/* 左上：ホテルレストランプロデュース... */
.label-produce {
    top: 10%;
    left: 0%;
    text-align: left;
}
/* 下中央：食に纏わる支援 */
.label-operation {
    bottom: 4%;
    left: 46%;
    text-align: center;
}
/* 右中：イベントプロデュース&運営受託 */
.label-update {
    top: 48%;
    right: -3%;
    text-align: left;
}
.label-text {
	line-height: 1.4;
	font-weight: 700;
	border-left: solid 10px #b9b2a5;
    padding-left: 10px;

}
}
@media (min-width: 760px) and (max-width: 1024px) {
#what-we-do{  
	padding: 100px 0 150px;	
}
.what-we-do-lead {
    font-size: 3rem;
}
.diagram-center-text {
	top: 51%;
}
.diagram-center-text p {
    font-size: 1.7rem;
	margin-top: 5px;
}

.label-text {
    font-size: 1.3rem;
	letter-spacing: normal;
}
.label-produce {
    top: 0;
    left: 0;
}
.label-operation {
    bottom: -5%;
    left: 43%;
}
.label-update {
    top: 30%;
    right: -2%;
}
}


/*私たちが創り出したもの*/
/* --- what-weve-created Section --- */
#what-weve-created{  
	color: var(--color-main);
	padding: 0 0 30px;
	background: #f5f3f2;
	overflow: hidden;
}

/* 1600pxの中央寄せ共通クラス */
.created-inner {
	/*width: 100%;*/
	width: 90%;
	max-width: 1600px;
	margin: 0 auto;
	padding: 0;
}
@media (min-width: 960px) {
.created-inner {
}
}

/* --- スマホ表示（モバイルファーストの初期設定） --- */
.bg-mountain-wrapper {
	width: 100vw;
	margin-left: calc(50% - 50vw); /* スマホでもブラウザ画面幅いっぱいに広げる */
  	background: url('../img/bg-what-weve-created.png') right center / cover no-repeat; 
  	padding: 100px 20px 40px;
	/*background-color: rgba(245, 243, 242, 0.85);  山が薄く見えるように背景色を少し乗せる */
	background-color: rgba(245, 243, 242, 32%); /* 山が薄く見えるように背景色を少し乗せる */
	background-blend-mode: lighten; /* 背景と色を馴染ませる */
}
.header-content-lead{
	margin-top: 16px;
    font-size: 1.2rem;
    font-weight: 600;
	text-align: center;
}
@media (min-width: 760px) {
#what-weve-created{  
	padding: 0 0 140px;
}
.bg-mountain-wrapper {
    background-size: 60% auto; /* PCでは右側に綺麗収まるサイズに調整 */
    background-color: transparent; /* PCでは透過を解除して原色の山を出す */
    background-blend-mode: normal;
    padding: 150px 0;
}
.header-inner {
    display: flex;
    justify-content: flex-start; /* 1600px枠内の左端に寄せる */
}
.header-content {
    width: 100%;
    max-width: 700px;
}
.header-content-lead {
	margin-top: 30px;
	font-size: 1.6rem;
	text-align: left;
}
}
@media (min-width: 760px) and (max-width: 1024px) {
#what-weve-created{  
	padding: 0 0 100px;
}
.bg-mountain-wrapper {
    background-size: 100% auto;
    padding: 70px 0;
}
}



/*これに変更してみる*/
/* --- ベース設定 --- */
.project-row {
  width: 100%;
  /*border-bottom: 1px solid #dcd6d0;*/
  padding: 40px 0;
}

.project-row .inner {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 0 20px;
}
@media (min-width: 760px) {
.project-row .inner {
	padding: 0 60px;
}
}
@media (min-width: 760px) and (max-width: 1024px) {
.project-row .inner {
	padding: 0 40px;
}
}

/* ==========================================
   1. モバイルファースト（スマホ表示）
   ================================---------- */
.project-item-container {
  display: grid;
  /* スマホでは2カラム（2つずつ横並び）のグリッド */
  grid-template-columns: 1fr 1fr;
  gap: 15px;
  align-items: start;
	margin-bottom: 100px;
}

/* タイトルとタグはスマホでは全体を1行分専有させる */
.project-category-title {
  grid-column: 1 / -1;
  text-align: left;
  margin-bottom: 10px;
}
.project-category-title img {
  max-width: 300px;
  height: auto;
  display: block;
}

.project-tags {
  grid-column: 1 / -1;
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  /*margin-top: 10px;
  border-top: 1px solid #dcd6d0;
  padding-top: 20px;*/
}

/* 各アイテムの構造（画像枠とテキスト枠を独立させて高さを揃える） */
.project-item {
  display: flex;
  flex-direction: column;
    align-items: center;
	
	border-bottom: solid 1px #dcd6d0;
    /* padding: 20px 0; */
    padding-bottom: 20px;
}

/* 【重要】アイテム画像の高さを固定し、赤枠のライン（下段）をピタッと揃える */
.item-img-wrap {
  height: 65px; /* アイテム画像が入る高さを一定にする */
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
}
.item-img-wrap img {
  max-height: 50px;
  width: auto;
}

/* 【重要】テキスト部分の上部ラインを揃える */
.item-text-wrap {
  flex-grow: 1;
}
.item-text-wrap p {
  font-size: 1.1rem;
  line-height: 1.4;
	text-align: center;
        font-weight: 600;
}


@media (min-width: 760px) {

/* 4カラム構成（タイトル + アイテム4つ + タグ = 計6つのグリッド列） */
.project-item-container.col-4 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr/*1.6fr 1fr 1fr 1fr 1fr 0.9fr*/;
    gap: 0;
    align-items: stretch; /* 高さを均等にストレッチ */
	padding: 20px 0;
	border-bottom: 1px solid rgb(220, 214, 208);
margin-bottom: 0;
	}
/* スマホ用のグリッド専有を解除して横並びに組む */
.project-category-title,
.project-tags {
    grid-column: auto;
    margin: 0;
    border-top: none;
    padding-top: 0;
}

  /* 縦の区切り線を美しく引く */
  .project-item-container > * {
    border-right: 1px solid #dcd6d0;
    padding: 0 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .project-item-container > * :last-child {
		border-right: none;
}
	
  .project-category-title {
    padding-left: 0 !important;
  }

  .project-tags {
    border-right: none !important;
    text-align: left;
    font-size: 1.5rem;
    font-weight: bold;
  }
	
.project-item {
	border-bottom: none;
}


  /* PC・iPad時の画像枠・文字サイズ調整 */
  .item-img-wrap {
    height: 75px;
    margin-bottom: 15px;
  }
  .item-img-wrap img {
    max-height: 60px;
  }

  .item-text-wrap p {
    font-size: 1.2rem;
  }
}
@media (min-width: 760px) and (max-width: 1024px) {
	
.project-category-title img {
	max-width: 100px;
}
.project-item-container > * {
    padding: 0 10px;
}
.project-tags {
    font-size: 1rem;
}
.item-text-wrap p {
    font-size: 1rem;
	text-align: left;
}
}







/*会社情報*/
/* --- Company Section --- */
#company{  
	color: var(--color-main);
	padding: 100px 0 130px;
}
.section-company {
	position: relative;
	background: #fff;
	min-height: 200px;  /* 高さを確保する */
}
.decoration-arrow02 { /* 装飾用矢印のスタイル */
	position: absolute;
	left: 0;
	bottom: 50px;
	width: 150px;
	height: auto;
	z-index: 10; 
}
.company-title{
	display: flex;
	justify-content: center;
	align-items: center;
}
.company-title-lead{
	font-family: var(--font-base);
	text-align: center;
	margin-top: 10px;
	font-size: 1.5rem;
	font-weight: bold;
}
.company-content {
  display: flex;
  flex-direction: column;
  gap: 40px;
	margin-top: 60px;
}
.company-logo img {
    width: 60%;
	margin: auto;
  }

.list-item {
	display: flex;
	border-bottom: 1px solid #ccc;
	padding: 15px 0;
	font-weight: 500;
}
.list-item:last-child {
	border-bottom: none;
}
.list-item dt {
  width: 90px;
  flex-shrink: 0;
}
@media (min-width: 760px) {
#company{  
	padding: 200px 0 250px;	
}
.decoration-arrow02 { /* 装飾用矢印のスタイル */
	bottom: 70px;
	width: 365px;
}
.company-title-lead{
	font-size: 2.2rem;
}

.company-content {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
	margin-top: 100px;
} 
.company-logo {
    width: 37%;
}
.company-logo img {
    width: 100%;
}
.company-list {
	width: 42%;
}
.list-item {
	padding: 17px 0;
}
.list-item dt {
	width: 200px;
}
}
@media (min-width: 760px) and (max-width: 1024px) {
#company{  
	padding: 100px 0 150px;	
}
.company-list {
	width: 60%;
}
.list-item {
	padding: 12px 0;
}
.list-item dt {
	width: 120px;
}
.decoration-arrow02 {
    width: 250px;
}
}
@media (min-width: 760px) and (max-width: 1024px) {
.company-logo {
    width: 35%;
}
.company-list {
	width: 57%;
}
}


/*お問い合わせ*/
/* --- contact Section --- */
#contact{  
	padding: 100px 0 0;
	overflow: hidden; /* はみ出し防止 */
}
.section-contact {
	background: url('../img/bg-texture.jpg') center / cover no-repeat;  
	z-index: 0;
}
.contact-title{
	display: flex;
	justify-content: center;
	align-items: center;
}

/* --- メッセージ文章（スマホでは縦積み） --- */
.contact-columns {
	display: flex;
	flex-direction: column;
	gap: 30px;
	line-height: 1.8;
	margin: 50px 10px;
	font-weight: 500;
}
.contact-columns p {
	margin-bottom: 1.2em;
}
.contact-columns p:last-child {
	margin-bottom: 0;
}
/* --- お問い合わせボタン --- */
.contact-btn-area {
	text-align: center;
	/*margin-bottom: 160px;*/
}
.contact-btn {
	display: inline-block;
	background-color: var(--color-primary);
	color: var(--color-secondary);
	padding: 15px 40px;
	font-weight: 600;
	text-decoration: none;
	transition: opacity 0.3s;
}
.contact-btn:hover {
	opacity: 0.7;
}


/*フッター*/
/* --- フッター最下部（MOOR Co., Ltd） --- */
.footer-bottom {
	text-align: center;
	font-family: serif; /* ブランドらしい上品なフォントへ微調整 */
	/*font-size: 1.1rem;*/
  	letter-spacing: 0.1em;
	color: #1a1a1a;
    margin: 200px 0 50px;
}

@media (min-width: 760px) {
#contact{  
	padding: 200px 0 0;	
}
.contact-columns {
    flex-direction: row;
    justify-content: space-between;
    gap: 80px;
    max-width: 950px;
    margin: 90px auto;
}
.column-left,
.column-right {
    flex: 1;
}
.contact-btn-area {
    /*margin-bottom: 150px;*/
}

.footer-bottom {
    font-size: 1.8rem;
}
}




