@charset "UTF-8";
/*
Theme Name: 661cojpsp
Version: 1.0.0
*/

/****************************************
General Setting
*****************************************/

body {
	font-size: 14px;
	min-width: 100%;
	letter-spacing: 0px;
	-webkit-text-size-adjust: 100%;
}
.sponly,
.sp {display:   block;}
.pc {display: none;}
img.spimgblock { float: none; display: block; margin-left: auto!important; margin-right: auto!important; margin-bottom: 10px; }
span.spbr { display: block; }
span.pcbr { display: inline; }

/****************************************

Typography

*****************************************/
img {
	max-width: 100%;
	height: auto;
}

footer {
	width: 100%;
}

iframe { max-width: 100%; }

/****************************************

Layout

*****************************************/
#footer,
.wrapper03,
.wrapper02,
.wrappertop,
.wrapper {
	margin-left: auto;
	margin-right: auto;
	width: 96%;
}
	#headerL { min-width: 100%; position: absolute; z-index: 2501; }
#headerL.fixed { background-color: unset;  z-index: 2501; box-shadow: 0px 0px;}
#headerL.fixed .headerbox {
	justify-content: right;
}
#headerL.fixed .logo { display: none; }
.footbox { display: block; }
.footbox .fbox02 { width: 94%; margin: 0px auto 20px; }
.footbox .fbox01 { display: none; }
#top-concept02 ul { flex-wrap: wrap; gap: 0px; }
#top-concept02 ul li { width: 100%; margin-bottom: 0px; }
#top-concept02 ul li img { display: block; }
ul.top-eventlist { display: block; }
ul.top-eventlist li  { width: 100%; margin-bottom: 30px; }
#top-company ul { gap: 5%; flex-wrap: wrap; }
#top-company ul li { width: 45%; margin-bottom: 30px; }
.top-newlist { display: block; }
.top-newlist .itembox { width: 100%; margin-bottom: 30px; }
#top-concept02  { margin-bottom: 60px; }
#top01 { margin-bottom: 0px; }
#top07 { margin-bottom: 30px; }
.menu {
	margin-top:55px;
	margin-left: auto;
	margin:0;
	padding: 0;
	width:100%;
	height: auto;
	float: none;
	display:  none;
}

.menu ul{
	display: block;
	list-style-type: none;
	margin: 0px 0;
	padding: 0px 0;
	text-align: left;
}

.menu li{
	display:block;
	margin: 0px;
	padding: 0px 0px;
	width:100%;
	box-sizing: border-box;
	border-bottom:1px #333 solid;
	background: #fff;
}
.menu li.menu1{
	border-top:1px #333 solid;	
}

.menu li.sns01,
.menu li.sns02 {
	display: block;
	width: auto;
	text-align: left;
	border: 0px;
}

.menu li.sns01 a,
.menu li.sns02 a {
	text-align: center;
}
.menu li.sns01 a img { display: inline-block; }
.menu span.wrap,
.menu a{
	display: block;
	text-align: left;
	padding: 15px 10px;
	position: relative;
	color: #333;
	width: auto;
	height: 100%;
	font-size: 15px;
	border: 0px !important;
	line-height: 1.7em;
	background: #fff;
}
.menu a:after {
	content: "";
	position: absolute;
	right: 10px;
	top: 10px;
	width: auto;
	opacity: 1;
	display: none;
}
.menu span.pcbr { display: inline; }
.menu span.wrap span.en,
.menu a span.en {
	display: inline-block;
	font-size: 14px;
	color: #eee;
	padding-left: 2em;
}
.menu a:hover {color: #e00;}
.menu a:hover{
	-webkit-transition: color 0.2s, font 0.2s;
	-moz-transition: color 0.2s, font 0.2s;
	transition: color 0.2s, font 0.2s;
}
.menu ul:after {
	clear: both;
	display: block;
	content: "";
}

.menu a:hover:after { background-color: #fff; }
.menu .child {
	position: relative;
	width: auto;
}
.menu-grid { display: block; }
.menu-column li { margin-bottom: 8px; }
.full-menu {
    position: fixed;
    top: 0px; /* ヘッダーの高さ */
    left: 0;
    width: 100%;
/*    height: calc(100vh - 62px); */
	height: 100vh;
        overflow-y: auto;
    -webkit-overflow-scrolling: touch;    
    z-index: 1500;
    padding-bottom: 80px;
    box-sizing: border-box;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.4s, visibility 0.4s;
}
.menu-grid { padding-top: 20px; }

.full-menu.active {
    opacity: 1;
    visibility: visible;
}
.headerbox .logo img{ max-width: 230px; }
#footer_fixed { position: fixed; bottom: 0px; width: 100%; }
#footer_fixed { padding: 0px; height: auto; }
#footer_fixed .fbtnsp { display: flex; width: 100%; align-items: center; gap: 1px; background: #fff; }
#footer_fixed .fbtnsp li { width: 25%; }
#footer_fixed .fbtnsp span,
#footer_fixed .fbtnsp a {
	display: block;
	line-height: 1.3em;
	padding: 0.6em 0.1em;
	font-size: 13px;
	letter-spacing: 0px;
	margin: 0px 0px;
	text-align: center;
	background: #FF7F00;
	color: #fff;
}
#footer_fixed .fbtnsp a:nth-child(3) {
	border-right: 1px solid #fff;	
}
#footer_fixed .fbtnsp a:nth-child(2) {
	border-left: 1px solid #fff;
	border-right: 1px solid #fff;	
}

