@charset "UTF-8";
/*
Theme Name: PAZO
*/

/*******************************
初期化
********************************/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var, b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {margin: 0; padding: 0; border: 0; outline: 0; vertical-align: baseline; background: transparent;}
*, *::before, *::after {-webkit-box-sizing: border-box; box-sizing: border-box;}
html {font-size: 62.5%; width: 100%;}
body {
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #131313;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0.1em;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  background-color: #fff;
  overflow-x: hidden;
}
body p {margin-bottom: 1.5em; line-height: 2;}
img {max-width: 100%; height: auto; vertical-align: top;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
ul, ol {list-style: none;}
table {border-collapse: collapse; border-spacing: 0;}
input {border: 1px solid #888; padding: 2px;}
button {appearance: none; -moz-appearance: none; -webkit-appearance: none; border: none;}
blockquote, q {quotes: none;}
blockquote:before, blockquote:after, q:before, q:after {content: ''; content: none;}
a {vertical-align: baseline; text-decoration: none; color: #131313;}
a:link, a:visited, a:active {color: #131313; text-decoration: none; transition: opacity 0.3s;}
a:hover {opacity: 0.7;}
ins {background-color: #ff9; color: #000; text-decoration: none;}
h1, h2, h3, h4, h5 {margin: 0; padding: 0; font-weight: 400;}
.pc {display: block;}
.sp {display: none;}
a.btn,
.header__menu .btn a,
.smf-action .smf-button-control__control{display: inline-block; background-color: #131313; padding: 0.5em 2em; text-align: center; color: #fff;}

/*******************************
COMMON
********************************/
:root{
  --font-serif: Georgia, 'Times New Roman', Times, serif;
}

.container{width: 96%; max-width: 1400px; margin: 0 auto;}
.container h2,
.gallery h2{margin-bottom: 1em;}
.container hr{width: 60px; height: 1px; background-color: #c3b8a2; border: none; margin: 40px 0;}
.en{font-family: var(--font-serif);}

/*******************************
HEADER
********************************/
.header{width: 96%; max-width: 1400px; margin: 0 auto; padding: 1em 0; display: flex; align-items: center; justify-content: space-between; gap: 2%;}
.header__logo{width: 24%; font-size: 26px; font-family: var(--font-serif);}
.header__logo p{margin-bottom: 0; line-height: 1;}
.header__nav{transition: opacity 0.3s ease, visibility 0.3s ease;}
.header__menu{width: 100%; display: flex; gap: 33px; justify-content: flex-end; align-items: center; font-size: 10px;}

.hamburger{display: none; width: 32px; height: 24px; position: relative; z-index: 11; background: none; border: none; cursor: pointer;}
.hamburger span{position: absolute; left: 0; width: 100%; height: 1px; background: #000; transition: transform 0.3s ease, opacity 0.3s ease;}
.hamburger span:nth-child(1){top: 50%; transform: translateY(-8px);}
.hamburger span:nth-child(2){top: 50%; transform: translateY(0);}
.hamburger span:nth-child(3){top: 50%; transform: translateY(8px);}
.hamburger.is-active span:nth-child(1){transform: translateY(0) rotate(45deg);}
.hamburger.is-active span:nth-child(2){opacity: 0;}
.hamburger.is-active span:nth-child(3){transform: translateY(0) rotate(-45deg);}


/*******************************
TOP
********************************/
.fv{width: 96%; height: 600px; margin: 0 auto 54px;}
.fv img{width: 100%; height: 600px; object-fit: cover;}

.sec01{text-align: center;}
.sec01 h1{margin-bottom: 25px; font-size: 32px; letter-spacing: 0.25em; line-height: 1;}
.sec01 .main{display: block; margin-bottom: 0.8em; font-size: 1.5em; line-height: 1.5;}
.sec01 p.en{margin-top: 5.93em;}

.concept{margin-bottom: 250px;}
.concept__contents{display: flex; align-items: center; gap: 6%; margin: 120px auto;}
.concept__contents.rev{flex-direction: row-reverse;}
.concept__img{width: 50%;}
.concept__text{width: 44%;}
.concept__text h3{margin-bottom: 1em; font-size: 1.5em;}

.profile__top{display: flex; align-items: center; margin-bottom: 150px;}
.profile__top .img{width: 50%; padding: 0 4% 0 0; text-align: center;}
.profile__top .img img{width: 100%; max-width: 453px; height: 594px; object-fit: cover;}
.profile__top .img-cr{display: block; max-width: 453px; margin: 5px auto 0; text-align: left; font-size: 12px;}
.profile__top .text{width: 50%; padding-right: 6%;}
.profile__top .title-award{display: block; font-size: 16px;}
.profile{display: flex; justify-content: center; gap: 5%; margin-bottom: 250px;}
.profile .box{width: 33%;}
.profile .box img{width: 100%; height: 297px; object-fit: cover;}
.profile__top .text .name{margin: 0 0 1em;}
.profile .box .name{margin: 2.5em 0 1em;}
.profile__top .text .name .main,
.profile .box .name .main{display: block; font-size: 1.5em;}

.gallery{width: 98%; margin: 150px 0 150px auto;}
.gallery__slider{padding-bottom: 2em; overflow: hidden; position: relative;}
.gallery__slider .swiper{overflow: visible;}
.gallery__slider .swiper-slide{width: 276px; height: 276px;}
.gallery__slider .swiper-slide img{width: 276px; height: 276px; object-fit: cover;}
.gallery__slider .swiper-scrollbar{height: 2px; bottom: 0; left: 0 !important; overflow: hidden;}
.gallery__slider .swiper-scrollbar-drag{background-color: #605532;}

.announce{margin-bottom: 120px; text-align: center;}

.contact{width: 100%; max-width: 650px; margin: 0 auto;}
.contact h2{text-align: center;}
.smf-item{margin-bottom: 2em;}
.smf-item__label{font-size: 12px; font-family: var(--font-serif);}
.smf-form .smf-text-control__control{width: 100%; border: none; border-bottom: 1px solid #c3b8a2; box-shadow: none; padding-right: 0; padding-left: 0; font-family: "Zen Kaku Gothic New", sans-serif; font-size: 14px; letter-spacing: 0.1em;}
.agree-box a{text-decoration: underline;}
.smf-action{display: flex; justify-content: center;}
.smf-action .smf-button-control__control{
    background-image: none;
    border: none;
    border-radius: 0;
    padding: 1em 4em;
	font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 14px;
	letter-spacing: 0.1em;
}

/*******************************
FOOTER
********************************/
.footer{width: 100%; background-color: #e2dbd6; padding: 1em; margin-top: 180px;}
.footer .cp{text-align: center; font-size: 10px;}

/*******************************
PAGE
********************************/
.page .container{padding-top: 100px;}
.page-title{margin-bottom: 1em;}
.page-title-sub{display: block; font-size: 14px;}
.page .container h2{margin-top: 2.5em;}
.page .container h3{margin: 2.5em 0 0.8em; font-size: 18px;}
.page .container .page-title + h2{margin-top: 0;}
.page .container ul{margin: 0 0 1.5em 1em;}
.page .container ol{margin: 0 0 1.5em 1.35em;}
.page .container li{line-height: 2;}
.page .container ul li{position: relative;}
.page .container ul li::before{content: "・"; position: absolute; top: 0; left: -1em;}
.page .container ol{list-style-type: decimal}
.page .container p + ul,
.page .container p + ol{margin-top: -1.5em;}

/*******************************
RECRUIT
********************************/
.recruit_has-bk{width: 50%;}

/*******************************
RESPONSIVE
********************************/
@media screen and (max-width: 1024px) {
	.profile .box{width: 45%;}
}

@media screen and (max-width: 896px) {
	.header__nav.is-active{opacity: 1; visibility: visible;}
	.header__nav{position: fixed; z-index: 10; inset: 0; background: #fff; opacity: 0; visibility: hidden;}
	.header__menu{height: 100%; flex-direction: column; justify-content: center;}
	.hamburger{display: block;}
	
	.sec01 p.en{margin-top: 3em;}
	.concept{margin: 120px 0;}
	.concept__contents{margin: 30px auto;}
	.profile__top{margin-bottom: 60px;}
	.profile{margin-bottom: 120px;}
}
@media screen and (max-width: 550px) {
	body{background-color: #fcfaf7; font-size: 14px;}
	body p{line-height: 1.57;}
	h1,h2,h3{line-height: 1.5;}
	.header,
	.container{width: 90%;}
	
	.br-sp{display: inline;}
	
	.fv{width: 95%; height: 175px;}
	.fv img{height: 100%;}
	.sec01 h1{font-size: 30px;}
	.sec01 p.en{margin-top: 4.5em;}
	.concept{margin-bottom: 100px;}
	.concept__contents,
	.concept__contents.rev{flex-direction: column; gap: 40px 0; margin: 60px auto;}
	.concept__img{width: 100%;}
	.concept__text{width: 100%;}
	.profile__top{flex-direction: column; gap: 20px 0; margin-bottom: 40px;}
	.profile__top .img,
	.profile__top .text{width: 100%; padding: 0;}
	.profile__top .img img{height: 440px;}
	.profile__top .img-cr{margin: 2px auto 0; font-size: 10px;}
	.profile{flex-direction: column; gap: 40px 0; margin-bottom: 75px;}
	.profile .box{width: 100%;}
	.profile .box img{height: 217px;}
	.profile .box .name{margin: 20px 0;}
	.profile .box .name p{margin-bottom: 0;}
	.gallery{width: 95%; margin: 83px 0 110px auto;}
	.gallery__slider .swiper-slide,
	.gallery__slider .swiper-slide img{width: 335px; height: 335px;}
	.smf-form .smf-text-control__control{background-color: #fcfaf7;}
	.agree-box{margin: 45px auto; font-size: 12px;}
	.smf-action .smf-button-control__control{padding: 0.85em 4em;}
	
	.page .container{padding-top: 50px;}
	.recruit_has-bk{width: 100%;}
	
	.page .container h3{font-size: 16px;}
}