@charset "utf-8";

/* firefoxでページ移動の際、コンテンツが少なくても中心がずれないようにする */
html {
	overflow-y: scroll;
}
body,
div,
p,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
blockquote,
pre,
form,
input,
textarea,
header,
footer,
nav {
	margin: 0;
	padding: 0;
	zoom: 1;
	color : #000000;
	-webkit-text-size-adjust: 100%;
	font-family: 'Noto Sans JP', sans-serif;
}

ul,
ol {
	list-style-type: none;
}

img {
	border: none;
}

hr {
	display: none;
	margin: 0;
	padding: 0;
	width: 1px;
	height: 1px;
}

a {
	outline: none;
	text-decoration: none;
}
a.televe {
    pointer-events: none;
}
@media only screen and (max-width: 480px) {
	a.televe {
		pointer-events: auto;
	}
}
a.group1 {
	transition: 0.4s;
}
a.group1:hover {
	opacity : 0.7;
}

body {
	line-height: 1.6;
	color: #000000;
	font-style: normal;
	font-weight: normal;
	background-color: #ffffff;
}

#container {
	width: 100%;
	background-color: #ffffff;
	overflow: hidden;
}

@media only screen and (max-width: 400px) {
	#container {
		overflow: hidden;
	}
}

#nonimages,
#opnimages {
	position: absolute;
	top: -1000px;
	left: -1000px;
}

#nonimages div {
	display: none;
}

#nonimages div img {
	display: none;
}

#opnimages div {
	display: none;
}

#opnimages div img {
	display: none;
}

/* -------------------------------------------------------------------
 clearfix
------------------------------------------------------------------- */

.clearfix:before,
.clearfix:after {
	content: "";
	display: table;
}

.clearfix:after {
	clear: both;
}

/* For IE 6/7 */
.clearfix {
	zoom: 1;
}

#wrapper {
	height: 883px;
	overflow: hidden;
	position: relative;
	z-index: 10;
	margin-top: 100px;
}

header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 90;
	height: 100px;
	transition: all .3s;
	background-color : #ffffff;
}
.headMenuInner {
	width : 100%;
}

.headLogo {
	display: inline-block;
	position: relative;
	text-align: left;
	margin: 0;
	padding: 20px 0 0 40px;
	line-height : 1;
	z-index: 12;
	transition: 0.3s;
}
.headLogo img {
	width: 323px;
}
.headLogo strong {
	display: inline-block;
	vertical-align: middle;
	font-size: 20px;
	color: #1d208a;
	position: relative;
	top: -10px;
	left: 20px;
}
.admin_headMenuInner {
	width: 100%;
	max-width: 990px;
	margin: 0 auto;
	position: relative;
}
#wrapHeaderTop #header {
	display: block;
	position: relative;
	width: 100%;
	top: 0px;
	max-width: 1980px;
	margin: 0 auto;
	height: 100px;
	z-index: 10;
	transition: all .3s;
}
#wrapHeaderTop .wrk_topbg {
	background-color : rgba(0, 0, 0, 1);
}
#smp_header {
	display: none;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 78px;
	text-align: right;
	padding-top: 6px;
	background-color: #ffffff;
	z-index: 10;
}
.headMenu {
	display: inline-block;
	position: absolute;
	height : 70px;
	top: 15px;
	right: 0px;
	z-index: 9;
}
.headMenu li {
	display: inline-block;
	vertical-align: top;
	color: #000000;
	font-size: 16px;
}
.headMenu .main li a {
	color: #000000;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
	display: inline-block;
	vertical-align: top;
	line-height: 70px;
	padding: 0 20px;
	position: relative;
	transition: .3s;
}
.headMenu .main li.last {
	color: #ffffff;
	background-color : #000000;
	margin-left : 20px;
}
.headMenu .main li.last a {
	color: #ffffff;
	padding: 0 40px;
}
.headMenu .main li span {
	display: inline-block;
	vertical-align: top;
	color: #b8b8b8;
	font-size: 24px;
	line-height: 1.0;
	padding: 0 12px;
	position: relative;
	top: -6px;
}
.headMenu .main li a::after {
	position: absolute;
	bottom: -14px;
	left: 50%;
	content: '';
	width: 0;
	height: 4px;
	background-color: #c5000b;
	transition: .3s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.headMenu li a:hover {
	color : #c5000b;
}
.headMenu li a:hover::after {
	width: 60%;
}

.headInqu {
	display: inline-block;
	position: absolute;
	top: 0px;
	right: 0px;
	z-index: 9;
	width: 200px;
	height: 100px;
}

.headInqu a {
	display: block;
	text-align: center;
	width: 100%;
	height: 64px;
	padding: 36px 0 0 18px;
	font-size: 16px;
	color: #ffffff;
	text-decoration: none;
	background: #000000 url(../img/mail_mark.png) no-repeat center left 30px;
	transition: .5s;
}

.headInqu a:hover {
	background-color: #757575;
}

.headTel {
	display: block;
	position: absolute;
	top: 32px;
	right: 200px;
	z-index: 9;
	width: 174px;
	text-align: center;
}

.headTel a {
	display: inline-block;
	margin: 0 14px;
}

.headTel span {
	display: inline-block;
	text-align: left;
	width: calc(100% - 40px);
	height: 32px;
	line-height: 1.0;
	padding-top: 5px;
	padding-left: 40px;
	font-weight: 500;
	font-size: 24px;
	color: #010101;
	text-decoration: none;
	background: url(../img/tel_mark.png) no-repeat left top 3px;
	transition: .5s;
	vertical-align: top;
}

.smp_headBtn {
	display: block;
	position: absolute;
	top: 0px;
	right: 0px;
	z-index: 10;
	background-color: #ffffff;
	width: 100%;
	height: 51px;
	padding-top: 4px
}

.smp_headMenu {
	display: block;
	width: 100%;
	position: absolute;
	top: -600px;
	right: 0px;
	text-align: left;
	z-index: 9;
	background-color: #ffffff;
	transition: .5s;
}

.smp_headMenu li {
	display: block;
	border-bottom: 1px solid #c1c1c1;
}

.smp_headMenu li a.main {
	color: #464646;
	font-size: 14px;
	font-weight: bold;
	text-decoration: none;
	display: block;
	line-height: 1.0;
	padding: 14px 0 12px 8px;
	position: relative;
	transition: .3s;
}

.smp_headMenu li a.main strong {
	display: inline-block;
	width: 130px;
	vertical-align: middle;
}

.smp_headMenu li a.main span {
	display: inline-block;
	color: #979797;
	font-size: 13px;
	font-weight: normal;
	text-align: left;
	margin-left: 30px;
	vertical-align: middle;
}

.subMenu {
	position: absolute;
	top: -200px;
	right: 80px;
	padding: 10px 16px;
	background-color: #ffffff;
	font-weight: bold;
	border: 2px solid #c1c1c1;
	z-index: 9;
	transition: all 0.3s;
}

.subMenu dl {
	display: inline-block;
	vertical-align: top;
	margin: 0 20px;
	line-height: 1.6;
}

.subMenu dt {
	padding-top: 6px;
}

.subMenu dt a {
	font-size: 14px;
	color: #646464;
	text-decoration: none;
	transition: all 0.2s;
}

.subMenu dd a {
	font-size: 13px;
	color: #868686;
	text-decoration: none;
	transition: all 0.2s;
}

.subMenu dt a:hover {
	color: #000000;
}

.subMenu dd a:hover {
	color: #3f3f3f;
}

.smp_subMenu {
	display: none;
	padding-bottom: 10px;
	transition: all .3s;
}

.openMenuArea {
	transition: all .3s;
}

.ttlimgWrap {
	text-align: center;
}

.ttlimgWrap img {
	width: 100%;
	max-width: 1678px;
}

.smp_subMenu a {
	color: #646464;
	font-size: 13px;
	font-weight: bold;
	text-decoration: none;
	display: block;
	line-height: 1.0;
	padding: 7px 0 7px 20px;
}

/*
.smp_headline .menu-trigger {
	display: block;
	position: absolute;
	top: 12px;
	left: 20px;
	width: 22px;
	height: 20px;
	transition: all .4s;
}
*/
.smp_headline .menu-trigger {
	display: block;
	position: absolute;
	top: 22px;
	left: 14px;
	width: 32px;
	height: 20px;
	transition: all .4s;
}


.smp_headline .menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #ffffff;
	transition: all .4s;
}

