@charset "utf-8";

/*** ヘッダ *********************************/
html{
    scroll-padding-top:115px;
}
body{
    background-color:#fff;
}
.PC {
    display:none;
}
#page-top {
    bottom:100px;
}
#footer {
    margin-bottom:90px;
}
#header{
    display: block;
    width:100%;
    height:70px;
    margin: 0px auto;
    background-color:#fff;
    z-index:100;
    position: fixed;
    top: 0; 
    left: 0;
    right: 0;
}
#header:after{
    content: "";
    display: block;
    clear: both;
}
#header .header_in{
    display: block;
    width:100%;
    height:70px;
    margin: 0px auto;
    overflow:hidden;
}
#header ul.header_logo {
    display: inline-block;
    margin: 15px 0px 0px 0px;
    padding: 0;
    width: 200px;
}
#header ul.header_logo .logo {
    display: block;
    margin: 5px 0 0 5px;
    width: 100%;
}
#header ul.header_logo img{
    width: 100%;
    height: auto;
}
#header ul.header_logo li.sns {
    display: none;
}
#header ul.pc_menu {
    display: none;
}
/*** スマホメニュー *********************************/
.sp_menu {
    display: inline-block;
    margin: 0px 0px 0px 0px;
    padding: 0;
    z-index:100;
    position: fixed;
    top: 0; 
    right: 0;
}
.sp_menu ul {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    width:100%;
    margin: 0;
    padding: 0;
}
.sp_menu ul li {
    display: inline-block;
    width:60px;
    margin: 0 5px 0 0;
    padding: 0;
    text-align:center;
}
.sp_menu ul li:last-child {
    width:55px;
    margin: 0 0 0 0;
    background-color:red;
}
.sp_menu ul li a {
    color:#fff;
    font-size:10px;
}
.sp_menu ul li a:hover {
    opacity:.7;
}
.sp_menu ul li.contact a {
    display: block;
    margin:10px 0px 0px;
    height:65px;
    background-color:#C7000B;
}
.sp_menu ul li.contact a img {
    margin:20px auto 2px;
    width:32px;
    height:auto;
}
.sp_menu ul li.quot a {
    display: block;
    height:65px;
    background-color:#910000;
}
.sp_menu ul li.quot a img {
    margin:12px auto 2px;
    width:38px;
    height:auto;
}

.sp_float {
    display: inline-block;
    margin: 0px 0px 0px 0px;
    padding: 0;
    z-index:10;
    position: fixed;
    bottom: 0; 
    left: 0;
    right: 0;
}
.sp_float ul {
    display: flex;
    justify-content:center;
    align-items:center;
    margin: 0;
    padding: 0 20px;
    background-color: rgb(0 0 0 / 0.3);
}
.sp_float ul li {
    display: inline-block;
    width:70px;
    margin: 10px 10px;
    padding: 0;
    text-align:center;
}
.sp_float ul li a {
    color:#fff;
    font-size:10px;
}
.sp_float ul li a:hover {
    opacity:.7;
}
.sp_float ul li.contact a {
    display: block;
    margin:0px 0px 0px;
    height:65px;
    background-color:#C7000B;
}
.sp_float ul li.contact a img {
    margin:20px auto 2px;
    width:32px;
    height:auto;
}
.sp_float ul li.quot a {
    display: block;
    height:65px;
    background-color:#910000;
}
.sp_float ul li.quot a img {
    margin:12px auto 2px;
    width:38px;
    height:auto;
}



/* Hamburger menu */
.hamburger {
    background-color: #000;
    border-radius: 50%;
    position: fixed;
    top: 15px;
    right:13px;
    border: 0;
    cursor: pointer;
    width: 40px;
    height: 40px;
}
.hamburger:focus {
    outline: 0;
}
.hamburger .line {
    background-color: #fff;
    display: block;
    margin: 4px auto;
    height: 2px;
    width: 20px;
    transition: all .3s ease-in;
}
.hamburger.open .line:nth-child(1) {
    transform:translateY(6px) rotate(45deg) ;
}
.hamburger.open .line:nth-child(2) {
    opacity: 0;
}
.hamburger.open .line:nth-child(3) {
    transform:translateY(-6px) rotate(-45deg) ;
}
.hamburger.close .line {
    background-color: #000;
    display: block;
    margin: 4px auto;
    height: 2px;
    width: 20px;
    transition: all .3s ease-in;
}
.navimenu ul.navi.close {
    display: none;
}
.navimenu ul.navi {
    display: block;
    padding: 0;
    margin: 0;
    position: fixed;
    top: 70px;
    left: 0;
    width: 100vw;
    transition: all .3s ease-in;
    background-color:#262626;
    z-index:100;
}
.navimenu ul.navi li {
    padding:15px 40px;
    border-bottom:dashed 1px #666;
}
.navimenu ul.navi li:last-child {
    border-bottom:none;
}
.navimenu ul.navi li a {
    color: #fff;
    letter-spacing: 2px;
    text-decoration: none;
    text-transform: none;
}
.navimenu ul.navi li.navi a {
    position: relative;
    display: inline-block;
    padding-left: 20px;
}
.navimenu ul.navi li.navi a:before {
    content: '';
    width: 6px;
    height: 6px;
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
}
.navimenu ul.navi li a:hover {
    text-decoration: underline;
}
.navimenu ul.navi li.block a {
    display:block;
}
.navimenu ul.navi li.block img {
    width:50px;
    height:auto;
}
.navimenu ul.subnavi {
    display: block;
    padding: 0;
    margin: 0;
    background-color:#262626;
}
.navimenu ul.subnavi li {
    padding:15px 0px 0 20px;
    border-bottom:none;
    font-size:14px;
}


