/*
Theme Name:WAJIMA
Author: yama


Version: 1.0.0
*/
/**********************
- ROOT
- BASE
- GENERAL
  -- FONT
  -- ALIGN
  -- FLEX
  -- LIST
  -- OTHER
- HEADER
- BREADCRUMB
- CONTAINER
- HEADING
- BUTTON
- FOOTER
- ARCHIVE
- SINGLE
- CONTACT
- FRONT
- PAGE PARTS
- LOADING
- COLOR
- MARGIN
- ANIMATION
- RESPONSIVE
***********************/

/**********************
* ブレイクポイント
* 350px/1000px
**********************/


/*********************
ROOT
**********************/
:root {
   --base: #000000;

   --text-main: #ffffff;
   --color-gold: #D3B661;

   --color-logo:#f8e100;
   --color-logoBG:#b64572;
 

   --main-color-1: #000000;

   --gradient: linear-gradient(260deg, #D3B661, #000000);
   --gradientLogo: linear-gradient(260deg, #f8e100, #b64572);
   --gradientLogoRe: linear-gradient(108deg, #f8e100, #b64572);

   --font-title:  "ta-fuga-fude", sans-serif;
   --font-min:  "fot-tsukuaoldmin-pr6n", sans-serif;
   --font-go:  "aralet-n", sans-serif;


   --light: 200;
   --normal: 320;
   --bold: 700;

   --container: 1000px;
   --container-side: 3%;
   --container-l: 1200px;
   --container-m: 960px;
   --container-s: 660px;
   --container-ss: 480px;

}


/*********************
BASE
*********************/
html {
   font-size: 100%;
   scroll-behavior: smooth;
   
}

body {
   background-color: var(--base);
   color: var(--text-main);
   font-family: var(--font-go);
   /* font-family: var(--font-en) ,var(--font-jp); */
   font-weight: var(--normal);
   font-size: 1rem;
   letter-spacing: .05em;
   line-height: 1.7;
   /* overflow: hidden; */
}



h1,
h2,
h3,
h4 {
   font-weight: var(--normal);
   font-size: 0;
}

/* p {
   margin: 0 0 1em;
} */

a {
   color: var(--text-main);
   transition: all 0.3s ease-out;
   text-decoration: none;
}

/* a:hover {
   opacity: 0.8;
} */

img {
   height: auto;
   border: none;
   line-height: 0;
   vertical-align: bottom;
   transition: all 0.5s ease-out;

}

ol,
ul {
	padding: 0;
}



dl,
dt,
dd {
	margin: 0;
}



@media only screen and (max-width: 390px) {
   body {
      font-size: 1rem;
   }

}


/*********************
GENERAL
*********************/

/*FONT*/


.small {
   font-size: .85em;
}

.large {
   font-size: 1.2em;
}

.strong {
   font-weight: var(--bold);
}

.uppercase {
	text-transform: uppercase;
}

.line-heighter,
.line-heighter * {
   line-height: 2.1;
}

.line-heighter p {
   margin: 0 0 2em;
}


/*ALIGN*/
.center {
   text-align: center;
}

.center > * {
   margin-left: auto;
   margin-right: auto;
}

.left {
   text-align: left;
}

.right {
   text-align: right;
}


/*IMAGE*/
.img-circle {
   border-radius: 50%;
}

.img-radius {
   border-radius: 30px;
}

.img-object {
  padding-top: 66%;
  position: relative;
  overflow: hidden;
}

.img-object>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}


/*FLEX*/
/* .flex {
   display: flex;
   flex-wrap: wrap;
   justify-content: space-between;
}

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

.nowrap {
   flex-wrap: nowrap;
}

.space-around {
   justify-content: space-around;
}

.justify-start {
   justify-content: flex-start;
}

.justify-end {
   justify-content: flex-end;
}

.items-center {
   align-items: center;
}

.cell {
   position: relative;
}

.cell img {
   display: block;
   width: 100%;
}

.cell > *:last-child {
   margin-bottom: 0;
}

.cell--1-2 {
   width: 48%;
}

.cell--1-3 {
   width: 30%;
}

.cell--1-4 {
   width: 23%;
}

.cell--2-3 {
   width: 60%;
}

.cell--3-4 {
   width: 73%;
}


@media only screen and (max-width: 390px) {
   .flex {
      flex-direction: column;
   }

   .cell--1-2,
   .cell--1-3,
   .cell--1-4,
   .cell--2-3,
   .cell--3-4{
      margin-bottom: 1em;
      width: 100%;
   }

   .order0 {
      order: 0;
   }

   .order1 {
      order: 1;
   }
} */


/*LIST*/
/* .list-none {
   list-style: none;
   padding-left: 0;
   margin: 0;
}

.list-dot li {
	list-style: none;
	padding-left: 1em;
	text-indent: -1em;
	margin: 0 0 1em;
}

.list-dot li::before {
   content: '';
   background-color: var(--main-color-2);
   border-radius: 50%;
   display: inline-block;
   width: 9px;
   height: 9px;
   margin-right: .5em;
} */


/*OTHER*/
/* .relative {
   position: relative;
}

.block {
   display: block;
}

.shadow {
   box-shadow: 0 0 1.8rem -1rem rgb(0 0 0 / 27%);
}

.marker {
	background:linear-gradient(transparent 60%, var(--sub-color-2) 60%);
}

.box {
  padding: 30px;
  background-color: #fff;
  border-radius: 15px;
}

.box > *:last-child {
   margin-bottom: 0;
}


@media only screen and (max-width: 1500px) {

}

@media only screen and (max-width: 390px) {  
   .box {
      padding: 20px;
   } 

} */



/*********************
HEADER
*********************/
.header {
   position: sticky;
   top: 0;
   width: 100%;
   z-index: 100;
   /* background-color: var(--main-color-1); */
   background-color: var(--color-logoBG);
   border-bottom: 1px solid var(--color-gold);
}

.header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: var(--container);
	margin: 0 auto;
   height: 100px;
   
}
@media only screen and (max-width: 1000px) {

   .header-inner {
      padding-right: 5%;
      padding-left: 5%;
   }

}







/*********************
BREADCRUMBS
*********************/
/* #breadcrumb {
	padding: 1.5em 0 2em;
	background-color: var(--bg-1);
}

.breadcrumb-list {
	padding: 0;
	max-width: var(--container-l);
	margin: 0 auto;
}

.breadcrumb-item {
	color: var(--text-main);
	line-height: 1;
	list-style: none;
	display: inline-block;
	margin: 0;
}

.breadcrumb-item:not(:last-of-type)::after {
	content: '/';
	padding: 0 0.5em;
}

.breadcrumb-item a {
	color: inherit;
	font-weight: var(--normal);
	text-decoration: none;
} */



/*********************
CONTAINER
*********************/
.section-wrap {
   padding-top: 100px;
   padding-bottom: 100px;
   position: relative;
}

.container {
   max-width: var(--container);
 
   position: relative;
   margin: 0 auto;
   width: 100%;
}

.container-l {
   max-width: var(--container-l);
   margin: 0 auto;
}

.container-m {
   max-width: var(--container-m);
   margin: 0 auto;
}

.container-s {
   max-width: var(--container-s);
   margin: 0 auto;
}

.container-ss {
   max-width: var(--container-ss);
}

/* .map-wrap {
   position: relative;
}

.map-wrap::before {
   content: "";
   display: block;
   padding-top: 50%;
}

.map-wrap iframe {
   position: absolute;
   top: 0;
   left: 0;
   height: 100%;
   width: 100%;
} */


@media only screen and (max-width: 1000px) {
   /* .section-wrap {
      padding-top: 50px;
      padding-bottom: 50px;
   } */

   .container {
      padding-right: 5%;
      padding-left: 5%;
   }

}
@media only screen and (max-width: 390px) {
   .section-wrap {
      padding-top: 50px;
      padding-bottom: 50px;
   }

   .container {
      padding-right: 5%;
      padding-left: 5%;
   }

}

/*********************
HEADING
*********************/
/* .h1-page {
   font-size: 3rem;
   font-weight: var(--bold);
   margin-bottom: 1em;
}

.h2-top {
   font-size: 3rem;
   font-weight: var(--bold);
   margin-bottom: 1em;
}

.h2-page {
   font-size: 1.4rem;
   font-weight: var(--normal);
   position: relative;
   padding-bottom: 90px;
   text-align: center;
}

.h3-page {
   font-size: 2rem;
   font-weight: var(--bold);
   margin-bottom: 1em;
}

@media only screen and (max-width: 1500px) {

}


@media only screen and (max-width: 390px) {
  
} */



/*********************
BUTTON
*********************/
.btn-wrap {
   margin-top: 1.5em;
   width: 100%;
}

.btn {
   color: var(--text-main);
   display: inline-block;
   font-size: 1em;
   font-weight: normal;
   line-height: 1;
   position: relative;
   transition: all .3s;
   z-index: 1;
}

.btn-main {
   background-color: var(--main-color-1);
   border: 1px solid var(--main-color-1);
   border-radius: 30px;
   color: #fff;
   display: inline-block;
   font-size: 1.7rem;
   font-weight: 900;
   padding: 1em 0;
   text-align: center;
   text-decoration: none;
   transition: all .3s;
   width: 100%;
   letter-spacing: .2em;
}

.btn-sub { 
   color: var(--main-color-1);
   padding-right: 2em;
   position: relative;
   text-decoration: none;
}

.btn-sub::after {
   content: "\e5c8";
   font-family: var(--font-material);
   font-size: 2rem;
   font-weight: 400;
   line-height: 3rem;
   height: 3rem;
   width: 3rem;
   position: absolute;
   top: 50%;
   right: 0;
   transform: translateY(-50%);
   transition: all .3s;
   text-align: center;
}

.btn-cta {

}


@media only screen and (min-width: 1501px) {
  .btn-main:hover {
    background-color: #fff;
    color: var(--main-color-1);
  }

  .btn-sub:hover {
    color: var(--main-color-1);
  }

  .btn-sub:hover::after {
    right: -.25em;
  }

  .btn-cta:hover {
    
  }
}

/*********************
FOOTER
*********************/
#footer {
   position: relative;
   height: 150px;
   /* background: var(--gradient); */
   /* background-color: var(--color-logoBG); */
   background: var(--gradientLogo);

   display: flex;
       align-items: flex-end;
       justify-content: center;

}

