﻿@charset "utf-8";
/* =======================================================================
	BASE
======================================================================= */
html {height:100%;box-sizing: border-box;}
*, *:before, *:after {box-sizing: inherit;}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, 
pre, code, form, fieldset, legend, input, textarea, 
p, blockquote, th, td{margin:0;padding:0;}
a {outline: none; color:#0055AC; text-decoration: none;}
img { border:none }
h1,h2,h3,h4,h5,h6 {	font-size:100%;	font-weight:normal;}
body{
	font-family: 'Shippori Mincho', sans-serif;
	font-size:16px;
	line-height:1.6;
	color:#111;
}
/* Clearfix */
.clearfix:after {
	content: "";
	clear: both;
	display: block;
}
.spnone{display:none;}
/*
.fadein {opacity:0;transition: 1s;}
.fadein.active{opacity:1;}
*/

/* =======================================================================
	HEADER
======================================================================= */
header{
	width:100%;
	height:70px;
	position:fixed;
	background:#FFF;
	box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .15);
	z-index:3;
}
header .logo{
	width:181px;
	height:35px;
	background:url(https://kyoto-katsuo.co.jp/images/common/logo.png) no-repeat;
	background-size:181px 35px;
	margin:18px 0 0 20px;
}
header.normal_header .logo a{
	width:100%;
	height:100%;
	display:block;
}
header .sns{display:none;}

/* Drawer */
.el_humburger {
	cursor: pointer;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	pointer-events: auto;
	caret-color: transparent;
	position: fixed;
	top: 22px;
	right: 22px;
	padding:0;
	z-index:100;
}
.el_humburger_wrapper {
	width: 40px;
	display: inline-block;
}
.el_humburger_text.el_humburger_text__close {display: none; }
.js_humburgerOpen .el_humburger_text.el_humburger_text__menu {display: none; }
.js_humburgerOpen .el_humburger_text.el_humburger_text__close {display: block;}
.el_humburger span.el_humburger_bar {
	width: 100%;
	height: 3px;
	background: #111;
	display: block;
	-webkit-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
	margin: 0 auto 9px;
}
body.js_humburgerOpen span.el_humburger_bar{
	background: #FFF !important;
	margin: 0 auto 8px;
}
.js_humburgerOpen .el_humburger span.el_humburger_bar.top {
	-webkit-transform: translateY(9px) rotate(-45deg);
	-ms-transform: translateY(9px) rotate(-45deg);
	transform: translateY(9px) rotate(-45deg);
}
.js_humburgerOpen .el_humburger span.el_humburger_bar.middle {opacity: 0;}
.js_humburgerOpen .el_humburger span.el_humburger_bar.bottom {
	-webkit-transform: translateY(-12px) rotate(45deg);
	-ms-transform: translateY(-12px) rotate(45deg);
	transform: translateY(-12px) rotate(45deg);
}
.el_humburgerButton.el_humburgerButton__close {
	background: #FFF;
}
.el_humburgerButton__close span.el_humburger_bar {
	width: 35px;
	height: 4px;
	display: block;
	margin: 0 auto;
}
.el_humburgerButton__close span.el_humburger_bar.top {
	-webkit-transform: translateY(5px) rotate(-45deg);
	-ms-transform: translateY(5px) rotate(-45deg);
	transform: translateY(5px) rotate(-45deg);
}
.el_humburgerButton__close span.el_humburger_bar.bottom {
	-webkit-transform: translateY(-6px) rotate(45deg);
	-ms-transform: translateY(-6px) rotate(45deg);
	transform: translateY(-6px) rotate(45deg);
}
.navi {
	width: 0;
	height: 100%;
	overflow: auto;
	will-change: transform;
	background-color: rgba(000, 000, 000, 0.93);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all 250ms ease-out;
	-o-transition: all 250ms ease-out;
	transition: all 250ms ease-out;
	transform:translateZ(0) translateX(0%);
	position: fixed;
	top:0;
	right:0;
	padding-top: 14%;
	z-index: 99;
}
.js_humburgerOpen .navi {width: 100%;}
.navi_item {
	font-size: 18px;
	font-weight:500;
	white-space: nowrap;
	margin:0 0 35px 12%;
	padding-left:25px;
	position:relative;
}
.navi_item a{color:#FFF;}
.navi_item a:hover{opacity:0.7;}
.navi_item:before {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 10px;
    height: 1px;
    background-color: #FFF;
    left: 0;
}
.navi_item_sns{	margin:50px 0 0 11%;}
.navi_item_sns img{
	width:auto;
	height:24px;
	margin-right:30px;
}
.navi_item.op_innerLink {cursor: pointer;}

/* =======================================================================
	MAIN
======================================================================= */
main{padding-top:70px;}
main section{width:100%;}
main section.bg1{background:url(https://kyoto-katsuo.co.jp/images/index/main_bg.jpg) repeat;}

/* CONTACT BTN */
main .contact_btn{
	text-align:center;
}
main .contact_btn a{
	width:80%;
	font-size:17px;
	line-height:1.5;
	display:block;
	position:relative;
	padding:15px 40px 15px 40px;
	margin:0 auto;
}
main .contact_btn a.cbtn1{
	color:#FFF;
	background:#BF1920;
	border:#BF1920 1px solid;
	margin-top:20px;
}
main .contact_btn a.cbtn2{
	color:#111;
	background:#FFF;
	border:#111 1px solid;
	margin-top:20px;
}
main .contact_btn a.cbtn3{
	color:#111;
	background:#FFF;
	border:#111 1px solid;
	margin-top:20px;
}
main .contact_btn a.cbtn1:after {
	content: '';
	width: 10px;
	height: 10px;
	border: 0;
	border-top: solid 2px #FFF;
	border-right: solid 2px #FFF;
	position: absolute;
	top: 43%;
	right: 20px;
	transform: rotate(45deg);
}
main .contact_btn a.cbtn2:after {
	content: '';
	width: 10px;
	height: 10px;
	border: 0;
	border-top: solid 2px #111;
	border-right: solid 2px #111;
	position: absolute;
	top: 43%;
	right: 20px;
	transform: rotate(45deg);
}

/* =======================================================================
	FOOTER
======================================================================= */
footer{
	color:#FFF;
	background:url(https://kyoto-katsuo.co.jp/images/menu/products_main_bg_sp.webp) #000 top center repeat;
	background-size:100% auto;
	margin-top: -25px;
}
footer .footer_inner{
	width:100%;
	text-align:center;
	display: flex;
	flex-wrap: wrap;
	padding:0;
	margin:0 auto;
}
p.footer_logo img{
	width:60%;
	height:auto;
}
.footer_inner .fbx01{
	border-top:#2b2b2b 1px solid;
	border-bottom:#2b2b2b 1px solid;
	padding:40px 0 0 0;
	order:3;
}
.footer_inner .fbx01 p{margin-bottom:25px;}
.footer_inner .fbx01 a{color:#FFF;}
.footer_inner .fbx01 p.footer_sns img{
	width:auto;
	height:30px;
	margin:6px 20px;
}
p.footer_sponser br{display:none;}
.footer_inner .fbx01 p.footer_sponser,
.footer_inner .fbx01 p.footer_sponser2{
	font-size:15px;
	text-align:left;
	border-top:#2b2b2b 1px solid;
	padding:6% 9% 6% 10%;
	margin:0 auto;
}
.footer_inner .fbx01 p.footer_sponser img{
	float:left;
	width:70px;
	height:auto;
	margin-right:20px;
}
.footer_inner .fbx01 p.footer_sponser2 img{
	display:block;
	margin-bottom:15px;
}
.footer_inner .fbx02{order:1;}
.footer_inner .fbx02 a{
	width:100%;
	font-size:16px;
	color:#FFF;
	display:inline-block;
	border-top:#2b2b2b 1px solid;
	padding:15px 0;
}
.footer_inner .fbx03{display:none;}
footer .copyright{
	width:100%;
	font-size:11px;
	text-align:center;
	padding:6% 0 7% 0;
}
@media screen and (max-width: 280px){
	.footer_inner .fbx01 p{padding:0 5%;}
	.footer_inner .fbx01 p.footer_sns img{height:24px;margin:6px 10px;}
	footer .copyright{font-size:10px;}
}

/* =======================================================================
	INDEX
======================================================================= */

/* FLOAT BNR
------------------------------------------------------------------------*/
main #floatbnr{
	display: none;
    position: fixed;
    right: 0;
    bottom: 0;
    z-index:2;
}
#floatbnr .floatbnr_inner{position:relative;}
#floatbnr .floatbnr_inner span{
	width:28px;
	height:28px;
	background:url(https://kyoto-katsuo.co.jp/images/common/floatbnr_close_btn.png) no-repeat;
	background-size:100%;
	position:absolute;
	cursor: pointer;
	top:-12px;
	right:5px;
	z-index:3;
}
#floatbnr .floatbnr_inner img{
	width:auto;
	height:65px;
	display:block;
	margin-bottom:1px;
	transition:0.2s all;
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .5);
}

/* MV
------------------------------------------------------------------------*/
main section.mv{
	width:100%;
	height:80vh;
	overflow:hidden;
	position:relative;
}
section.mv .mv_txt{
    position: absolute;
    top: 50%;
    left: calc(50% + 3px);
    transform: translate(-50%, calc(-50% - 3px));
    z-index:2;
}
section.mv .mv_txt img{
	width:70px;
 	animation: fadeIn 3s ease 0s 1 normal;
    -webkit-animation: fadeIn 3s ease 0s 1 normal;
}
@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

/* Swiper */
.swiper,
.swiper-wrapper{
	height:100%;
	overflow:hidden;
}
main section.mv > .spnone,
main section.mv > .pcnone{
	height:100%;
	overflow:hidden;
}
main section.mv .swiper,
main section.mv .swiper .swiper-wrapper,
main section.mv .swiper .swiper-slide,
main section.mv .swiper .top-hero-slide-link,
main section.mv .swiper .slide-img{
	height:100% !important;
	overflow:hidden;
}
main section.mv .swiper .swiper-wrapper,
main section.mv .swiper .swiper-slide{
	min-height:0 !important;
}
.swiper-slide{
	position:relative;
	overflow:hidden;
	background:#111;
}
.top-hero-slide-link{
	display:block;
	position:relative;
	height:100%;
	color:inherit;
	text-decoration:none;
}
.top-hero-slide-link:hover{
	opacity:1;
}
.top-kazejuku-hero{
	display:flex;
	flex-direction:column;
	position:relative;
	width:100%;
	height:100%;
	min-height:0;
	overflow:hidden;
	background:#fff;
	color:#111;
	font-family:'Shippori Mincho', serif;
	text-align:center;
	text-decoration:none;
}
.top-kazejuku-hero:hover{
	opacity:1;
	text-decoration:none;
}
.swiper-slide:not(.swiper-slide-active) .top-kazejuku-hero,
.swiper-slide-prev .top-kazejuku-hero,
.swiper-slide-next .top-kazejuku-hero{
	visibility:hidden !important;
	opacity:0 !important;
	pointer-events:none;
}
.swiper-slide-active .top-kazejuku-hero{
	visibility:visible !important;
	opacity:1 !important;
}
.top-kazejuku-hero::before{
	content:none;
}
.top-kazejuku-hero__visual{
	position:relative;
	flex:1;
	min-height:0;
	z-index:1;
	margin:0;
	overflow:hidden;
}
.top-kazejuku-hero__visual::after{
	content:'';
	position:absolute;
	inset:0 0 auto;
	height:clamp(64px, 20vw, 90px);
	z-index:2;
	background:linear-gradient(180deg, #faf9f5 0%, rgba(250,249,245,0.85) 20%, rgba(250,249,245,0.35) 60%, rgba(250,249,245,0) 100%);
	pointer-events:none;
}
.top-kazejuku-hero__visual img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center 38%;
	transform:scale(1);
	will-change:transform;
}
.top-kazejuku-hero__content{
	position:relative;
	z-index:3;
	width:100%;
	box-sizing:border-box;
	flex:none;
	padding:20px 16px 18px;
	background:#faf9f5;
	color:#111;
}
.top-kazejuku-hero__label{
	display:block;
	margin:0 0 10px;
	color:#80641e;
	font-size:10px;
	font-weight:600;
	letter-spacing:0.22em;
	line-height:1.5;
}
.top-kazejuku-hero__label::after{
	content:'';
	display:block;
	width:140px;
	height:1px;
	margin:8px auto 0;
	background:linear-gradient(90deg, transparent 0%, #b28a2b 44%, #b28a2b 56%, transparent 100%);
}
.top-kazejuku-hero__title{
	margin:0 0 10px;
	font-size:clamp(28px, 8.5vw, 38px);
	font-weight:700;
	line-height:1.12;
	letter-spacing:0.06em;
	white-space:nowrap;
}
.top-kazejuku-hero__copy{
	position:relative;
	display:flex;
	flex-direction:column;
	align-items:center;
	gap:2px;
	margin:0 0 12px;
	padding-bottom:0;
	font-size:clamp(11px, 3.1vw, 13.5px);
	line-height:1.72;
	letter-spacing:0.02em;
	color:rgba(17,17,17,0.96);
	text-shadow:0 1px 14px rgba(255,255,255,0.55);
}
.top-kazejuku-hero__copy::after{
	content:none;
}
.top-kazejuku-hero__button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:min(250px, calc(100vw - 110px));
	min-height:44px;
	box-sizing:border-box;
	padding:10px 20px;
	border:1px solid rgba(216,179,90,0.92);
	background:rgba(5,5,5,0.91);
	color:#fff;
	font-size:15px;
	font-weight:600;
	letter-spacing:0.12em;
	line-height:1.2;
	box-shadow:none;
}
.top-kazejuku-hero__button::after{
	content:'›';
	margin-left:1em;
	color:#d8b35a;
	font-size:1.3em;
	line-height:0;
}
.top-kazejuku-hero__person{
	position:absolute;
	z-index:3;
	right:18px;
	bottom:48px;
	padding:7px 10px;
	background:rgba(0,0,0,0.65);
	margin:0;
	color:#fff;
	text-align:right;
	letter-spacing:0.12em;
	text-shadow:none;
}
.top-kazejuku-hero__person-role{
	display:block;
	margin-bottom:5px;
	font-size:12px;
}
.top-kazejuku-hero__person-name{
	display:block;
	font-size:18px;
	line-height:1.35;
}
.slide-img img{
	display:block;
	width: 100%;
	height:100% !important;
	object-position: center bottom;
	object-fit: cover;
}
.slide-img{
	width:100%;
	height:100%;
	transform-origin:center bottom;
	transform:scale(1);
	will-change:transform;
	line-height:0;
}
.slide-img img.ptop{
	object-position: center top;
}
.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img{animation: zoomUp 15s linear 0s 1 normal both;}
.swiper-slide-active .top-kazejuku-hero__visual img,
.swiper-slide-duplicate-active .top-kazejuku-hero__visual img{animation: zoomUp 15s linear 0s 1 normal both;}
.swiper-slide.is-freezing-zoom .slide-img,
.swiper-slide.is-freezing-zoom .top-kazejuku-hero__visual img{
	animation:none !important;
}
@keyframes zoomUp {
	0% {transform: scale(1);}
	100% {transform: scale(1.15);}
}
.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom:25px !important;
	z-index:100 !important;
}
.swiper-pagination-bullet {
	width:8px !important;
	height:8px !important;
	background:#FFF !important;
	opacity:1 !important;
	box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .2) ;
}
.swiper-pagination-bullet.swiper-pagination-bullet-active{background:#BF1920 !important;}

/* CONCEPT
------------------------------------------------------------------------*/
main section.concept{
	width:100%;
	background:url(https://kyoto-katsuo.co.jp/images/common/bg1.png) center repeat;
	padding:40px 0 50px 0;
}
section.concept .concept_inner{
	width:82%;
	position:relative;
	padding:0 0 30px 0;
	margin:0 auto;
}
section.concept .concept_inner h1{
	font-size:20px;
	line-height:1.5;
	font-weight:600;
	margin:0 0 25px 0;
}
section.concept .concept_inner h2{
	font-size:15px;
	line-height:1.7;
	font-weight:600;
}
section.concept img.concept_logo{
	width:auto;
	height:40px;
	right:-2%;
	bottom:-15px;
	position:absolute;
}

@media screen and (max-width: 360px){
section.concept .concept_inner h2{font-size:14px;}
}


/* TOPICS
------------------------------------------------------------------------*/
main section.topics{
	width:100%;
	min-height:640px;
	position:relative;
	padding:40px 0;
}
section.topics h2.content_head{
	font-size:14px;
	color:#BF191F;
	font-weight:600;
	text-align:center;
	margin-bottom:25px;
}
section.topics h2.content_head span{
	font-size:26px;
	font-weight:500;
	color:#111 !important;
	display:block;
}
section.topics .swiper-topics{
	width:100%;
	position:absolute;
	right:0;
	overflow:hidden;
}
section.topics .swiper-wrapper .swiper-slide{}
section.topics .swiper-wrapper .swiper-slide a{color:#111;}
section.topics .swiper-wrapper .swiper-slide img{
	width:100%;
	height:240px;
	object-fit: cover;
}
section.topics .swiper-wrapper .swiper-slide .news_txt{
	width:90%;
	margin:15px auto;
}
section.topics .swiper-wrapper .swiper-slide .news_txt span.news_date{
	font-size:15px;
	color:#BF1920;
	margin-right:20px;
}
section.topics .swiper-wrapper .swiper-slide .news_txt h3{
	margin-top:10px;
}
section.topics .swiper-button-next,
section.topics .swiper-button-prev {
    margin-top:-80px;
    color:#FFF;
    z-index: 1;
}
section.topics .swiper-button-next:after,
section.topics .swiper-button-prev:after {
    font-size:28px;
    font-weight:bold;
}
section.topics .contact_btn{
	width:100%;
	position: absolute;
    bottom:10px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

/* REASON
------------------------------------------------------------------------*/
main section.reason{
	width:100%;
	background:url(https://kyoto-katsuo.co.jp/images/common/bg2.png) center repeat;
	position:relative;
	padding:60px 0;
}
section.reason h2 img{
	width:65%;
	height:auto;
	display:block;
	margin:0 auto;
}
section.reason .reason_bx{
	margin-top:50px;
}
section.reason .reason_bx .rb_txt{
	width:100%;
	color:#FFF;
	padding:0 7%;
}
section.reason .reason_bx .rb_txt br.dn{display:none;}
section.reason .reason_bx .rb_img{
	width:100%;
}
section.reason .reason_bx .rb_img2{
	width:100%;
}
section.reason .reason_bx .rb_img img,
section.reason .reason_bx .rb_img2 img{
	width: 100%;
    height: auto;
}
section.reason .reason_bx .rb_txt h3{
	font-size:20px;
	font-weight:500;
	margin-top:30px;
}
section.reason .reason_bx .rb_txt h4{
	font-size:15px;
	font-weight:400;
	line-height:1.8;
	margin-top:15px;
}
section.reason .reason_bx .rb_txt span{
	font-size:13px;
	display:block;
	margin-top:10px;
}
@media screen and (max-width: 360px){
section.reason .reason_bx .rb_txt h4{font-size:14px;}
}


/* PRODUCTS
------------------------------------------------------------------------*/
main section.products{
	width:100%;
	padding:40px 0 50px 0;
}
section.products .products_inner{
	width:100%;
	margin:0 auto;
}
section.products h2.content_head{
	font-size:14px;
	color:#BF191F;
	font-weight:600;
	text-align:center;
	margin-bottom:30px;
}
section.products h2.content_head span{
	font-size:26px;
	font-weight:500;
	color:#111 !important;
	display:block;
}
section.products ul.products_area{
	width:100%;
	list-style-type: none;
	margin-bottom:50px;
}
section.products ul.products_area li{
	margin-bottom:40px;
}
section.products ul.products_area li img{
	width:100%;
	height:240px;
	object-position: center top;
	object-fit: cover;
	transition:0.2s all;
	margin:15px 0 20px 0;
}
section.products ul.products_area li h3{
	width:80%;
	font-size:22px;
	font-weight:500;
	text-align:center;
	position:relative;
	margin:0 auto;
}
section.products ul.products_area li h3:before {
    content: '';
    position: absolute;
    top: 51%;
    display: inline-block;
    width: 35px;
    height: 1px;
    background-color: #000;
    left: 0;
}
section.products ul.products_area li h3:after {
    content: '';
    position: absolute;
    top: 51%;
    display: inline-block;
    width: 35px;
    height: 1px;
    background-color: #000;
    right: 0;
}
section.products ul.products_area li h4{
	width:90%;
	font-size:16px;
	font-weight:400;
	line-height:1.8;
	margin:0 auto;
}

/* SERVICE
------------------------------------------------------------------------*/
main section.service{
	width:100%;
	background:url(https://kyoto-katsuo.co.jp/images/top/service_bg_sp.webp) top center #34342E no-repeat;
	background-size:cover;
	padding:45px 0 5px;
}
section.service .service_inner{
	width:100%;
	color:#FFF;
	text-align:center;
}
.service_inner h2{
	font-size:24px;
	font-weight:500;
	letter-spacing:2px;
	margin:0 auto;
}
.service_inner ul{
	width:100%;
	list-style-type: none;
	margin-top:40px;
}
.service_inner ul li{
	width:100%;
	display: flex;
	flex-wrap: wrap;
	margin-bottom:50px;
}
.service_inner ul li img{
	width:100%;
	height:240px;
	object-fit: cover;
	object-position: center top;
	order: 1;
	margin:0 0 22px 0;
}
.service_inner ul li h3{
	width:100%;
	font-size:20px;
	font-weight:500;
	text-align:center;
	order: 2;
}
.service_inner ul li h4{
	font-size:16px;
	text-align:left;
	padding:0 5%;
	margin-top:15px;
	order: 3;
}
.service_inner ul li h4 br.dn{display:none;}

/* VOICE
------------------------------------------------------------------------*/
main section.voice{
	width:100%;
	background:url(https://kyoto-katsuo.co.jp/images/top/voice_bg.webp) no-repeat;
	background-size:cover;
	padding:40px 0 50px 0;
}
section.voice .voice_inner{}
.voice_inner a{
	width:100%;
	height:100%;
	display:block;
}
.voice_inner h2{
	width:100%;
	font-size:14px;
	color:#BF191F;
	font-weight:600;
	text-align:center;
	margin-bottom:30px;
}
.voice_inner h2 span{
	font-size:26px;
	font-weight:500;
	color:#111 !important;
	display:block;
}
.voice_inner img.voice_pic{
	width:100%;
	height:auto;
}
.voice_inner .voice_name{
	width:100%;
	line-height:2;
	background:url(https://kyoto-katsuo.co.jp/images/common/bg3.png) no-repeat;
	color:#FFF;
	text-align:center;
	padding:20px 0;
}
.voice_inner .voice_txt{
	width:90%;
	text-align:center;
	margin:30px auto 40px auto;
}
.voice_inner .voice_txt h3{
	font-size:19px;
	font-weight:500;
}
.voice_inner .voice_txt h4{
	font-size:17px;
	font-weight:400;
	margin-top:20px;
}


/* =======================================================================
	MENU
======================================================================= */
main#sub_page{padding-top:70px;}
main#sub_page .page_head{
	width:100%;
	color:#FFF;
}
.page_head .page_head_inner{
	width:90%;
	margin:0 auto;
}
.page_head .page_head_inner h2{
	font-size:23px;
	font-weight:600;
	line-height:1;
	letter-spacing:2px;
}
.page_head .page_head_inner h2 span{
	font-size:11px;
	font-family:sans-serif;
	display:block;
	letter-spacing:2px;
	margin:15px 0 0 4px;
}
main#sub_page .menu_page_inner{
	width:90%;
	padding:6% 0 12% 0;
	margin:0 auto;
}

/* PRODUCTS
------------------------------------------------------------------------*/
main#sub_page .page_head .products_headtxt{
	font-size:17px;
	display:inline-block;
	border-radius:100px;
	background:#BF1920;
	padding:3px 20px;
	margin-top:40px;
}
main#sub_page .products_page_inner{
	width:100%;
	padding:4% 0 12% 0;
	margin:0 auto;
}
main#sub_page.products_bg{
	background:url(https://kyoto-katsuo.co.jp/images/menu/products_main_bg_sp.webp) #000 repeat;
	background-position:top 250px center;
	background-size:100% auto;
}
.page_head.products_title{
	height:200px;
	background:url(https://kyoto-katsuo.co.jp/images/menu/page_head_bg1.webp) center no-repeat;
	background-size:cover;
	text-align:center;
	padding:60px 0 0 0;
}
main#sub_page .products_list{
	width:100%;
	line-height:1.8;
	color:#FFF;
	text-align:center;
	margin:5px auto 0 auto;
}
.products_list h3{
	font-size:18px;
	font-weight:500;
	position: relative;
	display: inline-block;
	letter-spacing:2px;
	margin:0 auto 40px auto;
}
.products_kazejuku_banner{
	width:100%;
	margin:-18px 0 44px 0;
	opacity:1 !important;
}
.products_kazejuku_banner.fadein{opacity:1 !important;}
.products_kazejuku_banner a{
	display:block;
	border-top:1px solid rgba(255,255,255,0.36);
	border-bottom:1px solid rgba(255,255,255,0.36);
	border-left:0;
	border-right:0;
	border-radius:0;
	overflow:hidden;
	box-shadow:0 12px 30px rgba(0,0,0,0.34);
}
.products_kazejuku_banner img{
	display:block;
	width:100%;
	height:auto;
}
.products_list h4{
	font-size:19px;
	font-weight:500;
	margin:20px 0 10px 0;
}
.products_list h4 span{
	font-size:16px;
	color:#FFF175;
	display:block;
	margin:20px 0 0 0;
}
.products_list p{
	width:90%;
	margin:0 auto;
}
.products_list p br.dn{display:none;}
.products_list ul,
.products_point ul{
	width:100%;
	margin-bottom:50px;
}
.products_list ul li,
.products_point ul li{
	margin-bottom:50px;
}
.products_list ul li img,
.products_point ul li img{
	width:100%;
	height:240px;
	object-fit: cover;
}
.products_list hr{
	height: 0;
	border: 0;
	border-top: 1px solid #333;
	padding:0 0 40px 0;
	margin: 0;
}
main#sub_page .products_point{
	width:100%;
	color:#FFF;
	text-align:center;
	border-top:#333 1px solid;
	margin:0 auto;
}
.products_point h3{
	font-size:22px;
	font-weight:400;
	position: relative;
	display: inline-block;
	letter-spacing:2px;
	margin:50px auto;
}
.products_point ul{
	width:90%;
	list-style-type: none;
	margin:0 auto 2.5% auto;
}
.products_point ul li{
	border:#333 1px solid;
	padding:20px 0 35px 0;
	margin:0 0 30px 0;
}
.products_point ul li img{
	width:auto;
	height:60px;
}
.products_point p.point_number{
	width:30px;
	font-size:24px;
	display:block;
	border-bottom:#E1222C 1px solid;
	color:#E1222C;
	margin:0 auto;
}
.products_point h4{
	font-size:18px;
	min-height:80px;
	margin:25px 0 35px 0;
}
.products_point h5{
	font-size:17px;
	font-weight:400;
	line-height:2;
	margin:35px auto;
}
.products_point .sample{
	width:90%;
	border:#555 1px solid;
	margin:45px auto 20px auto;
}
.sample .sample_head{
	font-size:18px;
	border-bottom:#555 1px solid;
	padding:15px 20px;
}
.sample .sample_main{
	text-align:left;
	padding:20px;
}

/* VOICE */
.products_voice{
	width:100%;
	background:#111111;
	padding:25px 0 35px 0;
	margin:0 auto;
}
.products_voice ul{
	width:100% !important;
	padding:0 !important;
	margin:0!important;
}
.products_voice li{
	border:none !important;
	padding:0 !important;
	margin: 0 !important;
}
.products_voice li.pv_head{}
.products_voice li.pv_pic{margin:22px 0 25px 0 !important;}
.products_voice li.pv_txt{margin:0 0 30px 0 !important;}

.products_voice li.pv_pic img{
	width:100%;
	height:auto;
	object-fit: cover;
}
.products_voice li h3{
	font-size:14px;
	color:#BF191F;
	font-weight:600;
	text-align:center;
	display:block;
	margin:0 auto;
}
.products_voice li h3 span{
	font-size:26px;
	font-weight:500;
	color:#FFF !important;
	display:block;
}
.products_voice li.pv_txt h4{
	min-height:auto !important;
	font-size:17px !important;
	padding:0 !important;
    margin:0 !important;
}
.products_voice li.pv_txt h5{
	font-size:15px !important;
	line-height:1.6;
	padding:0 !important;
    margin:20px 0 0 0 !important;
}

/* Youtube BNR */
.products_voice li.pv_txt h5{font-size:16px !important;}
.youtube_bnr img{width:100%; height:auto;}

@media screen and (max-width: 280px){
	.sample .sample_head{font-size:17px;padding:15px 35px;}
	.sample .sample_main{font-size:15px;}
}

/* PRIVACY
------------------------------------------------------------------------*/
.page_head.privacy_title{
	height:120px;
	background:url(https://kyoto-katsuo.co.jp/images/menu/page_head_bg2.webp) #0B0B0B center top no-repeat;
	background-size:cover;
	padding:35px 0 0 0;
}
main#sub_page .privacy dt{
	font-weight:500;
	margin:30px 0 15px 0;
}
main#sub_page .privacy ul{
	margin-left:20px;
}

/* VOICE
------------------------------------------------------------------------*/
.page_head.voice_title{
	height:120px;
	background:url(https://kyoto-katsuo.co.jp/images/menu/page_head_bg3.webp) #0B0B0B center top no-repeat;
	background-size:cover;
	padding:35px 0 0 0;
}
main#sub_page.voice_bg{
	background:url(https://kyoto-katsuo.co.jp/images/top/voice_bg.webp) repeat;
	background-position:0 600px;
}
.voice_page_inner{
	width:100%;
	padding:0 0 8% 0;
	margin:0 auto;
}
.voice_page_inner .voice_info{position: relative;}
.voice_page_inner .voice_info img{
	width:100%;
	height:auto;
}
.voice_page_inner .voice_info .voice_name{
	width:100%;
	line-height:2;
	background:url(https://kyoto-katsuo.co.jp/images/common/bg3.png) repeat;
	color:#FFF;
	text-align:center;
	padding:20px 0;
}
.voice_page_inner .voice_txt{
	font-weight:500;
}
.voice_page_inner .voice_txt .voice_txt_head{
	width:90%;
	margin:35px auto 0 auto;
}
.voice_page_inner .voice_txt .voice_txt_head h3{
	font-size:19px;
	font-weight:500;
	line-height:1.8;
}
.voice_page_inner .voice_txt .voice_txt_head p{
	font-size:16px;
	margin-top:15px;
}
.voice_page_inner .voice_txt p.question{
	width:90%;
	font-size:18px;
	font-weight:500;
	line-height:1.7;
	color:#003A8C;
	border-bottom:#C3C3C3 1px solid;
	padding:0 0 10px 0;
	margin:40px auto 25px auto;
}
.voice_page_inner .voice_txt h4{
	width:90%;
	font-size:18px;
	font-weight:600;
	margin:20px auto 25px auto;
}
.voice_page_inner .voice_txt h5{
	width:90%;
	font-size:16px;
	font-weight:500;
	margin:0 auto;
}
.voice_page_inner .voice_txt .voice_txt_pic{
	margin:40px auto 20px auto;
}
.voice_page_inner .voice_txt .voice_txt_pic img{
	width:100%;
	height:240px;
	object-position: center center;
	object-fit: cover;
}
main#sub_page .return_btn{
	text-align:center;
	margin:50px 0 20px 0;
}
main#sub_page .return_btn a{
	width:80%;
	font-size:17px;
	line-height:1.5;
	display:block;
	position:relative;
	padding:15px 40px;
	margin:0 auto;
	color:#111;
	background:#FFF;
	border:#111 1px solid;
}

/* VOICE LIST */
main#sub_page .voice_list{
	padding:0 0 50px 0;
	margin:0 auto;
}
.voice_list .vl_bx{
	width:90%;
	position:relative;
	margin:35px auto 0 auto;
}
.vl_bx .vl_bx_img img{
	width:100%;
	height:auto;
}
.vl_bx .vl_bx_txt{width:100%;}
.vl_bx a{color:#111;}
.vl_bx a:hover{opacity:0.75;}
.vl_bx .vl_bx_txt .voice_name{
	width:100%;
	line-height:2;
	background:url(https://kyoto-katsuo.co.jp/images/common/bg3.png) repeat;
	color:#FFF;
	text-align:center;
	padding:20px 0;
}
.vl_bx .vl_bx_txt h3{
	background:#FFF;
	padding:20px;
}


/* CONTACT
------------------------------------------------------------------------*/
main#sub_page.contact_bg{
	background:url(https://kyoto-katsuo.co.jp/images/top/voice_bg.webp) repeat;
}
.page_head.contact_title{
	height:120px;
	background:url(https://kyoto-katsuo.co.jp/images/menu/page_head_bg4.webp) #0B0B0B center top no-repeat;
	background-size:cover;
	padding:35px 0 0 0;
}
.contact_page_inner{
	font-weight:500;
	text-align:center;
	padding:8% 0 12% 0;
	margin:0 auto;
}
.contact_page_inner h3{
	font-size:16px;
	font-weight:500;
	margin-bottom:10px;
}
.contact_page_inner h3.thx{
	line-height:2;
	padding:30px 0 15px 0;
}
.contact_page_inner table{
	width:90%;
	font-size:16px;
	text-align:left;
	border-collapse:collapse;
	margin:0 auto;
}
.contact_page_inner table.form_conf{
	background:#FFF;
	border-right:#CCC 1px solid;
	border-bottom:#CCC 1px solid;
	border-left:#CCC 1px solid;
	border-collapse:collapse;
	border-spacing:1px;
	background:#FFF;
	margin-top:30px;
}
.contact_page_inner table.form_conf th{
	padding:10px 20px;
	background:#f8f8f8;
	border-top:#BBB 1px solid;
	border-bottom:#BBB 1px solid;
}
.contact_page_inner table.form_conf td{padding:15px 20px;}
.contact_page_inner table th{
	display:block;
	padding:25px 0 0 0;
}
.contact_page_inner table td{
	display:block;
	padding:5px 0 0 0;
}
.contact_page_inner table label{
	display:inline-block;
	margin:10px 0 8px 0;
}
.contact_page_inner span.notes{
	font-size:14px;
	display:inline-block;
}
.contact_page_inner span.req{
	font-size:12px;
	line-height:1;
	color:#FFF;
	display:inline-block;
	background:#CD1B23;
	padding:3px 5px 4px 5px;
	margin:0 0 0 12px;
}
.contact_page_inner p.notes{
	width:90%;
	font-size:16px;
	line-height:1.8;
	font-weight:500;
	text-align:left;
	margin:25px auto 30px auto;
}
.contact_page_inner p.privacy{
	width:90%;
	font-size:16px;
	line-height:1.8;
	font-weight:500;
	text-align:center;
	margin:25px auto;
}
.contact_page_inner p.privacy a{text-decoration: underline;}
.contact_page_inner .phone{
	width:80%;
	border:#999 1px solid;
	background:#FFF;
	position:relative;
	margin:45px auto;
}
.contact_page_inner .phone a{
	width:100%;
	height:100%;
	display:block;
	position:absolute;
	top:0;
	left:0;
}
.contact_page_inner .phone .phone_left{
	font-size:18px;
	color:#FFF;
	background:#111;
	padding:8px 0;
}
.contact_page_inner .phone .phone_right{
	font-size:14px;
	line-height:1.8;
	padding:10px 0 15px 0;
}
.contact_page_inner .phone .phone_right h4{
	font-size:20px;
	font-weight:600;
	letter-spacing:1px;
}
span.msg{color:#BF1920;}

/* FORM BTN */
.contact_page_inner .btnarea{}
.contact_page_inner .btnarea.btnarea ul{
	list-style:none;
	text-align:center;
	margin:40px 0 0 0;
}
.contact_page_inner .btnarea.btnarea li{
	width:100%;
	color:#FFF;
	display:block;
	margin:25px 0;
}
.contact_page_inner .btnarea.btnarea .conbtn1{
	width:300px;
	font-size:19px;
	line-height:1.0;
	color:#FFF;
	display:block;
	cursor: pointer;
	border-radius:50px;
	border:none;
	background:#4987BA;
	padding:22px 0;
	margin:0 auto;
}
.btnarea .conbtn2{
	width:300px;
	font-size:19px;
	line-height:1.0;
	color:#FFF;
	display:block;
	cursor: pointer;
	border-radius:50px;
	border:none;
	background:#BF1920;
	padding:22px 0;
	margin:0 auto;
}

/* FORM PARTS */
.contact_page_inner .sp100{	width:100%;}
.contact_page_inner input{
	background:#FFF;
	border-radius:2px;
	vertical-align:middle;
	padding:1% 2%;
	margin:5px 5px 5px 0;
}
.contact_page_inner input[type="checkbox"],
.contact_page_inner input[type="radio"]{
	margin:-3px 10px 0 0;
}
.contact_page_inner input[type="text"],
.contact_page_inner input[type="number"]{
	border:1px solid #999;
}
.contact_page_inner input[type="number"]{}
.contact_page_inner input[type="number"]::-webkit-inner-spin-button,
.contact_page_inner input[type="number"]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	-moz-appearance:textfield;
	margin: 0;
}
.contact_page_inner select{
	border:1px solid #999;
	background:#FFF;
	padding:7px 5px;
	margin:10px 0;
}
.contact_page_inner textarea{
	background:#FFF;
	border:1px solid #999;
	border-radius:2px;
	padding:2% 3%;
	margin-top:5px;
}

/* COMPANY
------------------------------------------------------------------------*/
.page_head.company_title{
	height:120px;
	background:url(https://kyoto-katsuo.co.jp/images/menu/page_head_bg2.webp) #0B0B0B center top no-repeat;
	background-size:cover;
	padding:35px 0 0 0;
}
main#sub_page .company_page_inner{padding:0;}
main#sub_page .company_page_inner h3{
	font-size: 22px;
    font-weight: 500;
    line-height:1.6;
    letter-spacing: 2px;
    text-align:center;
	margin-bottom:40px;
}
.company_page_inner .message{
	width:90%;
	font-weight:500;
	padding:35px 0 20px 0;
	margin:0 auto;
}
.company_page_inner .message p{margin-bottom:25px;}
.company_page_inner .message img{
	width:85%;
	height:350px;
	display:block;
	object-position: center top;
	object-fit: cover;
	margin:0 auto 40px auto;
}
.company_page_inner .mvv{
	text-align:center;
	background:#F7F7F7;
	padding:40px 5%;
}
.mvv .mvv_pic{}
.mvv .mvv_pic img{
	width:70%;
	height:auto;
	margin:-10px 0 10px 0;
}
.mvv .mvv_bx{
	width:100%;
	border: #999 1px solid;
    background: #FFF;
    padding:25px 5%;
    margin:20px auto 0 auto;
}
.mvv .mvv_bx h4{
	font-size:22px;
	font-weight:600;
	text-align:center;
	margin-bottom:15px;
}
.mvv .mvv_bx h4 span{
	font-size:14px;
	color:#BF1920;
	display:block;
}
.mvv .mvv_bx h5{text-align:left;}
.mvv h6{text-align:left;margin:20px 0 0 0;}
.company_page_inner .about{
	width:90%;
	font-weight:500;
	padding:35px 0;
	margin:0 auto;
}
.company_page_inner dl{
	width:100%;
	border-bottom:#888 1px dashed;
	margin:-10px auto 15px auto;
}
.company_page_inner dt{
	width:100%;
	font-weight:600;
	border-top:#888 1px dashed;
	padding:10px 0 5px 0;
}
.company_page_inner dd{
	width:100%;
	padding:0 0 10px 0;
}
.company_page_inner .history{
	width:100%;
	font-weight:500;
	background:#F7F7F7;
	padding:35px 5%;
	margin:0 auto;
}
.company_page_inner .location{
	width:90%;
	font-weight:500;
	padding:35px 0;
	margin:0 auto;
}
.location a.map_btn{
	width:180px;
	line-height:1;
	display:block;
	color:#111;
	background:#FFF;
	border:#888 1px solid;
	position:relative;
	padding:12px 20px 14px 45px;
	margin:20px auto 0 auto;
}
.location a.map_btn:before {
	width:16px;
	height:22px;
	background:url(https://kyoto-katsuo.co.jp/images/menu/company_location_icon.png) no-repeat;
	background-size:16px 22px;
    content: '';
    display: inline-block;
	position:absolute;
	top:11px;
	left:20px;
}
.location a.map_btn img{
	width:18px;
	height:auto;
}
.location .location_bx{
	width:100%;
	text-align:center;
	margin:-15px auto 0 auto;
}
.location .location_bx h4{
	font-size:18px;
	font-weight:600;
	margin:15px 0 10px 0;
}
.location .location_bx p{font-size:15px;}
.location_bx img{
	width:100%;
	height:auto;
	margin:0;
}
.location dl{
	text-align:center;
	margin-top:-5px;
}
.location dt{
	font-size:18px;
	padding:15px 0 10px 0;
}
.location dd{
	font-size:15px;
	padding:0 0 22px 0;
}
.company_page_inner .haccp{
	width:100%;
	font-weight:500;
	background:#F7F7F7;
	padding:35px 5% 50px 5%;
	margin:0 auto;
}
.haccp .haccp_bx1{
	width:100%;
	background:#FFF;
	border:#888 1px solid;
    padding:0 5% 25px 5%;
	margin:-10px auto 0 auto;
}
.haccp .haccp_bx1 img{
	display:block;
	margin:0 auto;
}
.haccp .haccp_bx1 p{padding:5px 0 0 0;}
.haccp .haccp_bx2{
	width:100%;
	margin:25px auto 0 auto;
}
.haccp .haccp_bx2 img{
	width:100%;
	height:240px;
	display:block;
	object-position: center center;
	object-fit: cover;
	margin:0;
}
.haccp .haccp_bx2 h4{
	font-size:20px;
	margin:20px 0 15px 0;
}


/* =======================================================================
	NEWS
======================================================================= */
main#sub_page .news_area{
	width:90%;
	text-align:left;
	margin:30px auto 60px auto;
}
main#sub_page .news_area a{color:#111;}
/* 【NEWS LEFT】 */
main#sub_page .news_area .news_left{
	width:100%;
	background:none;
	padding:0;
	margin:0 auto;
}
.news_left h3.archive_title{
	font-size:24px;
	margin-bottom:30px;
}
.news_left .news_bx{
	border-bottom: 1px #ccc dashed;
	padding-bottom:20px;
	margin-bottom:20px;
}
.news_bx .news_info{
	width:100%;
	margin-bottom:1px;
}
.news_info span.news_date{
	font-weight:600;
	color:#BF1920;
	display:inline-block;
	margin-right:15px;
}
.news_info span.news_cate a{
	font-weight:600;
	display:inline-block;
	color:#111;
}
.news_left h3{
	font-size:18px;
	margin-top:10px;
}

/* PAGINATION */
.pager {}
.pager .pagination {
	text-align: center;
	line-height: 0;
	margin-bottom: 30px;
}
.pager .pagination li {
	display: inline;
	margin: 0 2px;
	padding: 0;
	display: inline-block;
	width: 40px;
	height: 40px;
	overflow: hidden;
	text-align: center;
	position: relative;
	border-radius: 2px;
}
.pager .pagination li {
	display: none;
}
.pager .pagination li a {
	vertical-align: middle;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	display: table;
	text-decoration: none;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
}
.pager .pagination li a span {
	display: table-cell;
	vertical-align: middle;
	transform: none;
}
.pager .pagination .pre,
.pager .pagination .next {
	display: inline-block;
	width: 40%;
    height: 50px;
    text-align: center;
}
.pager .pagination .pre a,
.pager .pagination .next a {
    width: 100%;
    text-align: center;
}
.pager .pagination .pre span:after {
    content: "　前の10件へ";
}
.pager .pagination .next span:before {
    content: " 次の10件へ　";
}


/* 【NEWS RIGHT】 */
main#sub_page .news_area .news_right{
	width:100%;
	margin:0 auto;
}
.news_right h3,
.news_right h2.wp-block-heading{
	width:100%;
	font-size:16px;
	font-weight:bold;
	line-height:1.0;
	color:#FFF;
	background:#111;
	padding:8px 12px 10px 12px;
	margin-bottom:20px;
}
.news_right ul{
	list-style:none;
	padding:0;
	margin:0 0 30px 0;
}
.news_right ul li{
	padding:15px 0;
	margin:0;
}

/* SINGLE */
#news_content h3{
	font-size:22px;
	border-bottom:#888 1px dashed;
	padding:15px 0 20px 0;
	margin:0 0 20px 0;
}
#news_content {font-size:16px;}
#news_content .news_date{
	font-size:15px;
	line-height:1;
}
#news_content p{
	line-height:1.6;
	margin:0 0 25px 0;
}
#news_content img{margin:30px 0;}
#news_content iframe{
	width:100%;
	height:350px;
	margin:30px 0;
}

