@charset "UTF-8";
/* CSS Document */

#all {
	height: auto;
	width: 1200px;
	margin-left: auto;
	margin-bottom: 30px;
	font-size: 13.2px;
	color: #666;
	letter-spacing: 2.7px;
	margin-right: auto;
	padding-top: 30px;
	font-family: "FOT-セザンヌ Pro M";
}
#hut1 {
	float: left;
	height: auto;
	width: 500px;
	margin-top: 5px;
	margin-bottom: 10px;
}
#hut2 {
	float: left;
	height: auto;
	width: 470px;
	margin-top: 5px;
	margin-bottom: 10px;
	text-align: right;
}
img {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
}
#hutter {
	float: left;
	height: auto;
	width: 970px;
	margin-bottom: 40px;
	margin-top: 50px;
	font-size: 12px;
	letter-spacing: 2px;
}
h3 {
	font-size: 13px;
	font-weight: normal;
}
#all #content #fa #tpo2 #tp1 #tp1a #tp1a1 img {
	margin-bottom: 25px;
}
#all #content #fa #tpo2 #tp1 #tp1a #tp1a2 img {
	margin-bottom: 25px;
}

#head .logo{
	max-width: 180px;
	margin: 0;
}

#head .logo img{
	width: 100%;
	height: auto;
}

#menu {
	float: left;
	width: 175px;
/*
	margin-right: 53px;
	padding-top: 15px;
*/
	font-size: 12px;
	position: absolute;
	top: 175px;
}

.fixed #menu{
	position: fixed;
	top: 25px;
}

#fa {
	float: left;
	height: auto;
	width: 970px;
}
#fa1 {
	float: left;
	height: auto;
	width: 115px;
	margin-right: 22px;
}
#fa2 {
	float: left;
	height: auto;
	width: 115px;
	margin-right: 22px;
}
#fa3 {
	float: left;
	height: auto;
	width: 115px;
	margin-right: 22px;
}
#fa4 {
	float: left;
	height: auto;
	width: 115px;
	margin-right: 22px;
}
#fa5 {
	float: left;
	height: auto;
	width: 115px;
	margin-right: 22px;
}
#fa6 {
	float: left;
	height: auto;
	width: 115px;
	margin-right: 22px;
}
#fa7 {
	float: left;
	height: auto;
	width: 115px;
	margin-right: 22px;
}
#content {
	float: left;
	height: auto;
	width: 970px;
	line-height: 2em;
	padding-left: 228px;
}
#head {
	float: left;
	height: 62px;
	width: 1200px;
	margin-bottom: 55px;
	padding-top: 15px;
}
.mtitle {
	float: left;
	height: 105px;
	width: 970px;
	margin-bottom: 30px;
}
.mtitle1 {
	float: left;
	width: 970px;
	margin-top: 20px;
}
.mtitlein {
	float: right;
	height: 105px;
	width: 600px;
	text-align: right;
}
#mtitle {
	float: left;
	height: 130px;
	width: 970px;
	margin-bottom: 30px;
}
#submenu {
	float: left;
	width: 970px;
	margin-top: 50px;
}
#mtitlein {
	float: right;
	height: 105px;
	width: 600px;
	text-align: right;
}
#mtitle0 {
	float: left;
	height: auto;
	width: 970px;
	margin-bottom: 30px;
	text-align: right;
}
#mtitle1 {
	float: left;
	width: 970px;
}
#mtitle11 {
	float: left;
	width: 970px;
	margin-top: 20px;
}
#all #content #mtitle11 img {
	margin-top: 30px;
}
#mtitle2 {
	float: left;
	width: 970px;
	margin-top: 60px;
}
#mtitle2ok {
	float: left;
	width: 970px;
	margin-top: 60px;
	margin-bottom: 50px;
}