.smp_headline .menu-trigger span:nth-of-type(1) {
	top: 0;
}
/*
.smp_headline .menu-trigger span:nth-of-type(2) {
	top: 8px;
}
*/
.smp_headline .menu-trigger span:nth-of-type(2) {
	top: 14px;
}

.smp_headline .menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
/*
.menu-trigger.is-open span:nth-of-type(1) {
	width: 48%;
	-webkit-transform: translate3d(1px, 4px, 0) rotate(45deg);
	transform: translate3d(1px, 4px, 0) rotate(45deg);
}
*/
.menu-trigger.is-open span:nth-of-type(1) {
	width: 100%;
	-webkit-transform: translate3d(1px, 5.5px, 0) rotate(35deg);
	transform: translate3d(1px, 5.5px, 0) rotate(35deg);
}
.menu-trigger.is-open span:nth-of-type(2) {
	width: 100%;
	-webkit-transform: translate3d(1px, -7.5px, 0) rotate(-35deg);
	transform: translate3d(1px, -7.5px, 0) rotate(-35deg);
}
/*
.menu-trigger.is-open span:nth-of-type(3) {
	width: 47%;
	-webkit-transform: translate3d(9px, -4px, 0) rotate(45deg);
	transform: translate3d(9px, -4px, 0) rotate(45deg);
}
.menu-trigger.is-open span:nth-of-type(3) {
	width: 47%;
	-webkit-transform: translate3d(12px, -5px, 0) rotate(45deg);
	transform: translate3d(12px, -px, 0) rotate(45deg);
}
*/
.headScroll {
	position : absolute;
	bottom : 30px;
	left : 12%;;
	width : 40px;
	text-align : center;
}
.headScroll .scrollDown {
	display: flex;
	align-items: center;
	width : 100%;
	font-size : 1rem;
	letter-spacing: 2px;
	color : #ffffff;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-weight : 700;
	text-align : center;
	opacity : 1;
	cursor : pointer;
	font-family: 'Oswald', sans-serif;
}
.headScroll .scrollArrow {
	display ; block;
	margin : 10px auto;
	width : 2px;
	height : 180px;
	overflow : hidden;
}
.headScroll .scrollArrowInner {
	display ; inline-block;
	width : 2px;
	height : 150px;
	background-color : #ffffff;
	animation: arrowMove 2s infinite linear;
	transform: translate(0, -100px);
}
.headScroll .scrollArrowInner.active {
	animation: arrowMoveUp 2s infinite linear;
	transform: translate(0, 100px);
}
@keyframes arrowMove {
	to {
		  transform: translate(0, 100px);
	}
}
@keyframes arrowMoveUp {
	to {
		  transform: translate(0, -100px);
	}
}
@media only screen and (max-width: 720px) {
	.headScroll {
		bottom : 0;
		left : 5%;
	}
	.headScroll .scrollArrow {
		height : 100px;
	}
}
.cp_overLeft {
	position: fixed;
	top: 50%;
	left: 0;
	z-index: 20;
}
.smplink {
	display :  none;
}
.smpwide {
	
}
@media only screen and (max-width: 1200px) {
	#wrapHeaderTop .headLogo {
		padding: 15px 0 0 2vw;
	}
	.headMenu .main li a {
		padding: 0 1vw;
		font-size : 14px;
	}
	.headMenu .main li.last {
		margin-left : 1vw;
	}
	.headMenu .main li.last a {
		padding: 0 2vw;
	}
}
@media only screen and (max-width: 960px) {
	#wrapper {
		height: 883px;
		overflow: hidden;
		position: relative;
		z-index: 10;
		margin-top: 60px;
	}
	header {
		height: 60px;
	}
	.headLogo {
		padding: 12px 0 0 20px;
	}
	#smp_header {
		display: block;
	}
	.headMenu {
		display: none;
	}
	.headTel {
		display: none;
	}
	.headInqu {
		display: none;
	}
	.smplink {
		display : block;
	}
}

.snsButtons {
	display: block;
}

.topimages {
	width: 100%;
	max-width: 1980px;
}

.slide_all {
	margin: 0 auto;
	position: relative;
	width: 100%;
}

.slide_wrap {
	left: 50%;
	margin-left: -1800px;
	position: absolute;
	width: 3600px;
}

.noslide {
	width: 100%;
	max-width: 1200px;
	position: relative;
	margin: 0 auto;
}

.noslide img {
	width: 100%;
	max-width: 1200px;
}

#prev,
#next {
	display: block;
	height: 753px;
	position: absolute;
	top: 0px;
	width: 50%;
	z-index: 9999;
}

#prev {
	left: -600px;
}

#next {
	right: -600px;
}

#access {
	margin-top: -130px;
	padding-top: 130px;
}

#template {
	margin-top: -130px;
	padding-top: 130px;
}

#submit {
	margin-top: -130px;
	padding-top: 130px;
}

.submenu {
	background-color: #fff949;
	text-align: right;
	padding: 7px 0 16px 0;
}

.submenu h2 {
	text-align: center;
	color: #000000;
	margin: 20px 0;
	letter-spacing: 3px;
}

.submenu a {
	display: inline-block;
	padding: 0 8px 0 16px;
	background: url(../img/arrow.png) no-repeat left center;
	color: #303030;
	font-size: 12px;
	text-decoration: none;
}

.submenu a:hover {
	color: #000000;
	text-decoration: underline;
}

.pankuzu {
	font-size: 13px;
	color: #494949;
	padding: 6px 0 12px 4px;
	width: 100%;
	max-width: 1343px;
	margin: 0 auto;
	position: relative;
}

#wrapGlobalMenu {
	width: 100%;
	margin-bottom: 16px;
	margin-top: -17px;
	overflow: hidden;
	background-color: #4c4109;
	position: relative;
	z-index: 999;
}

#wrapTopMenu {
	width: 1183px;
	position: relative;
	margin: 0 auto;
}

.headMenu td a.bdnone {
	padding-left: 3px;
}

.smp_headbtn {
	display: none;
	text-align: center;
	width: 100%;
	position: absolute;
	left: 0;
	bottom: 6.5vw;
}

.smp_headbtn a img {
	width: 50%;
	min-width: 160px;
}

.pc_headbtn {
	display: block;
	position: absolute;
	left: 50%;
	margin-left: -70px;
	bottom: 20px;
}

.wrapContents {
	width: 100%;
	position: relative;
	padding-top: 140px;
}

#p_points {
	display: block;
}

#s_points {
	display: none;
}

.pc_headline {
	display: inline;
}

.smp_headline {
	display: none;
}

.smp_centerbtn {
	display: none;
}

.pc_topimg {
	display: inline;
}

.smp_topimg {
	display: none;
}

.smp_headTel {
	display: inline-block;
	width: 49%;
	padding: 14px 0;
	text-align: center;
}

.smp_headTel a {
	font-size: 16px;
	color: #010101;
	text-decoration: none;
	font-weight: 500;
}

.smp_headTel a img {
	position: relative;
	height: 20px;
	margin-right: 8px;
	top: 4px;
}

.smp_headInqu {
	display: inline-block;
	width: 49%;
	padding: 14px 0;
	text-align: center;
}

.smp_headInqu a {
	font-size: 14px;
	color: #010101;
	text-decoration: none;
}

.smp_headInqu a img {
	position: relative;
	height: 16px;
	margin-right: 8px;
	top: 2px;
}