/* @media only screen and (max-width: 730px){
   #footer {
     
      margin-top: 108px;
   
   }

} */

.footer-cta {
	padding: 80px 0 100px;
}

.footer-logo {
	display: block;
	width: 120px;
}

.footer-main {
   padding: 0;
   position: relative;
}

.footer-menu-main {
   padding: 80px 0 50px;
}

.footer-main-list {
	padding: 0;
	margin: 0;
	justify-content: flex-start;
}

.footer-main-item {
	color: var(--text-main);
	font-size: 1.4rem;
	text-transform: uppercase;
	list-style: none;
	margin: 0 3em 0 0;
}

.footer-main-item:last-of-type {
	margin: 0;
}

.footer-main-link {
	color: inherit;
	text-decoration: none;
}

.copyright{
	margin: 0;
}

.copyright a {
	color: var(--text-main);
	font-size: 1rem;
	text-decoration: none;
}


@media only screen and (max-width:1500px) {

}

@media only screen and (max-width:390px) {
	.footer-cta {
		padding: 45px 0 60px;
	}
	
	.footer-menu-main {
		padding: 40px 0;
	}

	.footer-main-item:not(:last-of-type) {
		margin: 0 0 2em 0;
	}
}


/*********************
ARCHIVE
*********************/

/*card*/
.archive-card {
	background-color: #FFFFFF;
	border-radius: 5px;
	/* margin-right: 8%;
	margin-bottom: 2em; */
}