#mtitle22 {
	float: left;
	width: 970px;
	margin-top: 20px;
}
#all #content #mtitle22 img {
	margin-top: 30px;
}
.mtitle3 {
	float: left;
	width: 970px;
	margin-top: 60px;
}
#mtitle3 {
	float: left;
	width: 970px;
	margin-top: 60px;
}
#mtitle3a {
	float: left;
	width: 970px;
	margin-top: 60px;
}
#mtitle3b {
	float: left;
	width: 970px;
	margin-top: 60px;
}
#mtitle3c {
	float: left;
	width: 970px;
	margin-top: 60px;
}
#mtitle3d {
	float: left;
	width: 970px;
	margin-top: 60px;
}
#mtitle3e {
	float: left;
	width: 970px;
	margin-top: 60px;
}
#mtitle33 {
	float: left;
	width: 970px;
	margin-top: 20px;
}
#mtitle333 {
	float: left;
	width: 970px;
	margin-top: 60px;
}
#mtitle333z {
	float: left;
	width: 970px;
	margin-top: 60px;
}
#mtitle333zz {
	float: left;
	width: 970px;
	margin-top: 60px;
}
#all #content #mtitle33 img {
	margin-top: 30px;
}
#mtitle4 {
	float: left;
	width: 970px;
	margin-top: 60px;
}
#mtitle44 {
	float: left;
	width: 970px;
	margin-top: 20px;
}
#all #content #mtitle44 img {
	margin-top: 30px;
}
#mtitle5 {
	float: left;
	width: 970px;
	margin-top: 60px;
}
#mtitle55 {
	float: left;
	width: 970px;
	margin-top: 20px;
}
#all #content #mtitle55 img {
	margin-top: 30px;
}
#mtitle6 {
	float: left;
	width: 970px;
	margin-top: 60px;
}
#mtitle66 {
	float: left;
	width: 970px;
	margin-top: 20px;
}
#all #content #mtitle66 img {
	margin-top: 30px;
}
a:link {
	color: #F00;
	text-decoration: underline;
}
a:hover {
	color: #CCC;
	text-decoration: none;
}
a:visited {
	color: #F00;
}
.mtitlemain {
	float: left;
	width: 970px;
	margin-top: 50px;
}
#mtitlemain {
	float: left;
	width: 970px;
	margin-top: 50px;
}
#mtitlemain1 {
	float: left;
	width: 970px;
	margin-top: 50px;
}
#mtitlemain2 {
	float: left;
	width: 970px;
	margin-top: 50px;
}
#mtitlemain2z {
	float: left;
	width: 970px;
	margin-top: 50px;
}
#mtitlemain2zz {
	float: left;
	width: 970px;
	margin-top: 50px;
}
#mtitlemain3 {
	float: left;
	width: 970px;
	margin-top: 50px;
}
#mtitlemain4 {
	float: left;
	width: 970px;
	margin-top: 50px;
	height: auto;
}
#mtitlemain5 {
	float: left;
	width: 970px;
	margin-top: 50px;
}
#mtitlemain6 {
	float: left;
	width: 970px;
	margin-top: 50px;
}
#mtitlemain7 {
	float: left;
	width: 970px;
	margin-top: 50px;
}
#mtitlemain8 {
	float: left;
	width: 970px;
	margin-top: 50px;
}
#mtitlemain9 {
	float: left;
	width: 970px;
	margin-top: 50px;
}
#mtitlemain22 {
/* 	float: left; */
	width: 750px;
	margin-top: 50px;
	height: auto;
	margin-bottom: 50px;
}
.hikaru {
	margin-top: 50px;
	margin-bottom: 0px;
}
.hikaru2 {
}
#all #content #mtitle img {
	margin-right: 13px;
}
#sheet {
	width: 970px;
	margin-top: 50px;
	margin-bottom: 50px;
	height: auto;
	float: left;
}
#sheet1 {
	width: 970px;
	margin-top: 50px;
	margin-bottom: 50px;
	height: auto;
}
#sheet2 {
	width: 970px;
	margin-top: 50px;
	margin-bottom: 50px;
	height: auto;
}
#sheet3 {
	width: 970px;
	margin-top: 50px;
	margin-bottom: 50px;
	height: auto;
}
#sheet4 {
	width: 970px;
	margin-top: 50px;
	margin-bottom: 50px;
	height: auto;
}
#sheet5 {
	width: 970px;
	margin-top: 50px;
	margin-bottom: 50px;
	height: auto;
}
#all #content #mtitlemain1 #sheet .sample8 thead tr .topL strong {
	color: #FFF;
}
.shashin {
	float: left;
	height: auto;
	width: 970px;
	margin-bottom: 60px;
}
.shashin1 {
	float: left;
	height: auto;
	width: 604px;
	margin-right: 40px;
}
.shashin2 {
	float: left;
	height: 404px;
	width: 320px;
	letter-spacing: 2px;
	line-height: 1.7em;
	font-size: 11.5px;
}
.shashin3 {
	float: left;
	height: 404px;
	width: 604px;
	margin-right: 40px;
}

