@charset "utf-8";

/*  +++++++++++++++++++++++++ common +++++++++++++++++++++++++ */

.pc{
display: none;
}
.sp{
display: block;
}
.pctL,
.pctR{
float: none;
text-align: center;
margin-right: 0 !important;
margin-left: 0 !important;
}
.wide{
width: 100% !important;
height: auto;
}
.movieBox {
padding-top: 56.25%;
position: relative;
height: 0;
overflow: hidden;
}
.movieBox iframe {
margin: 0;
padding: 0;
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}
/*#btnTop {
bottom: 10px;
right: 10px;
}*/



/*  +++++++++++++++++++++++++ btnBox +++++++++++++++++++++++++ */

ul.btnBox{
margin: 0 auto;
display: block;
width: 100%	!important;
}
ul.btnBox li{
min-width: 0 !important;
width: 100% !important;
font-size: 1.0rem;
}
ul.btnBox li+li{
margin: 10px 0 0 !important;
}
ul.btnBox li a{
padding: 10px 30px 10px 15px;
}
ul.btnBox.small li{
width: auto !important;
font-size: 0.91rem;
}


/*  +++++++++++++++++++++++++ header +++++++++++++++++++++++++ */

#header > .inner{
margin: 0 20px;
padding: 20px 0;
width: auto;
}
#header h1.logo img{
width: 180px;
}
#header h1.logo span.txt{
font-size: 0.75rem;
}
#headerContents{
display: block;
width: calc(100% - 190px);
}
#headerContents p.produce{
display: block;
font-size: 0.71rem;
text-align: center;
}
#headerContents p.produce img {
margin: 0;
width: 160px;
}
#headerContents p.btn{
margin: 5px 0 0;
font-size: 0.65rem;
}
#headerContents p.btn a{
padding: 2px 0;
}




/*  +++++++++++++++++++++++++ omoiBox +++++++++++++++++++++++++ */

#omoiBox > .inner{
margin: 0 20px;
padding: 50px 0;
width: auto;
}
#omoiBox h2 {
font-size: 1.65rem;
}
#omoiBox p.read {
margin: 0 0 20px;
font-size: 1.25rem;
}
#omoiBox #omoiList {
display: block;
}
#omoiBox #omoiList .box {
width: 100%;
}
#omoiBox #omoiList .box+.box {
margin-top: 30px;
}
#omoiBox #omoiList .box h3 {
margin: 0 0 15px;
font-size: 1.25rem;
}
#omoiBox #omoiList .box p {
font-size: 1.0rem;
}




/*  +++++++++++++++++++++++++ designBox +++++++++++++++++++++++++ */

#designBox{
overflow-x: auto;
}
#designBox > .inner{
margin: 0 20px;
padding: 50px 0;
width: auto;
}
#designBox h2 {
font-size: 1.65rem;
}
#designBox h2 span {
padding: 0 10px;
}
#designBox h2 span::before,
#designBox h2 span::after {
width: 40px;
height: 7px;
background: url("../images/title_line.png") no-repeat center center / auto 100%;
}
#designBox p.pct {
margin: 0 0 20px;
}
#designBox #designOption {
margin: 0;
padding: 15px 20px;
width: 100%;
}
#designBox #designOption p.photo {
margin: 0 12px 0 0;
width: 75px;
}
#designBox #designOption p.txt {
font-size: 1.125rem;
}



/*  +++++++++++++++++++++++++ contentsBox +++++++++++++++++++++++++ */

#contentsBox > .inner{
padding: 50px 0 0;
}
#contentsBox p.read {
margin: 0 0 30px;
font-size: 1.125rem;
}
#contentsBox .box {
margin: 0;
display: block;
width: 100%;
}
#contentsBox .box:nth-child(even) {
margin: 0;
}
#contentsBox .box+.box {
margin-top: 0 !important;
}
#contentsBox .box .photoBox {
padding: 60% 0 0;
width: 100%;
min-height: 0;
border-radius: 0;
}
#contentsBox .box:nth-child(even) .photoBox {
border-radius: 0;
}
#contentsBox .box .txtBox {
padding: 0 20px 40px;
width: 100%;
display: block;
}
#contentsBox .box .txtBox h2 {
font-size: 1.45rem;
}
#contentsBox .box .txtBox p {
font-size: 0.91rem;
line-height: 1.8;
}
#contentsBox .box .txtBox p.ico {
margin: 0 auto -40px;
position: relative;
top: -50px;
}





