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

@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap');
/*
本文：Zen Kaku Gothic New
font-family: "Zen Kaku Gothic New", sans-serif;
*/

@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap');
/*
本文：Lato
font-family: "Lato", sans-serif;
*/

@import url('https://fonts.googleapis.com/css2?family=Zen+Old+Mincho&display=swap');
/*
見出し：Zen Old Mincho
font-family: "Zen Old Mincho", serif;
*/





html{
	height:100%;
	margin-bottom:1px;
}

body,div,class,img,p,form,fieldset,input,textarea,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,table,th,td {
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	vertical-align: bottom;
}

body {
    font-family: "Lato", "Zen Kaku Gothic New", sans-serif;
    font-weight: 300;
    font-style: normal;

    color: #333333;
	font-size: 14px;
	line-height: 1.4em;
	margin: 0 auto;
	-webkit-text-size-adjust: 100%;/*iPhoneフォントサイズ自動調整OFF*/
	width: 100%;
	background-color: #ffffff;
	text-align: left;
	/*text-align: center;*/
	padding-top: 0px;/*ヘッダー固定*/
	/*padding-top: 60px;ヘッダー固定*/
	padding-bottom: 0px;/*フッター固定*/
}
@media screen and (max-width : 767px) {
	body {
		padding-top: 0px;/*ヘッダー固定*/
		/*padding-top: 50px;ヘッダー固定*/
	}
}




/* 共通設定：横スクロールを完全に無効化 */
html, body {
    overflow-x: hidden;
}

/* PCでは縦スクロールあり */
@media (min-width: 768px) {
    html, body {
        overflow-y: auto;
    }
}

/* スマホサイズ（例：768px以下）では縦スクロールも非表示 */
@media (max-width: 767px) {
    body {
        overflow-y: hidden;
    }
}
















body img {
	max-width: 100%;
    /*width: 100%;*/
	border: none;
	height: auto;
}
body a {
	overflow:hidden;
	outline:none;
	/*text-decoration : underline;*/
	text-decoration: none;/*ナビトグルメニューのため無し*/
}
body a:hover {
	/*text-decoration : underline;*/
	text-decoration: none;
}

/*
p {
	text-align: justify;
	text-justify: inter-ideograph;
}
*/

.aligncenter {display: block;margin: 0 auto;}
.alignright {float: right;}
.alignleft {float: left;}

/*イメージフェード*/
.fade {-webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;}
.fade:hover {opacity: 0.6;filter: alpha(opacity=60);}

a {color: #000000;text-decoration: none;}
/*
a:visited {color: #000000;text-decoration: none;}
a:active {color: #000000;text-decoration: none;}
a:hover {color: #ff0000;text-decoration: none;}
*/

article, aside, figure, figcaption, footer, header, nav, section {display: block;}
section {width: 100%;}

/*インナー*/
.inner {
	max-width: 1000px;
    width: 100%;
	margin: auto;
	padding: 0 10px;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}

/*ヘッダー*/
header {
	width: 100%;
}
#header {
	width: 100%;
	/*border-bottom-width: 1px;*/
	/*border-bottom-style: solid;*/
	/*border-bottom-color: #a4a5a6;*/
	background-color: rgba(255,255,255,0.8);
	height: 50px;/*ヘッダー固定*/
	z-index: 10000;/*ヘッダー固定*/
	position: fixed !important;/*ヘッダー固定*/
	position: absolute;/*ヘッダー固定*/
	top: 0;/*ヘッダー固定*/
	left: 0;/*ヘッダー固定*/
}
@media screen and (max-width : 767px) {
	#header {
		height: 50px;/*ヘッダー固定*/
	}
}

.logo {
	float: left;
	width: 200px;
	margin: 10px 0 0 10px;
    position: absolute;
	z-index: 21000;
}
@media screen and (max-width : 560px){
	.logo {
		width: 160px;
        margin: 13px 0 0 10px;
	}
}

.header_menu {
    display: flex;
	flex-wrap: wrap;
    list-style: none;
    text-align: center;
    position: absolute;
    top: 6px;
    right: 60px;
	z-index: 21000;
}
@media screen and (max-width : 560px){
	.header_menu {
		display: none;
	}
}
.header_menu li {
    padding: 10px 10px;
}
.header_menu li a {
    color: #000;
    display: block;
    width: 100%;
    height: 100%;
}
.header_menu li.menu01 a:hover, .header_menu li.menu02 a:hover {
    text-decoration: underline;
}
.header_menu li.menu03 {
    padding: 6px 9px 4px 9px;
}
.header_menu li.menu03 img {
    width: 34px;
    height: auto;
}
.header_menu li.menu04 {
    padding: 8px 7px 0px 7px;
}
.header_menu li.menu04 img {
    width: 30px;
    height: auto;
}

main {
    max-width: 1920px;
    width: 100%;
    margin: auto;
}
#main_top {
    margin: 100px auto 0 auto;
}
/*階層ページ上部マージン設定*/
#main_class {
    margin: 100px auto 0 auto;
}

.inner {
    max-width: 1688px;
    margin: auto;
    padding: 0 15px;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}

.inner_page {
    max-width: 1000px;
    margin: auto;
    padding: 0 15px;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}