/* 404 */
main#sub_page .news_area .e404{
	text-align:center;
	margin:25% 0;
}
main#sub_page .news_area .e404 h3{
	font-size:22px;
	font-weight:700;
	text-align:center;
	margin:0 0 10px 0;
}

/* =======================================================================
	RECRUIT
======================================================================= */
main#recruit{}
main#recruit .recruit_top{padding:0 0 65px 0;}
main#recruit #floatbnr .floatbnr_inner img{
	width:auto;
	height:70px;
	display:block;
	margin:0;
	transition:0.2s all;
	box-shadow:none;
}

/* MV
------------------------------------------------------------------------*/
main#recruit section.mv{
	width:100%;
	height:450px;
	background:url(https://kyoto-katsuo.co.jp/images/recruit/mv_pic_sp.webp) center repeat;
	background-size:cover;
	position:relative;
}
main#recruit section.mv h1{
	font-size:30px;
	line-height:1.3;
	color:#FFF;
	text-shadow: 0 0 10px rgb(0, 0, 0, 0.8),0 0 10px rgb(0, 0, 0, 0.8),0 0 10px rgb(0, 0, 0, 0.8);
	position:absolute;
	left:20px;
	top:220px;
}

/* CONCEPT
------------------------------------------------------------------------*/
main#recruit section.concept{
	background:url(https://kyoto-katsuo.co.jp/images/recruit/concept_bg1.webp) center repeat;
	padding: 30px 0 50px 0;
}
main#recruit section.concept .concept_inner h2 {
    font-size: 16px;
    line-height:1.7;
}