#nakami {
	float: left;
	height: auto;
	width: 462px;
	margin-right: 20px;
}
#nakami2 {
	float: left;
	height: auto;
	width: 462px;
}
#nakamia {
	float: left;
	height: auto;
	width: 462px;
	margin-right: 20px;
}
#nakami2a {
	float: left;
	height: auto;
	width: 462px;
}
#nakamib {
	float: left;
	height: auto;
	width: 462px;
	margin-right: 20px;
}
#nakami2b {
	float: left;
	height: auto;
	width: 462px;
}
#nakamic {
	float: left;
	height: auto;
	width: 462px;
	margin-right: 20px;
}
#nakami2c {
	float: left;
	height: auto;
	width: 462px;
}
#nakamid {
	float: left;
	height: auto;
	width: 462px;
	margin-right: 20px;
}
#nakami2d {
	float: left;
	height: auto;
	width: 462px;
}
#nakamie {
	float: left;
	height: auto;
	width: 462px;
	margin-right: 20px;
}
#nakami2e {
	float: left;
	height: auto;
	width: 462px;
}
#nakamif {
	float: left;
	height: auto;
	width: 462px;
	margin-right: 20px;
}
#nakami2f {
	float: left;
	height: auto;
	width: 462px;
}
#head1 {
	float: left;
	height: 62px;
	width: 923px;
}
.staff {
	float: left;
	height: 200px;
	width: 970px;
	margin-bottom: 50px;
}
.staffok {
	float: left;
	height: auto;
	width: 970px;
	margin-bottom: 30px;
}
.staff1 {
	float: left;
	height: 200px;
	width: 200px;
	margin-right: 100px;
}
.staff2 {
	float: left;
	height: 200px;
	width: 600px;
	font-size: 12px;
	vertical-align: bottom;
}
.qqqq {
	border: thin solid #666;
	text-align: left;
	width: 600px;
}
.moji {
	color: #F00;
	font-weight: normal;
	font-size: 13px;
}
.titleeee {
	float: left;
	width: 970px;
	margin-top: 60px;
}
.titleeeee {
	float: left;
	width: 970px;
	margin-top: 50px;
}
.nakamii {
	float: left;
	height: auto;
	width: 462px;
	margin-right: 20px;
}
.nakamii2 {
	float: left;
	height: auto;
	width: 462px;
}
.shashinn {
	float: left;
	height: 404px;
	width: 970px;
	margin-bottom: 60px;
}
.shashinnn {
	float: left;
	height: 404px;
	width: 970px;
	margin-bottom: 60px;
}
.shashinnnn {
	float: left;
	height: 404px;
	width: 970px;
	margin-bottom: 60px;
}
.shashinnnnn {
	float: left;
	height: 404px;
	width: 970px;
	margin-bottom: 60px;
}
.shashinnnnnn {
	float: left;
	height: 404px;
	width: 970px;
	margin-bottom: 60px;
}
.shashinnnnnnn {
	float: left;
	height: 404px;
	width: 970px;
	margin-bottom: 60px;
}
.shashinnnnnnnn {
	float: left;
	height: 404px;
	width: 970px;
	margin-bottom: 60px;
}
.shashinnnnnnnnn {
	float: left;
	height: 404px;
	width: 970px;
	margin-bottom: 60px;
}
.shashinnnnnnnnnn {
	float: left;
	height: 404px;
	width: 970px;
	margin-bottom: 60px;
}
.shashinnnnnnnnnnn {
	float: left;
	height: 404px;
	width: 970px;
	margin-bottom: 60px;
}
.shashinnnnnnnnnnnn {
	float: left;
	height: 404px;
	width: 970px;
	margin-bottom: 60px;
}
#all #content #mtitlemain22 #boxy a img {
	margin-right: 15px;
}
.shashinnnnnnnnnnnnn {
	float: left;
	height: 404px;
	width: 970px;
	margin-bottom: 60px;
}
#boxy {
	float: left;
	height: auto;
	width: 970px;
	margin-top: 0px;
	margin-bottom: 0px;
}
#all #menu img {
	margin-bottom: 30px;
}
#insatu {
	float: left;
	width: 970px;
	margin-top: 0px;
	margin-bottom: 30px;
}
#br1 {
	float: left;
	height: auto;
	width: 970px;
	margin-top: 30px;
	margin-bottom: 70px;
}
#tpo {
	float: left;
	height: auto;
	width: 970px;
	margin-bottom: 0px;
}
#tpo2 {
	float: left;
	width: 970px;
	margin-top: 12px;
	height: auto;
}
#tp1a {
	float: left;
	height: auto;
	width: 450px;
	margin-bottom: 25px;
}
#tpo22 {
	float: left;
	height: 315px;
	width: 315px;
	margin-right: 12px;
}
#tpo222 {
	float: left;
	height: 315px;
	width: 315px;
	margin-right: 12px;
}
#tpo2222 {
	float: left;
	height: 315px;
	width: 315px;
}
#tpo3 {
	float: left;
	width: 970px;
	margin-top: 12px;
	height: 315px;
}
#tpo33 {
	float: left;
	height: 315px;
	width: 315px;
	margin-right: 12px;
}
#tpo333 {
	float: left;
	height: 315px;
	width: 315px;
	margin-right: 12px;
}
#tpo3333 {
	float: left;
	height: 315px;
	width: 315px;
}
#tpo4 {
	float: left;
	width: 970px;
	margin-top: 12px;
	height: 315px;
}
#tpo44 {
	float: left;
	height: 315px;
	width: 315px;
	margin-right: 12px;
}
#tpo444 {
	float: left;
	height: 315px;
	width: 315px;
	margin-right: 12px;
}
#tpo4444 {
	float: left;
	height: 315px;
	width: 315px;
}
#tpo5 {
	float: left;
	width: 970px;
	margin-top: 12px;
	height: 315px;
}
#tpo55 {
	float: left;
	height: 315px;
	width: 315px;
	margin-right: 12px;
}
#tpo555 {
	float: left;
	height: 315px;
	width: 315px;
	margin-right: 12px;
}
#tpo5555 {
	float: left;
	height: 315px;
	width: 315px;
}
#tpo11 {
	float: left;
	width: 550px;
	margin-right: 0px;
}
#tpo111 {
	float: left;
	height: auto;
	width: 415px;
	border: thin dotted #999;
}
#tp1 {
	float: left;
	height: auto;
	width: 450px;
	margin-top: 30px;
	margin-right: 25px;
}
#tp2 {
	float: left;
	height: auto;
	width: 495px;
	margin-top: 30px;
}
#all #content #fa #tpo2 #tp2 img {
	margin-bottom: 25px;
}
#tp1a1 {
	float: left;
	height: 620px;
	width: 220px;
	margin-right: 10px;
}
#tp1a2 {
	float: left;
	height: 620px;
	width: 220px;
}
::selection {
	background: #dc143c;
	color: #ffffff;
}
::-moz-selection {
background: #dc143c;
color: #ffffff;
}
#meishiinfo {
	float: left;
	width: 280px;
	margin-right: 60px;
}
#meishiinfo1 {
	float: left;
	width: 280px;
	margin-right: 60px;
}
#meishiinfo2 {
	float: left;
	width: 280px;
}
#all #content #mtitlemain2 #meishiinfo img {
	margin-bottom: 80px;
}
#all #content #mtitlemain2 #meishiinfo1 img {
	margin-bottom: 80px;
}
#all #content #mtitlemain2 #meishiinfo2 img {
	margin-bottom: 80px;
}
#tpooo1 {
	float: left;
	width: 970px;
	margin-top: 60px;
	height: auto;
}
#tpooomove {
	float: left;
	width: 970px;
	height: auto;
	margin-top: 60px;
}
#tpooo2 {
	float: left;
	width: 970px;
	margin-top: 60px;
	height: auto;
}
#tpooo3 {
	float: left;
	width: 970px;
	margin-top: 60px;
	height: auto;
}
#tpooo4 {
	float: left;
	width: 970px;
	margin-top: 60px;
	height: auto;
}
#tpooo911 {
	float: left;
	width: 970px;
	margin-top: 60px;
	height: auto;
	background-color: #f4f4f4;
	padding-bottom: 30px;
}
#tpooo912 {
	float: left;
	width: 970px;
	margin-top: 60px;
	height: auto;
	background-color: #f4f4f4;
	padding-bottom: 30px;
}
#tpooo913 {
	float: left;
	width: 970px;
	margin-top: 60px;
	height: auto;
	background-color: #f4f4f4;
	padding-bottom: 30px;
}
#tpooo914 {
	float: left;
	width: 970px;
	margin-top: 60px;
	height: auto;
	background-color: #f4f4f4;
	padding-bottom: 30px;
}
#topkappan {
	float: left;
	width: 970px;
	margin-top: 60px;
	height: auto;
}