.navimenu ul.navi li.block {
    font-size:14px;
}
.navimenu ul.navi li.block ul {
    display: flex;
    margin: 0 auto 20px;
    justify-content: center;
    margin: 0;
    padding: 0;
}
.navimenu ul.navi li.block ul li {
    display: inline-block;
    width:100%;
    margin: 0 10px 20px 0;
    padding: 0;
    text-align:center;
    border-bottom:none;
    display: block;
}
.navimenu ul.navi li.block ul li:last-child {
    margin: 0 0 20px 0;
}
.navimenu ul.navi li.block ul li.contact a {
    display: block;
    padding: 10px 4px;
    width:100%;
    height: 90px;
    background-color:#C7000B;
    border-radius:10px;
    font-size:12px;
    white-space: nowrap;
}
.navimenu ul.navi li.block ul li.contact a img {
    margin:20px auto 2px;
    width:32px;
    height:auto;
}
.navimenu ul.navi li.block ul li.quot a {
    display: block;
    padding: 10px 4px;
    width:100%;
    height: 90px;
    background-color:#910000;
    border-radius:10px;
    font-size:12px;
    white-space: nowrap;
}
.navimenu ul.navi li.block ul li.quot a img {
    margin:12px auto 2px;
    width:38px;
    height:auto;
}
.navimenu ul.navi li.block a.second {
    position: relative;
    display: block;
    padding-left: 20px;
}
.navimenu ul.navi li.block a.second:before {
    content: '';
    width: 6px;
    height: 6px;
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
}
.navimenu ul.navi li.block a.theard {
    position: relative;
    display: inline-block;
    padding-left: 20px;
}
.navimenu ul.navi li.block a.theard:before {
    content: '';
    width: 6px;
    height: 6px;
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
}
.navimenu ul.navi li.block .nav-close {
    margin:20px auto 10px;
    text-align:center;
}
.navimenu ul.navi li.block .nav-close a {
    display: inline-block;
    width:100px;
    padding:4px 20px;
    text-align:center;
    background-color:#fff;
    color:#000;
    border-radius:10px;
}

/*** コンテンツ *********************************/
#contents{
    margin-top:20px;!important;
    background-color:#fff;
}
#in_contents{
    display: block;
    width:100%;
    margin: 0px auto 0;
    background-color:#fff;
    z-index:9999;
    margin-top:90px;!important;
    background-color:#fff;
}
#in_contents:after{
    content: "";
    display: block;
    clear: both;
}
.top_news {
}
.top_news h4 {
    color:#000!important;
}
.top_news ul.news_list {
    background-color:#fff;
}
.top_news ul.news_list {
    background-color:#fff;
}

/*** prolabo *********************************/
#prolabo{
    display: block;
    width:96%;
    background-color:#fff;
    padding:30px 0px 50px 0px;
    margin:50px auto 40px auto;
    border-bottom:solid 1px #ccc;
}
#prolabo h4 {
    display: block;
    margin:0px auto 20px 20px;
    font-size:32px;
    font-weight:bold;
    text-align:left;
}
#prolabo h4 span {
    display: inline-block;
    font-size:16px;
    padding:0 0 6px 20px;
    vertical-align: middle;
}
#prolabo .text {
    display: block;
    margin:0px 20px 20px 20px;
}
#prolabo ul {
    display: block;
    padding:0px 0px 0px 0px;
    margin:0px 20px 0px 20px;
}
#prolabo ul li {
    display: block;
    margin:0px 0px 20px 0px;
}
#prolabo ul li:last-child {
    margin:0px 0px 0px 0px;
}
#prolabo ul li a {
    display: block;
}
#prolabo ul li a:hover {
    opacity:.7!important;
}
#prolabo ul li a:hover .linkbtn {
    opacity:.7!important;
    color:#f0e68c;
}
#prolabo ul li a:hover img {
    transform:scale(1.2,1.2);
    transition:1s all;
    opacity:.7!important;
}
#prolabo ul li a span {
    display: block;
}
#prolabo ul li a .photo {
    display: block;
    position: relative;
    z-index:99;
    overflow:hidden;
}
#prolabo ul li a .photo img {
    width:100%;
    height:auto;
}
#prolabo ul li a .photo .phototxt {
    display: block;
    width:100%;
    margin:0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    position: absolute;
    background-color:rgb(0 0 0 / 0.7);
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index:100;
    color:#fff;
    text-align:center;
}
/*** order *********************************/
#order{
    display: block;
    width:96%;
    background-color:#fff;
    padding:30px 0px 50px 0px;
    margin:50px auto 40px auto;
    border-bottom:solid 1px #ccc;
}
#order h4 {
    display: block;
    margin:0px auto 20px 20px;
    font-size:32px;
    font-weight:bold;
    text-align:left;
}
#order h4 span {
    display: inline-block;
    font-size:16px;
    padding:0 0 6px 20px;
    vertical-align: middle;
}
#order .ordertitle {
    display: block;
    margin:0px 20px 10px 20px;
    font-size:20px;
    color:#C7000B;
}
#order .text {
    display: block;
    margin:0px 20px 20px 20px;
}
#order .orderlink a {
    display: inline-block;
    margin:15px auto 0px auto;
    padding:10px 25px 10px 25px;
    background-color:#C7000B;
    color:#fff;
    vertical-align: middle;
}
#order .orderlink a img {
    width: 37px;
    height:auto;
    vertical-align: middle;
    padding-right:8px;
}
#order .orderlink a:hover {
    opacity:.7;
}
/*** gallery *********************************/
#gallery{
    display: block;
    width:96%;
    background-color:#fff;
    padding:30px 0px 50px 0px;
    margin:40px auto 40px auto;
    border-bottom:solid 1px #ccc;
}
#gallery h4 {
    display: block;
    margin:0px auto 20px 20px;
    font-size:32px;
    font-weight:bold;
    text-align:left;
}
#gallery h4 span {
    display: inline-block;
    font-size:16px;
    padding:0 0 6px 20px;
    vertical-align: middle;
}
#gallery .text {
    display: block;
    margin:0px 20px 20px 20px;
    padding:0px;
}
#gallery ul {
    display: block;
    padding:0px 0px 0px 0px;
    margin:0px 20px 0px 20px;
}
#gallery ul li {
    display: block;
    margin:0px 0px 20px 0px;
}
#gallery ul li:last-child {
    margin:0px 0px 0px 0px;
}
#gallery ul li .title {
    display: block;
    margin:0px 0px 0px 0px;
    padding:4px;
    text-align:center;
    background-color:black;
    color:#fff;
    font-size:16px;
}
#gallery ul li .copy {
    display: block;
    margin:0px 0px 0px 0px;
    padding:0px;
}
#gallery ul li .photo {
    display: block;
    margin:0px 0px 8px 0px;
}
#gallery ul li .photo img {
    width:100%;
    height:auto;
}

