@charset "utf-8";
html,body{
	margin:0 !important;
	padding:0;
}
*{
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight:500;
}
@font-face {
	font-family: "porsche";
	src:url('../font/911porschav3bold.woff') format('woff'), 
		url('../font/911porschav3bold.woff2') format('woff2')
}
p,dt,dd,li{
	text-align:justify;
}
b,.bold{
	font-weight:900;
}
/*CLEARFIX*/
.clearfix:after{
	content:" ";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;
}
.clearfix{
	display:inline-block;
	min-height:1%;
}
*html .clearfix{
	height:1%;
}
.clearfix{
	display:block;
}

/*FORM*/
button,input,optgroup,select,textarea,
input[type="button"],input[type="reset"],input[type="submit"],button[disabled],
html input[disabled],button::-moz-focus-inner,input::-moz-focus-inner,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration,textarea{
	color:inherit;
	font:inherit;
	margin:0;
	padding:0;
	overflow:auto;
	text-transform:none;
	-webkit-appearance:none;
	cursor:default;
	border:0;
	line-height:1em;
}
input[type="checkbox"],input[type="radio"]{
	box-sizing:border-box;
	padding:0;
	margin:0;
	width:20px;
}
input[type="search"]{
	-webkit-appearance:none;
	-moz-box-sizing:content-box;
	-webkit-box-sizing:content-box;
	box-sizing:content-box;
}
/*画像*/
svg:not(:root){
	overflow:hidden;
}
img{
	border:none;
	width:auto;
	height:auto;
}
/*色*/
.yellow{color:rgba(230,206,110,1);}
.red{color:rgba(204,0,0,1);}
.gray{color:rgba(204,204,204,1);}

/*リンク*/
a,
a i,
a small{
	color:#000;
	background:transparent;
	text-decoration:none;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
a:focus, *:focus {
	outline:none;
}
a:hover,
a:hover i,
a:hover small{
	opacity:0.6 !important;
	-webkit-opacity:0.6 !important;
	-moz-opacity:0.6 !important;
	filter: alpha(opacity=60) !important;
}
a img{
	-webkit-transition: opacity 1s ease-out;
	-moz-transition: opacity 1s ease-out;
	-ms-transition: opacity 1s ease-out;
	transition: opacity 1s ease-out;
}
a:hover img{
	text-decoration:none;
	opacity:0.6 !important;
	-webkit-opacity:0.6 !important;
	-moz-opacity:0.6 !important;
	filter: alpha(opacity=60) !important;
}
.linkbox{
	background:#000;
	color:#fff;
	font-size:21px;
	width:80%;
	margin:0 auto;
	display:block;
	padding:20px;
	text-align:center;
	font-weight: 900;
	font-family:'M PLUS 1p', sans-serif;
}
.linkbox i{
	color:#fff;
}
.linkbox:hover{
	background:rgba(230,206,110,1);
	color:#000;
	opacity:1 !important;
	-webkit-opacity:1 !important;
	-moz-opacity:1 !important;
	filter: alpha(opacity=100) !important;
}
/*フェード*/
.fade {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.fade:hover{
	opacity: 1;
	filter: alpha(opacity=100);
	text-decoration:none;
}
.pright{
	padding-right:8px;
}
.pleft{
	padding-left:8px;
}

/*テキスト*/
h1,h2,h3,h4,h5,h6{
	margin:0;
	padding:0;
}
p,dt,dd{
	line-height:1.7em;
	font-size:16px;
	margin:0 0 1.7em;
}
ul,ol{
	margin:0;
	padding:0 0 0 1.5em;
}
li,th,td{
	margin-bottom:1.5em;
	line-height:1.4em;
}
p:last-child,
li:last-child{
	margin-bottom:0 !important;
	padding-bottom:0 !important;
}
.right{text-align:right !important;}
.left{text-align:left !important;}
.center{text-align:center !important;}

b,strong,em{
	font-family: 'Noto Sans TC', sans-serif;
	font-weight:900;
	font-style:normal;
}
small,sub,sup{
	font-size:80%;
	line-height:1.4em;
	position:relative;
}
.note{
	padding-left:0.8em;
	margin:0 0 10px !important;
}
.note span{
	font-size:14px;
	text-indent:-1em;
	display:block;
	line-height:1.5em;
}
.gmap{
    position: relative;
    padding-bottom: 36.25%;
    height: 0;
    overflow: hidden;
}
.gmap iframe,
.gmap object,
.gmap embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	border:none;
}
.mfp_main h3 span,
#mfp_post .mfp_text h4 span{
	font-family: 'M PLUS 1p', sans-serif;
    background: url(../img/common/strong.gif) repeat-x bottom;
    padding-bottom: 2px;
}
.mfp_main h3 span{
	font-weight: 900;
}
@media screen and (max-width: 768px) {
p,th,td,dt,dd,li{
	line-height:1.5em;
	font-size:14px;
	margin:0 0 1.3em !important;
}
li{
	margin:0 !important;
}
.note span{
	font-size:12px;
	line-height:1.4em;
}
.linkbox{
	font-size:16px;
	width:100%;
}
}
@media screen and (max-width: 680px) {
.linkbox{
	font-size:14px;
}
}