.brandworks {
	float: left;
	width: 970px;
	margin-bottom: 100px;
}
#boxy img {
	margin-bottom: 30px;
}
#mtitlemain55a {
	float: left;
	width: 970px;
}
#okeyabr1 {
	float: left;
	width: 970px;
	margin-top: 50px;
}
.okeyabr1 {
	float: left;
	width: 970px;
	margin-top: 70px;
}
.okeyaphoto {
	float: left;
	width: 970px;
	margin-top: 50px;
	text-align: center;
	font-family: "FOT-セザンヌ Pro M";
	font-size: 11px;
}
.brti {
	font-size: 16px;
	text-align: center;
}
h4 {
	margin: 0px;
	padding: 0px;
	font-size: 16px;
	text-align: center;
	font-weight: normal;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	border-bottom-color: #ff0000;
	text-decoration: underline;
}
#mtitle2015 {
	float: left;
	width: 970px;
	margin-bottom: 50px;
}
.home1 {
	border: thin solid #999;
}
#mtitlemain2015 {
	float: left;
	width: 970px;
	margin-top: 50px;
}
#meishiinfo2015 {
	float: left;
	width: 280px;
	margin-right: 60px;
}
#meishiinfo20151 {
	float: left;
	width: 280px;
	margin-right: 60px;
}
#meishiinfo20152 {
	float: left;
	width: 280px;
}
#all #content #mtitlemain2015 #meishiinfo2015 img {
	margin-bottom: 80px;
}
#all #content #mtitlemain2015 #meishiinfo20151 img {
	margin-bottom: 80px;
}
#all #content #mtitlemain2015 #meishiinfo20152 img {
	margin-bottom: 80px;
}
#blog1 {
	float: left;
	height: auto;
	width: 300px;
	margin-right: 33px;
}
#blog2 {
	float: left;
	height: auto;
	width: 300px;
	margin-right: 33px;
}
#blog3 {
	float: left;
	height: auto;
	width: 300px;
}
.blog {
	float: left;
	height: 280px;
	width: 300px;
	margin-bottom: 40px;
	font-size: 10px;
}