/*** access *********************************/
#access{
    display: block;
    width:96%;
    background-color:#fff;
    padding:30px 0px 30px 0px;
    margin:40px auto 40px auto;
}
#access h4 {
    display: block;
    margin:0px auto 20px 20px;
    font-size:32px;
    font-weight:bold;
    text-align:left;
}
#access h4 span {
    display: inline-block;
    font-size:16px;
    padding:0 0 6px 20px;
    vertical-align: middle;
}
#access ul {
    display: block;
    padding:0px 0px 0px 0px;
    margin:0px auto 0px auto;
}
#access ul li {
    display: block;
    margin:0px 0px 30px 0px;
}

#access ul li .title {
    display: block;
    margin:0px 20px 0px 0px;
    padding:0px 0px 0px 20px;
    font-size:18px;
    font-weight:bold;
}
#access ul li .copy {
    display: block;
    margin:0px 20px 0px 0px;
    padding:0px 0px 0px 20px;
}
#access ul li .copy span {
    color:#C7000B;
}
#access ul li .copy .freecall {
    color:#000;
    font-size:24px;
}
#access ul li .copy .freecall span {
    color:#000;
    font-size:16px;
}
#access ul li .title2 {
    display: block;
    margin:20px 20px 10px 20px;
    font-size:16px;
    font-weight:bold;
    border-bottom:solid 3px #C7000B;
}
#access ul li .googlemap {
    width: 96%;
    margin:0px auto;
    position: relative;
    padding-top: 56.25%;
}
.googlemap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
/*** footlink *********************************/
#footlink{
    display: block;
    padding:0px;
    margin:0px auto 0px auto;
}
#footlink ul {
    display: block;
    width:96%;
    padding:0px 0px 0px 0px;
    margin:0px auto 0px auto;
}
#footlink ul li {
    display: block;
    margin:0px auto 20px auto;
}
#footlink ul li a {
    display: flex;
    color:#fff;
    justify-content: center;
    text-align:center;
    align-items: center;
    height:100px;
    font-size:21px;
}
#footlink ul li a img {
    margin-right:5px;
}
#footlink ul li a:hover {
    opacity:.7;
    color:#f0e68c;
}
#footlink ul li.contact {
    text-align:center;
    background-color:#C7000B;
}
#footlink ul li.contact img {
    width:56px;
    height:auto;
}
#footlink ul li.quot {
    text-align:center;
    background-color:#910000;
}
#footlink ul li.quot img {
    width:45px;
    height:auto;
}

/*** labo_link *********************************/
.labo_link {
    display: block;
    margin:0px auto 30px auto;
}
.labo_link ul {
    display: flex;
    width:96%;
    justify-content: space-between;
    flex-wrap: wrap;
    padding:0px 0px 0px 0px;
    margin:0px auto 0px auto;
}
.labo_link ul li {
    display: block;
    width:48%;
    margin:0px auto 20px auto;
}
.labo_link ul li a {
    display: block;
    border:solid 1px #ccc;
    text-align:center;
}
.labo_link ul li a span {
    display: inline-block;
    padding:24px 0 20px 0px;
    font-size:14px;
    font-weight:bold;
    color:#fff;
    text-align:center;
}
.labo_link ul li a:hover {
    opacity:.7;
}
.labo_link ul li:nth-child(1) a {
    background-image: url(../images/footlink1.jpg);
    background-repeat: no-repeat;
    background-position: left top;
    background-size:cover;
}
.labo_link ul li:nth-child(2) a {
    background-image: url(../images/footlink2.jpg);
    background-repeat: no-repeat;
    background-position: left top;
    background-size:cover;
}
.labo_link ul li:nth-child(3) a {
    background-image: url(../images/footlink3.jpg);
    background-repeat: no-repeat;
    background-position: left top;
    background-size:cover;
}
.labo_link ul li:nth-child(4) a {
    background-image: url(../images/footlink4.jpg);
    background-repeat: no-repeat;
    background-position: left top;
    background-size:cover;
}