@media only screen and (max-width: 1200px) {
	.slide_wrap {
		left: 0;
		margin-left: 0;
		position: absolute;
		width: 100%;
	}
}
.smp_headSns  {
	text-align : center;
	padding : 6px 0;
}
.smp_headSns a {
	display : inline-block;
	margin : 0 16px;
}
.pc_show {
	display : block;
}
.smp_show {
	display : none;
	text-align : center;
}
.smp_show select {
	border : 1px solid #c5000b;
	font-size : 1.2rem;
	padding : 4px 12px;
}
.smp_show option {
	font-size : 1.2rem;
	padding : 4px 12px;
}
@media only screen and (max-width: 960px) {
	.slide img {
		width: 100%;
		height: 60vw;
		object-fit: cover;
	}
	.pc_headline {
		display: none;
	}
	.pc_topimg {
		display: none;
	}
	.smp_topimg {
		display: inline;
	}
	.smp_headline {
		display: block;
		position: fixed;
		width: 100%;
		max-width: 100vw;
		height: 60px;
		top: 0;
		left: 0;
		box-sizing: border-box;
		transition: .5s;
	}
	.smp_menu {
		position: absolute;
		top: 0;
		right: 0;
		width: 60px;
		height: 60px;
		text-align: center;
		background-color : #c5000b;
	}
	.smp_menu p {
		display: block;
		position: absolute;
		top: 34px;
		left: 0;
		width: 60px;
		text-align: center;
		color: #ffffff;
		font-weight: 300;
		font-size: 12px;
	}
	.smp_headline .innerSmpTels h3 {
		margin-bottom: 8px;
	}
	.innerSmpTels {
		position: absolute;
		width: 100%;
		top: -480px;
		left: 0;
		z-index: 99;
		margin-bottom: 6px;
		background-color: rgba(255, 255, 255, 0.9);
		transition: .5s;
	}
	.innerSmpTels li a {
		text-decoration: none;
		font-size: 14px;
		color: #010101;
		display: block;
		width: calc(100% - 12px);
		padding: 12px 0 12px 12px;
		text-align: left;
		border-bottom: 1px solid #c6c6c6;
	}
	.smp_headbtn {
		display: block;
	}
	.pc_headbtn {
		display: none;
	}
	.smp_centerbtn {
		display: block;
		text-align: center;
		margin-top: 36px;
	}
	.smp_centerbtn img {
		width: 60%;
		max-width: 386px;
	}
	#wrapHeaderTop {
		height: 60px;
	}
	#wrapHeaderTop #header {
		height: 60px;
	}
	.headLogo img {
		width : 180px;
	}
	.headMenuInner {
		z-index: 100;
		height: 60px;
	}
	.wrapContents {
		padding-top: 60px;
	}
}

@media only screen and (max-width: 640px) {
	#p_points {
		display: none;
	}
	#s_points {
		display: block;
	}
	.smp_show {
		display : block;
	}
}

@media only screen and (max-width: 500px) {
	.bx-controls {
		display: none;
	}

	.headLogo strong {
		margin-bottom: 1px;
	}
}

@media only screen and (max-width: 400px) {
	.headLogo {
		top: 2px;
	}

	.slide img {
		width: 100%;
		height: 63vw;
	}
}

@media only screen and (max-width: 340px) {
	.sml320 {
		height: 22px;
	}
	.headLogo {
		left: -4px;
	}
}


/* トップページコンテンツ */

.topImg  {
	width : 100%;
	margin : 100px auto 0 auto;
	position : relative;
}
.topImgShadow {
	position : absolute;
	top : 0;
	right : 0;
	width : 50%;
	height : 100%;
	background : linear-gradient(90deg, rgb(0, 0, 0, 0), rgb(0, 0, 0, 0.8));
}
.pos-rel {
	position : relative;
	background-color : #c4b266;
}
.slide_all {
	width : 100%;
	margin : 0 auto;
}
.no_slide {
	width : 100%;
	margin : 0 auto;
}
.pict {
	width : 100%;
	margin : 0 auto;
}
.slide_all img {
	width : 100%;
	object-fit : cover;
	object-position: left bottom;
}
.overWrap  {
	position : absolute;
	top : 8%;
	left : 7%;
	width : auto;
}
.overWrap .overText {
	width : 47vw;
	max-width : 890px;
}
.overWrap .overText li {
	width : 100%;
}
.overWrap .overText li img {
	width : 100%;
}
.overWrap .overText li h2 {
	display : table-cell;
	line-height : 1.2;
	color : #c5000b;
	font-weight : 900;
	font-style : italic;
	padding : 0 20px;
}
.overWrap .overText li h3 {
	display : table-cell;
	text-align : center;
	color : #ffffff;
	background-color : #c5000b;
	padding : 8px 0;
	font-weight : 900;
	font-style : italic;
}
.overWrap .overText li h4 {
	display : table-cell;
	font-weight : 900;
	font-style : italic;
	padding : 0 20px;
}
.overWrap .overText li p {
	display : table-cell;
	font-weight : 900;
	font-style : italic;
	padding : 0 20px;
}
@media only screen and (max-width: 960px) {
	.topImg  {
		margin-top : 60px;
	}
}
@media only screen and (max-width: 480px) {
	.overWrap .overText {
		width : 80vw;
	}
	.overWrap  {
		top : 2%;
		left : 7%;
	}
}
.bottomScroll {
	position : absolute;
	bottom : 0;
	left: calc(50% - 25px);
	transition: 0.7s;
}
.bottomScroll.hide {
	bottom : -80px;
	transition: 0.7s;
}
.bottomScroll img {
	width : 50px;
}
.boxTitle {
	display : inline-block;
	text-align: center;
	position: relative;
}
.boxTitle span {
	display : block;
	position: relative;
	z-index: 1;
	color : #c5000b;
	font-weight : 500;
	letter-spacing: 2px;
	line-height : 1.2;
}
.boxTitle strong {
	display : block;
	letter-spacing: 1px;
	color : #c5000b;
	position: relative;
	z-index: 1;
	font-weight : 500;
}
.boxTitle.rev span {
	color : #ffffff;
}
.boxTitle.rev strong {
	color : #ffffff;
}
.normalTitle {
	display : inline-block;
	text-align: center;
	position: relative;
}
.normalTitle span {
	position: relative;
	z-index: 1;
	font-weight : 400;
}
.normalTitle strong {
	display : block;
	color : #b9b9b9;
	font-size : 14px;
	letter-spacing: 1px;
	position: relative;
	z-index: 1;
	font-weight : 500;
	top : 6px;
	font-family: 'Oswald', sans-serif;
}
.elseWrap {
	margin-top : 100px;
}
.topTitle {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	width : 100%;
	height : 50vw;
	max-height : 500px;
	position : relative;
}
.topTitle2 {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	width : 100%;
	height : 75vw;
	max-height : 750px;
	position : relative;
}
.topTitle .mainTitle {
	display : block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	text-align : center;
}
.topTitle2 .mainTitle {
	display : block;
	position: absolute;
	top: 50%;
	left: 10%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	text-align : center;
}
.mainTitle span {
	position: relative;
	z-index: 1;
	font-weight : 500;
	color : #ffffff;
	font-family: 'Oswald', sans-serif;
	letter-spacing: 3px;
}
.mainTitle strong {
	display : block;
	color : #ffffff;
	position: relative;
	z-index: 1;
	font-weight : 500;
	top : -4px;
	text-align : center;
	letter-spacing: 1px;
}
.workbtn {
	display : inline-block;
	width : 80%;
	max-width : 320px;
	color : #ffffff;
	font-weight : 500;
	font-size : 1rem;
	background-color : #c5000b;
	border : 1px solid #c5000b;
	padding : 24px 0;
	transition: 0.4s;
}
.workbtn:hover {
	color : #c5000b;
	background-color : #ffffff;
}
@media only screen and (max-width: 1400px) {
	.overWrap .overLeft {
		left : -40px;
	}
}
@media only screen and (max-width: 960px) {
	.elseWrap {
		margin-top : 60px;
	}
}
@media only screen and (max-width: 800px) {
	.overWrap .overLeft {
		left : -80px;
	}
	.mainTitle {
		display : block;
		text-align: center;
		position: relative;
		width : 78%;
		max-width : 488px;
		padding : calc(1vw + 6px) 0 calc(2vw + 8px) 0;
	}
}
@media only screen and (max-width: 640px) {
	.workbtn {
		padding : 5.8vw 0;
		font-size : 1.2rem;
	}
	.compInner .workbtn {
		width : 60%;
	}
}
@media only screen and (max-width: 480px) {
	.boxTitle::before {
		left: 15px;
		right: 15px;
	}
	.boxTitle::after {
		top: 15px;
		bottom: 15px;
	}
}
.top_container {
	position: absolute;
	font-size: 10px;
	color: #000000;
	padding: 0;
	top: 0px;
	right: 0px;
}

 グローバルナビゲーション */