/* MOVIE
------------------------------------------------------------------------*/
main#recruit section.movie{
	background: linear-gradient(#FFF, #E9E9E2);
}
section.movie .movie_inner{
	width:100%;
	background:url(https://kyoto-katsuo.co.jp/images/recruit/movie_bg.png) bottom no-repeat;
	background-size:100% auto;
	text-align:center;
	padding:40px 0;
}
main#recruit section.movie h2,
main#recruit section.message h2,
main#recruit section.person h2,
main#recruit section.work h2{
	font-size:28px;
	font-weight:700;
	line-height:1;
	text-align:center;
	padding:0;
	margin:0;
}
main#recruit section.movie h2 span,
main#recruit section.message h2 span,
main#recruit section.person h2 span,
main#recruit section.work h2 span{
	font-size:18px;
	display:block;
	margin-top:15px;
}
main#recruit section.movie iframe{
	width:90%;
	height:220px;
	margin-top:40px;
}

/* MESSAGE
------------------------------------------------------------------------*/
main#recruit section.message{
	width:100%;
	background: linear-gradient(#FFF, #f8f8f8);
	border-bottom:#eee 1px solid;
	padding: 30px 0 10px 0;
}
section.message .message_inner{
	width:90%;
	margin:0 auto;
}
main#recruit section.message h3{
	font-size:19px;
	font-weight:700;
	line-height:1.6;
	color:#BF191F;
	margin:0 0 15px 0;
}
main#recruit section.message p{
	font-size:16px;
	line-height:1.7;
	margin:0 0 25px 0;
}
main#recruit section.message p br{display:none;}
section.message .message_bx1{margin-top:30px;}
section.message .message_bx1 .mb1_pic{
	text-align:center;
	margin:0 0 25px 0;
}
.message_bx1 .mb1_pic img{
	width:100%;
	height:210px;
	display:block;
	border-radius: 30px 0 0 0;
	object-fit: cover;
	margin-bottom:10px;
}
section.message .message_bx2{margin-top:25px;}
section.message .message_bx2 .mb2_pic{
	text-align:center;
	margin:0 0 25px 0;
}
.message_bx2 .mb2_pic img{
	width:100%;
	height:210px;
	display:block;
	border-radius: 30px 0 0 0;
	object-fit: cover;
	margin:0;
}