/*  +++++++++++++++++++++++++ summaryBox +++++++++++++++++++++++++ */

#summaryBox > .inner{
margin: 0 20px;
padding: 40px 0;
width: auto;
}
#summaryBox h2 {
margin: 0 0 20px;
font-size: 1.65rem;
}



/*  +++++++++++++++++++++++++ companyBox +++++++++++++++++++++++++ */

#companyBox > .inner{
margin: 0 20px;
padding: 40px 0;
width: auto;
}
#companyBox h2 {
margin: 0 0 15px;
font-size: 1.65rem;
}
#companyBox p.logo {
width: 90%;
}



/*  +++++++++++++++++++++++++ cvBox +++++++++++++++++++++++++ */

#cvBox h2 {
margin: 0 0 20px;
font-size: 1.65rem;
}
#cvBox > .inner {
margin: 0 20px;
padding: 40px 0;
width: auto;
}
#cvBox ul.btnBox {
width: 100% !important;
}
#cvBox ul.btnBox li {
font-size: 1.0rem;
}
#cvBox ul.btnBox li a {
padding: 15px 30px;
}
#cvBox ul.btnBox li a span:before {
margin: 0 5px 0 0;
width: 29px;
height: 15px;
top: 2px;
}



/*  +++++++++++++++++++++++++ mapBox +++++++++++++++++++++++++ */

#mapBox {
padding-top: 56.25%;
position: relative;
height: 0;
overflow: hidden;
}
#mapBox iframe,
#mapBox object,
#mapBox embed {
margin: 0;
padding: 0;
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}



/*  +++++++++++++++++++++++++ footer +++++++++++++++++++++++++ */

#footer > .inner{
margin: 0 20px;
width: auto;
display: block;
}
#footer p.logo{
margin: 0 auto 15px;
width: 230px;
}
#footer p#copy{
font-size: 0.75rem;
text-align: center;
}


/*  +++++++++++++++++++++++++ page +++++++++++++++++++++++++ */

.page ul.point01 li {
font-size: 0.91rem;
line-height: 1.6;
}
.page table.tblNormal th,
.page table.tblNormal td {
padding: 10px 0 10px 15px;
}
.page table.tblNormal th {
padding-left: 0;
}
.page table.tblNormal.noscr th,
.page table.tblNormal.noscr td {
display: block;
padding: 10px 0;
width: auto !important;
font-size: 0.91rem;
}
.page table.tblNormal.noscr th {
padding-bottom: 5px;
font-size: 1.125rem;
}
.page table.tblNormal.noscr td {
padding-top: 0;
border: 0;
}
.page table.tblBorder th,
.page table.tblBorder td{
padding: 5px;
font-size: 1.0rem;
}
.page table.tblBorder th {
padding: 10px 5px;
font-size: 1.125rem;
}
.page table.tblBorder.noscr th,
.page table.tblBorder.noscr td {
display: block;
padding: 10px 0 20px;
border: 0;
width: auto !important;
}
.page table.tblBorder.noscr th {
white-space: normal;
padding: 10px 15px;
}
.page table.tblBorder td ul.btn li {
font-size: 0.85rem;
}
.page table.tblBorder td ul.btn li a{
padding: 2px 5px;
}
.page table.tblStripe th,
.page table.tblStripe td {
padding: 10px 15px;
}
.page table.tblStripe.noscr th,
.page table.tblStripe.noscr td {
display: block;
width: auto !important;
}
.page table.tblStripe.noscr th {
padding-bottom: 10px;
}
.page table.tblStripe.noscr td {
padding-top: 0;
}
.page table.tblNormal.fix,
.page table.tblBorder.fix,
.page table.tblStripe.fix {
table-layout: unset;
}
.page table.w100 {
width: 100% !important;
}