/* メインコンテンツ包括---------------------------*/

.grayback {
	background-color : #f2f2f2;
}
.bgdark {
	background : url(../img/back.jpg) no-repeat center bottom;
	background-size : cover;
	position : relative;
}
.bgdark section {
	position : relative;
	z-index : 3;
}
.redback {
	background-color : #c5000b;
	position: relative;
	z-index: 12;
}
.top_images {
	width: 100%;
	position: relative;
	z-index: 2;
	text-align: center;
	background: url(../img/top_image.jpg) repeat-x top center;
	max-height: 576px;
	font-size: 0;
	line-height: 0;
}
.messageWrap {
	position : relative;
}
.aboutWrap {
	position : relative;
	z-index : 2;
	width : 70%;
	padding-left : 1%;
}
.aboutWrap p {
	color : #000000;
	line-height : 2.0;
	font-weight : 500;
	letter-spacing: 1px;
}
.aboutWrap p br.smp {
	display : none;
}
.aboutImg {
	position : absolute;
	z-index : 1;
	width : 40vw;
	max-width : 521px;
	height : auto;
	top : 0;
	right : 0;
}
.aboutImg img {
	width : 100%;
}

@media only screen and (max-width: 1080px) {
	.aboutWrap p {
		font-size : calc(0.53vw + 12.3px);
		line-height : 2.0;
	}
}
@media only screen and (max-width: 640px) {
	.aboutWrap p {
		text-align : left !important;
	}
}

@media only screen and (max-width: 480px) {
	.aboutWrap {
		width : 100%;
	}
	.aboutWrap p {
		font-size : calc(2.5vw + 4.0px);
		line-height : 1.8;
		letter-spacing: 0px;
		text-align : center !important;
	}
	.aboutImg {
		position : relative;
		width : 100%;
	}
	.aboutWrap p br.smp {
		display : block;
	}
}

.newsFlex {
	position : relative;
}
.newsItem  {
	width : 18%;
	box-sizing : border-box;
}
.newsItem .imgs img {
	width : 100%;
	height : 12.25vw;
	max-height : 200px;
	object-fit : cover;
}
.newsTrans  {
	width : 18%;
	box-sizing : border-box;
	font-size : 0;
	line-height : 0;
	height : 1px;
}
.newsItem .ttle {
	padding-top : 4px;
	color : #000000;
	font-size : 0.9rem;
	text-align : left;
}
.newsItem .ttle a {
	color : #000000;
	text-decoration : none;
	transition: 0.3s;
}
.newsItem .ttle a:hover {
	color : #c5000b;
}
.newsItem .data {
	padding-top : 4px;
	color : #000000;
	font-size : 0.9rem;
	text-align : left;
}
.newsItem .ttls_e {
	line-height : 18px;
	height : 16px;
	overflow : hidden;
}
.newsItem .ttls_e a {
	color : #cb0000;
	text-decoration : none;
}
.newsItem .ttls_e a:hover {
	color : #ff6600;
}
.newsItem .data_e {
	padding-top : 4px;
	color : #000000;
	font-size : 12px;
	text-align : left;
}
.newsItem .imgs {
	position : relative;
}
.newsItem .imgs span {
	position : absolute;
	top : 0;
	left : 0;
	display : inline-block;
	color : #ffffff;
	background-color : #c5000b;
	font-size : 13px;
	font-weight : 500;
	padding : 3px 8px;
}
.newsWrap .newsItem:nth-child(6) {
	display : none;
}
.newsParts {
	display : -webkit-flex;
	display : flex;
}
.newsParts .date {
	font-size : 16px;
	color : #0b152b;
	font-weight : 500;
	line-height : 1.6;
	text-align : left;
	margin-right : 20px;
}
.newsParts .cate {
	font-size : 14px;
	color : #ffffff;
	background-color : #00a0c8;
	padding : 0 10px;
	line-height : 1.8;
}
.newsListWrap h2 {
	font-size : 36px;
	color : #0b152b;
	border-bottom : 1px solid #dcdcdc;
	padding : 20px 0 10px 0;
	line-height : 1.8;
}
.newsListWrap .photo img {
	width : 100%;
}
.newsListWrap .detailComm {
	font-size : 1rem;
	color : #0b152b;
	font-weight : 400;
	line-height : 1.8;
	text-align : left;
}
#newsmenuTab {
	display : none;
}
.newsRight {
	width : 180px;
	max-width : 300px;
}
.newsRight h3 {
	font-size : 24px;
	font-weight : 400;
	letter-spacing: 2px;
	color : #c5000b;
	font-family: 'Oswald', sans-serif;
	position : relative;
}
.newsRight h3::after {
	content : "";
	display : block;
	width : 50px;
	height : 4px;
	background-color : #d8d8d8;
	font-size : 0;
	margin : 6px 0 12px 0;
}
.newsRight a {
	font-size : 1rem;
	font-weight : 400;
	color : #333333;
	line-height : 2.2;
	transition: 0.3s;
}
.newsRight a:hover {
	color : #c5000b;
}
.newsRight a span {
	font-weight : 300;
}
.newsType {
	padding-bottom : 30px;
	border-bottom : 2px solid #c5000b;
}
.selecter {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : center;
	justify-content : center;
}
.selecter a {
	display : block;
	line-height : 2.0;
	font-size : 18px;
	font-weight : 500;
	color : #c5000b;
	background-color : #f8e4e5;
	padding : 8px 20px 8px 18px;
	margin : 0 10px;
	transition: 0.3s;
}
.selecter a span {
	display : inline-block;
	position : relative;
	top : 5px;
	left : -8px;
	font-size : 0;
	width : 16px;
	height : 16px;
	background-color : #ffffff;
	border : 4px solid #ffffff;
	border-radius : 4px;
}
.selecter a span.active::after {
	content : "";
	display : block;
	position : relative;
	font-size : 0;
	width : 16px;
	height : 16px;
	background-color : #c5000b;
	border-radius : 3px;
}
.selecter a:hover {
	color : #000000;
	background-color : #e8d4d5;
}
.morebtn {
	display : inline-block;
	padding : 30px 20px 30px 20px;
	color : #333333;
	font-size : 16px;
	transition: 0.4s;
	border-radius : 50%;
	background-color : #ffffff;
}
.morebtn::after {
	content : "";
	display : block;
	position : relative;
	font-size : 0;
	width : 40px;
	height : 40px;
	margin : 0 auto;
	border-right : 1px solid #333333;
	border-bottom : 1px solid #333333;
	transform: rotate(45deg);
	transition: 0.4s;
}
.morebtn:hover {
	color : #c5000b;
	background-color : #f1f1f1;
}
.morebtn:hover::after {
	border-right : 1px solid #c5000b;
	border-bottom : 1px solid #c5000b;
}
.newsDetailWrap {
	width : calc(100% - 240px);
}
.newsDetailWrap h2 {
	color : #c5000b;
	font-weight : 500;
	line-height : 1.8;
}
.newsDetailWrap .photo img {
	width : 100%;
}
.newsDetailWrap .cate {
	display : inline-block;
	color : #ffffff;
	background-color : #c5000b;
	padding : 6px 12px 8px 12px;
	line-height : 1.0;
}
.newsDetailWrap .detailComm {
	font-size : 1rem;
	color : #0b152b;
	font-weight : 400;
	line-height : 1.8;
	text-align : left;
}
@media only screen and (max-width: 640px) {
	.newsWrap .newsItem:nth-child(5) {
		display : none;
	}
	.newsItem  {
		width : 30%;
		margin: 0 4px 12px 4px;
	}
	.newsTrans  {
		width : 30%;
		margin: 0 4px 12px 4px;
	}
	.newsItem .imgs img {
		height : 18.25vw;
	}
	.sche_thumb  {
		width : 140px;
		height : 140px;
		object-fit : cover;
	}
	.sche_thumb_ie  {
		display : block;
		width : 140px;
		height : 140px;
	}
	.pc_show {
		display : none;
	}
	.newsDetailWrap {
		width : calc(100% - 30px);
	}
	.newsFlex .newsRight {
		width : 180px;
		height : 50vh;
		position : absolute;
		top : 0;
		right : -258px;
		transition: 0.5s;
		padding : 10px 32px;
		background-color : #ffffff;
		border : 2px solid #c5000b;
		z-index : 2;
	}
	.newsFlex .newsRightInner {
		width : 100%;
		height : 100%;
		overflow : auto;
	}
	#newsmenuTab {
		display : block;
		color : #ffffff;
		font-size : 16px;
		background-color : #c5000b;
		position : absolute;
		width : 24px;
		height : 24px;
		top : -2px;
		left : -36px;
		padding : 10px 4px 24px 8px;
		border-radius : 8px 0 0 8px;
	}
	.newsFlex .newsRight.active {
		right : -20px;
	}
}
@media only screen and (max-width: 480px) {
	.bgdark::after{
		content: "";
		position: absolute;
		z-index: 2;
		width: 100%;
		height:100%;
		top: 0;
		left: 0;
		background-color: white;
		opacity: 0.6;
	}
	.newsItem  {
		width : calc(100% - 16vw);
		margin: 6vw 8vw 12px 8vw;
	}
	.newsWrap .newsItem:nth-child(4) {
		display : none;
	}
	.newsTrans  {
		width : calc(100% - 16vw);
		margin: 0 8vw 12px 8vw;
	}
	.newsItem .imgs img {
		height : 62.25vw;
		max-height : 400px;
	}
	.sche_thumb  {
		width : 140px;
		height : 140px;
		object-fit : cover;
	}
	.sche_thumb_ie  {
		display : block;
		width : 140px;
		height : 140px;
	}
	.newsItem .ttle .ttls a {
		color : #c5000b;
		font-weight : 500;
		font-size : 1.2rem;
	}
	.newsItem .ttle .data {
		font-size : 1.1rem;
	}
	.mgsmp {
		margin-bottom : 24vw;
	}
	.newsDetailWrap .detailComm {
		font-size : 1.2rem;
	}
	.newsRight a {
		font-size : 1.2rem;
		line-height : 2.4;
	}
}