/* 2023 カラム調整 */
.blog-contents-wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
}

.blog-contents-wrap:after{
	content: "";
	display: block;
	width: 31%;
}

.blog-contents-wrap .blog{
	width: 31%;
	height: auto;
	float: none;
	margin-bottom: 70px;
}

.blog-contents-wrap .blog a{
	display: block;
	height: 0;
	padding-top: 66.66%;
	position: relative;
}

.blog-contents-wrap .blog img{
    height: 100%;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50% , -50%);
    object-fit:cover;
    font-family: 'object-fit: cover;'
}

.blogaa {
	float: left;
	height: 280px;
	width: 300px;
	margin-bottom: 40px;
	font-size: 10px;
}
.bgazou {
	text-align: center;
	float: left;
	height: auto;
	width: 1000px;
	margin-bottom: 40px;
}
.blogimg {
	text-align: left;
	float: left;
	height: auto;
	width: 967px;
	margin-bottom: 30px;
}
.blogtitle {
	float: left;
	width: 967px;
	margin-bottom: 30px;
}
.blogbodycopy {
	font-size: 13.5px;
letter-spacing: 3px;
	float: left;
	width: 967px;
}
.ti2015 {
	float: left;
	width: 970px;
	margin-bottom: 30px;
}
#newscontents {
	float: left;
	width: 970px;
	margin-top: 60px;
	font-size: 10px;
	height: auto;
	line-height: 1.5em;
	letter-spacing: 0.2em;
	display: flex;
	gap:20px;
}