/*** artprint *********************************/
#artprinthead {
    display: block;
    margin:0px auto 40px auto;
}
#artprinthead h4 {
    display: block;
    margin:0px auto 5px auto;
    font-size:32px;
    color:#000;
    text-align:center;
}
#artprinthead h4 span {
    display: block;
    margin:0px auto 20px auto;
    font-size:18px;
    color:#808080;
    text-align:center;
}
#artprinthead .text {
    display: block;
    margin:0px auto 50px auto;
    font-size:16px;
    color:#000;
    text-align:center;
}
.ginen {
    display: block;
    border-top:solid 1px #999999;
    margin:0px 20px 20px 20px;
    padding:20px 0px 20px 0px;
    background-color:#ffff;
}
.titleblock {
    display: block;
    padding:0px 0px 0px 0px;
    margin:0px auto 50px auto;
}
.titleblock li {
    display: block;
}
.titleblock li:last-child {
    display: block;
    padding:0px 0px 0 0px;
}
.titleblock li img {
    width:100%;
    height:auto;
}
.copy {
    display: block;
    margin:0px auto 0px auto;
    padding:0px 0px 0 0px;
    font-size:16px;
    line-height:1.2;
}
.title {
    display: block;
    margin:0px auto 5px auto;
    padding:0px 0px 0 0px;
    font-size:26px;
    line-height:1.2;
}
.title_left {
    display: block;
    margin:0px 0 20px 0px;
    padding:0px 0 0 15px;
    border-left:solid 6px #000;
}
.text {
    display: block;
    margin:0px auto 20px auto;
    padding:0px 0px 0 0px;
    font-size:16px;
}
.text2 {
    display: block;
    margin:30px auto 20px auto;
    padding:0px 0 0 0px;
    font-size:16px;
}
.text2 .filmorder {
    display: inline-block;
    margin:10px auto 20px auto;
    padding:5px 30px;
    color:#fff;
    background-color:#910000;
}
.text2 .filmorder img {
    margin:5px auto 5px;
    width:38px;
    height:auto;
    vertical-align: middle;
}
.text2 .filmorder:hover {
    opacity:.7;
}

.title_center {
    display: block;
    margin:0px auto 10px auto;
    padding:0px 0 0 0px;
    font-size:20px;
    text-align:center;
}
.title_lefts {
    display: block;
    margin:0px auto 10px auto;
    padding:0px 0px 0 0px;
    font-size:16px;
    text-align:left;
}
.text_center {
    display: block;
    margin:0px auto 20px auto;
    padding:0px 20px 0 20px;
    font-size:16px;
    text-align:left;
}
.text_lefts {
    display: block;
    margin:0px auto 20px auto;
    padding:0px 0px 0 0px;
    font-size:16px;
    text-align:left;
}
.text_center2 {
    display: block;
    margin:0px auto 20px auto;
    padding:0px 20px 0 20px;
    font-size:16px;
    text-align:center;
}
.ginentreeclum {
    display: block;
    padding:0px 0px 0px 0px;
    margin:0px auto 30px auto;
}
.ginentreeclum li {
    display: block;
    margin:0px 0px 30px 0px;
}
.ginentreeclum li:last-child {
    margin:0px 0px 0px 0px;
}
.ginen details {
    display: block;
    margin:0px auto 0px auto;
}
.ginen details summary {
    display: block;
    margin:0px auto 0px auto;
    padding:8px 26px 8px 8px;
    background-color: #000;
    color:#fff;
    text-align:center;
    font-size:17px;
    line-height:18px;
    cursor: pointer;
    list-style: none;
    position: relative;
}
.ginen details summary span {
    display: inline-block;
    width: 20px;
    text-align:right;
    float:right;
}
.ginen details summary span:before {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background: #C7000B;
    margin: auto;
    top: 0px;
    bottom: 0px;
    right: 6px;
}
.ginen details summary span:after {
    content: '';
    position: absolute;
    width: 6px;
    height: 6px;
    border: 0;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    margin: auto;
    top: -4px;
    bottom: 0px;
    right: 12px;
}
.ginen details p {
    display: block;
    margin:0px 0px 0px 0px;
    padding:10px;
    background-color:#E5E5E5;
    text-align:left;
}
.ginen details[open] > summary span:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 2px;
    bottom: 0px;
    right: 12px;
}
/*** inqjet *********************************/
#inqjet {
    display: block;
    border-top:solid 1px #999999;
    margin:0px 20px 20px 20px;
    padding:30px 0px 20px 0px;
    background-color:#ffff;
}
#inqjet .junre_center {
    display: block;
    margin:0px 0px 20px 0px;
    padding:0px 0 0 0px;
    font-size:20px;
    text-align:center;
    color:#C7000B;
    border-bottom:solid 1px #C7000B;
}


