

/*  OfficeTwinStarPlanning
--------------------------------------------------------------------------*/
/*  https://office-twinstar.jp
--------------------------------------------------------------------------*/

@charset "shift_jis";
a:link {text-decoation: none;color:#333;} 
a:visited {text-decoration: none;color:#333;} 
a:hover {text-decoration: none;} 
body { margin:0px;padding:0px;}
body { width: 100%;position:relative;}
body { font-family: 'Noto Sans JP', sans-serif;}
body, th, td, div, font { line-height: 1.5; }
body { font-size: 16px;font-size: 1.6rem;   /* sets the default sizing to make sure nothing is actually 10px */}
body { width: 100%;position: relative;background: url(../img/.jpg) top center no-repeat;background-attachment: fixed;z-index:1;}
body { background-color: #fff; }

html { font-size: 62.5%; text-size-adjust: 100%;-webkit-text-size-adjust: 100%;}

ul, ol, ul li, ol li { list-style: none;}
img, a img { border: 0px none; vertical-align: bottom;outline: none;}
form{margin:0px;}
input{margin:0px;}form{margin:0px;}
iframe{ vertical-align: bottom;}

::-webkit-scrollbar-track {background: #fff;border-radius: 5px;}
::-webkit-scrollbar { width: 12px;height: 10px;}
::-webkit-scrollbar-thumb {background: #d8d8d8;border-radius: 5px;}

@font-face {font-family: 'Pinyon Script', cursive;font-style: ;src: url(''),url('../font/PinyonScript-Regular.ttf') format('truetype');}
@font-face {font-family: 'Noto Sans JP', sans-serif;font-style: ;src: url(''),url('../font/NotoSansJP-Light.otf') format('opentype');}
@font-face {font-family: 'Noto Sans JP', sans-serif;font-style: ;src: url(''),url('../font/NotoSansJP-Thin.otf') format('opentype');}
@font-face {font-family: 'Noto Sans JP', sans-serif;font-style: ;src: url(''),url('../font/NotoSansJP-Medium.otf') format('opentype');}

.font-script {font-family: "Pinyon Script", cursive; letter-spacing: -0.5px;}

.mincho { font-family:"游明朝","YuMincho","ヒラギノ明朝 ProN W3","HiraMinProN-W3","HG明朝E",serif;}
@media screen and (max-width: 640px) {
.mincho { font-family:"Sawarabi Mincho", serif;}
}

@-webkit-keyframes light {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}
@media screen and (max-width: 640px) {.sp_none {display: none !important;}}
@media screen and (min-width: 640px) {.pc_none {display: none !important;}}


:root {
--colorGradation1:linear-gradient(90deg, #006896 0%,#95b6c5 100%);
--colorGradation2:radial-gradient( #b8b099, #cfb973 );
}

.marker_pink { background: linear-gradient(transparent 40%, #ffa2a6 40%);display: inline; }

h1 { margin: 0px;padding: 0px;}
h2 { margin: 0px;padding: 0px;}
h3 { margin: 0px;padding: 0px;}
.clear { display: none;}


/* HEADER */


/* MENU */



/* アニメーション */

.delighter.delighter {transition: all .6s ease-out;transform: translateY(30%);opacity: 0;}
.delighter.delighter.started { transform: none;opacity: 1;}
.delighter.delighter.started.ended {}
.delighterL.delighter {/* 左から */transition:all .6s ease-out;transform:translateX(-15%);opacity:0}
.delighterR.delighter {/* 右から */transition:all .6s ease-out;transform:translateX(15%);opacity:0}

.img_wrap{position: relative;overflow: hidden;}
.img_fadein::before{content: '';width: 100%;height: 100%;position: absolute;left: 0;top: 0;background: #fff;z-index: 2;transition: .5s;}
.img_fadein.show::before{transform: translateX(100%);}
.img_fadein img{opacity: 0;transition: .5s;}
.img_fadein.show img{opacity: 1;}

/* 画像左から */

.flipLeft{animation-name: flipLeft;animation-duration:0.5s;animation-fill-mode:forwards;perspective-origin: left center;opacity: 0;}
@keyframes flipLeft{from {transform: perspective(600px) translate3d(0, 0, 0) rotateY(30deg);opacity: 0;}
 to {transform: perspective(600px) translate3d(0, 0, 0) rotateY(0deg);opacity: 1;}
}

/* 動画 */


/* TOP */

.top_main { max-width:100% ;;margin: 0px ;padding: 0px; position:relative;text-align: center;}
.top_main { background-position: 50% 50%;background-size: cover;}
.top_main::after {content:'';position: absolute;top: 100%;right: 0;left: 0;width: 100%;height: 100%;background: #fff;z-index: 0;transform: skewY(-3deg);transform-origin: top left;}
.top_main .inner{ width: 100%;height: 960px;margin: 0px;padding: 0px;background: #;position: relative;overflow: hidden;;display: flex;justify-content: center;align-items: center;text-align:center;}
.top_main .inner .logo{ max-width: 250px;}
@media screen and (max-width: 640px) {
.top_main .inner{ width: 100%;height: 650px;margin: 0px;padding: 0px;background: #;position: relative;overflow: hidden;;display: flex;justify-content: center;align-items: center;text-align:center;}
.top_main .inner .logo{ max-width: 160px;}
}

.main_wrap { max-width: ;background-color: #;padding: 30px 20px;text-align:center;right:0px;left:0px;margin:auto auto;}
.main_wrap .tl { margin: 20px -15px 20px 0px;position: relative;padding: 1rem 2rem calc(1rem + 8px);background-color: rgba(172,206,213,0.6);}
.main_wrap .tl { font-family: 'Oswald', sans-serif;font-size:1.8em;color: #222;font-weight:normal;letter-spacing:2px;text-align: center;}
.main_wrap .tl:before { position: absolute;top: -10px;left: -10px;width: 100%;height: 100%;content: '';border: 4px solid #222;}
@media screen and (max-width: 640px) {
.main_wrap .tl { margin: 20px 15px 20px 0px;position: relative;padding: 6px 0 calc(6px + 8px);background-color: rgba(172,206,213,0.6);}
.main_wrap .tl { font-family: 'Oswald', sans-serif;font-size:1.6em;color: #222;font-weight:normal;letter-spacing:2px;text-align: center;}
.main_wrap .tl:before { position: absolute;top: -10px;left: 10px;right: 0px;width: 100%;height: 100%;content: '';border: 3px solid #222;}
}


.arrow_down  { position: absolute;bottom: 100px;right:0px;left:0px;margin:auto auto;}
.arrow_down  { padding-top: 60px;font-family: 'Oswald', sans-serif;font-size: 14px;color: #360707;letter-spacing: 0.5em;text-indent:0.5em;text-decoration: none;}
.arrow_down span {position: absolute;top: 0;left: 50%;}
.arrow_down span::after{content: "";position: absolute;top: 0;width: 1px;height: 30px;right:0px;left:0px;margin:auto auto ;background: #360707;animation: pathmove 2s ease-in-out infinite;opacity:0;}
@keyframes pathmove{0%{height:0;top:0;opacity: 0;}30%{height:30px;opacity: 1;}100%{height:0;top:50px;opacity: 0;}}
@media screen and (max-width: 640px) {
.arrow_down  { position: absolute;bottom: 50px;right:0px;left:0px;margin:auto auto;}
}


/* GALLERY */

ul.gallery {columns: 4;column-gap: 10px;padding: 15px 0px;margin:0;right:0px;left:0px;margin:auto auto;}
ul.gallery { max-width: 1300px;margin: 0px;padding: 50px 0px;right:0px;left:0px;margin:auto auto;}
ul.gallery li { margin-bottom: 10px;list-style:none;}
ul.gallery img{ width:100%;height:auto;vertical-align: bottom;}
@media only screen and (max-width: 900px) {ul.gallery{columns:3;}}
@media screen and (max-width: 640px) {
ul.gallery {columns: 3;column-gap: 10px;padding: 15px 0px;margin:0;right:0px;left:0px;margin:auto auto;}
}



/* LOOP */

.loop_wrapper{ padding:10px 20px;background: #;}
@keyframes infinity-scroll-left {from {transform: translateX(0);}to {transform: translateX(-100%);}}
_:-ms-lang(x)::-ms-backdrop,


.loop { display: -ms-grid;overflow: hidden;}
.loop_wrap{display: flex;overflow: hidden; padding:10px 0px 0;background-color: rgba(0,0,0,0.);}
ul.loop_slide{display: flex;list-style: none;margin: 0px;padding: 0px;}
ul.loop_slide li{margin: 0px;padding: 20px 15px;}
ul.loop_slide li { width: calc(120vw / 6);}
ul.loop_slide li img{width:100%;max-height:300px;object-fit: cover;overflow: hidden;border-radius: 0px;object-fit: cover;overflow: hidden;}
ul.loop_slide li:nth-child(even){margin: 0px;padding: 50px 15px 20px;background-color: ;}
.loop_left {animation :infinity-scroll-left 95s infinite linear 0.5s both;}
@media only screen and (max-width:1200px) {
ul.loop_slide li { width: calc(100vw / 3);}
}

@media only screen and (max-width:640px) {
ul.loop_slide li{margin: 0px;padding: 10px 5px;}
ul.loop_slide li:nth-child(even){margin: 0px;padding: 30px 10px 20px;background-color: ;}
ul.loop_slide li { width: calc(120vw / 2);}
ul.loop_slide li img{width:100%;max-height:350px;object-fit: cover;overflow: hidden;border-radius: 0px;object-fit: cover;overflow: hidden;}
}


/* NAVI */

.navi_service_container { width: 100%;display: flex;flex-wrap: wrap;margin: 0px;padding: 0px;overflow: hidden;}
.ns_wrap { width: 50%;background-color: #f2f2f2;margin: 0px;padding: 0px ;text-align:center;position: relative;overflow: hidden;display: flex;justify-content: center;align-items: center;}
.ns_wrap { moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;}
.ns_wrap img{width: 100%;height: 400px;border-radius: 0px; object-fit: cover;transition: all .8s ease-out;}
.ns_wrap:hover img { opacity: 1.0;transform: scale(1.1);}
.ns01 {}
.ns02 {}
.ns02 {}
.ns03 {}

@media only screen and (max-width:640px) {
.navi_menu_container {display: flex;flex-direction: column;}
.ns_wrap { width: 100%;background-color: #f2f2f2;margin: 0px;padding: 0px 0px ;text-align:center;}
.ns_wrap img{width: 100%;height: 200px;border-radius: 0px; object-fit: cover;transition: all .8s ease-out;}
.ns01 { order:1;}
.ns02 { order:2;}
.ns03 { order:4;}
.ns04 { order:3;}
.ns05 { order:5;}
.ns06 { order:6;}
}

#ns_txt { max-width:600px;padding: 40px 30px 10px;right:0px;left:0px;margin:auto auto;text-align: center;}
#ns_txt h3 { margin: 0px 0px;padding: 5px 0px;position:relative;animation: fadeIn 1s ease forwards;}
#ns_txt h3 { font-size: 2.0rem;color: #666;line-height: 1.6;font-weight: bold;letter-spacing:2px;text-align: center;}
#ns_txt p { margin: 0px;padding:15px 0px ;font-size: 16px;color: #333;line-height: 1.7;font-weight: normal;letter-spacing: 0.1em;text-indent:0.1em;text-align: left;position:relative;animation: fadeIn 1.5s ease forwards;}
@media screen and (max-width: 640px) {
#ns_txt { max-width:500px;padding: 20px 20px 10px;right:0px;left:0px;margin:auto auto;text-align: center;}
#ns_txt h3 { font-size: 18px;color: #666;line-height: 1.6;font-weight: bold;letter-spacing:2px;text-align: center;}
#ns_txt p { font-size: 15px;}
}



/* ABOUT */

.about_wrap { max-width: ;background: #;padding: 15px 10px;right:0px;left:0px;margin:auto auto;text-align: center;}

.about_column_container { width: 1600px;background: #;display: inline-block;padding: 10px 0px;vertical-align: top;display: flex;justify-content: center;align-items: center;right:0px;left:0px;margin:auto auto;}
.about_column { width: 50%;background: #;margin:0px;padding: 15px;float: left;text-align: center;box-sizing: border-box;}
.about_column .logo{ max-width: 250px;}

@media screen and (max-width: 1650px) {
.about_column_container { width: 100%;display: inline-block; padding: 10px 0px;right:0px;left:0px;margin:auto auto;}}
@media screen and (max-width: 800px) {
.about_column { width: 100%;padding:10px;}
.about_column { width: 100%;}
.about_column .logo{ max-width: 180px;}

}

table.company { width: 100%;border-collapse: separate;border-spacing: 0px 5px;right:0px;left:0px;margin:20px auto;}
table.company th { width: 200px;border-bottom: solid 1px #d3c6a8;padding: 10px 15px;vertical-align: middle;text-align: left;}
table.company th { font-size: 1.5em;color: #360707;line-height: 1.6;font-weight: normal;letter-spacing: 0.07em;text-indent:0.07em;overflow-wrap: break-all;word-break: break-all;text-align: left;}
table.company td { border-bottom: solid 1px #d3c6a8;padding: 10px 15px ;vertical-align: middle;text-align: left;}
table.company td { font-size: 1.5em;color: #360707;line-height: 1.6;font-weight: normal;letter-spacing: 0.07em;text-indent:0.07em;overflow-wrap: break-all;word-break: break-all;text-align: left;}
table.company td a{ color: #222;text-decoration: none;}
@media screen and (max-width: 1050px) {
table.company { width: 100%;border-collapse: separate;border-spacing: 0px 5px;right:0px;left:0px;margin:20px auto;}
table.company th { width: 200px;border-bottom: solid 1px #ddd;padding: 10px 10px;vertical-align: middle;text-align: left;}
}
@media screen and (max-width: 640px) {
table.company th { width: 100px;border-bottom: solid 1px #ddd;padding: 20px 0px;vertical-align: middle;text-align: left;}
table.company th { font-size: 16px; font-weight: normal;letter-spacing:0.07em;}
table.company td { border-bottom: solid 1px #ddd;padding: 10px 10px ;vertical-align: middle;text-align: left;}
table.company td { font-size: 16px; font-weight: normal;letter-spacing:0.15em;}
}

.access_container { width: 100%;display: inline-block;padding: 0px 0px;right:0px;left:0px;margin:auto auto;}
.access_column { width: 50%;margin:0px;padding: 15px 15px ;float: left; position: relative; text-align: center; }
.access_column { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;overflow:hidden;}
.access_column iframe{ width: 100%;height: 500px;vertical-align: bottom;}
@media screen and (max-width: 640px) {
.access_column { width: 100%;margin:0px 0px;padding: 0px 5px; position: relative; text-align: center; }
.access_column iframe{ width: 100%;height: 300px;vertical-align: bottom;}
}


ul.address { margin: 0px;padding: 5px 5px;right:0px;left:0px;margin:auto auto;}
ul.address li { padding: 2px 0px;letter-spacing:0px;}
ul.address li { font-size: 15px;color: #333;font-weight: normal;line-height: 1.6;letter-spacing: 0.1em;text-indent:0.1em;text-align: center;}
ul.address li a { color: #333;text-decoration: none;}

ul.address h3 {-webkit-transform: skewX(150deg);-moz-transform: skewX(150deg);transform: skewX(150deg);}
ul.address h3 { background-color: #2c3e50;margin: 10px 0;padding: 10px 0px ;text-decoration: none;right:0px;left:0px;margin:10px 18px;}
ul.address h3 span { display: block;-webkit-transform: skewX(-150deg);-moz-transform: skewX(-150deg);transform: skewX(-150deg);}
ul.address h3 span { font-size: 14px;color: #fff;letter-spacing:2px;font-weight: normal;}
@media screen and (max-width: 640px) {
ul.address { margin: 0px 0px ;padding: 5px 0px ;}
ul.address li { font-size: 13px;color: #333;font-weight: normal;letter-spacing: 1px;line-height: 1.6;text-align: center;}
}




/* SERVICE */

.service_wrap { max-width: 100%;background-color: #000;padding: 40px 20px;margin: 0px auto; background-color: #;text-align: center;}

ul.top_service { max-width: 100%;display: flex;flex-wrap: wrap;margin: 0px ;padding: 10px 0px ;right:0px;left:0px;margin:auto auto;}
ul.top_service li { width:33.3333%; background: #;border:0px solid #dfdddd;margin: -1px 0px 0 -1px;padding: 15px 15px;float:left;position:relative;display: block;}
ul.top_service li { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;overflow:hidden;}
ul.top_service li img { width:100%;height:200px;object-fit: cover;overflow: hidden;margin: 0px 0px;}
ul.top_service li h3 { padding: 15px 0px 0;margin: 0px;font-size: 19px;color: #d2d2d2;font-weight: normal;letter-spacing:0.05em;line-height: 1.4;text-align:center;}
ul.top_service li p { margin: 0px;padding: 10px 0px 0;font-size: 16px;color: #d2d2d2;font-weight: normal;letter-spacing:0.05em;line-height: 1.6;text-align:left;}
ul.top_service li a { text-decoration: none;}
@media only screen and (max-width:1180px) {
ul.top_service { width: 100%;display: flex;margin: 0px ;padding: 10px 0px ;right:0px;left:0px;margin:auto auto;}
ul.top_service li { width:100%; margin:0px;padding: 15px 0;float:left;position:relative;display: block;}
ul.top_service li p { font-size: 15px;}
}


/* CONCEPT */
.concept_wrap { min-height:350px;margin: 0px;padding: 80px 10px ;background : transparent url(../img/concept.jpg) no-repeat center top;background-position: 50% 50%;background-size: cover;position: relative;text-align:center;}
.concept_wrap { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;overflow: hidden;}
.concept_wrap::after {content:'';position: absolute;top: 100%;right: 0;left: 0;width: 100%;height: 100%;background: #2c3e50;z-index: 0;transform: skewY(3deg);transform-origin: top right;}
#concept { max-width:800px;padding: 40px 10px 60px;right:0px;left:0px;margin:auto auto;text-align: center;}
#concept h3 { display:inline-block;border: 3px solid #2c3e50;margin: 0px 0px;padding: 8px 40px;position:relative;}
#concept h3 { font-size: 1.6em;color: #2c3e50;line-height: 1.6;font-weight: normal;letter-spacing:0.05em;text-align: center;}
#concept p { margin: 5px;padding:10px 0px ;position:relative;font-size: 16px;color: #2c3e50;line-height: 1.8;font-weight: normal;letter-spacing:3px;text-align: left;}



/* 会社概要 */



/* FOOTER */

.footer { width: 100%; height: 500px;background: #2c3e50;}
.footer { margin: 0px ;padding: 60px 15px ;position:relative; text-align: center;}
.footer { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
.footer .logo { max-width:200px;margin: 30px 0px;}
@media screen and (max-width: 640px) {
}

.copy { padding: 15px;margin:0px;}
.copy { font-size:16px;color: #fff;line-height: 1.6;font-weight:normal;letter-spacing: 0.1em;text-indent:0.1em;}
.copy a{ color: #fff;text-decoration: none;}
.copy a:hover{ text-decoration: underline;}
@media screen and (max-width: 640px) {
.copy{ font-size:13px;color: #fff;line-height: 1.6;font-weight:normal;letter-spacing: 0.1em;text-indent:0.1em;}
}

/* FOOT-NAVI */

@media screen and (min-width:640px) {
#foot_content { display: none;}
.foot_navi_wrap { display: none;}
.foot_contact { display: none;}
ul.foot_navi { display: none;}
}

#foot_content{padding: 40px 0 0 0;}
.foot_navi_wrap { width: 100%;margin:0px; padding: 0px;position: fixed;bottom: 0;text-align: center;z-index: 6666;}
@media screen and (max-width: 640px) {
ul.foot_navi { width:100%;border-top: 1px solid #212e3b; margin: 0px ;padding: 0px ;display: inline-block;vertical-align:bottom;position: relative;z-index: 6666;}
ul.foot_navi li { width: 50%;float:left; border-left: 1px solid #212e3b; float:left; margin: 0px 0px 0px -1px;text-align:center; position: relative;}
ul.foot_navi li:first-child { border-left: 0px solid ;}
ul.foot_navi li a { background-color:#2c3e50;}
ul.foot_navi li a { margin: 0px;padding: 3px 0px;display: block; text-decoration: none;text-align:center;}
ul.foot_navi li img { max-width: 100%;height: auto;position: relative;z-index: 6666;}
ul.foot_navi .fnavi01 { background-color:#;}
ul.foot_navi .fnavi02 { background-color:#;}
}