#newscontents .news-list{
	background-color: #E0DFE1;
	padding: 15px;
	width: 50%;
}

h2 {
	float: left;
	margin: 0px;
	font-size: 11px;
	font-weight: normal;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	border-bottom-color: #ff0000;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 20px;
}

#youyou {
	float: left;
	height: auto;
	width: 970px;
}


#youyou2 {
	float: left;
	height: auto;
	width: 970px;
}

#youyou3 {
	float: left;
	height: auto;
	width: 970px;
}

.okeya {
	float: left;
	width: 900px;
	padding-left: 50px;
}


#menu a {
	padding: 0.3em;
	background-image: linear-gradient(to right, rgba(0,0,0,0) 50%, rgba(255,255,0,1) 50%);
	background-position: 0 0;
	background-size: 200% auto;
	transition: .2s;
	text-decoration: none;
	color: #666;
}

#menu a:hover {
    background-position: -100% 0;
    color: #666;
    
}

.mtmenu {
	float: none;
	width: 175px;
	height: auto;
	margin-bottom: 32px;
}


#tpooo2deshi {
	float: left;
	width: 970px;
	height: auto;
	padding-top: 30px;
}


/*====2018.4追加====*/

#head1 .logo2{
	margin-left: 48px;
}


#mtitle{
	height: auto;
}

h1.t_text{
	font-size: 17px;
	line-height: 1.8;
	letter-spacing: 3px;
	font-weight: normal;
	display: block;
	float: none;
	color: #727171;
	border-bottom: 2px solid #e1001e;
  	width: -webkit-max-content;
  	width: -moz-max-content;
  	width: max-content;
  	max-width: 100%;
  	padding-left: 0px;
}

/*
h1.t_text span{
	font-size: 27px;

}
*/


h2.t_text{
	color: #727171;
	font-size: 17px;
	letter-spacing: 2.5px;
	line-height: 1.8;
	padding: 10px 0px 10px 18px;
	border-bottom: 1px solid #d5d5d5;
	margin: 0;
}


h2.t_text:before{
    content: "";
    display: inline-block; 
    background: #e1001e;
	width: 8px;
	height: 20px;
	margin-left: -18px;
	margin-right: 10px;
    -moz-transform: translateY(2px);
	-webkit-transform: translateY(2px);
    transform: translateY(2px);
}


h2.t_text span{
	font-size: 13px;
}


h3.t_text{
	font-size: 13px;
	margin-bottom: 10px;
	line-height: 1.5;
	letter-spacing: 3px;
}

/*menumeishi*/

#submenu ul{
	list-style: none;
	padding: 0;
	letter-spacing: -.4em;
}

#submenu ul a{
	font-size: 12px;
	text-align: center;
	color: #555555;
	border: 1px solid #808080;
	display: inline-block;
	width: calc(20% - 10px);
	margin-right: 8px;
	padding: 5px 0;
	box-sizing: border-box;
	letter-spacing: 0;
	background-color: #ffff66;
	text-decoration: none;
}

#submenu ul a:link,
#submenu ul a:visited{
	text-decoration: none;
}

#submenu ul a:nth-child(3){
	width: 20%;
}

#submenu ul a:last-child{
	margin-right: 0;
}



/*contact*/

.contact_layout_wrap{
	width: calc(100% + 30px);
}


#conocn dl{
	width: 50%;
	padding-left: 30px;
	float: left;
	box-sizing: border-box;
	font-size: 13px;
}