/*構成*/
.flex_content{
	display:flex;
	display:-webkit-flex;
	justify-content:space-between;
	-webkit-justify-content:space-between;
	flex-wrap:wrap;
	-webkit-flex-wrap:wrap;
}
.flex_left,
.flex_right{
	flex-basis:47%;
	-webkit-flex-basis:47%;
	max-width:47%;
}
img.full{
	width:100%;
	height:auto;
	line-height:0;
	vertical-align:bottom;
}
/*.wrapper{
	width:95%;
	max-width:1280px;
	margin-left:auto !important;
	margin-right:auto !important;
	padding:0;
}*/
.wrapper{
	width:95%;
	max-width:1500px;
	margin-left:auto !important;
	margin-right:auto !important;
	padding:0;
}
section{
	margin:80px auto 100px !important;
}
.forsp{
	display:none !important;
}
@media screen and (max-width: 768px) {
#wrapper{
	width:90%;
}
.flex_left,
.flex_right{
	flex-basis:100% !important;
	-webkit-flex-basis:100% !important;
	max-width:100% !important;
	padding:0;
}
.gmap{
    padding-bottom:80%;
}
section{
	margin:50px auto 80px !important;
}
}
@media screen and (max-width: 680px) {
section{
	margin:50px auto !important;
}
.forsp{
	display:block !important;
}
.forpc{
	display:none !important;
}
}


/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::
	ヘッダー