.archive-card:nth-of-type(2n) {
	margin-right: 0%;
}

.archive-card a {
	display: block;
	width: 100%;
	/* height: 100%; */
	border-radius: 5px;
  overflow: hidden;
  text-decoration: none;
}

.archive-card a:hover {
	
	opacity: 1;
}



.image-archive {
  width: 100%;
  padding-top: 50%;
  position: relative;
  overflow: hidden;
}

.image-archive>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  left: 0;
  top: 0;
  transition: all .3s;
}

.archive-card:hover .image-archive>img {
   transform: scale(1.1);
}

/* .text-archive {
   color: #000000;
   padding: 1em;
   background-color: #FFFFFF;
}

.text-archive .time-archive {
   color: #777777;
   margin-bottom: 1em;
} */

/*list*/
/* .archive-list {
	padding: 0 0.6em 1.8em;
	border-bottom: dotted 1px #D2DAE6;
	margin-bottom: 1.5em;
	transition: all 0.4s;
}

.archive-list:last-of-type {
  margin-bottom: 0;
}

.archive-list a {
	display: block;
  text-decoration: none;
}

.archive-list .time-archive {
	width: 15%;
	color: var(--main-color-1);
}
.archive-list .title-archive {
	width: 80%;
	color: var(--text-main);
	font-weight: var(--normal);
	margin: 0;
} */