#conocn dl.full{
	width: 100%;
	padding-left: 0px;
	margin-left: 0px!important;
	box-sizing: border-box;
}

#conocn dl:nth-child(odd){
	margin-left: -30px;
}


#conocn dt{
	font-size: 13px;
	-webkit-transform: translateY(0px);
}

#conocn dd{
	height: 60px;
	display: block;
	margin: 0;
   	border-bottom: 1px solid #e5e5e5;
   	margin-bottom: 20px;

}

#conocn .full.text_area dd{
	height: auto;
}

#conocn dl,
#conocn dt,
#conocn dd,
#conocn .com,
#conocn input#submit{
	-moz-transition: all 0.2s cubic-bezier(.65,.05,.36,1);
	-webkit-transition: all 0.2s cubic-bezier(.65,.05,.36,1);
	-o-transition: all 0.2s cubic-bezier(.65,.05,.36,1);
	-ms-transition: all 0.2s cubic-bezier(.65,.05,.36,1);
}
	

#conocn input{
	height: 60px;
	vertical-align: middle;
    margin-top: -2px;

}

#conocn .radio label{
	margin-right: 10px;
}

#conocn .text_area input,
#conocn .text_area textarea{
	font-size: 12px;
	padding: 0em 1em;
    width: 100%;
    border: none;
    margin-top: 0;
    margin-bottom: 0.5rem;
    -webkit-transition: background-color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition: background-color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    outline: none;
	box-sizing: border-box;
    -webkit-appearance: none;

}

#conocn .text_area textarea{
	padding-top: 20px;
	height: 150px;
	resize: none;
}

#conocn select{
	width: 100%!important;
	font-size: 13px;
	padding: 10px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	margin-top: 10px;
}




#conocn input[type="submit"] {
	width: 100%;
	height: auto;
    padding: 30px 0;
    font-size: 16px;
    background-color: #f2f1f0;
    border: 1px solid #e5e5e5;
    cursor: pointer;
    -webkit-appearance: none;
    border-radius: 0;
    border: none;
    outline: none;
 }


#conocn input[type="submit"]:hover {
    background-color: #666;
    color: #FFF;
}




/*focus*/

#conocn dl.focus{
	color: #333;

}
#conocn dl.focus dd{
	font-size: 12px;
   	border-bottom: 1px solid #333;
}


/*check*/

#conocn dl.check{
	color: #e1001e;

}
#conocn dl.check dd{
	font-size: 12px;
   	border-bottom: 1px solid #e1001e;
}

/*画像マウスオーバー赤*/
.portfolio-wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.portfolio-wrap .portfolio{
	display: block;
	width: calc(100% / 4);
	position: relative;
}

.portfolio-wrap .portfolio img{
    height: 100%!important;
    width: 100%!important;
    object-fit:cover;
    font-family: 'object-fit: cover;'
}

.portfolio-overlay {
	position: absolute;
	background: #ff0000;
	color: #ffffff;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	vertical-align: top;
	opacity: 0;
	transition: all 0.4s ease-in-out;
}
.portfolio-item {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	line-height: 1.7;
	width: 90%;
}

.portfolio-item .title{
	margin-bottom: .6em;
	font-size: 1.1em;
	font-weight: normal;
	text-decoration: none;
}

.portfolio:hover .portfolio-overlay {
	opacity: 0.8;
}


/* ポップアップギャラリー */
.gallery-wrap{
	float: left;
	width: 100%;
	margin-top: 60px;
}

.gallery-wrap ul{
	width: 100%;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;	
	padding: 0;
}

.gallery-wrap ul:after{
	content: "";
	display: block;
	width: 29%;
}

.gallery-wrap ul li{
	width: 29%;
	display: block;	
	margin-bottom: 50px;
}

.gallery-wrap ul li img{
    height: 100%;
    width: 100%;
    object-fit:cover;
    font-family: 'object-fit: cover;'
}

/* 背景色 */
.modaal-overlay{
	background: rgb(0,0,0)!important;
	opacity: .8!important;
}


.photo-section {
  background: #8B0000; /* 深い赤（おすすめ） */
  padding: 80px 0;
}