/*** artprint *********************************/
#artprintmain {
    display: block;
    margin:0px auto 0px auto;
    height:140px;
    background-image: url(../images/artprint.jpg);
    background-repeat: no-repeat;
    background-position: left top;
    background-size:100% 100%;
}
#artprintmain .pagetitle {
    display: block;
    margin:0;
    padding:40px 0 0 20px;
    color:#fff;
    font-size:36px;
}
#artprint {
    display: block;
    border-top:solid 1px #999999;
    border-bottom:solid 1px #999999;
    width:96%;
    margin:0px auto 60px auto;
    padding:60px 0 0 0px;
    background-color:#ffff;
}
#artprint h4 {
    display: block;
    margin:0px auto 20px auto;
    font-size:32px;
    color:#C7000B;
    text-align:center;
}
#artprint .text {
    display: block;
    margin:0px auto 50px auto;
    text-align:center;
}
div.artprintbox1 {
    display: block;
    padding:0px 0px 0px 0px;
    margin:0px 20px 40px 20px;
}
div.artprintbox1 .artprintphoto {
    display: block;
}
div.artprintbox1 .artprintphoto img {
    width:100%;
    height:auto;
}
div.artprintbox1 .textbox {
    display: block;
    background-color:#FDEDE4;
    padding:20px;
}
div.artprintbox2 {
    display: block;
    padding:0px 0px 0px 0px;
    margin:0px 20px 40px 20px;
}
div.artprintbox2 .artprintphoto {
    display: block;
}
div.artprintbox2 .artprintphoto img {
    width:100%;
    height:auto;
}
div.artprintbox2 .textbox {
    display: block;
    background-color:#FDEDE4;
    padding:20px;
}
.textbox .title {
    display: block;
    padding:0px 0px 10px 0px;
    font-size:27px;
    text-align:cebter;
}
.textbox .copy {
    display: block;
}
.textbox .title2 {
    display: block;
    padding:0px 0px 10px 0px;
    font-size:27px;
}
.textbox .copy2 {
    display: block;
}


ul.artprintbox {
    display: block;
    padding:0px 0px 0px 0px;
    margin:0px auto 50px auto;
}
ul.artprintbox li {
    display: block;
    margin:0px 0px 30px 0px;
}
ul.artprintbox li:last-child {
    margin:0px 0px 0px 0px;
}
ul.artprintbox li .title {
    display: block;
    font-size:20px;
    color:#C7000B;
    margin:0px 0px 5px 20px;
}
ul.artprintbox li .copy {
    display: block;
    font-size:16px;
    margin:0px 0px 15px 0px;
}
ul.artprintbox li .copy2 {
    display: block;
    font-size:16px;
    margin:0px 0px 15px 0px;
    padding:0px 20px 15px 20px;
}
.btn_center {
    display: block;
    text-align:center;
    margin:20px auto 50px auto;
}
a.linkpdf {
    display: block;
    width:70%;
    font-size:20px;
    text-align:center;
    margin:0px auto 15px auto;
    padding:20px 20px 20px 20px;
    border:solid 2px #BFBFBF;
}
a.linkpdf span {
    font-size:16px;
    text-align:center;
    padding:0px 40px 0px 0px;
    background-image: url(../../images/base/pdf.png);
    background-size: 20px 19px;
    background-repeat: no-repeat;
    background-position: right center;
}
a.linkpdf:after {
    content: "";
    width:18px;
    height:23px;
}
a.linkpdf:hover {
    opacity:.7;
    background-color:#eee;
}
.btn_center2 {
    display: block;
    text-align:center;
}
.hrline {
    display: block;
    padding:0px 0px 15px 0px;
    border-bottom: 1px solid #999;
    ;
}
a.linkpdf2 {
    display: block;
    font-size:20px;
    text-align:center;
    margin:0px 10px 15px 10px;
    padding:20px 20px 20px 20px;
    border:solid 2px #BFBFBF;
}
a.linkpdf2 span {
    font-size:20px;
    text-align:center;
    padding:0px 40px 0px 0px;
    background-image: url(../../images/base/pdf.png);
    background-size: 26px 25px;
    background-repeat: no-repeat;
    background-position: right center;
}
a.linkpdf2:after {
    content: "";
    width:18px;
    height:23px;
}
a.linkpdf2:hover {
    opacity:.7;
    background-color:#eee;
}
a.tuujolink {
    display: block;
    font-size:20px;
    text-align:center;
    margin:0px 10px 15px 10px;
    padding:20px 20px 20px 20px;
    border:solid 2px #BFBFBF;
}
a.tuujolink span {
    font-size:20px;
    text-align:center;
    padding:0px 0px 0px 0px;
}
a.tuujolink:after {
    content: "";
    width:18px;
    height:23px;
}
a.tuujolink:hover {
    opacity:.7;
    background-color:#eee;
}