/*PAGENATION*/

/* リンクの枠 */
.navigation.pagination {
	margin-top: 78px;
}



/* 数字のリンク */
.pagination .page-numbers {
  color: var(--text-main);
  font-size: 16px;
	font-family: var(--font-en);
	font-weight: var(--normal);
	display: flex;
	justify-content: center;
	margin: 0;
}

.pagination .page-numbers li{
	list-style: none;
  display: flex;
  justify-content: center;
  align-items: center;

  margin-right: 30px;

}

.pagination .page-numbers li span,
.pagination .page-numbers li a:not(.next ,.prev){
   border: 1px solid var(--text-main);
   border-radius: 25px;
   width: 36px;
   height: 36px;
   line-height: 2;
 }

.pagination .page-numbers li:first-of-type {
	margin-left: 0;
}


.pagination .page-numbers a {
	text-decoration: none;
}

/* 前へ、次へボタン */
.pagination .nav-links .prev,
.pagination .nav-links .next {
  width: 1em;
  height: 1em;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}

.pagination .nav-links .prev {
	background-image: url(../../uploads/arrow-left.svg);
}

.pagination .nav-links .next {
	background-image: url(../../uploads/arrow-right.svg);
}



/* 現在のページ */
.pagination .nav-links .current {
	/* text-decoration: underline; */
   background-color: var(--main-color-1);
   color: #FFFFFF;
}
.pagination .page-numbers li span{
   border: none;
}


.nav-links {
    margin-left: 50px;
}



@media only screen and (max-width: 390px) {
   .archive-list:last-child {
      margin-bottom: 1.5em;
   }

   .archive-list .time-archive {
      margin-right: 0;
      margin-bottom: .5em;
   }

   .archive-list .time-archive,
   .archive-list .title-archive {
      width: 100%;
   }
}



/*********************
SINGLE
*********************/



/*********************
CONTACT
*********************/




/*********************
PAGE PARTS
*********************/




/*********************
LOADING
*********************/



/*********************
COLOR
**********************/


/*********************
MARGIN
*********************/

/*********************
ANIMATION
*********************/
.fadein {
   opacity: 0;
   transform: translateY(30px);
   transition-property: transform, opacity;
   transition-duration: 1.5s;
   transition-delay: 0s;
}

.fadein.is-active {
   opacity: 1;
   transform: translateY(0);
}

.delay--2 {
   transition-delay: .3s;
}

.delay--3 {
   transition-delay: .6s;
}

.delay--4 {
   transition-delay: .9s;
}


@media only screen and (min-width: 391px) {

}

/*********************
RESPONSIVE
*********************/
@media only screen and (min-width: 1501px) {
   .tb_only { display: none !important; }
   .sp_only { display: none !important; }
   .sp_tb { display: none !important; }
}

@media only screen and (min-width: 391px) and (max-width: 1500px) {
   .pc_only { display: none !important; }
   .sp_only { display: none !important; }
   .sp_pc { display: none !important; }
}

@media only screen and (max-width: 390px) {
   .pc_only { display: none !important; }
   .tb_only { display: none !important; }
   .tb_pc { display:none!important; }
}

@media only screen and (max-width: 320px) {
   html { font-size: .58em; }
}