::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
#title{
	background:#000;
	padding:10px 30px;
	align-items:center;
	-webkit-align-items:center;
}
#title_img{
	max-width:300px;
}
#title #cv{
	text-align:right;
}
#cv a{
	font-size:16px;
	padding-left:1em;
}
#cv a,
#cv a i{
	color:#fff;
}
h1{
	font-size:12px;
	color:#000;
	line-height:1em;
	font-weight:normal;
}
#head{
	padding:0 20px 0 0;
	align-items:center;
	-webkit-align-items:center;
	border-bottom:1px solid #000;
}
#head h1{
	border-left:10px solid rgba(230,206,110,1);
	padding:20px 0 17px 15px;
	background:#fff;
}
#head h1 a{
	font-size:16px;
	font-weight:900;
}
#head h1 a span{
	font-weight:900;
	font-size:28px;
	padding-right:10px;
	font-family: "porsche";
}
#head h1 a small{
	font-weight:400 !important;
}
#gnav ul{
	margin:0;
	padding:0;
}
#gnav li{
	list-style:none;
	padding:0 0 0 1.5em;
	margin:0;
}
#gnav li a{
	font-size:15px;
}
#gnav li a.active{
	border-bottom:3px solid rgba(230,206,110,1);
}
#cv a.tel_cv i,
#drawer_btton{
	display:none;
}
#gnav li:nth-child(n+8){
	display:none;
}
@media screen and (max-width: 1480px) {
#head{
	padding:0;
}
#gnav{
	flex-basis:100%;
	-webkit-flex-basis:100%;
	max-width:100%;
	border-top:1px solid #000;
	padding:15px 30px 15px 0;
}
#gnav li{
	padding:0 0 0 1em;
}
#gnav li a{
	font-size:14px;
}
}
@media screen and (max-width: 768px) {
header{
	position:relative;
	z-index:99999;
}
header .fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
}
#title{
	flex-wrap:nowrap;
	-webkit-flex-wrap:nowrap;
}
#title #cv{
	text-align:center;
}
#title_img{
	flex-basis:100%;
	-webkit-flex-basis:100%;
	max-width:100%;
}
#title_img img{
	max-width:300px;
}
#cv,
#drawer_btton{
	flex-basis:70px;
	-webkit-flex-basis:70px;
	max-width:70px;
	text-align:center;
	display:block;
	height:50px;
}
#cv a b,
#cv a:nth-child(n+2),
#gnav{
	display:none;
}
#title {
    padding:0 0 0 10px;
}
#cv{
	background:#666;
}
#cv a.tel_cv i{
	display:block;
	color:#fff;
	font-size:21px;
	position:relative;
	top:-5px;
}
#drawer_btton{
	background:rgba(230,206,110,1);
	padding:8px 0 17px;
}
.drawer--right .drawer-hamburger{
	position:relative;
	box-sizing:border-box;
	width:70%;
	margin:0 auto;
	padding:5px 0;
	background:rgba(230,206,110,1);
}
.drawer-hamburger-icon,
.drawer-hamburger-icon:after,
.drawer-hamburger-icon:before{
	background:#000;
}
.drawer--right.drawer-open .drawer-hamburger{
	right:0;
}
h1{
	line-height:1.3em;
	padding:8px 0;
	flex-basis:100%;
	-webkit-flex-basis:100%;
	max-width:100%;
}
/*GNAV*/
.drawer-nav{
	background:rgba(0,0,0,0.9);
	width:100%;
	padding-top:120px;
	z-index:9999 !important;
}
.drawer--right .drawer-nav{
	right:-100%;
}
.drawer-nav ul{
	padding:30px 0;
}
.drawer-nav li{
	flex-basis:100%;
	-webkit-flex-basis:100%;
	max-width:100%;
	margin-bottom:0;
	list-style:none;
}
.drawer-nav li a{
	display:block;
	width:100%;
	color:#fff;
	padding:12px 10px;
	border-bottom:1px solid rgba(255,255,255,0.3);
	position:relative;
}
.drawer-nav li a:hover,
.drawer-nav li a.active{
	background:rgba(230,206,110,1);
	color:#000;
}
.drawer-nav li a:after{
	content:">";
	transform: scale(0.8, 1);
	position:absolute;
	right:10px;
	top:50%;
	margin-top:-6px;
	font-size:12px;
	color:#fff;
}
}
@media screen and (max-width: 680px) {
#head h1 {
    padding:10px 0 12px 7px;
}
#head h1 a span{
    font-size: 14px;
}
#head h1 a{
	font-size:11px;
}
#head h1 small{
	display:none;
}
#title_img img{
	max-width:220px;
}
.drawer-nav{
	padding-top:70px;
}
#gnav li:nth-child(n+8){
	display:block;
}
}








/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::
	ページトップ
::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
#totop{
    position: fixed;
    bottom: 100px;
    right: 8px;
    z-index:999999;
}
#totop a i{
    font-size:50px;
    color:rgba(230,206,110,1);
}
#totop a:hover i{
	color:#000;
}
@media screen and (max-width: 960px) {
#totop{
    bottom:20px;
}
#totop a i{
    font-size:40px;
}
}

/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::
	タイトル
::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
h1 a span{
	font-weight: 900;
	font-family:'M PLUS 1p', sans-serif;
}
h2,
h2 a{
	text-align:center;
	font-size:58px;
	font-weight: 900;
	font-family:'M PLUS 1p', sans-serif;
	margin-bottom:40px;
}
h2 small{
	display:block;
	font-family: "porsche";
	font-size:30%;
}
h3{
	text-align:center;
	font-size:48px;
	font-weight: 900;
	font-family:'M PLUS 1p', sans-serif;
	margin-bottom:40px;
}
h4{
	font-size:38px;
	font-weight: 900;
	font-family:'M PLUS 1p', sans-serif;
	margin-bottom:30px;
}
h5,
h5 a{
	font-size:28px;
	font-weight: 900;
	font-family:'M PLUS 1p', sans-serif;
	margin-bottom:20px;
}
@media screen and (max-width: 768px) {
h2,
h2 a{
	font-size:48px;
}
h3{
	font-size:38px;
}
h4{
	font-size:28px;
}
h5,
h5 a{
	font-size:24px;
}
}
@media screen and (max-width: 680px) {
h2,
h2 a{
	font-size:38px;
	margin-bottom:30px
}
h3{
	font-size:28px;
	margin-bottom:20px
}
h4{
	font-size:24px;
}
h5,
h5 a{
	font-size:21px;
}
p.center{
	text-align:left !important;
}
p.center br{
	display:none;
}
}
@media screen and (max-width: 480px) {
h2,
h2 a{
	font-size:28px;
}
h3{
	font-size:20px;
}
h4{
	font-size:19px;
}
h5,
h5 a{
	font-size:18px;
}
}