/*** process *********************************/
#processmain {
    display: block;
    margin:0px auto 0px auto;
    height:140px;
    background-image: url(../images/process.jpg);
    background-repeat: no-repeat;
    background-position: left top;
    background-size:100% 100%;
}
#processmain .pagetitle {
    display: block;
    margin:0;
    padding:40px 0 0 20px;
    color:#fff;
    font-size:36px;
}
#processhead {
    display: block;
    margin:0px 20px 40px 20px;
    padding:0px 0px 0px 0px;
    border-bottom:solid 1px #999999;
}
#processhead h4 {
    display: block;
    margin:0px auto 5px auto;
    font-size:32px;
    color:#000;
    text-align:center;
}
#processhead h4 span {
    display: block;
    margin:0px auto 20px auto;
    font-size:18px;
    color:#808080;
    text-align:center;
}
#processhead .text {
    display: block;
    margin:0px auto 30px auto;
    color:#000;
    text-align:center;
}
#processhead .text_ancar {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin:0px 0px 50px 0px;
    font-size:16px;
    color:#000;
    text-align:center;
}
#processhead .text_ancar a {
    display: block;
    width:48%;
    margin:0px 0px 10px 0px;
    padding:6px 0px;
    color:#000;
    text-align:center;
    border:solid 1px #999999;
    position: relative;
    font-size:14px;
}
#processhead .text_ancar a:before {
    content: '';
    width: 6px;
    height: 6px;
    border: 0;
    border-bottom: solid 2px #999999;
    border-right: solid 2px #999999;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    right: 8px;
    bottom: 0;
    margin: auto;
}
#processhead .text_ancar a:hover {
    opacity:.7;
    background-color:#eee;
}
#process {
    display: block;
    border-bottom:solid 1px #999999;
    width:100%;
    margin:0px auto 40px auto;
    padding:60px 0 0 0px;
    background-color:#ffff;
}
#process h4 {
    display: block;
    margin:0px auto 20px auto;
    font-size:32px;
    color:#C7000B;
    text-align:center;
}
#process .text {
    display: block;
    margin:0px auto 50px auto;
    text-align:center;
}
#process ul.artprintbox li {
    display: block;
    width:100%;
    margin:0px 20px 0px 20px;
}
ul.artprintbox li .title4 {
    display: block;
    font-size:21px;
    color:#C7000B;
    margin:0px 0px 10px 0px;
    padding:0px 0px 0px 0px;
    text-align:center;
}
/*** film *********************************/
#filmmain {
    display: block;
    margin:0px auto 0px auto;
    height:140px;
    background-image: url(../images/film.jpg);
    background-repeat: no-repeat;
    background-position: left top;
    background-size:100% 100%;
}
#filmmain .pagetitle {
    display: block;
    margin:0;
    padding:40px 0 0 20px;
    color:#fff;
    font-size:36px;
}
#filmhead {
    display: block;
    margin:0px auto 40px auto;
}
#filmhead h4 {
    display: block;
    margin:0px auto 5px auto;
    font-size:32px;
    color:#000;
    text-align:center;
}
#filmhead h4 span {
    display: block;
    margin:0px auto 20px auto;
    font-size:18px;
    color:#808080;
    text-align:center;
}
#filmhead .text {
    display: block;
    margin:0px auto 50px auto;
    font-size:16px;
    color:#000;
    text-align:center;
}
#filmhead .text a {
    display: block;
    margin:0px 10px 15px 10px;
    padding:6px 20px;
    color:#000;
    text-align:center;
    border:solid 1px #999999;
}
#filmhead .text a:hover {
    opacity:.7;
    background-color:#eee;
}
#filmhead .text_ancar {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin:0px 10px 50px 10px;
    font-size:16px;
    color:#000;
    text-align:center;
}
#filmhead .text_ancar a {
    display: block;
    width:48%;
    margin:0px 0px 10px 0px;
    padding:6px 0px;
    color:#000;
    text-align:center;
    border:solid 1px #999999;
    position: relative;
    font-size:14px;
}
#filmhead .text_ancar a:before {
    content: '';
    width: 6px;
    height: 6px;
    border: 0;
    border-bottom: solid 2px #999999;
    border-right: solid 2px #999999;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    right: 8px;
    bottom: 0;
    margin: auto;
}
#filmhead .text_ancar a:hover {
    opacity:.7;
    background-color:#eee;
}
#film {
    display: block;
    width:96%;
    border-top:solid 1px #999999;
    border-bottom:solid 1px #999999;
    margin:0px auto 60px auto;
    padding:60px 0 0 0px;
    background-color:#ffff;
}
#film h4 {
    display: block;
    margin:0px auto 20px auto;
    font-size:37px;
    color:#C7000B;
    text-align:center;
}
#film .text {
    display: block;
    margin:0px auto 50px auto;
    text-align:center;
}
#film ul.artprintbox li {
    display: block;
    margin:0px 0px 0px 0px;
}
#film ul.artprintbox li .title{
    display: block;
    margin:0px 0px 10px 0px;
}
.ginen .title3 {
    display: block;
    font-size:27px;
    margin:0px 0 20px 0px;
    padding:0px 0 0 15px;
    border-left:solid 6px #000;
}
#film ul.artprintbox li .copy {
    display: block;
    margin:0px 0px 10px 0px;
    padding:0px 20px 10px 20px;
}
div.reversal {
    display: block;
    padding:0px 0px 0px 0px;
    margin:0px 20px 30px 20px;
}
div.reversal .artprintphoto {
    display: block;
}
div.reversal .textbox {
}
ul.filmbox {
    display: block;
    padding:30px;
    margin:0px 20px 50px 20px;
    background-color:#E5E5E5;
}
ul.filmbox li {
    display: block;
    margin:0px 0px 0px 0px;
}
ul.filmbox li:last-child {
    margin:0px 0px 0px 0px;
}
ul.filmbox li .title {
    display: block;
    font-size:20px;
    color:#C7000B;
    margin:0px 0px 15px 0px;
}
.labo_caution {
    display: block;
    margin:0px auto 50px auto;
}
.labo_caution .maintitle {
    display: block;
    margin:30px auto 10px auto;
    padding:0px 0 0 0px;
    font-size:24px;
    color:#C7000B;
    text-align:center;
}
.labo_caution details {
    display: block;
    margin:0px 10px 0px 10px;
    border-bottom:solid 1px #fff;
}
.labo_caution details summary {
    display: block;
    margin:30px auto 0px auto;
    padding:8px 10px 8px 10px;
    cursor: pointer;
    list-style: none;
    font-size:18px;
    background-color:#CCCCCC;
}
.labo_caution details summary span {
    display: inline-block;
    width: 20px;
    text-align:right;
    float:right;
    position: relative;
}
.labo_caution details summary span:before {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background: #C7000B;
    top: 3px;
    right: 0px;
}
.labo_caution details summary span:after {
    content: '';
    position: absolute;
    width: 6px;
    height: 6px;
    border: 0;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    margin: auto;
    top: 7px;
    right: 6px;
}
.labo_caution details p {
    display: block;
    margin:0px 0px 0px 0px;
    padding:10px 20px 10px 20px;
    background-color:#E5E5E5;
}
.labo_caution details[open] > summary span:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 11px;
    right: 6px;
}
/*** roomrental *********************************/
#roomrentalmain {
    display: block;
    margin:0px auto 0px auto;
    height:140px;
    background-image: url(../images/roomrental.jpg);
    background-repeat: no-repeat;
    background-position: left top;
    background-size:100% 100%;
}
#roomrentalmain .pagetitle {
    display: block;
    margin:0;
    padding:40px 0 0 20px;
    color:#fff;
    font-size:36px;
}
#roomrentalhead {
    display: block;
    margin:0px auto 40px auto;
}
#roomrentalhead h4 {
    display: block;
    margin:0px auto 5px auto;
    font-size:32px;
    color:#000;
    text-align:center;
}
#roomrentalhead h4 span {
    display: block;
    margin:0px auto 20px auto;
    font-size:18px;
    color:#808080;
    text-align:center;
}
#roomrentalhead .text {
    display: block;
    margin:0px auto 50px auto;
    font-size:16px;
    color:#000;
    text-align:center;
}
#roomflow {
    display: block;
    margin:0px auto 40px auto;
    padding:60px 0 30px 0px;
    width:96%;
    background-color:#ffff;
    border-bottom:solid 1px #999999;
}
#roomflow .maintitle {
    display: block;
    margin:0px auto 40px auto;
    padding:0px 0 0 0px;
    font-size:30px;
    color:#C7000B;
    text-align:center;
}
#roomflow .roomflowbox {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding:0px 0px 0px 0px;
    margin:0px auto 20px auto;
}
ul.roomflowbox li {
    display: block;
    margin:0px 0px 30px 0px;
    background-color:#E5E5E5;
    padding:30px;
    position: relative;
    z-index:51;
}
ul.roomflowbox li::after {
    content: "";
    display: block;
    width:8px;
    height:30px;
    margin:0px 0px 0px 0px;
    background-color:#E5E5E5;
    padding:0px;
    z-index:52;
    position: absolute;
    left:50%;
    right:50%;
    bottom:-30px;
}
ul.roomflowbox li:last-child {
    content: "";
    margin:0px 0px 0px 0px;
}
ul.roomflowbox li:last-child::after {
    content: "";
    display: none;
}
ul.roomflowbox li .block {
    display: block;
    margin:0px 0px 0px 0px;
    padding:0px;
    font-size:16px;
    vertical-align: middle;
    text-align:center;
}
ul.roomflowbox li .block span {
    font-size:40px;
    padding-top:0px;
    padding-right:20px;
    vertical-align: middle;
}
ul.roomflowbox li .text {
    display: block;
    margin:0px 0px 0px 0px;
    padding:0px;
    font-size:16px;
    vertical-align: middle;
    float:right;
}
ul.roomflowbox li .text .danraku {
    display: block;
    margin:4px 0px 4px 0px;
    padding:0px;
    font-size:14px;
    text-indent:-1em;
    padding-left:1em;
}