.compMain {
	background-size : cover;
	height : 60vw;
	max-height : 600px;
	position : relative;
}
.pback01 {
	background : url(../img/p_back01.jpg) no-repeat center center;
	background-size : cover;
}
.pback02 {
	background : url(../img/p_back02r.jpg) no-repeat center center;
	background-size : cover;
}
.pback03 {
	background : url(../img/p_back03.jpg) no-repeat center center;
	background-size : cover;
}
.pback04 {
	background : url(../img/p_back04.jpg) no-repeat center center;
	background-size : cover;
}
.pback05 {
	background : url(../img/p_back05.jpg) no-repeat center center;
	background-size : cover;
}
.compInner {
	position : absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	background-color : #ffffff;
	width : 452px;
}
.rc_main .compInner {
	left : 10%;
}
.co_main .compInner {
	right : 10%;
}
.compInner .title {
	background-color : #c5000b;
	padding : 12px 20px;
	color : #ffffff;
	display : -webkit-flex;
	display : flex;
	align-items: center;
}
.compInner .title div {
	font-weight : 900;
	color : #ffffff;
	font-family: 'Public Sans', sans-serif;
}
.compInner .title p {
	font-weight : 500;
	color : #ffffff;
	padding-left : 30px;
}
.compInner .comm {
	background-color : #ffffff;
	padding : 20px 24px 40px 24px;
	color : #000000;
	line-height : 1.6;
	text-align : left;
	min-height : 300px;
}
@media only screen and (max-width: 960px) {
	.rc_main .compInner {
		left : 2%;
	}
	.co_main .compInner {
		right : 2%;
	}
	.compInner .comm {
		padding : 14px 16px 28px 16px;
		min-height : 240px;
	}
	.compMain {
		height : 70vw;
	}
}
@media only screen and (max-width: 640px) {
	.compMain {
		height : auto;
		padding-top : 66vw;
	}
	.pback01 {
		background : url(../img/p_back01s.jpg) no-repeat center top;
		background-size : 100%;
	}
	.pback02 {
		background : url(../img/p_back02ns.jpg) no-repeat center top;
		background-size : 100%;
	}
	.pback03 {
		background : url(../img/p_back03s.jpg) no-repeat center top;
		background-size : 100%;
	}
	.pback04 {
		background : url(../img/p_back04s.jpg) no-repeat center top;
		background-size : 100%;
	}
	.pback05 {
		background : url(../img/p_back05s.jpg) no-repeat center top;
		background-size : 100%;
	}
	.compInner {
		position : relative;
		top: 0;
		transform: translateY(0);
		-webkit- transform: translateY(0);
		background-color : #ffffff;
		width : 100%;
	}
	.rc_main .compInner {
		left : 0;
	}
	.co_main .compInner {
		right : 0;
	}
}
@media only screen and (max-width: 480px) {
	.compInner .title {
		padding : 6px 20px;
	}
	.compInner .title p {
		font-size : 1.3rem !important;
	}
	.compInner .comm p {
		font-size : 1.2rem !important;
		min-height : 100px;
		padding-bottom : 3vw;
	}
	.compInner .comm p br {
		display : none;
	}
}
#profile {
	font-size : 0;
}
.ufleft {
	width : 65%;
	position : relative;
	text-align : center;
}
.center_photo {
	padding-top : 60px;
	position : relative;
	z-index : 4;
}
.plof {
	position : absolute;
}
.plof p {
	font-size : 1rem;
	padding : 10px 0;
	text-align : left;
}
.plof a {
	display : block;
	box-shadow: 0px 0px 6px 3px rgba(0, 0, 0, 0.2);
	background-color : #ffffff;
	padding : 5px;
}
.plof img {
	width : 100%;
	object-fit : cover;
}
.plof.img03 {
	left : 18px;
	top : 12%;
	transform : rotate(10deg);
	width : 50%;
	height : auto;
	z-index : 1;
}
.plof.img05 {
	right : 0;
	top : -5%;
	width : 50%;
	height : auto;
	z-index : 2;
}
.plof.img07 {
	right : 10px;
	bottom : 10%;
	transform : rotate(-10deg);
	width : 40%;
	height : auto;
	z-index : 3;
}
.plof.img07 p {
	text-align : right;
}
.ufright {
	width : 30%;
	margin-left : 5%;
}
.ufright .wspace04 {
	color : #c5000b;
	letter-spacing : 1px;
}
.ufright .wspace04 p {
	color : #c5000b;
	letter-spacing : 2px;
}
.ufright .wspace04 span {
	color : #c5000b;
}
.ufright dl  {
	display : block;
	width : 100%;
	font-size : 1rem;
	line-height : 1.8;
	margin-bottom : 10px;
}
.ufright dt  {
	display : inline-block;
	vertical-align : top;
	width : 20px;
	color : #c5000b;
}
.ufright dd  {
	display : inline-block;
	vertical-align : top;
	width : calc(100% - 30px);
	color : #c5000b;
	font-weight : 500;
	text-align : left;
}
@media only screen and (max-width: 960px) {
	.ufleft {
		width : 100%;
	}
	.center_photo {
		width : 70%;
	}
	.ufright {
		width : 100%;
		margin-left : 4vw;
	}
}
@media only screen and (max-width: 800px) {
	.center_photo {
		width : 50%;
	}
	.ufright {
		width : 100%;
		max-width : 480px;
		margin : 0 auto 8vw auto;
	}
	.urbtn {
		text-align : center !important;
	}
}
@media only screen and (max-width: 480px) {
	.ufright .wspace04 {
		font-size : 1.15rem;
		letter-spacing : 1px;
	}
	.ufright .wspace04 p {
		font-size : 1.3rem;
		letter-spacing : 1px;
	}
	.ufright .wspace04 p span {
		font-size : 1.1rem;
	}
	.ufright dl  {
		font-size : 1.1rem;
	}
	.urbtn .workbtn {
		width : 60% !important;
		margin-top : 4vw;
	}
}