.h2_t {
    width: 100%;
    font-size: 40px;
    font-family: "Zen Old Mincho", serif;
    font-weight: 200;
    line-height: 1.6em;
    letter-spacing: 0.03em;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
@media screen and (max-width : 1260px){
    .h2_t {
        font-size: 30px;
    }
}
@media screen and (max-width : 640px){
    .h2_t {
        font-size: 22px;
    }
}
.h3_t {
    width: 100%;
    font-size: 26px !important;
    font-family: "Zen Old Mincho", serif !important;
    font-weight: 200;
    line-height: 1.6em;
    letter-spacing: 0.03em;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
@media screen and (max-width : 1260px){
    .h3_t {
        font-size: 22px !important;
    }
}
@media screen and (max-width : 640px){
    .h3_t {
        font-size: 18px !important;
    }
}

.view_all {
    float: right;
    font-size: 10px;
    padding: 10px 68px 0 0;
    line-height: 2.4em;
    border-bottom: 1px solid #333333;
    background: url(./images/view_all.svg) no-repeat top 18px right 2px/ 9px auto;
    -webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;
}
.view_all:hover {
    background: url(./images/view_all.svg) no-repeat top 18px right 0px/ 9px auto;
    -webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;
}
@media screen and (max-width : 640px){
    .view_all {
        padding: 0px 68px 0 0;
        background: url(./images/view_all.svg) no-repeat top 8px right 2px/ 9px auto;
    }
}
@media screen and (max-width : 640px){
    .view_all:hover {
        background: url(./images/view_all.svg) no-repeat top 8px right 0px/ 9px auto;
        -webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;
    }
}

/*HOMEスライドショー*/
.top_slider_block {
	width: 100%;
	height: 100vh;
	position: relative;
}
.top_slider {
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	position: absolute;
	overflow: hidden;
}
.top_slide_img {
    width: 100%;
    height: 100vh;
}
.zoomAnim {
    animation: zoom 10s linear 0s 1 normal both;
    
}
@keyframes zoom {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(1.2);
    }
}
.slide-logo {
	position: absolute;
	top: 46%;
	left: 0;
	width: 100%;
	padding: 0 0 0 5%;
	text-align: left;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.slide-logo img {
	width: calc(400/1920*100vw);
}
@media screen and (max-width : 767px){
	.slide-logo {
        text-align: center;
        padding: 0;
    }
    .slide-logo img {
		width: 280px;
	}
}
.fadeIn2s {
	animation-name: fadeIn2s;
	animation-delay: 1s;
	animation-duration: 1.5s;
	animation-fill-mode: forwards;
	transform: translateX(0px);
	opacity: 0;
}
@keyframes fadeIn2s {
	0% {
	}
	100% {
		transform: translateX(0);
		opacity: 1;
	}
}
.slide-text {
	position: absolute;
	top: 58%; /* ロゴより少し下に配置 */
	left: 0;
	width: 100%;
	padding: 0 0 0 5%;
	text-align: left;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
	font-size: calc(26/1920*100vw);
	line-height: 1.8em;
	font-family: "Zen Old Mincho", serif !important;
	font-weight: 300;
	color: #fff;
	opacity: 0;
	/*transition: opacity 1.5s ease;*/
    transition: opacity 2s ease;
}
@media screen and (max-width : 767px){
	.slide-text {
		font-size: 16px;
	}
}
.fadeInNow {
	opacity: 1;
}
/*
.top_slider .slick-dots {
	bottom: 4%;
	z-index: +1;
}
*/


/*NEWS リスト*/
.news_list {
	display: flex;
	flex-wrap: wrap;
	/*justify-content: space-between;*/
    justify-content: flex-start;
	gap: 2.3%;
	list-style: none;
	margin: 4.6% 0 0 0;
}
.news_list li {
	width: calc((100% - (2.3% * 2)) / 3);
	margin: 0 0 5% 0;
}
/* 640px以下で2列に変更 */
@media (max-width: 640px) {
	.news_list li {
		width: calc((100% - 2.3%) / 2);
		margin: 0 0 20px 0;
	}
	.news_list li.news_list3 {
		display: none;/*★HOMEのみ*/
	}
}
/* 420px以下で1列に */
@media (max-width: 420px) {
	.news_list li {
		width: 100%;
		margin: 0 0 60px 0;
	}
	.news_list li.news_list3 {
		display: block;/*★HOMEのみ*/
	}
}

/* 以下ホバー時の拡大ここから */
/* 親要素（はみ出し防止用） */
.news_list li .img_wrap {
	width: 100%;
	/*padding: 0 0 68% 0;*/
	aspect-ratio: 16 / 10.75;
	position: relative;
	overflow: hidden;
}
/* 画像ブロック本体 */
.news_list li .img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
	transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
}
/* ホバー時の拡大 */
.news_list li:hover .img {
	transform: scale(1.08);
	filter: brightness(1.05);
}
/* ホバー時の拡大ここまで */

.news_list li .cont_news {
	width: 100%;
	padding: 10px 0 0 0;
	text-align: left;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.news_list li .cont_news a {
	display: block;
	width: 100%;
	height: 100%;
}
.news_list li .cont_news a:hover {
	display: block;
	width: 100%;
	height: 100%;
}
.news_list li .cont_gallery {
	text-align: center;
}
.news_list li .date {
	margin: 20px 0 0 0;
	font-size: 12px;
}
.news_list li .news_t {
	margin: 10px 0 0 0;
	font-size: 16px;
	font-family: "Zen Old Mincho", serif;
}
.news_list li .details {
	font-size: 14px;
	margin: 10px 0 0 0;
	line-height: 1.8em;
}
@media screen and (max-width : 640px){
	.news_list li .date {
		margin: 15px 0 0 0;
		font-size: 11px;
	}
	.news_list li .news_t {
		margin: 8px 0 0 0;
		font-size: 14px;
	}
	.news_list li .details {
		font-size: 13px;
		margin: 8px 0 0 0;
	}
}

/* News詳細ページ */
.inner_news {
    max-width: 730px;
    margin: auto;
    padding: 0 15px;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.cont_news {
	margin: 8% 0 0 0;
}

.h3_news {
	width: 100%;
	font-size: 24px !important;
	font-family: "Zen Old Mincho", serif !important;
	font-weight: bold;
	line-height: 1.6em;
	letter-spacing: 0.03em;
    margin: 0 0 10px 0;
}
@media screen and (max-width : 1260px){
	.h3_news {
		font-size: 22px !important;
	}
}
@media screen and (max-width : 640px){
	.h3_news {
		font-size: 18px !important;
	}
}
.cont_news p {
    line-height: 1.8em;
    margin: 5px 0;
}



/*Gallery リスト*/
.gallery_list {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	list-style: none;
	margin: 4.6% 0 0 0;
}
.gallery_list li {
	position: relative;
    width: -webkit-calc(100% / 4);
	width: calc(100% / 4);
    margin: 0 0 6% 0;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
/* 擬似要素で右側の線を描画 */
.gallery_list li::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 1px;
	height: 100%;
	background-color: #fff;
}
@media screen and (max-width: 767px) {
	.gallery_list li {
		width: -webkit-calc(100% / 3);
	   width: calc(100% / 3);
	}
}
/* 各行の右端の線を消す（4列時） */
@media screen and (min-width: 768px) {
	.gallery_list li:nth-child(4n)::after {
		display: none;
	}
}
/* 各行の右端の線を消す（3列時） */
@media screen and (min-width: 641px) and (max-width: 767px) {
	.gallery_list li:nth-child(3n)::after {
		display: none;
	}
}
/* 640px以下では2列表示 */
@media screen and (max-width: 640px) {
	.gallery_list li {
		width: calc(100% / 2);
	}

	/* 2番目ごとに線を消す（2列時） */
	.gallery_list li:nth-child(2n)::after {
		display: none;
	}
}

/* 以下ホバー時の拡大 */
/* 親要素（はみ出し防止用） */
.gallery_list li .img_wrap {
	width: 100%;
	padding: 0 0 140% 0;
	position: relative;
	overflow: hidden;
}
/* 画像ブロック本体 */
.gallery_list li .img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
	transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
}
/* ホバー時の拡大 */
.gallery_list li:hover .img {
	transform: scale(1.08);
	filter: brightness(1.05);
}
.gallery_list li .cont_gallery {
	width: 100%;
	padding: 10px 5% 40px 5%;
	text-align: left;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.gallery_list li .cont_gallery a {
	display: block;
	width: 100%;
	height: 100%;
}
.gallery_list li .cont_gallery a:hover {
	display: block;
	width: 100%;
	height: 100%;
}
.gallery_list li .cont_gallery {
	text-align: center;
}
.gallery_list li .gallery_t {
	margin: 10px 0 0 0;
	font-size: 16px;
	font-family: "Zen Old Mincho", serif;
}
@media screen and (max-width : 640px){
	.gallery_list li .gallery_t {
		margin: 8px 0 0 0;
		font-size: 14px;
	}
}


/*Gallery詳細ページ*/
.gallery_box {
    width: 100%;
    margin: 4.6% 0 4.6% 0;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.gallaly_left {
    float: left;
    width: 60%;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.gallaly_right {
    float: right;
    width: 40%;
    padding: 0 0 0 20px;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
@media screen and (max-width : 767px){
    .gallaly_left {
        width: 100%;
    }
    .gallaly_right {
        width: 100%;
        padding: 0
    }
}

/*カスタム投稿部分*/
.customs_details {
    width: 100%;
    margin: 40px 0 0 0;
    line-height: 1.8em;
    text-align: justify;text-justify: inter-ideograph;
}
.customs_table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 2px;
	border: 0px;
    margin: 20px 0 0 0;
}
.customs_table th {
	width: 80px;
	vertical-align: middle;
	padding: 15px 10px;
	font-weight: bold;
	/*background-color: #727172;*/
	text-align: center;
	line-height: 1.2em;
	color: #000;
    border-bottom: 1px solid #aca9ac;
}
.customs_table tr td {
	/*width: 72%;*/
	vertical-align: middle;
	padding-top: 8px;
	padding-bottom: 6px;
	padding-left: 10px;
	padding-right: 10px;
	text-align: left;
	line-height: 1.2em;
	border-bottom: 1px solid #aca9ac;
}


/*Galleryカテゴリー ※テキストのみ*/
.category_list {
    float: right;
    margin: 20px 0;
}
@media screen and (min-width : 567px){
    .category_list li {
        display: inline-block;
        padding: 0 15px;
    }
}
@media screen and (max-width : 566px){
    .category_list li {
        padding: 5px 15px;
        list-style-type: none;
        text-align: right;
    }
}

/*Galleryカテゴリー※写真入りここから
.swiper_block {
	width: 100%;
    padding: 0 0 0 10%;
    overflow: hidden;
}
@media screen and (max-width : 767px){
    .swiper_block {
        padding: 0 0 0 15%;
    }
}
@media screen and (max-width : 640px){
    .swiper_block {
        padding: 0 0 0 20%;
    }
}

.swiper_box {
	width: 100%;
    margin: 2.6% 0 0 0;
    font-family: "Zen Old Mincho", serif !important;
}
.category_t {
    width: 100%;
    font-size: 26px;
    font-weight: 300;
    line-height: 1.6em;
    letter-spacing: 0.03em;
}
@media screen and (max-width : 1260px){
    .category_t {
        font-size: 18px !important;
    }
}
.swiper_gallery {
    width: 100%;
    margin: 18px 0 0 0;
}
@media screen and (max-width : 767px){
    .swiper_gallery {
        margin: 10px 0 0 0;
    }
}
.swiper {
	width: 100%;
    margin: 10px 0 0 0;
}
.swiper-wrapper {
	width: 100%;
	height: auto !important;
}
@media screen and (max-width : 940px){
    .swiper-wrapper {
        padding: 0 0 30px 0 !important;
    }
}
.swiper-slide {
	display: flex;
	justify-content: center;
	align-items: center;
}
.swiper-slide a {
	display: block;
	width: 100%;
	height: 100%;
}
.swiper-slide_img {
	position: relative;
	overflow: hidden;
	padding-top: 60%;
}
.swiper-slide_img img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.swiper-t {
	text-align: center;
	margin: 5px 0 0 0;
	font-weight: 300;
}
Galleryカテゴリー※写真入りここまで*/
/*Galleryここまで*/




/*ページング*/
.wp-pagenavi {
	clear: both !important;
    text-align: center;
}
.wp-pagenavi a, .wp-pagenavi span {
	text-decoration: none !important;
	border: none !important;
	padding: 3px 7px !important;
	margin: 2px !important;
    border-radius: 50%;
}
@media screen and (max-width : 440px){
    .wp-pagenavi a, .wp-pagenavi span {
        padding: 3px 7px !important;
        margin: 2px 0 !important;
    }
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
	background-color: none;
	font-weight: bold;
}
.wp-pagenavi span.current {
	font-weight: bold !important;
}
@media screen and (max-width : 560px){.wp-pagenavi .last, .wp-pagenavi .nextpostslink, .wp-pagenavi .extend, .wp-pagenavi .first, .wp-pagenavi .previouspostslink {display: none;}}


/*ページナビ*/
.navigation {
	width: 100%;
	margin-top: 40px;
    font-size: 12px;
    font-weight: bold;
}
.nav_align_right {
	float: right;
	width: auto;
	text-align: right;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
    background: url(./images/navigation_next.svg) no-repeat center left;
    -webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;
}
.nav_align_right:hover {
    background: url(./images/navigation_next.svg) no-repeat center left 5px;
    -webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;
}
.nav_align_left {
	float: left;
	width: auto;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
    background: url(./images/navigation_prev.svg) no-repeat center right;
    -webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;
}
.nav_align_left:hover {
    background: url(./images/navigation_prev.svg) no-repeat center right 5px;
    -webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;
}

/* 縦方向の中央揃え※これで要素を囲う */
.h-container {
    display: flex;
    align-items: center;
    gap: 2px; /* 要素間の間隔 */
}
.navigation_imgbox {
    width: 150px;
}
.navigation img {
    width: 150px;
    height: 110px;
    object-fit: cover;/*画像トリミング*/
}
@media screen and (max-width : 460px){
    .navigation_imgbox {
        width: 100px;
    }
    .navigation img {
        width: auto;
    }
}
@media screen and (max-width : 350px){
    .navigation_imgbox {
        width: 90px;
    }
}

.navigation_imgbox_right {
    float: right;
    margin-left: 10px;
}
.navigation_imgbox_left {
    float: left;
    margin-right: 10px;
}
@media screen and (max-width : 340px){
    .navigation_imgbox_right {
        margin-left: 0px;
    }
    .navigation_imgbox_left {
        margin-right: 0px;
    }
}
.navigation_prev {
    float: right;
    padding: 0 0 18px 20px;
}
.navigation_next {
    float: left;
    padding: 0 20px 18px 0;
}
.nav_title {
    text-align: center;
}

.nav_alignleft {
	float: right;
	width: 50%;
	text-align: right;
}
.nav_alignright {
	float: left;
	width: 50%;
}


/*Aboutここから*/
.about_box {
	width: 700px;
	margin: 30px auto 0 auto;
}
@media screen and (max-width : 736px) {
	.about_box {
		float: left;
		width: 100%;
	}
}
.about_box_inner {
	float: left;
	width: 100%;
	padding-top: 47px;
}
.about_box_01 {
	float: left;
	width: 474px;
}
@media screen and (max-width : 736px) {
	.about_box_01 {
		width: 100%;
	}
}
.about_prof {
	float: left;
	width: 100%;
	margin-bottom: 7px;
}
.about_prof_top {
	float: left;
	width: 108px;
	padding-right: 14px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	text-align: right;
}
.about_prof_details {
	float: left;
	width: 312px;
	padding-left: 14px;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #333333;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
@media screen and (max-width : 465px) {
	.about_prof_details {
		width: auto;
	}
}
@media screen and (max-width : 374px) {
	.about_prof_top {
		text-align: left;
	}
	.about_prof_details {
		width: 100%;
		margin-bottom: 5px;
	}
}
.about_prof_top2 {
	float: left;
	width: 96px;
	font-weight: bold;
}
.about_prof_details2 {
	float: left;
	width: 322px;
	padding-left: 14px;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #333333;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-weight: bold;
}
@media screen and (max-width : 465px) {
	.about_prof_details2 {
		width: auto;
	}
}
@media screen and (max-width : 374px) {
	.about_prof_details2 {
		width: 100%;
		margin-bottom: 5px;
	}
}
.about_prof_details_l {
	float: left;
	width: 100%;
}

@media screen and (min-width : 466px) {
	.about_br {
		display: none;
	}
}
.name_top {
	margin-top: 32px;
}

.about_box_02 {
	float: right;
	width: 226px;
	text-align: center;
}
@media screen and (max-width : 736px) {
	.about_box_02 {
		width: 100%;
		margin-top: 40px;
	}
}
.about_box_03 {
	float: left;
	width: 474px;
	margin-top: 64px;
}
@media screen and (max-width : 736px) {
	.about_box_03 {
		width: 100%;
	}
}
.about_details {
	float: left;
	width: 100%;
}
.about_details_price{
	padding-left:1em;
	text-indent:-1em;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
/*Slick slider スライダー上部マージン*/
.slider{
	width:100%;
	margin: 4% 0 0 0;
}
.slider img{
	width:100%;
}
.slider .slick-slide{
	height:auto!important;
}
.slider .slick-arrow{
	z-index:2!important;
}
.slider .slick-next{
	right:0!important;
}
.slider .slick-prev{
	left:0!important;
}
.slick-slide{
	margin-right: 0vw!important;
	margin-left: 0vw!important;
}
/*Aboutここまで*/



/*個人情報保護方針*/
.policy_box {
	width: 680px;
	margin: auto;
}
@media screen and (max-width : 716px) {
	.policy_box {
		width: 100%;
	}
}
.policy {
	width: 100%;
	text-align: justify;
	text-justify: inter-ideograph;
}
.h3_privacy {
    margin: 30px 0 10px 0;
    font-family: "Zen Old Mincho", serif;
}
.policy p{
	padding-top: 8px;
}

.strong {
	font-weight: bold;
}
.u {
	text-decoration: underline;
}

.list_privacy {
	margin: 30px 0 14px 0;
	border: 1px solid #999999;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding-top: 6px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
}
.list_privacy li {
	width: 100%;
	list-style-type: none;
	padding-top: 6px;
	padding-left: 16px;
	background-image: url(images/dot.png);
	background-repeat: no-repeat;
	background-position: 4px 12px;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}


/*お問い合わせフォームここから*/
.formInner {
    margin: 0 0 40px 0;
}
.asterisk {
	margin: 0 0 0 0.2em;
	color: #cc0000;
}
.entry-header {
	display: none;
}
.entry-content {
	width: 100% !important;
}

/*高さ調整*/
.contact-inner {
	margin-bottom: 21px !important;
}

.content_box {
	width: 100%;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 textarea {
	background-color: #fff;
	color: #333;
	width: 100%;
	border: 1px solid #ddd;
	font-size: 100%;
	padding: 0.5em;
	border-radius: 2px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"] {
	margin-top: -20px;
}
.wpcf7 textarea {
	margin-top: -14px;
}
.wpcf7 p {
	margin-top: 20px;
	width: 100%;
	/*line-height: 0.5em;*/
}
.wpcf7 span.wpcf7-not-valid-tip {
	font-size: 80%;
	/*line-height: 1.6em;*/
}
.wpcf7 input[type="submit"] {
	float: left;
	width: 48%;
	margin: 0;
	background: #eee;
	color: #333;
	border-radius: 2px;
	cursor: pointer;
	border: 1px solid #ccc;
	padding-top: 8px;
	padding-bottom: 6px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.wpcf7 input[type="submit"]:hover {
	box-shadow: 0 0 1px rgba(0,0,0,.2) inset;
}
.wpcf7 input[type="button"] {
	float: right;
	width: 48%;
	margin: 0;
	background: #eee;
	color: #333;
	border-radius: 2px;
	cursor: pointer;
	border: 1px solid #ccc;
	padding-top: 8px;
	padding-bottom: 6px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.wpcf7 input[type="button"]:hover {
	box-shadow: 0 0 1px rgba(0,0,0,.2) inset;
}

@media screen and (max-width : 593px) {
	.wpcf7 input[type="submit"], .wpcf7  input[type="button"] {
		width: 47%;
	}
}
@media screen and (max-width : 374px) {
	.wpcf7 input[type="submit"], .wpcf7  input[type="button"] {
		width: 100%;
	}
}

/*エラー･送信メッセージ*/
.wpcf7-response-output {
	padding: 0px !important;
	float: left !important;
	width: 100% !important;
	margin-top: 20px !important;
	margin-right: 0px !important;
	margin-bottom: 0px !important;
	margin-left: 0px !important;
}

/*IMEモード指定*/
form.wpcf7-form .email { ime-mode: disabled;}
form.wpcf7-form .name,form.wpcf7-form .subject,form.wpcf7-form .message { ime-mode: active;}

/*入力･確認画面でのみ表示*/
.sent .formInner {
	display: none;
}

/*送信完了画面でのみ表示*/
.complete-display {
	display: none;
}
.sent .complete-display {
	display: block;
	margin-top: 20px;
}

/*エラーメッセージ*/
span.wpcf7-not-valid-tip {
	color: #cc0000 !important;
}
div.wpcf7-validation-errors {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	color: #FFFFFF;
	background-color: #cc0000;
	text-align: center;
	padding-top: 4px;
	padding-right: 10px;
	padding-bottom: 4px;
	padding-left: 10px;
	border-top-style: none !important;
	border-right-style: none !important;
	border-bottom-style: none !important;
	border-left-style: none !important;
}
div.wpcf7-mail-sent-ng {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	color: #FFFFFF;
	background-color: #cc0000;
	text-align: center;
	padding-top: 4px;
	padding-right: 10px;
	padding-bottom: 4px;
	padding-left: 10px;
	border-top-style: none !important;
	border-right-style: none !important;
	border-bottom-style: none !important;
	border-left-style: none !important;
}

/*送信完了メッセージ 枠を非表示*/
div.wpcf7-mail-sent-ok {
	border-top-style: none !important;
	border-right-style: none !important;
	border-bottom-style: none !important;
	border-left-style: none !important;
}

/*送信確認画面*/
.wpcf7c-conf {
	border-top-style: none !important;
	border-right-style: none !important;
	border-bottom-style: none !important;
	border-left-style: none !important;
	font-weight: bold;
	background-color: #F7F7F7 !important;
}
/*チェックボックスずれ解消*/
.wpcf7-list-item input {
	vertical-align: -0.2em;
}

.grecaptcha-badge { bottom: 100px!important; }
/*お問い合わせフォームここまで*/



/*Flowここから*/
.flow_box {
	max-width: 870px;
    width: 100%;
	margin: auto;
}
.flow_box_inner {
	width: 100%;
	padding: 30px 0 6% 0;
}

.flow {
	width: 100%;
	padding-left: 290px;
	padding-bottom: 10px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background-repeat: no-repeat;
	background-position: 0px center;
	margin-bottom: 10px;
}
@media screen and (max-width : 736px) {
	.flow {
		width: 100%;
		padding-left: 60px;
		padding-top: 50px;
		padding-bottom: 20px;
		margin-bottom: 10px;
		background-position: 0px 0px;
	}
}
.flow_details {
	width: 100%;
	text-align: justify;
	text-justify: inter-ideograph;
}

.flow01{
	background-image: url(images/flow01.png);
}
.flow02{
	background-image: url(images/flow02.png);
}
.flow03{
	background-image: url(images/flow03.png);
}
.flow04{
	background-image: url(images/flow04.png);
}
.flow05{
	background-image: url(images/flow05.png);
}
.flow06{
	background-image: url(images/flow06.png);
}
.flow07{
	background-image: url(images/flow07.png);
}
.flow08{
	background-image: url(images/flow08.png);
}
.flow09{
	background-image: url(images/flow09.png);
}
.flow10{
	background-image: url(images/flow10.png);
}
/*Flowここまで*/


/*Priceここから*/
.price_box {
	max-width: 680px;
	margin: auto;
}
@media screen and (max-width : 476px) {
	.price_box {
		width: 100%;
	}
}
.price_box_inner {
	width: 100%;
	padding: 30px 0 6% 0;
}

.price_table {
	width: 100%;
	border-collapse:collapse;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #a6a8aa;
}
.price_table th {
	width: 100%;
	font-size: 13px;
	padding-top: 6px;
	padding-bottom: 4px;
	font-weight: normal;
	text-align: left;
	color: #2d5044;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #a6a8aa;
}
.price_table tr td {
	vertical-align: middle;
	padding-top: 6px;
	padding-bottom: 4px;
	text-align: center;
	border-top-width: 1px;
	border-right-width: 1px;
	border-top-style: solid;
	border-right-style: solid;
	border-top-color: #a6a8aa;
	border-right-color: #a6a8aa;
}
.price_table tr td.last {
	border-right: none;
}
.price_table tr td.price {
	text-align: right;
}

.price_cap_s {
	font-size: 10px;
	text-align: right;
	width: 100%;
	margin-top: 2px;
}

.price_cap {
	width: 100%;
	margin-top: 18px;
	font-size: 12px;
}
@media screen and (max-width : 374px) {
	.price_cap {
		font-size: 11px;
	}
}
.price_cap p{
	padding-left:1em;
	text-indent:-1em;
}
/*Priceここまで*/


/*Faqここから*/
.faq_box {
	max-width: 680px;
    width: 100%;
	margin: auto;
}
.faq_box_inner {
	width: 100%;
	padding: 30px 0 6% 0;
}

.faq {
	width: 100%;
	margin-bottom: 20px;
	background-image: url(images/faq_line.png);
	background-repeat: no-repeat;
	background-position: 19px 38px;
}
.faq_q {
	font-size: 16px;
	font-weight: bold;
	color: #585858;
	background-image: url(images/faq_q.png);
	background-repeat: no-repeat;
	background-position: 0px 0px;
	width: 100%;
	padding-top: 12px;
	padding-bottom: 12px;
	padding-left: 50px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.faq_a {
	background-image: url(images/faq_a.png);
	background-repeat: no-repeat;
	background-position: 0px 0px;
	width: 100%;
	margin-top: 10px;
	padding-bottom: 12px;
	padding-left: 50px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	text-align: justify;
	text-justify: inter-ideograph;
}
.faq_a3 {
	background-position: 0px 8px;
}
@media screen and (max-width : 716px) {
	.faq_a3 {
		background-position: 0px 0px;
	}
}

@media screen and (max-width : 439px) {
	.faq_br {
		display: none;
	}
}
/*Faqここまで*/


/*各セクション上部余白*/
#flow, #price, #faq {
	padding-top: 110px;
}
@media (max-width:768px){
	#flow, #price, #faq {
		padding-top: 90px;
	}
}

/*ページTOPへ戻る※プラグインGP Back To Top*/
/*
gp-back-to-top/css/gp-bttp.css を修正
*/

/*ページTOPへ戻る*/
#page-top {
    position: fixed;
    bottom: 0px;
    right: 0px;
    font-size: 77%;
}
#page-top a {
    background: #000000;
    opacity: 0.6;
    text-decoration: none;
    color: #fff;
    /*width: 50px;*/
    padding: 0px 0;
    text-align: center;
    display: block;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
}
#page-top a:hover {
    text-decoration: none;
    background: #999;
}


/*フッター*/
footer {
	background-color: #fff;
    border-top: 1px solid #ccc;
	width: 100%;
	text-align: center;
	margin-top: 70px;
	padding-top: 8px;
	padding-bottom: 6px;
	font-size: 13px;
	letter-spacing: 0em;
	color: #000;
}

@media screen and (max-width : 499px){
	footer {
		font-size: 12px;
	}
}
@media screen and (max-width : 439px){
	footer {
		font-size: 10px;
	}
}
footer a {
	color: #000;
	text-decoration: none;
}
footer a:visited {
	color: #000;
	text-decoration: none;
}
footer a:active {
	color: #000;
	text-decoration: none;
}
footer a:hover {
	color: #000;
	text-decoration: none;
}

.f_link {
	float:right;
}





/*テキスト両揃え*/
.justify {
	text-align: justify;text-justify: inter-ideograph;
}
.clearfix {clear: both;}



/************************************
以下クライアントさんからの修正のご要望
エヌエー・システムズで追記
*************************************/
.slide-text {
	display:none;
}

/*ギャラリーの写真とテキストの上端、下端を揃える(PC) */
@media screen and (min-width : 768px) {
	.gallery_box {
		display: flex;
		flex-wrap: wrap;
	}
	.gallaly_left {
   		width: 50%;
	}
	.gallaly_right {
    	width: 50%;
		padding: 0 5%;
	}
	.n2-ss-slider-1 {
		min-height:500px!important;
	}
	.n2-ss-background-image {
		background-position: top center!important;
	}
	.h3_t {
		line-height:1;
	}
	.gallaly_right {
		display: flex;
		flex-direction: column;
	}
	table.customs_table {
		margin-top: auto;
	}
}

/* next prev */
.navigation {
	margin-top: 100px;
}

/*見出しをシンプルにする*/
/*すべてゴシック体、太字無し*/
.h2_t {
	font-family:inherit;
	font-weight:300;
	color:#333;
}
@media screen and (min-width: 1261px) {
    .h2_t {
		font-size: 18px;
    }
}
.h3_t {
	font-family: "Lato", "Zen Kaku Gothic New", sans-serif!important;
	font-weight:300;
}
.h3_news {
	font-family: "Lato", "Zen Kaku Gothic New", sans-serif!important;
	font-weight:300;	
}
.news_list li .news_t {
	font-family:inherit;
	font-weight:300;
}
.swiper_box {
	font-family: "Lato", "Zen Kaku Gothic New", sans-serif!important;
	font-weight:300;	
}
.navigation {
	font-weight:inherit;
}
.gallery_list li .gallery_t {
	font-family:inherit;
	font-weight:300;
}
.customs_table th {
	font-weight:inherit;
}

/* 余白調整 */
@media screen and (min-width: 641px) {
	.news_list li .news_t {
		margin: 10px 0 30px 0;
	}
}
.news_list {
    margin: 3% 0 0 0;
}
.news_list li .cont_news {
	padding:0;
}
.cont_news p.date {
    margin-bottom: 2em;
}

/* ヘッダーのアイコンのデザインを揃える */
.header_menu li.menu04 img {
	width: 34px
}
.header_menu li.menu03 {
    padding: 5px;
}
.header_menu li.menu04 {
    padding: 5px;
}

.slicknav_btn {
	height: 29px!important;
	width: 29px!important;
	border: 2px solid #333333!important;
	border-radius: 6px;
	margin: 10px 21px 6px 0!important;
	padding: 6px 0 0 0 !important;
}
.slicknav_menu .slicknav_icon-bar {
	background-color: #444!important;
	width: 16px!important;
	height: 2px!important;
	margin: 0 auto!important;
}
.slicknav_btn .slicknav_icon-bar + .slicknav_icon-bar {
	margin-top: 4px!important;
}
.slicknav_btn_click {
	height: 29px!important;
	width: 29px!important;
	margin: 10px 21px 6px 0 !important!;
	background: url(none) no-repeat center center!important;
}
.home .slicknav_btn {
    	border: 2px solid #FFFFFF!important;
}
.home .slicknav_menu .slicknav_icon-bar {
    background-color: #FFF!important;
}
.slicknav_menu .slicknav_btn.slicknav_open .slicknav_icon-bar,
.slicknav_menu .slicknav_btn.slicknav_collapsed .slicknav_icon-bar,
.slicknav_menu .slicknav_btn.slicknav_btn_click .slicknav_icon-bar {
	margin-left:5px!important;
}

/* メニュー */
@media screen and (min-width: 768px) {
	.slicknav_nav {
		clear:both;
		margin: 0 0 0 auto!important;
		width: 200px!important;
	}
}
.slicknav_nav a {
    border-top: 1px dotted #cccccc!important;
    background-color: rgba(190, 190, 190, 0.7)!important;
	font-weight: 400;
}

/* ギャラリーカテゴリー一覧 */
.category_list {
    float: none;
	max-width: 1688px;
	margin:2% auto 0 auto;
}
.category_list li {
	font-size: 18px;
}
.view_all {
	display:none;
}

/* ギャラリーサムネイル */
.gallery_list li .img_wrap {
    padding: 0 0 100% 0;
}
.gallery_list li {
    margin: 0 0 3% 0;
}

/* 画像と説明文比率 */
@media screen and (min-width: 768px) {
    .gallaly_left {
        width: 65%;
    }
}
@media screen and (min-width: 768px) {
    .gallaly_right {
        width: 35%;
    }
}

/* フッター */
footer {
    border-top: 1px solid #efefef;
    width: 90%;
	margin: 150px auto 0 auto;
    padding-top: 40px;
    padding-bottom: 30px;

}
#page-top a {
	background: #BEBEBE;
}

/* About */
@media screen and (min-width: 1261px) {
    .page-id-1770 .h2_t {
		font-size: 30px;
    }
}
.slider {
	margin: 2% 0 0 0;
}
.about_box p {
	line-height:2.5;
	text-align:center;
}
.aterier {
	max-width:420px;
}
.about_prof_details, .about_prof_details2 {
	border-left-color:#CCC;
	font-weight:400;
}
.about_prof .noline {
	border-left:0!important;
}
.about_prof_details2 {
	width:200px;
}
.about_prof_top2 {
	width: 125px
}
.prof_box {
	width:100%;
}
div.box_flex {
    display: flex;
    justify-content: center;
    gap: 1rem;
}
@media (max-width: 575.98px) {
	div.box_flex {
		flex-flow: column;
	}
}
div.box_flex .about_prof {
	float:none;
}
div.box_flex .profile {
	width:410px;
}
@media (max-width: 575.98px) {
	div.box_flex .profile {
		width:100%;
	}
}
.profile img {
	display: block;
	max-width:65%;
	margin-bottom:60px;
}
@media (min-width: 576px) {
	.profile img {
		margin-left:35px;
	}
}
@media (max-width: 575.98px) {
	.profile img {
		margin:0 auto 60px;
	}
}

.price_box {
	max-width:500px;
}
.price_cap {
	font-size:14px;
}

/* 現在のカテゴリーは太字 */
.category_list li.current a {
	font-weight: 400;
}

/* 汎用（余白調整に使用） */
hr.clearfix {
  border: none;
  background-color: transparent;
}
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}
:root {
    --vk-margin-xxs: 0.5rem;
    --vk-margin-xs: 0.75rem;
    --vk-margin-sm: 1.5rem;
    --vk-margin-md: 2.5rem;
    --vk-margin-lg: 4rem;
    --vk-margin-xl: 6rem;
    --vk-margin-xxl: 8rem;
}

.xxs-height {
    height: var(--vk-margin-xxs);
}
.xs-height {
    height: var(--vk-margin-xs);
}
.sm-height {
    height: var(--vk-margin-sm);
}
.md-height {
    height: var(--vk-margin-md);
}
.lg-height {
    height: var(--vk-margin-lg);
}
.xl-height {
    height: var(--vk-margin-xl);
}
.xxl-height {
    height: var(--vk-margin-xxl);
}
@media (max-width: 575.98px) {
    :root {
        --vk-margin-xxs: 0.25rem;
        --vk-margin-xs: 0.375rem;
        --vk-margin-sm: 0.75rem;
        --vk-margin-md: 1.25rem;
        --vk-margin-lg: 2rem;
        --vk-margin-xl: 3rem;
        --vk-margin-xxl: 4rem;
    }
}
@media (min-width: 576px) and (max-width: 991.98px) {
    :root {
        --vk-margin-xxs: 0.375rem;
        --vk-margin-xs: 0.5625rem;
        --vk-margin-sm: 1.125rem;
        --vk-margin-md: 1.875rem;
        --vk-margin-lg: 3rem;
        --vk-margin-xl: 4.5rem;
        --vk-margin-xxl: 6rem;
    }
}
@media (min-width: 992px) {
    :root {
        --vk-margin-xxs: 0.5rem;
        --vk-margin-xs: 0.75rem;
        --vk-margin-sm: 1.5rem;
        --vk-margin-md: 2.5rem;
        --vk-margin-lg: 4rem;
        --vk-margin-xl: 6rem;
        --vk-margin-xxl: 8rem;
    }
}