/* PERSON
------------------------------------------------------------------------*/
main#recruit section.person{
	background:url(https://kyoto-katsuo.co.jp/images/recruit/person_bg_sp.webp) #F1F5F9 top no-repeat;
	text-align:center;
	padding:35px 0 15px 0;
}
main#recruit section.person h3{
	font-size:18px;
	font-weight:600;
	margin:30px 0;
}
main#recruit section.person ul{
	width:90%;
	list-style-type: none;
	margin:0 auto;
}
main#recruit section.person ul a{color:#111;}
main#recruit section.person li{
	background:#FFF;
	border-radius: 20px;
	box-shadow: 0 2px 3px rgba(0, 0, 0, .2);
	margin-bottom:25px;
}
main#recruit section.person li img{
	width:100%;
	height:210px;
	object-fit: cover;
	object-position: 0 0;
	border-radius: 20px 20px 0 0;
}
main#recruit section.person li h4{
	font-size:17px;
	font-weight:700;
	padding:20px 0;
}
main#recruit section.person li h4 span{
	font-size:21px;
	display:block;
	margin-top:5px;
}

/* WORK
------------------------------------------------------------------------*/
main#recruit section.work{
	width:90%;
	padding: 35px 0 20px 0;
	margin:0 auto;
}
main#recruit section.work ul{
	width:100%;
	list-style-type: none;
	margin:-10px auto;
}
main#recruit section.work ul li{
	margin-top:45px;
}
main#recruit section.work h3{
	font-size:20px;
	font-weight:700;
	border-bottom:#555 1px solid;
	padding-bottom:5px;
	margin:35px 0 15px 0;
}
main#recruit section.work li img{
	width:100%;
	height:auto;
}
section.work .training_bx img{
	width:100%;
	height:auto;
}
section.work .training_bx dl{
	display: flex;
	flex-wrap: wrap;
	font-size:16px;
	margin-top:10px;
}
section.work .training_bx dt{
	width: 25%;
	font-weight:700;
	border-top:#555 1px dashed;
	padding:15px 0;
}
section.work .training_bx dd{
	width: 75%;
	font-weight:600;
	border-top:#555 1px dashed;
	padding:15px 0;
}
section.work .training_bx dt:nth-child(1),
section.work .training_bx dd:nth-child(2){
	border:0;
}