.snsWrap .item {
	display : block;
	width : 98%;
	max-width : 320px;
	background-color : #ffffff;
	border-radius : 16px;
	text-align : center;
	padding : 30px 0;
	color : #c5000b;
	transition: 0.4s;
	margin : 0 1%;
}
.snsWrap .item p {
	color : #c5000b;
	font-size : 1rem;
	font-weight : 500;
}
.snsWrap .item:hover {
	opacity : 0.8;
	color : #000000;
}
@media only screen and (max-width: 480px) {
	.snsWrap .item {
		width : 90%;
		border-radius : 6vw;
		padding : 3vw 0;
		margin : 4vw auto;
	}
	.snsWrap .item img {
		width : 64px;
	}
	.snsWrap .item p {
		font-size : 1.3rem;
		position : relative;
	}
	.snsWrap .item p br {
		display : none;
	}
}

/* 今、奈良県に必要なこと */
section.wideWrapsec {
	width: 100%;
	max-width: 1920px;
	margin: 0 auto;
	box-sizing: border-box;
}
.one {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 100vh;
    margin-top: 30px;
}
.onex {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 100vh;
    margin-top: 40px;
}
.bg {
    position : fixed; 
    top: 0px;
    left: 0;
    right: 0;
    height: 100%;
    background-position: center center;
    opacity: 0;
	z-index : -1;
    background-size: cover;
}
.show .bg {
    display: block;
	opacity: 1;
}

.bgv {
    background-image: none;
	background-attachment: fixed;
    transition: 1s;
}
.bgv.show {
    background: url("../img/need_img01.jpg") no-repeat center top;
	background-attachment: fixed;
}

.bg.msback01 {
    background-image: url("../img/need_img01n.jpg");
}
.bg.msback02 {
    background-image: url("../img/need_img02.jpg");
    transition: all 1s ease 0s;
}
.bg.msback03 {
    background-image: url("../img/need_img03.jpg");
    transition: all 1s ease 0s;
}
.bg.msback04 {
    background-image: url("../img/need_img04.jpg");
    transition: all 1s ease 0s;
}
.bg.msback05 {
    background-image: url("../img/need_img05n.jpg");
    transition: all 1s ease 0s;
}
.bg.msback06 {
    background-image: url("../img/need_img06.jpg");
    transition: all 1s ease 0s;
}
.bg.msback07 {
    background-image: url("../img/need_img07.jpg");
    transition: all 1s ease 0s;
}
.bg.msback08 {
    background-image: url("../img/need_img08n.jpg");
    transition: all 1s ease 0s;
}
.onebox {
    max-width: 600px;
    margin: 0 auto 0 80px;
    padding: 10px 50px 50px 50px;
    background: rgba(255, 255, 255, 0.8);
	position : relative;
	z-index : 2;
}
.onebox img {
    width: 100%;
    height: auto;
    vertical-align: top;
    margin-bottom: 15px;
}
.onebox h3 {
    color : #c5000b;
	font-weight : 900;
	letter-spacing: 6px;
}
.onebox h4 {
    color : #c5000b;
	letter-spacing: 2px;
}
.onebox p {
    text-align: left;
	line-height : 1.8;
	padding-left : 20px;
	color : #c5000b;
	position : relative;
}
.onebox p::before {
    content : "■";
	position : absolute;
	top : 0;
	left : 0;
	color : #c5000b;
}
.mswaku {
	box-sizing : border-box;
	width : 100%;
	border : 20px solid #ffffff;
	position : relative;
}
h1.msttl {
	position : fixed;
	top : 620px;
	right : 40px;
	color : #ffffff;
	display : inline-block;
	font-weight : 900;
	font-size : 72px;
	line-height : 1.4;
}
h1.msttl br {
	display : none;
}
.bannerWrap {
	position : absolute;
	bottom : 50px;
	right : 0;
	width : 454px;
	height : 258px;
	z-index : 10;
}
.bannerWrap img {
	width : 100%;
}
@media only screen and (max-width: 1700px) {
	h1.msttl {
		right : calc(1.5vw + 10px);
		font-size : calc(3.48vw + 12.9px);
	}
	.bannerWrap {
		bottom : 4vw;
		right : 0;
		width : 27vw;
		height : auto;
	}
}
@media only screen and (max-width: 1600px) {
	.onebox {
		width : 45vw;
		max-width: 600px;
		margin: 0 auto 0 4vw;
		padding: 10px 5vw 50px 5vw;
	}
	h1.msttl br {
		display : block;
	}
	.mswaku {
		border : 2vw solid #ffffff;
	}
}
@media only screen and (max-width: 760px) {
	.one {
		display: block;;
		min-height: auto;
		margin-top: 30px;
	}
	.onex {
		display: block;;
		min-height: auto;
		margin-top: 40px;
	}
	.bg {
		position : relative; 
		height: 40vw;
		background-position: center center;
		opacity: 1;
		z-index : -;
		background-size: cover;
	}
	.show .bg {
		display: block;
		opacity: 1;
	}
	.onebox {
		width : 100%;
		max-width: 600px;
		margin: 0 auto 0 auto;
		padding: 10px 5vw calc(5vw + 10px) 5vw;
		box-sizing: border-box;
	}
	.mswaku {
		top : -8vw;
	}
	h1.msttl {
		position: relative;
		top: calc(10vw + 20px);
		right: auto;
		text-align: center;
		width: 100%;
	}
	h1.msttl br {
		display : none;
	}
	.bannerWrap {
		bottom : -7vw;
		right : 0;
		width : 36vw;
		height : auto;
	}
}
@media only screen and (max-width: 480px) {
	.bannerWrap {
		bottom : 7vw;
		width : 55vw;
	}
}

/* ポリシー */

