

/*  札幌企画
--------------------------------------------------------*/
/*  https://
--------------------------------------------------------*/


@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');}
@import url('https://fonts.googleapis.com/css2?family=Syne:wght@400..800&display=swap');
.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(135deg, #ffca64 0%,#f2ed67 24%,#fafad6 47%,#fafad6 47%,#efce2b 49%,#e1b323 54%,#ffe958 92%,#ffe958 92%);
--colorGradation2:radial-gradient( #f2ed67, #e1b323 );
}

.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;}


/* アニメーション */

.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;}
}

/* HEADER */






/* MAIN */


.main_wrap { max-width: 1200px;background-color: #;padding: 20px 20px;text-align:center;right:0px;left:0px;margin:auto auto;}
@media screen and (max-width: 640px) {
.main_wrap { max-width: ;background-color: #;padding: 20px 15px;text-align:center;right:0px;left:0px;margin:auto auto;}
}


.mtl { position: relative; margin: 0px;padding: 20px 0px;text-align:center; }
.mtl_en { font-family: "Syne", sans-serif;font-optical-sizing: auto;font-weight: <weight>;font-style: normal;}
.mtl_en { position: relative;display: block; margin: 0px;padding: 0px;font-size: 1.5em;color: #222;letter-spacing:0.5px;}
.mtl_sub { position: relative;display: inline-block; margin: 0px;padding: 0px;font-family: 'Noto Serif JP', sans-serif;font-size: 15px;color: #222;font-weight:normal;letter-spacing:2px;}
@media only screen and (max-width:640px) {
.mtl_en { position: relative;display: block; margin: 0px;padding: 0px;font-size: 1.0em;color: #222;}
.mtl_sub { position: relative;display: inline-block; margin: 0px;padding: 0px;font-size: 14px;color: #222;font-weight:normal;letter-spacing:1px;}
}



/* TOP */

.main_visual { height: calc(100vh / 1 - 0px);min-height: 100%;position: relative;overflow: hidden;;display: flex;justify-content: center;align-items: center;text-align:center;}
.main_visual { margin: 0;padding: 50px 30px ;background: rgba(255,255,255,1.0) url(../img/top.jpg) repeat scroll center top ; background-position: 50% 50%;background-size: cover;position: relative;right:0px;left:0px;top:0px;margin:auto auto;text-align:center;z-index:-1;}
.main_visual { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
.main_visual .inner { width:100%;height:100%;padding: 50px 30px ;position:absolute;top: 0px;left: 0px;background:url(../js/overlays/07.png) center center;opacity:0.5;z-index:3;}
.main_visual .inner { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
.main_visual .inner { display: flex;justify-content: center;align-items: center;}
.main_visual .inner .tl { width: 100%;font-family: 'Oswald', sans-serif;padding: 0px 0px ;font-size: 10.0em;color: #fff;line-height: 1.1;font-weight: normal;letter-spacing:0px;text-align: left;}
@media screen and (max-width: 1250px) {
.main_visual .inner .tl { padding: 0px 0px ;font-size: 7.0em;color: #fff;line-height: 1.1;font-weight: normal;letter-spacing:0px;text-align: left;}
}
@media screen and (max-width: 640px) {
.main_visual { height: calc(100vh / 1 - 50px);min-height: 100%;}
.main_visual { margin: 0;padding: 50px 30px ;background: rgba(255,255,255,1.0) url(../img/top.jpg) repeat scroll center top ; background-position: 50% 50%;background-size: cover;position: relative;right:0px;left:0px;top:0px;margin:auto auto;text-align:center;z-index:-1;}
.main_visual .inner .tl { padding: 0px 0px ;font-size: 4.2em;color: #fff;line-height: 1.1;font-weight: normal;letter-spacing:-1.5px;text-align: left;}
}




#main_catch { max-width: 900px;padding: 50px 20px 20px;right:0px;left:0px;margin:auto auto;text-align: center;}
#main_catch .catch { max-width:650px;position:relative;right:0px;left:0px;margin:30px auto;padding: .7em 1.0em;}
#main_catch .catch { font-size:1.5em;color: #333;font-weight: bold;letter-spacing: 0.2em;text-indent:0.2em;line-height: 1.6;}
#main_catch .catch::before,
#main_catch .catch::after {display: inline-block; position: absolute;width: 1em;height: 1em;content: '';}
#main_catch .catch::before {top: 0;left: 0;border-top: 3px solid #450605;border-left: 3px solid #450605;}
#main_catch .catch::after {bottom: 0;right: 0;border-bottom: 3px solid #450605;border-right: 3px solid #450605;}
#main_catch .logo { max-width:350px;margin: 0 0;}
#main_catch .tl { margin: 0px;padding: 5px 0px;font-size: 1.3em;color: #222;font-weight: normal;letter-spacing:0.2em;text-align: center;}
#main_catch .txt { margin: 0px;padding:10px 0px ;font-size: 18px;color: #222;line-height: 1.7;font-weight: normal;letter-spacing:0.1em;text-align: left;}
@media only screen and (max-width:640px) {
#main_catch { max-width: 900px;padding: 10px 10px;right:0px;left:0px;margin:auto auto;text-align: center;}
#main_catch .catch{ max-width:450px;position:relative;right:0px;left:0px;margin:30px 10px;padding: .6em 0.8em;}
#main_catch .catch { font-size:1.1em;color: #333;font-weight: bold;letter-spacing: 0.1em;text-indent:0.1em;line-height: 1.6;}
#main_catch .catch::before,
#main_catch .catch::after {display: inline-block; position: absolute;width: 0.8em;height: 0.8em;content: '';}
#main_catch .catch::before {top: 0;left: 0;border-top: 3px solid #450605;border-left: 3px solid #450605;}
#main_catch .catch::after { bottom: 0;right: 0;border-bottom: 3px solid #450605;border-right: 3px solid #450605;}
#main_catch .tl { margin: 0px;padding: 15px 0px;font-size: 1.2em;color: #222;font-weight: normal;letter-spacing:0.2em;text-align: center;}
#main_catch .txt { margin: 0px;padding:10px 0px ;font-size: 16px;color: #222;line-height: 1.6;font-weight: normal;letter-spacing:0.1em;text-align: left;}
#main_catch .logo { max-width:200px;margin:25px 0 0;}
}


.arrow_down { position: absolute;bottom: 70px;right:0px;left:0px;margin:auto auto;z-index:8888;text-align: center;}
.arrow_down { padding-top: 60px;font-family:"Sawarabi Mincho", serif;font-size: 11px;color: #eee;letter-spacing: 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;background: #eee;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: 40px;right:0px;left:0px;margin:auto auto;z-index:8888;text-align: center;}
}




ul.service { width: 1200px;margin: 0px;padding: 10px 0px;text-align: center;display:inline-block;right:0px;left:0px;margin:auto auto;}
ul.service li { width: 33.3333%;float: left;text-align: center; padding: 20px; position:relative;}
ul.service li { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
ul.service li img{ width: 100%;height: 210px;object-fit: cover;object-fit: cover;overflow: hidden;margin: 10px 0px ;}
ul.service li { display: block;position: relative;}
ul.service li .tl { background-color: #bf7997;border-radius: 30px;margin: 5px 0;padding: 10px ;text-decoration: none;}
ul.service li .tl { font-size: 16px;color: #fff;letter-spacing: 0.07em;text-indent:0.07em;font-weight: normal;}
ul.service li .txt { margin: 0px;padding:15px 0px ;position:relative;font-size:17px;color: #333;line-height: 1.8;font-weight: normal;letter-spacing: 0.07em;text-indent:0.07em;text-align: left;}
@media screen and (max-width: 1250px) {
ul.service { width: 100%;margin: 0px;padding: 10px 0px;text-align: center;display:inline-block;right:0px;left:0px;margin:auto auto;}
}
@media screen and (max-width: 768px) {
ul.service { width: 100%;margin: 0px;padding: 10px 0px;text-align: center;display:inline-block;right:0px;left:0px;margin:auto auto;}
ul.service li { width: 100%;float: left;text-align: center; padding: 10px; position:relative;}
ul.service li img{ width: 100%;height: 150px;object-fit: cover;object-fit: cover;overflow: hidden;margin: 10px 0px ;}
ul.service li .txt { margin: 0px;padding:15px 0px ;position:relative;font-size:16px;color: #333;line-height: 1.6;font-weight: normal;letter-spacing: 0.07em;text-indent:0.07em;text-align: left;}

}

#course { max-width:800px;padding: 10px 0px;right:0px;left:0px;margin:auto auto;text-align: center;}
#course .txt{ margin: 0px 0px;padding: 15px 0px;font-size:18px;color: #333;line-height: 1.6;font-weight: bold;letter-spacing: 0.1em;text-indent:0.1em;}
#course .txt span{ font-size:18px;color: #c66065;}
@media screen and (max-width: 768px) {
#course .txt{ margin: 0px 0px;padding: 15px 0px;font-size:16px;color: #333;line-height: 1.6;font-weight: bold;letter-spacing: 0.1em;text-indent:0.1em;}
}

table.course { width: 100%;border-collapse: collapse;border-spacing: 0px 0px;right:0px;left:0px;margin:10px auto 0;}
table.course th { vertical-align: middle;text-align:center;}
table.course td { vertical-align: middle;text-align:center;}
table.course .co01 { width: 33.3333%;background-color: #edeaea;border:1px solid #d7d7d7;padding:15px 5px;font-size: 16px;color: #222; letter-spacing: 0.1em;text-indent:0.1em;font-weight: bold;}
table.course .co02 { width: 33.3333%;background-color: #fff;border:1px solid #d7d7d7;padding:15px 5px;font-size: 16px;color: #222; letter-spacing: 0.1em;text-indent:0.1em;font-weight: normal;}
table.course .co03 { width: 33.3333%;background-color: #c66065;border:1px solid #d7d7d7;padding:15px 5px;font-size: 18px;color: #fff; letter-spacing: 0.1em;text-indent:0.1em;font-weight: normal;}
table.course .number{ margin: 0px 2px;font-size: 2.0em;color: #;font-weight: bold;letter-spacing:0px;}
table.course .note{ display: block;padding:5px 0px;font-size: 12px;letter-spacing: 0.05em;text-indent:0.05em;font-weight: normal;}
@media screen and (max-width: 640px) {
table.course .co01 { width: 28%;padding:15px 5px;font-size: 12px;color: #222;letter-spacing: 0.05em;text-indent:0.05em;font-weight: bold;}
table.course .co02 { width: 36%;padding:15px 5px;font-size: 12px;color: #222; letter-spacing: 0.05em;text-indent:0.05em;font-weight: bold;}
table.course .co03 { width:　36%;padding:12px 5px;font-size: 13px;color: #fff; letter-spacing: 0.1em;text-indent:0.05em;font-weight: bold;}
table.course .number{ margin: 0px 2px;font-size:1.9em;font-weight: bold;letter-spacing:0px;}
table.course .note{ display: block;padding:0px 0px;font-size: 10px;letter-spacing: 0.05em;text-indent:0.05em;font-weight: normal;}
}


.catch_wrap { background-image: url(../img/bg_catch.jpg);background-size: cover;background-position: 50% 50%;-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;}
.catch_wrap { padding: 100px 40px;position: relative;overflow: hidden;}
.catch_wrap span{ font-family: 'Times New Roman', serif;font-size: 22rem;font-weight: bold;letter-spacing:0.0em;line-height: 0.8;overflow-wrap: break-word;display: block;text-align:center;}
.catch_wrap:before {content: "";background-image: inherit;background-size: cover;background-position: 50% 50%;position: absolute;top: 0;right: 0;left: 0;bottom: 0;margin:auto auto;z-index: -2;}
@media screen and (max-width: 640px) {
.catch_wrap { background-image: url(../img/bg_catch.jpg);}
.catch_wrap { padding: 80px 20px;position: relative;overflow: hidden;}
.catch_wrap span{ font-size: 5.0em;font-weight: bold;}
}

#message { max-width: 900px;padding: 30px 20px;right:0px;left:0px;margin:auto auto;text-align: left;}
#message h3 { margin: 0px;padding: 15px 0px;font-size: 1.2em;color: #222;font-weight: normal;letter-spacing:0.2em;text-align: center;}
#message .txt { margin: 0px;padding:10px 0px ;font-size: 18px;color: #222;line-height: 1.7;font-weight: normal;letter-spacing:0.1em;text-align: left;}
#message .ceo { margin: 0px;padding:10px 0px ;font-size: 18px;color: #222;line-height: 1.7;font-weight: normal;letter-spacing:0.1em;text-align: right;}
@media screen and (max-width: 640px) {
#message .txt { margin: 0px;padding:10px 0px ;font-size: 15px;color: #222;line-height: 1.7;font-weight: normal;letter-spacing:0.1em;text-align: left;}
}


/* ABOUT */

table.about { width: 1000px;border-collapse: separate;border-spacing: 0px 5px;right:0px;left:0px;margin:50px auto;}
table.about th { width: 200px;border-bottom: solid 1px #ff7d6c;padding: 20px 15px;vertical-align: middle;text-align: left;}
table.about th { font-size: 17px; font-weight: normal;letter-spacing:1px;color: #222;text-align:left;}
table.about td { border-bottom: solid 1px #ddd;padding: 20px 15px ;vertical-align: middle;text-align: left;}
table.about td { font-size: 17px; font-weight: normal;letter-spacing:1px;color: #222;text-align:left;}
table.about td a{ color: #222;text-decoration: none;}
@media screen and (max-width: 1050px) {
table.about { width: 100%;border-collapse: separate;border-spacing: 0px 5px;right:0px;left:0px;margin:30px auto;}
table.about th { width: 100px;border-bottom: solid 1px #8db44a;padding: 20px 10px;vertical-align: middle;text-align: left;}
}
@media screen and (max-width: 640px) {
table.about th { width: 100px;border-bottom: solid 1px #ff7d6c;padding: 20px 10px;vertical-align: middle;text-align: left;}
table.about th { font-size: 14px; font-weight: normal;letter-spacing:1px;color: #222;text-align:left;}
table.about td { border-bottom: solid 1px #ddd;padding: 20px 15px ;vertical-align: middle;text-align: left;}
table.about td { font-size: 13px; font-weight: normal;letter-spacing:1px;color: #222;text-align:left;}
}



/* お問い合わせ */

.contact_block { background-color: rgb(231,226,215);padding: 40px 30px ;margin: 0px ;position: relative;text-align: center; }

#contact_catch{ max-width:700px;padding: 20px 0px ;position:relative;right:0px;left:0px;margin: auto auto;}
#contact_catch h3 { padding: 20px 0px ;font-size: 2.0em;color: #222;line-height: 1;font-weight: bold;letter-spacing:1px;text-align: center;}
#contact_catch h3 span{ margin: 0px 5px;font-family: 'Oswald', sans-serif;font-size:3em;font-weight: normal;letter-spacing:0px;}
#contact_catch p { margin: 0px;padding:0px 0px;font-size: 16px;color: #333;line-height: 1.6;font-weight: bold;letter-spacing: 0.2em;text-indent:0.2em;text-align: left;}
@media screen and (max-width: 768px) {
#contact_catch h3 { padding: 20px 0px ;font-size: 1.5em;color: #222;line-height: 1;font-weight: bold;letter-spacing:1px;text-align: center;}
#contact_catch h3 span{ margin: 0px 5px;font-family: 'Oswald', sans-serif;font-size:2.5em;font-weight: normal;letter-spacing:0px;}
#contact_catch p { margin: 0px;padding:0px 0px;font-size: 16px;color: #333;line-height: 1.6;font-weight: bold;letter-spacing: 0.2em;text-indent:0.2em;text-align: left;}
}



/* CONCEPT */

.concept_wrap { max-width: 100%;min-height: 400px;margin: 0;padding: 80px 20px ;background : transparent url(../img/bg_concept.jpg) no-repeat center top;background-position: 50% 50%;background-size: cover;position: relative;right:0px;left:0px;top:0px;margin:auto auto;text-align:center;z-index:-1;}
.concept_wrap { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
.concept_wrap .inner { max-width: 100%;margin: 0px;padding: 50px 10px ;position: relative;background:linear-gradient(to right, rgba(255,255,255,0.0) 0%,rgba(255,255,255,0.9) 50%, rgba(0,0,0,0.0) 100%);z-index:3;right:0px;left:0px;margin: auto auto;}
.concept_wrap .inner { border-top: 1px solid #616161;border-image: linear-gradient(to right, rgba(255,255,255,0.0) 0%,rgba(159,151,147,0.6) 50%, rgba(255,255,255,0.0) 100%);border-image-slice: 1;}
@media screen and (max-width: 640px) {
}

#concept{ max-width:800px;padding: 0px 0px;position:relative;right:0px;left:0px;margin: auto auto;}
#concept{ word-wrap: break-word;overflow-wrap: break-word;}
#concept .tl { position: relative;display: inline-block;margin: auto auto ;padding: 0px 30px;}
#concept .tl { font-size:1.3em;color: #333;font-weight: normal;letter-spacing: 0.1em;text-indent:0.1em;line-height: 1.6;text-align: center;}
#concept .txt { margin: 0px;padding:15px 10px 0px;font-size: 17px;color: #333;line-height: 1.8;font-weight: normal;letter-spacing: 0.1em;text-indent:0.1em;text-align: left;}
#concept .txt  span{padding-bottom: 1px;display: inline; background:linear-gradient(transparent 70%, rgba(255,146,173,0.4) 0%);}
@media screen and (max-width: 640px) {
#concept .tl { position: relative;display: inline-block;margin: auto auto ;padding: 0px 20px;}
#concept .tl { font-size:16px;color: #;font-weight: bold;letter-spacing: 0.2em;text-indent:0.2em;line-height: 1.6;text-align: center;}
#concept .txt { margin: 0px;padding:15px 10px 0px;font-size: 15px;color: #;line-height: 1.8;font-weight: normal;letter-spacing: 0.1em;text-indent:0.1em;text-align: left;}
}

/* NAVI */

.navi_menu_container { width: 100%;display: flex;flex-wrap: wrap;margin: 0px;padding: 0px;}
.nm_wrap { width: 50%;background-color: #f4f4ec;margin: 0px;padding: 0px 0px ;text-align:center;position: relative;overflow: hidden;display: flex;justify-content: center;align-items: center;}
.nm_wrap { moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;}
.nm_wrap img{width: 100%;height: 400px;border-radius: 0px; object-fit: cover;transition: all .8s ease-out;}
.nm_wrap:hover img { opacity: 1.0;transform: scale(1.1);}
.nm01 {}
.nm02 {}
.nm02 {}
.nm03 {}
@media only screen and (max-width:800px) {
.navi_menu_container {display: flex;flex-direction: column;padding: 15px;}
.navi_menu_container { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
.nm_wrap { width: 100%;background-color: #f4f4ec;margin: 0px;padding: 0px 0px ;text-align:center;}
.nm_wrap img{width: 100%;height: 200px;border-radius: 0px; object-fit: cover;transition: all .8s ease-out;}
.nm01 { order:1;}
.nm02 { order:2;margin: 10px 0;}
.nm03 { order:4;margin: 10px 0;}
.nm04 { order:3;}
.nm05 { order:5;}
.nm06 { order:6;margin: 10px 0;}
}

#nm_txt { max-width:600px;padding: 40px 30px 10px;right:0px;left:0px;margin:auto auto;text-align: center;}
#nm_txt h3 { margin: 0px 0px;padding: 5px 0px;position:relative;animation: fadeIn 1s ease forwards;}
#nm_txt h3 { font-size: 2.0rem;color: #222;line-height: 1.6;font-weight: bold;letter-spacing:2px;text-align: center;}
#nm_txt p { margin: 0px;padding:15px 0px ;font-size: 18px;color: #222;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) {
#nm_txt { max-width:500px;padding: 20px 20px 10px;right:0px;left:0px;margin:auto auto;text-align: center;}
#nm_txt h3 { font-size: 16px;color: #222;line-height: 1.6;font-weight: bold;letter-spacing:2px;text-align: center;}
#nm_txt p { margin: 0px;padding:15px 0px ;font-size: 15px;color: #222;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;}
}


/* 会社概要 */

.about_wrap { max-width: ;background: #f9f7f7;border: 1px solid #f2f2f2;padding: 20px 10px;right:0px;left:0px;margin:auto auto;text-align: center;}
.about_wrap iframe{ width: 100%;height: 500px;border:0;filter:grayscale(100%);-webkit-filter:grayscale(100%);vertical-align: bottom;}
.about_column_container { width: 1600px;background: #;display: inline-block;padding: 10px 0px;vertical-align: top;}
.about_column01 { width: 40%;margin:0px;padding: 15px 15px;float: left;text-align: center;box-sizing: border-box;}
.about_column02 { width: 60%;margin:0px;padding: 15px 15px;float: left;text-align: center;box-sizing: border-box;}
@media screen and (max-width: 1450px) {
.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_column01 { width: 100%;}
.about_column02 { width: 100%;;}
}

.office_container { width: 800px;display: inline-block;padding: 0px 0px;right:0px;left:0px;margin:auto auto;}
.office_column { width: 50%;margin:0px;padding: 15px 15px ;float: left; position: relative; text-align: center; }
.office_column { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;overflow:hidden;}

@media screen and (max-width: 850px) {
.office_container { width: 100%;}}
@media screen and (max-width: 640px) {
.office_column { width: 100%;margin:0px 0px;padding: 0px 5px; position: relative; text-align: center; }
}


ul.address { margin: 0px ;padding: 20px 0px;display: inline-block;text-align: center;}
ul.address li { padding: 5px 0px;letter-spacing:0px;}
ul.address li { font-size: 14px;color: #333;font-weight: normal;letter-spacing: 0.07em;text-indent:0.07em;line-height: 1.5;text-align: left;}
ul.address li a{color: #333;text-decoration: none;}
ul.address img {padding: 10px 0px 15px; max-width: 250px; }
ul.address h3 { padding: 0px 0px;font-size: 1.2em;color: #333;line-height: 1.2;font-weight: bold;letter-spacing:0px;}
ul.address .tl {-webkit-transform: skewX(160deg);-moz-transform: skewX(160deg);transform: skewX(160deg);}
ul.address .tl { width: 250px;background-color: #2c3e50;margin: 10px 0;padding: 10px 0px ;text-decoration: none;right:0px;left:0px;margin:0 auto 10px;}
ul.address .tl span { display: block;-webkit-transform: skewX(-160deg);-moz-transform: skewX(-160deg);transform: skewX(-160deg);}
ul.address .tl span { padding: 0px 0px;font-size: 14px;color: #fff;letter-spacing:2px;font-weight: normal;}
@media screen and (max-width: 640px) {
ul.address .tl { width: 250px;background-color: #2c3e50;margin: 10px 0;padding: 10px 0px ;text-decoration: none;right:0px;left:0px;margin:0 auto 10px;}
ul.address .tl span { padding: 0px 0px;font-size: 14px;color: #fff;letter-spacing:2px;font-weight: normal;}
ul.address img {padding: 10px 0px 15px; max-width: 200px; }

}


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 15px;vertical-align: middle;text-align: left;}
table.company th { font-size: 16px; font-weight: normal;letter-spacing:0.15em;color: #333;text-align:left;}
table.company td { border-bottom: solid 1px #ddd;padding: 10px 15px ;vertical-align: middle;text-align: left;}
table.company td { font-size: 16px; font-weight: normal;letter-spacing:0.15em;color: #333;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: 120px;border-bottom: solid 1px #ddd;padding: 20px 0px;vertical-align: middle;text-align: left;}
table.company th { font-size: 15px; font-weight: normal;letter-spacing:0.15em;color: #333;text-align:left;}
table.company td { border-bottom: solid 1px #ddd;padding: 10px 10px ;vertical-align: middle;text-align: left;}
table.company td { font-size: 15px; font-weight: normal;letter-spacing:0.15em;color: #333;text-align:left;}
}


/* お問い合わせ */

.contact_block { background-color: rgb(231,226,215);padding: 40px 30px ;margin: 0px ;position: relative;text-align: center; }

#contact_catch{ max-width:700px;padding: 20px 0px ;position:relative;right:0px;left:0px;margin: auto auto;}
#contact_catch h3 { padding: 20px 0px ;font-size: 2.0em;color: #222;line-height: 1;font-weight: bold;letter-spacing:1px;text-align: center;}
#contact_catch h3 span{ margin: 0px 5px;font-family: 'Oswald', sans-serif;font-size:3em;font-weight: normal;letter-spacing:0px;}
#contact_catch p { margin: 0px;padding:0px 0px;font-size: 16px;color: #333;line-height: 1.6;font-weight: bold;letter-spacing: 0.2em;text-indent:0.2em;text-align: left;}
@media screen and (max-width: 768px) {
#contact_catch h3 { padding: 20px 0px ;font-size: 1.5em;color: #222;line-height: 1;font-weight: bold;letter-spacing:1px;text-align: center;}
#contact_catch h3 span{ margin: 0px 5px;font-family: 'Oswald', sans-serif;font-size:2.5em;font-weight: normal;letter-spacing:0px;}
#contact_catch p { margin: 0px;padding:0px 0px;font-size: 16px;color: #333;line-height: 1.6;font-weight: bold;letter-spacing: 0.2em;text-indent:0.2em;text-align: left;}
}


/* CONTACT */

ul.contact_caution { width: 800px;background-color: #;margin: 0px 0;padding: 20px 10px;display:inline-block;right:0px;left:0px;margin:auto auto;}
ul.contact_caution { moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;}
ul.contact_caution li{ border-bottom: 3px dotted #bec6ca;border-radius: 0px;margin: 10px 0px;padding: 12px 10px 12px 40px; position: relative;}
ul.contact_caution li{ font-size: 18px;color: #333;line-height: 1.6;font-weight: normal;letter-spacing: 0.1em;text-indent:0.1em;text-align: left;}
_ul.contact_caution li:last-child { border-bottom: none; }
ul.contact_caution li::after { position:absolute;left:0px;top:13px;content:"";width:28px;height:28px;}
ul.contact_caution li::after { background:url(../img/check.png) no-repeat scroll 0% 0%;background-size:contain;}
ul.contact_caution li span { color: #ff3c00;}
@media only screen and (max-width:1050px) { ul.contact_caution { width: 100%;}}
@media only screen and (max-width:640px) {
ul.contact_caution li{ font-size: 16px;color: #333;line-height: 1.6;font-weight: normal;letter-spacing: 0.1em;text-indent:0.1em;text-align: left;}
}


table.form { width: 800px;border-collapse: separate;border-spacing: 5px 5px;margin: 50px auto 20px;}
table.form th { width: 200px;padding: 5px 5px;vertical-align: middle;text-align: left;}
table.form th { font-size: 14px; font-weight: normal;color: #333;letter-spacing: 0.1em;text-indent:0.1em;line-height: 1.5;text-align:left;}
table.form td { padding: 5px 0px ;vertical-align: middle;text-align: left;position: relative;}
table.form td span{ padding-left: 5px ;font-size: 14px; font-weight: normal;letter-spacing:1px;color: #333;text-align:left;}
@media only screen and (max-width:800px) {
table.form { width: 100%;}
table.form th,.form td { display: block;width: auto;}
table.form th { padding: 10px 0px 10px ;position: relative;}
table.form tr:last-child { }
table.form td { padding: 0px 0px 15px;}
}

#completed { max-width: 700px;border:0px solid #f2f2f2;padding: 30px 30px;position: relative; right:0px;left:0px;margin: auto auto ;text-align: center;}
#completed h3{ font-size: 1.4em;color: #222;font-weight: normal;letter-spacing: 0.1em;text-indent:0.1em;line-height: 1.5;text-align:center;}
#completed p{ font-size: 16px;color: #333;font-weight: normal;letter-spacing: 0.1em;text-indent:0.1em;line-height: 1.5;text-align:left;}
@media only screen and (max-width:640px) {
#completed h3{ font-size: 16px;}
#completed p{ font-size: 14px;}
}

.required { background: #9e0903;border-radius:0px;margin: 0px 6px;padding:3px 7px ;font-size: 10px;color: #fff;letter-spacing:1px;vertical-align: 2px;}
.optional { background: #333;border-radius:0px;margin: 0px 6px;;padding:3px 7px ;font-size: 10px;color: #fff;letter-spacing:1px;vertical-align: 2px;}

#thanks { max-width: 700px;padding: 20px 10px;right:0px;left:0px;margin:auto auto; }
#thanks .tl { margin: 0px;padding: 15px 0px;font-size: 18px;color: #222;font-weight: bold;letter-spacing: 0.1em;text-indent:0.1em;text-align: center;}
#thanks .txt{ margin:0px;padding: 5px 0px;font-size: 16px;color: #222;font-weight: normal;letter-spacing: 0.1em;text-indent:0.1em;line-height: 1.6;text-align: left;position: relative;}



/* FORM */

input{ background-color: #fdfdfd;border: 1px solid #e7e1e3;border-radius: 0px;margin: 0px ;padding: 12px 10px;}
input{ font-size:14px; color: #333;line-height: 1.6;}
input{ -webkit-appearance: none; }
input:focus{ background-color: #fff;-webkit-appearance: none;outline: none;}
input{ width:100%;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;}
.input_score { width:150px; margin: 0px 5px 0 0;}

textarea{ margin: 0px 0px;padding: 10px 10px;background-color: #fdfdfd;border: 1px solid #e7e1e3;border-radius: 3px;}
textarea{ width:100%;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;}
textarea{ font-size:13px; color: #333;}
textarea{ overflow: auto; resize: none;-webkit-appearance: none;}
textarea:focus{ background-color: #fff;outline: none;}

select{ margin: 0px 0px;padding: 15px 10px;}
select{ width:100%;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;}
select{ background-color: #fdfdfd;border: 1px solid #e7e1e3;border-radius: 0px;-webkit-appearance: none;}
select{ font-size:14px; color: #333;letter-spacing: 0.1em;text-indent:0.1em;line-height: 1.6;}
select{ background: #fdfdfd url(../img/select_arrow.png) no-repeat ;background-position: right 12px center;}
select:focus { background: #fff url(../img/select_arrow.png) no-repeat ;background-position: right 12px center;outline: none;}
.select_day { width:150px; margin: 0px 0px;}
@media only screen and (max-width:800px) {
select { width:100%;padding: 15px 10px;margin: 0px ;border-radius: 0px;}
.select_day { width:80px; margin: 0px 0px;}
}


.button-group { max-width: 100%;display: flex;border-top: 1px solid #e7e1e3;border-bottom: 1px solid #e7e1e3;border-right: 1px solid #e7e1e3;}
.button-group .item {width: 100%;}
.button-group .radio-button {position: absolute;width: 1px;height: 1px;opacity: 0;}
.button-group 
.radio-button + label { padding: 14px 5px;cursor: pointer;border-left: 1px solid #e7e1e3;margin-right: 0px;font-size:14px;color: #555;letter-spacing: 1px;background-color: #fff;display: block;text-align: center;}
.button-group .radio-button:checked + label {background-color: #222;color: #fff;}
@media only screen and (max-width:800px) {
.button-group { max-width: 100%;display: flex;}
}

.uploadButton { max-width:100%;display:inline-block;position:relative;overflow:hidden; background:#222;border: 0px solid #161616;font-size:15px;color:#fff;text-align:center;padding: 15px 0px;line-height:28px;width:100%;cursor:pointer;}
.uploadButton:hover {background:#000;color:#fff;}
.uploadButton input[type=file] {position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer;opacity:0;}
.uploadValue { width:50%;margin: 0px 5px;display:none;background:rgba(255,255,255,1.0);border-radius:0px;padding:;color:#666;border: 1px solid #fff;}

input.button { max-width:380px;background:#222;margin: 30px 0px;padding: 18px 0px;border: none;border-radius: 0px;}
input.button { font-size: 14px;color: #fff;letter-spacing: 0.1em;text-indent:0.1em;line-height: 1.5;text-align: center;-webkit-appearance: none;}
input.button:hover { color: #fff;}
input.button:active { position:relative;top:1px;}





/* NAVI */

ul.navi_btn { max-width: 800px;margin: 0px;padding: 0px;right:0px;left:0px;margin:auto auto;}
ul.navi_btn li { width: 50%;float: left;text-align: center; margin: 0px;padding: 0px 7px; position:relative;}
ul.navi_btn li { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
ul.navi_btn li a{ font-size: 15px;color: #fff;font-weight: bold;letter-spacing: 0.1em;text-indent:0.1em;line-height: 55px;text-decoration: none;}
ul.navi_btn li span { border: 2px solid #5e504a;border-radius: 100vh;position: absolute;top: -20px;right:20px;display: block;background: #fff;-webkit-box-shadow: 0 2px 0px rgba(103,77,42,1.0);box-shadow: 0 2px 0px rgba(103,77,42,.0);z-index:3;}
ul.navi_btn li span { padding: 5px 18px;font-size: 12px;color: #664416;line-height: 1;letter-spacing:0px;font-weight:bold;}
ul.navi_btn li span:before,
ul.navi_btn li span:after {position: absolute;left: calc(50% - 10px);content: "";}
ul.navi_btn li span:before {bottom: -10px;border-width: 10px 10px 0 10px;border-style: solid;border-color: #5e504a transparent transparent transparent;}
ul.navi_btn li span:after {bottom: -7px;border-width: 10px 10px 0 10px;border-style: solid;border-color: #fff transparent transparent transparent;}
@media screen and (max-width: 640px) {
ul.navi_btn li { width: 100%;text-align: center; margin: 0px;padding: 5px 3px; position:relative;}
ul.navi_btn li a{ font-size: 13px;color: #fff;font-weight: ;letter-spacing: 0.1em;text-indent:0.1em;line-height: 55px;text-decoration: none;}
}

.btn_tel a{ max-width: 400px;display: block;background-color: #369ccc;border: 1px solid #237196;border-radius: 30px;padding:0px;position: relative;right:0px;left:0px;margin:auto auto;z-index: 2;}
.btn_tel a::before{position:absolute;top: 0;bottom: 0;margin: auto;left:20px;content:"";width:30px;height:30px;}
.btn_tel a::before{background:url(../img/btn_icon_tel.png) no-repeat scroll 0% 0%;background-size:contain;opacity: 5; content: ""; }
.btn_tel a::after { position:absolute;right:15px;top:21px;content:"";width:18px;height:13px;}
.btn_tel a::after { background:url(../img/btn_arrow.png) no-repeat scroll 0% 0%;background-size:contain;opacity: 5; content: ""; transition: all 0.2s ease-in-out 0.1s; transform: translateX(-7px);}
.btn_tel a:hover::after { opacity: 1;transform: translateX(0px);}

.btn_mail a { max-width: 400px;display: block;background-color: #7b6b64;border: 1px solid #3c2c25;background:linear-gradient(to bottom, #7b6b64 0%, #3c2c25 100%);border-radius: 30px;padding:0px;position: relative;right:0px;left:0px;margin:auto auto;z-index: 2;}
.btn_mail a::before{position:absolute;top: 0;bottom: 0;margin: auto;left:20px;content:"";width:30px;height:30px;}
.btn_mail a::before{background:url(../img/btn_icon_mail.png) no-repeat scroll 0% 0%;background-size:contain;opacity: 5; content: ""; }
.btn_mail a::after { position:absolute;right:15px;top:21px;content:"";width:18px;height:13px;}
.btn_mail a::after { background:url(../img/btn_arrow.png) no-repeat scroll 0% 0%;background-size:contain;opacity: 5; content: ""; transition: all 0.2s ease-in-out 0.1s; transform: translateX(-7px);}
.btn_mail a:hover::after { opacity: 1;transform: translateX(0px);}





/* FOOTER */

.footer { width: 100%; min-height: 200px;}
.footer { background: #000;}
.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 .inner { max-width: 900px;margin: 0;padding: 20px 5px ;right:0px;left:0px;margin:15px auto;z-index:3;}
.footer .inner .logo { max-width: 350px;margin: 15px 0;}
.footer .inner .catch { padding: 10px 0px ;font-size:17px;color: #fff;font-weight: normal;letter-spacing: 0.2em;text-indent:0.2em;line-height: 1.6;text-align: center;}
.footer .inner .txt { margin: 0px;padding: 15px 0;font-size: 13px;color: #fff;line-height: 1.8;font-weight: normal;letter-spacing: 0.1em;text-indent:0.1em;text-align: center; }
@media screen and (max-width: 640px) {
.footer .inner .logo { max-width: 200px;margin: 15px 0;}
.footer .inner .catch { font-size:16px;color: #fff;font-weight: normal;letter-spacing: 0.2em;text-indent:0.2em;line-height: 1.6;text-align: center;}
.footer .inner .txt { margin: 0px;padding: 15px 0;font-size: 13px;color: #fff;line-height: 2.0;font-weight: normal;letter-spacing: 0.1em;text-indent:0.1em;text-align: left; }
}

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




/* 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%;background-color:#000;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 #222; 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 #222; 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 { }
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:#;}
}