#roomother {
    display: block;
    margin:0px 20px 40px 20px;
    padding:30px 0 30px 0px;
    width:96%;
    background-color:#ffff;
    border-bottom:solid 1px #999999;
}
#roomother .maintitle {
    display: block;
    margin:0px auto 40px auto;
    padding:0px 0 0 0px;
    font-size:30px;
    color:#C7000B;
    text-align:center;
}
#roomother .othertitle {
    display: block;
    margin:0px auto 10px auto;
    padding:0px 20px 0 0px;
    font-size:20px;
}
#roomother .othertext {
    display: block;
    margin:0px auto 30px auto;
    padding:0px 20px 0 20px;
    font-size:16px;
}
#roomother .roomrentalbox {
    display: block;
    padding:0px 0px 0px 0px;
    margin:0px auto 50px auto;
}
ul.roomrentalbox li {
    display: block;
    margin:0px 0px 20px 0px;
}
ul.roomrentalbox li .photo {
    display: block;
    text-align:center;
    margin:0px 20px 5px 0px;
    padding:0px 0px 0px 0px;
}
ul.roomrentalbox li .photo img {
    width:100%;
    height:auto;
}
ul.roomrentalbox li .copy {
    display: block;
    text-align:center;
    margin:0px 0px 5px 0px;
    padding:0px 0px 0px 0px;
}