.policyWrap {
	width : 100%;
}
.policyWrap h2 {
    text-align: left;
	line-height : 1.2;
	color : #c5000b;
	font-weight : 900;
	width : 45%;
	border-right : 1px solid #bebebe;
}
.policyWrap p {
    text-align: left;
	line-height : 2.0;
	padding-left : 40px;
	color : #000000;
	font-weight : 500;
	width : calc(55% - 41px);
}
.policyImage img {
	width : 100%;
	height : 50vw;
	max-height : 600px;
	object-fit: cover;
}
.policyComm {
	position : relative;
	top : -58px;
	z-index : 2;
}
.redTitle {
	display : inline-block;
}
.redTitle h2 {
	background-color : #c5000b;
	color : #ffffff;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : center;
	justify-content : center;
	align-items: center;
	padding : 0 40px;
	line-height : 1.4;
}
.redTitle h2 span {
	background-color : #c5000b;
	color : #ffffff;
	font-weight : 900;
	font-family: 'Public Sans', sans-serif;
}
.redTitle h2 strong {
	font-weight : 500;
	padding-left : 30px;
}
.grayback {
	background-color : #f4f4f4;
}
.policyComm .checked {
	background-color : #f4f4f4;
	padding : 24px 24px 12px 24px;;
}
.policyComm .checked ul {

}
.policyComm .checked ul li {
	width : calc(46% - 40px);
	padding : 10px 0 10px 40px;
	position : relative;
	text-align : left;
	line-height : 1.4;
	color : #c5000b;
	font-weight : 500;
}
.policyComm .checked ul li::before {
	content : "";
	position : absolute;
	top : 9px;
	left : 0;
	width : 25px;
	height : 25px;
	background : url(../img/check.png) no-repeat 0 0;
}
.policyComm .rightComm {
	padding-left : 50px;
}
.policyComm p {
	line-height : 1.9;
}
.graph img {
	width : 100%;
}
.photo .middle img {
	width : 40vw;
	max-width : 400px;
}
.photo .wide img {
	width : 60vw;
	max-width : 592px;
}
@media only screen and (max-width: 1200px) {
	.policyComm {
		top : -6vw;
	}
	.redTitle h2 {
		padding : 6px 4vw;
	}
}
@media only screen and (max-width: 640px) {
	.policyWrap h2 {
		width : 100%;
		border-right : none;
	}
	.policyWrap h2 br {
		display : none;
	}
	.policyWrap p {
		line-height : 1.8;
		padding-left : 0;
		padding-top : 4vw;
		width : 100%;
	}
	.policyComm .checked ul li {
		width : calc(100% - 40px);
		padding : 10px 0 10px 40px;
	}
	.photo .middle img {
		width : 100%;
	}
	.policyComm .rightComm {
		padding-left : 0;
	}
	.policyComm p {
		line-height : 1.8;
	}
	.photo .wide img {
		width : 100%;
	}
}
@media only screen and (max-width: 480px) {
	.policyWrap p br.kuten {
		display : none;
	}
}

/* プロフィール */

.topProfWrap {
	position: absolute;
	top: 50%;
	right: 10%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	background-color : #c5000b;
	color : #ffffff;
	padding : 30px;
	width : 45vw;
	max-width : 450px;
	box-sizing: border-box;
}
.topProfWrap h4 {
	color : #ffffff;
}
.topProfWrap h3 {
	color : #ffffff;
	font-weight : 900;
	line-height : 1.2;
}
.topProfWrap dl {
	color : #ffffff;
	display : table;
	width : 100%;
}
.topProfWrap dt {
	color : #ffffff;
	font-weight : 700;
	display : table-cell;
	width : 7em;
}
.topProfWrap dd {
	color : #ffffff;
	display : table-cell;
	width : calc(100% - 7.5em);
}
.progressTitle {
	color : #c5000b;
	letter-spacing: 2px;
}
.plofTable {
	
}
.plofTable .left {
	
}
.plofTable .left p {
	padding : 10px;
	background-color : #ffffff;
	width : 37vw;
	max-width : 379px;
	height : 28vw;
	max-height : 280px;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
}
.plofTable .left p img {
	width : 100%;
	height : 100%;
	object-fit: cover;
}
.rpos .right p {
	padding : 0 0 0 60px;
	font-weight : 400;
	letter-spacing: 2px;
	min-height : 280px;
}
.lpos .right p {
	padding : 0 60px 0 0;
	font-weight : 400;
	letter-spacing: 2px;
	min-height : 280px;
}
.plofTable h3 {
	color : #c5000b;
	font-weight : 500;
	letter-spacing: 2px;
	line-height : 2.4;
}
.rpos .right h3 {
	padding : 0 0 0 60px;
}
.lpos .right h3 {
	padding : 0 60px 0 0;
}
.rpos .left p {
	transform: rotate(-5deg);
	position : relative;
	left : 10px;
}
.lpos .left p {
	transform: rotate(5deg);
	position : relative;
	right : 10px;
}
@media only screen and (max-width: 1240px) {
	.topProfWrap {
		right: 2%;
		padding : 24px;
	}
}
@media only screen and (max-width: 1060px) {
	.topProfWrap {
		width : 40vw;
		right: 2%;
		padding : 24px;
	}
}
@media only screen and (max-width: 800px) {
	.topProfWrap {
		position: relative;
		top: 75vw;
		right: 0;
		transform: translateY(0%);
		-webkit- transform: translateY(0%);
		padding : 30px;
		width : 100%;
		max-width : 100%;
	}
}
@media only screen and (max-width: 640px) {
	.plofTable .left p {
		width : 67vw;
		height : 40vw;
		margin : 0 auto;
	}
	.rpos .right h3 {
		padding : 6vw 0 0 0;
	}
	.lpos .right h3 {
		padding : 6vw 0 0 0;
	}
	.rpos .right p {
		padding : 2vw 0 4vw 0;
		letter-spacing: 1px;
		min-height : 80px;
	}
	.lpos .right p {
		padding : 2vw 0 4vw 0;
		letter-spacing: 1px;
		min-height : 80px;
	}
}
@media only screen and (max-width: 480px) {
	.plofTable .left p {
		padding : calc(0.8vw + 2px);
		box-shadow: 0px 0px calc(0.8vw + 2px) 0px rgba(0, 0, 0, 0.2);
	}
}


.kijiWrap  {
	width : 100%;
	max-width : 1200px;
	margin : 0 auto;
	padding : 50px;
	position : relative;
	box-sizing: border-box;
	background-color : #ffffff;
}
.kijiWrap::after  {
	content : "";
	position : absolute;
	top : 80px;
	left : 50%;
	width : 1px;
	height : calc(100% - 160px);
	background-color : #c5000b;
	z-index : 0;
}
.kijiBlock {
	text-align : center;
}
.kijiTitle {
	display : inline-block;
	line-height : 2.6;
	background-color : #c5000b;
	color : #ffffff;
	padding : 0 30px;
	position : relative;
	z-index : 1;
}
.kijiFlex {
	
}
.kijiFlex .imgbox01 {
	width : 45%;
	display : block;
}
.kijiFlex .imgbox02 {
	width : 45%;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
}
.kijiFlex .imgbox03 {
	width : 45%;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
}
.kijiFlex .imgbox03a {
	width : 50%;
}
.kijiFlex .imgbox03b {
	width : 50%;
}
.kijiFlex .imgbox04 {
	width : 45%;
	height : 25vw;
	max-height : 175px;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	flex-wrap : wrap;
	font-size : 0;
}
.kijiFlex .imgbox04a {
	width : 50%;
}
.kijiFlex .alayout01 {
	display : block;
	font-size : 0;
	width : 100%;
	padding : 5px;
	box-sizing: border-box;
}
.kijiFlex .alayout02 {
	display : block;
	font-size : 0;
	width : 50%;
	padding : 5px;
	box-sizing: border-box;
}
.kijiFlex .imgbox03a .alayout03 {
	display : block;
	font-size : 0;
	width : 100%;
	padding : 5px 5px 0 5px;
	box-sizing: border-box;
}
.kijiFlex .imgbox03b .alayout03 {
	display : block;
	font-size : 0;
	width : 100%;
	padding : 5px;
	box-sizing: border-box;
}
.kijiFlex .alayout04 {
	display : block;
	font-size : 0;
	width : 100%;
	height : 18vw;
	max-height : 180px;
	padding : 5px;
	box-sizing: border-box;
}
.kijiFlex .imagelayout01 {
	width : 100%;
	height : 35vw;
	max-height : 350px;
	object-fit: cover;
}
.kijiFlex .imagelayout02 {
	width : 100%;
	height : 35vw;
	max-height : 350px;
	object-fit: cover;
}
.kijiFlex .imagelayout03 {
	width : 100%;
	height : 17vw;
	max-height : 170px;
	object-fit: cover;
	font-size : 0;
}
.kijiFlex .comm {
	width : 45%;
	position : relative;
}
.kijiFlex .comm dl {
	position : relative;
}
.kijiFlex .comm dt {
	text-align : left;
	color : #c5000b;
	line-height : 2.2;
}
.kijiFlex .comm dd {
	text-align : left;
	color : #000000;
	line-height : 1.6;
}
.kijiFlex .comm dl::before {
	content : "●";
	position : absolute;
	top : 4px;
	left : -64px;
	font-size : 1.2rem;
	color : #c5000b;
}
.kijiFlex.dfrv .comm dt {
	text-align : right;
	color : #c5000b;
	line-height : 2.2;
}
.kijiFlex.dfrv .comm dl::before {
	content : "●";
	position : absolute;
	top : 4px;
	right : -65px;
	font-size : 1.2rem;
	color : #c5000b;
	text-align : right;
}
@media only screen and (max-width: 1200px) {
	.kijiFlex .comm dl::before {
		left : -5.5vw;
	}
	.kijiFlex.dfrv .comm dl::before {
		right : -5.5vw;
	}
}
@media only screen and (max-width: 640px) {
	.kijiWrap  {
		padding : 5vw;
	}
	.kijiBlock {
		text-align : left;
	}
	.kijiWrap::after  {
		top : 8vw;
		left : 10%;
	}
	.kijiFlex .imgbox01 {
		width : 90%;
		padding-left : 10%;
	}
	.kijiFlex .imgbox02 {
		width : 90%;
		padding-left : 10%;
	}
	.kijiFlex .imgbox03 {
		width : 90%;
		padding-left : 10%;
	}
	.kijiFlex .imgbox03a {
		width : 100%;
	}
	.kijiFlex .imgbox03b {
		width : 100%;
	}
	.kijiFlex .imgbox04 {
		width : 90%;
		height : 62vw;
		max-height : 350px;
		padding-left : 10%;
	}
	.kijiFlex .alayout04 {
		height : 30vw;
		padding : 3px;
	}
	.kijiFlex .imagelayout01 {
		height : 60vw;
	}
	.kijiFlex .imagelayout02 {
		height : 60vw;
	}
	.kijiFlex .imagelayout03 {
		height : calc(30vw - 3px);
		max-height : 170px;
	}
	.kijiFlex .alayout01 {
		width : 100%;
		padding : 3px;
	}
	.kijiFlex .alayout02 {
		width : 50%;
		padding : 3px;
	}
	.kijiFlex .imgbox03a .alayout03 {
		padding : 3px 3px 0 3px;
	}
	.kijiFlex .imgbox03b .alayout03 {
		padding : 3px;
	}
	.kijiFlex .comm {
		width : 90%;
		padding-left : 10%;
	}
	.kijiFlex .comm dl::before {
		left : calc(-4.5vw - 5px);
	}
	.kijiFlex.dfrv .comm dl::before {
		left : calc(-4.5vw - 5px);
		right : auto;
	}
	.kijiFlex.dfrv .comm dt {
		text-align : left;
	}
}