/* VOICE */
main#recruit .products_voice{
	color:#FFF;
	margin-bottom:40px;
}
main#recruit .products_voice li.pv_pic {
    margin: 15px 0 25px 0 !important;
}
main#recruit .products_voice li.pv_pic img {
    width: 90%;
    height: auto;
    display:block;
    object-fit: cover;
    margin:0 auto;
}
main#recruit .products_voice li.pv_txt{
    padding:0 5% !important;
}

/* PERSON PAGE
------------------------------------------------------------------------*/
main#recruit .recruit_page{
	background:#F8F8F8;
	padding:40px 0 50px 0;
}
.recruit_page section.recruit_page_inner{
	width:90%;
	margin:0 auto;
}
main#recruit .recruit_page h1{
	font-size:28px;
	font-weight:700;
	line-height:1;
	text-align:center;
	padding:0;
	margin:0 0 30px 0;
}
main#recruit .recruit_page h1 span{
	font-size:18px;
	display:block;
	margin-top:15px;
}

/* MV */
section.recruit_page_inner .recruit_head{
	font-size:14px;
	font-weight:600;
	text-align:center;
}
section.recruit_page_inner .recruit_head img{
	width:100%;
	height:250px;
	object-fit: cover;
	margin-bottom:15px;
}
section.recruit_page_inner .recruit_head span{
	font-size:16px;
	display:block;
	margin-top:3px;
}
main#recruit .recruit_page h2{
	font-size:22px;
	font-weight:700;
	line-height:1.5;
	margin:25px 0 30px 0;
}