.orderlink2 {
    display: inline-block;
    margin:8px auto 8px auto;
    padding:10px 25px 10px 25px;
    background-color:#C7000B;
    color:#fff;
    vertical-align: middle;
}
.orderlink2 img {
    width: 37px;
    height:auto;
    vertical-align: middle;
    padding-right:8px;
}
.orderlink2:hover {
    color:#fff;
    opacity:.7;
}
#roomflow .w130 {
    display: block;
    width: 50%;
    margin:8px auto 8px auto;
}
#roomflow .text_center {
    display: block;
    width: 100%;
    text-align:center;
}
/*** process slider *********************************/
.process {
    display: block;
    padding:0px 0px 30px 0px;
    margin:0px 20px 30px 20px;
    border-bottom:solid 1px #999999;
}
.process .titleblock {
    display: block;
    padding:0px 0px 0px 0px;
    margin:0px auto 30px auto;
}
.process .titleblock li {
    display: block;
    margin:0px auto 20px auto;
}
.process .titleblock li:last-child {
    display: block;
    padding:0px 0px 0 0px;
}
.process .title3 {
    display: block;
    font-size:27px;
    margin:0px 0 20px 0px;
    padding:0px 0 0 15px;
    border-left:solid 6px #000;
}
.process .text3 {
    display: block;
    margin:0px auto 0px auto;
}
.process .photo3 {
    display: block;
    margin:0px auto 0px auto;
}
.process .photo3 img {
    width: 100%!important;
    height:auto!important;
}
.process .photo3 span {
    margin:4px auto 4px auto;
    display: block;
    text-align:left;
}
.process ul.artprintbox li {
    display: block;
    width:100%;
    margin:0px 0px 0px 0px;
}
.processtreeclum {
    display: block;
    padding:0px 0px 0px 0px;
    margin:0px auto 30px auto;
}
.processtreeclum li {
    display: block;
    margin:0px 0px 30px 0px;
}
.processtreeclum li:last-child {
    margin:0px 0px 0px 0px;
}
.process details {
    display: block;
    margin:0px auto 0px auto;
}
.process details summary {
    display: block;
    margin:0px auto 0px auto;
    padding:8px 26px 8px 8px;
    background-color: #000;
    color:#fff;
    text-align:center;
    font-size:17px;
    line-height:18px;
    cursor: pointer;
    list-style: none;
    position: relative;
}
.process details summary span {
    display: inline-block;
    width: 20px;
    text-align:right;
    float:right;
}
.process details summary span:before {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background: #C7000B;
    margin: auto;
    top: 0px;
    bottom: 0px;
    right: 6px;
}
.process details summary span:after {
    content: '';
    position: absolute;
    width: 6px;
    height: 6px;
    border: 0;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    margin: auto;
    top: -4px;
    bottom: 0px;
    right: 12px;
}
.process details p {
    display: block;
    margin:0px 0px 0px 0px;
    padding:10px;
    background-color:#E5E5E5;
    text-align:left;
}
.process details[open] > summary span:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 2px;
    bottom: 0px;
    right: 12px;
}
.slider_outer2 {
    width: 100%;
    margin: 0!important;
    padding: 0!important;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.slider_outer2 .slider1_2 {
    display: block;
    width: 86%!important;
    margin: 0!important;
    padding: 0!important;
    border-right:solid 2px #fff;
}
.slider_outer2 .slide-item {
    display: block;
    margin: 0!important;
    padding: 0!important;
}
.slider_outer2 .slide-item .captionA {
    display: block;
    margin: 0!important;
    padding: 0!important;
    font-size:13px;
}
.slider_outer2 .slide-item img {
    margin: 0!important;
    padding: 0!important;
    width: 100%!important;
    height: auto!important;
}
.slider_outer2 .thumbA {
    display: block;
    width: 13.2%!important;
    margin: 0!important;
    padding: 0!important;
    background-color:#fff;
    overflow:hidden;
}
.slider_outer2 .thumb1_2 {
    width: 100%!important;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    flex-flow:column;
    margin: 0!important;
    padding: 0!important;
}
.slider_outer2 .thumbnail-item {
    margin: 0px 0px 2px 0px!important;
    padding: 0px;
    box-sizing: border-box;
    position: relative;
}
.slider_outer2 .thumbnail-item img {
    width: 100%!important;
    height: auto!important;
    margin: 0 auto;
}
.slider_outer2 .thumbnail-current {
    opacity:.7;
}
.thumb1_2 .slick-track {
    transform:unset!important;
}
.slider_outer2 .thumbnail-item img:hover {
    opacity:.7;
    cursor: pointer;
}
/*** top_news *********************************/
.newstitlemain {
    display: block;
    margin:0px auto 30px auto;
    height:140px;
}
.newstitlemain .pagetitle {
    display: block;
    margin:0;
    padding:70px 0 0 20px;
    color:#fff;
    font-size:32px;
}

.labo_news {
    margin:0px auto 50px auto!important;
}
.labo_news_det {
    margin:0px auto 50px auto!important;
    background-color:#fff!important;
}
.news_list .fast{
    margin:0!important;
    padding:90px 0 0 0px!important;
    border:none:!important;
}
/*** タブのメニュー *********************************/
#tab_icon {
    position: relative;
    text-align:center;
}
.icon_list {
    display:block;
    position: absolute;
    top:12px;
    left:0;
    right:0;
    margin: 0px auto 0px 0!important;
}
.icon_list .icon_list_div {
    padding-top:100px!important;
}
.tabs-nav {border: none !important;}
.tabs-nav li {
    display: inline-block;
    background: #eee!important;
    margin: 10px 5px 10px 0!important;
    padding: 5px 20px !important;
    border: none!important;
    border-radius:20px!important;
    font-size:14px!important;
}
.tabs-nav li.selected {
    background: #add3de!important;
    margin: 10px 5px 10px 0!important;
    padding: 5px 20px !important;
    border: none !important;
    border-radius:20px!important;
    font-size:14px!important;
}

/*--タブのコンテンツ部分--*/
.tabs-panel {
    background-color: #fff;
    padding: 0px !important;
    box-sizing: border-box;
}
.tabs-nav li:nth-child(1),.tabs-nav li:nth-child(2),.tabs-nav li:nth-child(3) {
    margin:5px!important;
}
.tabs-nav li:nth-child(4),.tabs-nav li:nth-child(5) {
    margin:5px!important;
}