/* フッター包括---------------------------*/

footer {
	position: relative;
	z-index: 3;
	background-color: #ffffff;
	padding-bottom : 200px;
}
.mgt0 {
	margin-top: 0 !important;
	padding: 0 !important;
}
.footlogo {
	width : 40%;
}
.footlogo img {
	width : 212px;
}
.footerTable {
	width: 60%;
	display : -webkit-flex;
	display : flex;
}
.footerTable a {
	display: block;
	font-size: 1rem;
	color: #000000;
	font-weight : 500;
	transition: 0.3s;
	padding: 0 20px;
	line-height : 1.1;
	transition: 0.3s;
}
.footerTable a.bdr {
	border-right : 1px solid #7e7e7e;
}
.footerTable a:hover {
	color: #c5000b;
}
.footerLine {
	display : -webkit-flex;
	display : flex;
	background-color : #f4f4f4;
	padding : 24px 4vw 16px 4vw;
	width : 100%;
	box-sizing: border-box;
}
.footerLine .copyLine {
	width : 30%;
}
.footerLine .footerBnr {
	width : 70%;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : flex-end;
	justify-content : flex-end;
	align-items: center;
}
.footerLine .footerBnr li {
	margin-left : 12px;
}
.copyright {
	text-align: left;
	font-size: 0.9rem;
	color: #4b4b4b;
	padding-left : 60px;
}
.wrapContact {
    cursor: pointer;
    display: block;
    position: fixed;
    right: 0;
    bottom: 0;
	width : 279px;
	height : 69px;
	font-size : 0;
	line-height : 0;
	z-index : 999;
}
.wrapContact {
	cursor: pointer;
	display: block;
	position: fixed;
	right: 0;
	bottom: 0;
	width: 279px;
	height: 69px;
	font-size: 0;
	line-height: 0;
	z-index: 999;
}
.footIns {
	position : relative;
	top : -4px;
}
@media only screen and (max-width: 1550px) {
	.footerLine {
		padding : 24px 0 16px 0;
	}
}
@media only screen and (max-width: 1200px) {
	.footerLine {
		display : block;
		padding : 24px 0 16px 0;
	}
	.footerLine .copyLine {
		width : 100%;
		padding-top : 30px;
		text-align : left;
	}
	.footerLine .footerBnr {
		width : 100%;
		display : -webkit-flex;
		display : flex;
		-webkit-justify-content : space-between;
		justify-content : space-between;
		align-items: center;
		padding-right : 10px;
		box-sizing: border-box;
	}
	.footerLine .footerBnr img {
		width : 100%;
	}
	.copyright {
		text-align: center;
		padding-left : 0;
	}
}
@media only screen and (max-width: 1060px) {
	.footMenu a {
		font-size: 13px;
		padding: 0 14px;
	}
}
@media only screen and (max-width: 960px) {
	.footlogo {
		width : 94%;
		margin : 0 auto;
	}
	.footlogo p {
		font-size : 1.2rem;
	}
	.footerTable {
		display : none;
	}
	.footerLine .copyLine {
		padding-top : 30px;
		text-align : left;
	}
}
@media only screen and (max-width: 640px) {
	.footerLine .footerBnr {
		display : block;
		padding-left : 10px;
		padding-right : 0;
	}
	.footerLine .footerBnr li {
		display : inline-block;
		margin : 1vw;
	}
	.footerLine .footerBnr img {
		width : auto;
		height : 12vw;
		max-height : 50px;
	}
	.footerLine .footerBnr li.last {
		display : block;
		margin : 4vw;
		text-align : center;
	}
	.footerLine .footerBnr li.last img {
		width : auto;
		height : 10vw;
		max-height : 35px;
	}
}

/* 管理画面フッター */
#admin_contener {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

.admin_footer {
	margin-top: auto;
	background-color: #474747;
	position: relative;
}

.admin_footer .footerCopy {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	text-align: right;
	color: #ffffff;
	font-size: 12px;
	padding: 32px 0;
}

.admin_footer .safety {
	position: absolute;
	top: 4px;
	left: 4px;
}

.wrapPageTopPc  {
    position: fixed;
    bottom : 20px;
    right: 56px;
    z-index: 99;
	text-align : center;
	cursor : pointer;
}
.wrapPageTopPc p {
    text-align : center;
	background-color : #ffffff;
	border : 3px solid #c5000b;
	border-radius : 50%;
	line-height : 1.4;
	padding : 7px 0 0 0;
    width : 40px;
	height : 33px;
	transition: 0.4s;
}
.wrapPageTopPc p span {
	display : block;
	font-size : 14px;
}
.wrapPageTopPc p:hover {
	opacity : 0.7;
}

.bshadow {
	box-shadow: rgba(115, 116, 117, 0.65) 2px 2px 4px 0px;
	-webkit-box-shadow: rgba(115, 116, 117, 0.65) 2px 2px 4px 0px;
	-moz-box-shadow: rgba(115, 116, 117, 0.65) 2px 2px 4px 0px;
}

.cshadow {
	border: 3px solid #ffffff;
	box-shadow: rgba(115, 116, 117, 0.65) 2px 2px 4px 0px;
	-webkit-box-shadow: rgba(115, 116, 117, 0.65) 2px 2px 4px 0px;
	-moz-box-shadow: rgba(115, 116, 117, 0.65) 2px 2px 4px 0px;
}

.servWrap00 {
	width: 960px;
	margin: 0 auto;
}

.servWrap01 {
	width: 1080px;
	margin: 0 auto;
}