/* MAIN */
main#recruit .recruit_page h3{
	font-size:19px;
	font-weight:700;
	line-height:1.4;
	color:#BF191F;
	border-bottom:#C3C3C3 1px solid;
	padding-bottom:10px;
	margin:0 0 15px 0;
}
main#recruit .recruit_page h4{
	font-size:19px;
	font-weight:700;
	margin:25px 0 20px 0;
}
main#recruit .recruit_page p{
	font-size:17px;
	font-weight:600;
	line-height:1.6;
	margin:0 0 35px 0;
}

main#recruit .recruit_page .recruit_bx1,
main#recruit .recruit_page .recruit_bx2{}

main#recruit .recruit_page .recruit_bx1 img,
main#recruit .recruit_page .recruit_bx2 img{
	width:100%;
	height:auto;
	margin:15px 0 0 0;
}

/* SCHEDULE */
main#recruit .recruit_page .schedule{
	width:100%;
	background:#FFF;
	border:#CCC 1px solid;
	border-radius:20px;
	padding:25px 25px 20px 15px;
	margin-bottom:40px;
}
main#recruit .recruit_page .schedule h5{
	font-size:20px;
	font-weight:700;
	text-align:center;
	margin-bottom:25px;
}
main#recruit .recruit_page .schedule .schedule_main{
	background:url(https://kyoto-katsuo.co.jp/images/recruit/schedule_arrow.png) left bottom no-repeat;
	background-size:25px auto;
}
.schedule .schedule_main dl{
	display: flex;
	flex-wrap: wrap;
	font-size:16px;
	font-weight:600;
	padding-left:15%;
}
.schedule .schedule_main dl dt{
	width:100%;
	font-size:19px;
	color:#BF1920;
	border-top:#888 1px dashed;
	padding:15px 10px 0 10px;
}
.schedule .schedule_main dl dd{
	width:100%;
	line-height:1.5;
	padding:3px 10px 15px 10px;
}
main#recruit .recruit_page section.person{
	padding:35px 0 15px 0;
	margin-top:40px;
}
main#recruit .recruit_page section.person li h4 {padding: 0 0 20px 0;}
main#recruit .recruit_page section.person h4 {margin: 20px 0;}

main#recruit .recruit_page .contact_btn a.cbtn3{
	margin:40px auto 20px auto;
}

@media screen and (max-width: 320px){
main#recruit .recruit_page h2{font-size:20px;}
main#recruit .recruit_page h3{font-size:18px;}
main#recruit .recruit_page h4{font-size:18px;}
main#recruit .recruit_page p{font-size:16px;}
main#recruit .recruit_page .contact_btn a.cbtn3{
	font-size:15px !important;
}
}