#top-concept02 ul li div.img img {
    display: block;
    object-fit: cover;
    height: 250px;
}
ul.top-eventlist li img {
	height: auto;
}
.topttl .title { font-size: 1.5em; }
.footbox .fbox02 .footaddr { padding-left: 10px; }
.subHeader { background-color: #F6F5F1; padding: 50px 0px; position: relative; }
.logo-details { display : block; }
.logo-details .detail-box { width: auto; margin-bottom: 15px;}
.wa-section { padding: 40px 0px; }
.wa-section h2 {
    font-size: 1.5em;
    letter-spacing: 0px;
}
.wa-section .core-message {
	font-size: 1.2em;
}
.magic-list li { font-size: 1em; }
.merit-list { display: block; }
.merit-item { margin-bottom: 10px; }
.process-flow { display: block; }
.process-flow .step-arrow {
    transform: rotateZ(45deg);
}
.process-flow .step { width: 90%; margin: 0px auto;}
.cta-section { padding: 30px 10px 10px; }
.cta-section h2 { font-size: 1.5em; }
.value-summary p { font-size: 1em;  }
.final-message { font-size: 1em;  }
.mid-con02 { font-size: 1.5em; }
.main-title { font-size: 20px; letter-spacing: 0px; }
.step-text p { margin-left: 0px; font-size: 14px; }
.step-title { font-size: 1.2em; }
.sttl { font-size: 15px; padding: 1em; line-height: 1.5em; }
#eventinfo .inner .box { width: 90%; margin: 0px auto 30px; }
ul.work_list li  { display: block; width: 90%; margin: 0px auto 30px; }
ul.work_list li img { height: auto; }
.bukendata { font-size: 14px; }
.bukendata dl {
	display: block;
	width: auto;
	padding-bottom: 5px;
	padding-top: 5px;
	margin: 0px 1%;
	border-bottom: 1px solid #ccc;
}
.bukendata dl:after {
	clear: both;
	content: "";
	display: block;
}
.bukendata dl dd:before {
	content: "";
	position: absolute;
	left: 0;
	height: 100%;
	width: 1px;
	background: #ccc;
}
.bukendata dl { display: table; width: 100%; }

.bukendata dl dt {
	font-weight: 400;
	display: table-cell;
	float: none;
	width: 7em;
	vertical-align: top;
}

.bukendata.reformdata dl dt {
	width: 9em;
	vertical-align: top;
}

.bukendata dl dd {
	display: table-cell;
	width: auto;
}
.kanren ul.list02 li,
.kanren ul.list li { width: 98%; margin: 10px auto; }
.kanren .list li img { width: 80px; height: 80px; }

#main { float: none; width: 100%; }
#sidepage { float: none; width: 100%; }
    .bloglist-thumbnail {
        width: 80px;
        margin-right: 10px;
    }
.midashi_blog { font-size: 16px; }
.contactform { font-size: 16px; letter-spacing: 0px; }
.contactform th, .contactform td { display: block; width: auto; }

.contactform th, .contactform td { display: block; width: auto;}

.contactform td select {
	font-size:13px;

}
.wpcf7-form input[type=button], .wpcf7-form input[type=submit] { 
	display: block;
	margin: 0px auto 20px;
}

