@charset "UTF-8";
/****************************************
Resetting
*****************************************/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	border: 0;
	font-size: 100%;
	font: inherit;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, main,hgroup, menu, nav, section {
	display: block;
}

body {
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', 'Meiryo', sans-serif;letter-spacing:.2em;line-height: 2em;
}

ol,ul,li{
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

input[type="submit"],
input[type="button"],
input[type="reset"]{
	appearance: button;
	border: none;
	border-radius: 0;
	box-sizing: border-box;
	cursor: pointer;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
}

/******************************************
normarise
******************************************/
*{
	box-sizing:border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
}

html {
	-webkit-font-smoothing: antialiased;
}

a{
	text-decoration: none;transition: .5s;
}

a:hover{
	opacity: 0.8;
}

/******************************************
clearfix
******************************************/
.clearfix:after {
	content: ".";
	clear: both;
	display: block;
	height: 0;
	visibility: hidden;
}

.clearfix {
	display: inline-table;
}  
/* Hides from IE-mac \*/
* html .clearfix {
	height: 1%;
}  
.clearfix {
	display: block;
}  
/* End hide from IE-mac */

/****************************************
Layout
*****************************************/
/*flexbox*/
.flex{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
}
.flex--start{
	justify-content: flex-start;
	-webkit-justify-content: flex-start;
}

.flex--center{
	justify-content: center;
	-webkit-justify-content: center;
}
.flex--end{
	justify-content: flex-end;
	-webkit-justify-content: flex-end;
}

.flex--bet{
	justify-content: space-between;
	-webkit-justify-content: space-between;
}
.flex--around{
	justify-content: space-around;
	-webkit-justify-content: space-around;
}

/*col*/
.col2{
	width:48%;
}

.col3{
	width:30%;
}

.col4{
	width:25%;
}

.col5{
	width:18.4%;
}

.col6{
	width:15%;
}
/****************************************
header
*****************************************/
.site-header{
	background:linear-gradient(0deg,#f0f8ff,#f0ffff 15%,#afeeee 50%,#e0ffff 51%,#f0f8ff);
	margin: 0 auto;
	padding: 0 20px;
	width: 100%;
	height: 70px;
	position: fixed;
	top: 0;
	transition: .5s;
	z-index: 10;
	display: flex;
}
.site-header.hide{
    top: -70px;
}
.site-logo {
	margin:auto 0; align-self: center;
}
.site-logo a{
	color:#333;font-size:1.5em;
}
.site-logo img{
	height: 60px;
	width: auto;
	margin-top:5px;
}
.gnav{margin:auto 0;align-self: center;}
.gnav__menu{display: flex;justify-content: flex-start;}
.gnav__menu__item{
	margin-left: 20px;font-size: 1em;color:#333;font-weight: normal;
}
.gnav__menu__item__link{
	font-size: 1em;color:#333;font-weight: normal;
}
.gnav__menu__item__link__name{
	color:#333;
	margin-right: 5px;
}

.mnav__menu{
	overflow: hidden;
	}
.mnav__menu__tittle{
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: 10px;
	color:#fff;
	background: -moz-linear-gradient(90deg, #aa6600, #ffcc00);
	background: -webkit-linear-gradient(90deg, #aa6600, #ffcc00);
	background: -o-linear-gradient(90deg, #aa6600, #ffcc00);
	background: -ms-linear-gradient(90deg, #aa6600, #ffcc00);
	font-size:1em;
}
.mnav__menu__item{
	display: flex;
	flex-direction: column;
	padding:10px;
	border-bottom: solid 1px #cc9933;
}
.mnav__menu__item__link{
	font-size: 1em;
	padding: 10px;
	color: #666666;
}

.hero {
	width: 100%;
	height: auto;
	margin: 70px auto 5% auto;
	padding: 0;
	display: block;
	text-align: center;
}

.hero img{width: 100%; vertical-align: bottom;}

.login2 {
display:none;
}

.logo_item{
	width: 70%; margin: 0 auto;
}
.index__menu{
	margin: 100px 0 0 0;
	padding: 20px 0;
	border-top: 1px solid;
    border-image: linear-gradient(to right, #000 20%, #fff 50%, #000 80%);
    border-image-slice: 1;
	border-bottom: 1px solid;
    border-image: linear-gradient(to right, #000 20%, #fff 50%, #000 80%);
    border-image-slice: 1;
	width: 100%;
	text-align: center;
}
.index__menu__item{
	margin-left: 50px;
}

.index__menu__item__link{
	font-size: 16px;
	letter-spacing: 0.2em;
}

/****************************************
main_contents
*****************************************/	

/***main_section1***/
.main_section_wrap{width: 100%; margin: 0 auto;padding:0 15%; display: flex;flex-wrap:wrap;background: url("../images/tfo_main_sec1_bg.jpg") no-repeat center;background-size: cover;background-attachment: fixed;}
.main_section1{width: 100%;margin: 0 auto; display: flex;flex-wrap:wrap;background:rgba(0,0,50,.8);border-bottom-left-radius: 10px;border-bottom-right-radius: 10px;box-shadow: 0 0 8px #000033;}
.main_section_title{width: 100%; margin: 0 auto 2% auto; text-align: center;}
.main_section_title span{display: block;}
.main_section_title span.title_sub{margin: 0 auto;padding-bottom: 5px; font-size: 2em;font-weight: bold;color: #000066;}
.main_section_title span.title_main{margin: 0 auto;font-size: 2.5em;font-weight: bold;color: #ffff66;text-shadow:2px 2px 2px #000; padding: 3%;background: linear-gradient(0deg,rgb(0,0,50),rgb(0,50,150));border-top: 3px solid #ffdd00;border-bottom: 3px solid #ffdd00;line-height: 1.5em;}
.main_section_item{width: 100%; margin: 0 5%;display: flex;flex-wrap:wrap;background: rgba(255,255,255,0.9);border-radius:10px; }
.main_section_item ul.column_main{flex-basis: 100%;margin: 2%;}
.main_section_item ul.column_left{flex-basis:52%;margin: 0 1% 0 2%;}
.main_section_item ul.column_right{flex-basis: 42%;margin: 0 2% 0 1%;}
ul.column_main li.list_title{color:#003366;padding-top: 2%; font-size: 1.2em;padding-left: -5%;}
ul.column_main li.list_title:first-child{padding-top: 0;}
li{list-style: none;font-size: 1em;font-weight: normal; line-height: 2em;}
li.list_title{color:#003366;padding-top: 2%;font-size: 1.2em;border-bottom: 1px dotted #ccc;}
li.list_title:first-child{padding-top: 0;}
ul.column_main li.list_txt,li.list_txt{padding-left: 2%;}
ul.column_main li.sub_txt{font-size:.8em;font-weight: normal;line-height: 1em; color:#555;padding-left: 2%;}
.main_section_item li.sub_txt{font-size:1em;font-weight: normal;line-height: 1em; color:#555;padding-left: 2%;}
.gate_section{width: 92%; margin: 2% auto;display: flex;flex-wrap:wrap;justify-content: center; background:url("../images/pattern.png");border-radius:15px;}
.dealer_btn{flex-basis:100%;color:#ffff66;margin:3% auto; z-index: 1;}
.dealer_btn img{width:70%;height:auto;display: flex;margin:0 auto;}
/*ディーラーページ*/
.site-header--dealer{
	background:linear-gradient(0deg,#ffffee,#ffffcc 15%,#ccccaa 50%,#ffffcc 51%,#ffffee);
}
#dealer .main_section_wrap{width: 100%; margin: 0 auto;padding:0 15%; display: flex;flex-wrap:wrap;background: url("../images/tfo_dealer_main_sec1_bg.jpg") no-repeat center;background-size: cover;background-attachment: fixed;}
#dealer .main_section_item{width: 100%; margin: 0 5% 5% 5%;display: flex;flex-wrap:wrap;background: rgba(255,255,255,0.9);border-radius:10px; }
.main_section_item_dealer{width: 100%; margin:0 5%;padding-bottom: 5%; display: flex;flex-wrap:wrap;background: url("../images/dealer_sec1_bg.jpg") top center;background-repeat: no-repeat;background-size:auto 100%; border-radius:10px; }
#dealer .main_section1{width: 100%;margin: 0 auto; display: flex;flex-wrap:wrap;background:rgba(50,50,0,.8);border-bottom-left-radius: 10px;border-bottom-right-radius: 10px;box-shadow: 0 0 8px #000033;}
#dealer .main_section2{width: 100%;margin: 2% auto; display: flex;flex-wrap:wrap;background:rgb(255,255,255);border-radius: 10px;box-shadow: 0 0 8px #000033;border: 8px solid #b8860b;}
.main_section_item_dealer ul.column_main_dealer{flex-basis: 100%;margin: 2%;}
.main_section_item_dealer ul.column_left_dealer{flex-basis:47%;margin: 0 1% 0 2%;}
.main_section_item_dealer ul.column_right_dealer{flex-basis:47%;margin: 0 2% 0 1%;}
.main_section_item_dealer li{padding: 1% 0;list-style: none;font-size: 1.3em;font-weight: normal;text-align: center;line-height: 2em;background:rgba(255,255,255,.8);}
.main_section_item_dealer li.list_title_dealer{color:#fff; font-size: 1.2em;padding-left: -5%;background:rgba(0,0,100,.8);border: none;}
.main_section_item_dealer li.list_txt_dealer{margin-bottom: 1%;}
.main_section_item_dealer span.sub_txt_dealer{margin: 0 auto;display:flex;justify-content: center;font-size:.8em;font-weight: normal;}
.dealer_dl_section{width: 90%; margin: 2% auto;display: flex;flex-wrap:wrap;justify-content: center; background:url("../images/pattern.png");border-radius:15px;}
.dealer_dl_section_title{flex-basis: 100%;font-size: 1.5em;font-weight: 600;color:#FFFF00;margin: 2% auto 0 auto;text-align: center;text-shadow: 2px 2px 2px #333;}
ul.dealer_dl_section_list{width: 100%; margin: 2% auto;display: flex;flex-wrap:wrap;justify-content: center;}
ul.dealer_dl_section_list li{flex-basis: 44%;margin:1%; padding:1%; background:url("../images/dealer_dl_section_list_bg_hover.jpg") top center;background-size: 100%; border-radius:15px;box-shadow: 2px 2px 2px #333;text-align: center;transition:box-shadow .1s, transform .1s;}
ul.dealer_dl_section_list li:hover{background:url("../images/dealer_dl_section_list_bg.jpg") top center;background-size: 100%;transition-duration: .1s;transform: translateY(1px)}
ul.dealer_dl_section_list li:active{background:url("../images/dealer_dl_section_list_bg.jpg") top center;background-size: 100%;transition-duration: .1s;transform: translateY(2px)}
ul.dealer_dl_section_list li a{color:#003366;text-shadow:0px 0px 5px #fff; font-weight: 600;}
.contents_caption {
	width:100%;
	background:linear-gradient(90deg,rgb(0,100,200),rgb(0,150,255));
	line-height: 1.4;
	padding: 3%;
	margin:0 auto;
	display: flex;
	justify-content: center;
}
.contents_caption_txt{
	position: relative;
	color: #ffff66;
	font-size: 1.8em;
	font-weight: 600;
	text-shadow: 3px 3px 3px #003366;
}
.contents_caption_txt2{
	position: relative;
	color: #ffff66;
	font-size: 1.5em;
	font-weight: 600;
	text-shadow: 3px 3px 3px #003366;
}
.contents_caption_txt2:before,.contents_caption_txt:before {
	font-family: "Font Awesome 5 Free";
	content: "\f14a";
	position: absolute;
	display: inline-block;
	margin-left: -1.3em;
	line-height: 1.3em;
}
dl.contens_dl{margin:5% 10% 0 10%;}
dl.contens_dl dt{border-left:10px solid rgb(0,100,200);border-bottom: 1px double rgb(0,100,200); padding:0 0 1% 1.5em;position: relative;color: rgb(0,70,100);font-size: 120%;font-weight: 600;}
dl.contens_dl dt:before{content: "\025c7"; position: absolute;top:0; left:.5%;}
dl.contens_dl dd{border: none;margin-bottom: 5%;}
dl.contens_dl2{width:100%;margin:5% 10%;padding: 2%;display:flex;flex-wrap: wrap;background: #eee;border-radius: 15px;border: 1px solid #ccc;box-shadow: 2px 2px 2px #ccc;}
dl.contens_dl2 dt.caption{flex-basis: 50%;display: block; border: none;margin:-5% 10% 1% 0;padding: 1%; background: #006699;color:white;font-size: 120%;font-weight: 600;letter-spacing: .3em;border-radius: 10px;}
dl.contens_dl2 dt.center{flex-basis: 100%;border: none;margin:0;}
dl.contens_dl2 dd.list{flex-basis: 45%;margin: 1% ;position: relative;padding-left: 1em;color:#006699;}
dl.contens_dl2 dd.list:before{content:"\02022";display: inline-block;position: absolute;margin: 0; top:0;left:0;}
ul.column_dealer_main{flex-basis: 80%;margin:5% 10%;}
ul.column_dealer_left{flex-basis:49%;margin: 0 1% 0 10%;}
ul.column_dealer_right{flex-basis: 39%;margin: 0 0 0 1%;}
/*ディーラーページ*/

/*event_app*/
#event_app dl{width: 100%;background: #fff; padding: 2%;display: flex;flex-wrap: wrap;}
#event_app dl.dl1 {margin-top: -5%;}
#event_app dt.dt_title{flex-basis: 100%;text-align: center;font-size: 150%;font-weight: 600; line-height: 2em;margin-top: 5%;border: 3px double #ff6633;padding: 1% 0;}
#event_app dt.dt_subtitle{flex-basis: 100%;font-size: 120%;font-weight: 600;margin-top: 5%;margin-bottom: 1%;padding-bottom: 1%; border-bottom: 1px dotted #666;}
#event_app dt,dd {width: 100%;}
#event_app dd {border: none;line-height: 2em;}
#event_app dd.dd_txt {border-bottom: 1px dotted #ccc;}
#event_app dd.dd1{flex-basis:100%;padding: 1% 0 1% 2%;color:#FFFFFF;background: #003366}
#event_app dd.dd2{flex-basis: 100%;padding-left: 2%;}
#event_app span.dd_subtxt{font-size:90%;color: #666;display:flex;}
.dd_txt_bold{font-size: 120%;text-decoration: underline;font-weight: 600;}
/****ボタン２列配置用
.visitor_btn{flex-basis: 44%; text-align: center;color:#ffff66;margin: 2%; padding:1%;border-radius:50px;background:linear-gradient(0deg,#990000,#ff3333);z-index: 1;box-shadow: 2px 2px 2px #666}
.dealer_btn{flex-basis: 44%;text-align: center;color:#ffff66;margin: 2%;padding:1%;border-radius:50px;background:linear-gradient(0deg,#003366,#0099cc);z-index: 1;box-shadow: 2px 2px 2px #666;display: flex;}
***/


/***main_section2***/
.main_section2{width: 100%;margin: 2% auto; display: flex;flex-wrap:wrap;background:rgb(255,255,255);border-radius: 10px;box-shadow: 0 0 8px #000033;border: 8px solid rgba(0,0,50,0.8);}
.main_section2 ul.column_main{flex-basis: 100%;margin: 2%;}
.main_section2 ul.column_left{flex-basis:52%;margin: 0 1% 0 2%;}
.main_section2 ul.column_right{flex-basis: 42%;margin: 0 2% 0 1%;}
.main_section_txt{width: 100%; margin: 0 auto;padding: 2% 10%;text-indent: 1.2em;font-size: 1em;font-weight:normal; line-height: 2em;}
.reg_btn{width:70%;margin: 5% auto;display: flex;justify-content: center;}
.reg_btn img{width:100%;height: auto;}

div.main_sec2_list_wrap{width:100%;margin:2%;padding: 1%;background: linear-gradient(0deg,rgb(240,240,240),rgb(255,255,255));border:1px solid #ccc;border-radius:5px;display: flex;flex-wrap: wrap;box-shadow: 2px 2px 2px #333}
div.main_sec2_list_wrap2{width:100%;margin:2%;padding: 1%;background: linear-gradient(0deg,rgb(210,210,155),rgb(255,255,200));border:1px solid #ccc;border-radius:5px;display: flex;flex-wrap: wrap;box-shadow: 2px 2px 2px #333}
ul.main_sec2_list{flex-basis:63%;margin:0 auto;padding-right: 2%;}
ul.main_sec2_list li.style1{list-style:none;color: #333;margin: 1% auto;padding-left: 1em;letter-spacing: 0;border-bottom: 1px dotted #ccc;font-size: 1em;font-weight: normal;position: relative;}
ul.main_sec2_list li.style1:before{content: "\02610";padding-right:1%;box-sizing: border-box;display: flex;position: absolute;top: 0;left: 0;}
ul.main_sec2_list li.style2{list-style:none;color: #cc0000;margin: 1% auto;padding-left: 1em;letter-spacing: 0;border-bottom: 1px dotted #ccc;font-size: 1em;font-weight: normal;position: relative;}
ul.main_sec2_list li.style2:before{content: "\02611";padding-right:1%;box-sizing: border-box;display: flex; position: absolute;top: 0;left: 0;}
ul.main_sec2_list_img{flex-basis: 35%;margin:auto;align-self: center;}
ul.main_sec2_list_img img{width: 100%;height: auto;border-radius:5px;border: 1px solid #ccc;box-shadow: 2px 2px 2px #ccc}

ul.main_sec3_list{width: 80%;list-style: none;margin:2% auto;padding: 2%;background: linear-gradient(0deg,rgb(240,240,240),rgb(255,255,255));-ms-background: linear-gradient(0deg,rgb(240,240,240),rgb(255,255,255));border:1px solid #ccc;border-radius:5px;}
ul.main_sec3_list li {font-size: 1em;line-height: 1.5;margin: 3% auto; color: #006699;position: relative;letter-spacing: 0;border-bottom: 1px dotted #ccc;font-weight: normal;}

div.main_sec3_list2_wrap{width: 80%;margin: 2% auto; display: flex;flex-wrap: wrap;justify-content: center; background: linear-gradient(0deg,rgb(240,240,240),rgb(255,255,255));border:1px solid #ccc;border-radius:5px;}
ul.main_sec3_list2{flex-basis: 56%;list-style: none;margin:0 auto;padding: 2%;}
ul.main_sec3_list2 li {font-size: 1em;line-height: 1.5;margin: 5% auto;color: #006699;position: relative;letter-spacing: .5em;border-bottom: 1px dotted #ccc;font-weight: normal;}

ul.main_sec3_list2_img{flex-basis: 38%;margin:2% auto;padding-right: 2%; align-self: center;text-align: right;}
ul.main_sec3_list2_img img{width: 98%;height:auto;border-radius:5px;}

dl.main_sec3_list{width: 90%;counter-reset: my-counter;list-style: none;margin:2% auto;padding:0 2%;background: linear-gradient(0deg,rgb(240,240,240),rgb(255,255,255));border:1px solid #ccc;border-radius:5px;}
dl.main_sec3_list dt,dd {line-height: 1.5;margin: 1% auto;padding-bottom: 1%;color: #333;position: relative;letter-spacing: .5em;border-bottom: 1px dotted #ccc;font-weight: normal;}
dl.main_sec3_list dt{font-size: 1em}
dl.main_sec3_list dd{font-size: 1em;position: relative;padding-left:3%;}
dl.main_sec3_list dd:last-child{border: none;}
dl.main_sec3_list dd:before {content: "\0203B";box-sizing: border-box;position: absolute;top: 0;left: 0;vertical-align:top;display:inline-block;width:100px;height:100px;}

.main_sec3_registration_wrap{width:100%;margin:5%;padding: 0;display: flex;flex-wrap: wrap;background-image: url("../images/pattern.png");border-radius:15px;box-shadow: 2px 5px 5px #ccc;}
.main_sec3_registration_title{flex-basis: 80%; margin:2% auto;padding-bottom: 2%; display: flex;justify-content:center;font-size: 2em;font-weight: bold;color: #4169e1;border-bottom: double 10px #003366;}
.main_sec3_registration_txt{flex-basis: 100%;margin:2% auto;padding: 0 2%; display: block;font-size: 1.5em;font-weight: bold;color: #006699;text-align: center;line-height: 2em;}
.registration_btn_area{flex-basis: 100%;display: flex;flex-wrap: wrap;margin:2% auto;}
.registration_btn_area span{flex-basis: 38%;display: flex;margin:2% auto;font-size: 2em;font-weight: bold;color: #ff0000;align-self: center;justify-content: flex-end;}
.registration_btn_area span.arrow{
	flex-basis: 2%;
	position: relative;
    display: inline-block;
    padding: 0 0 0 16px;
    color: #000;
    vertical-align: middle;
    text-decoration: none;
    font-size: 15px;}
.arrow::before,
.arrow::after{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.registration_btn_area span.arrow:before{
    left: 15px;
    box-sizing: border-box;
    width: 15px;
    height: 15px;
    border: 15px solid transparent;
    border-left: 15px solid #ff0000;
}
.registration_btn_area span.arrow:after{
    left: 0;
    width: 20px;
    height: 15px;
    border-left: 15px solid #ff0000;
}
.registration_btn_area a{flex-basis: 58%;display: flex;margin:2% auto;}
.registration_btn{flex-basis:90%;display: flex;margin: auto; padding:2% 1%;justify-content: center;-ms-background:#fff; background: linear-gradient(#ff0000,#990000);color:white;font-size: 1.5em;font-weight: bold;border-radius:50px;letter-spacing: .3em;}
.registration_btn:hover{-ms-background:#fff;background: linear-gradient(#ff6666,#cc0000);}

.main_sec3_footer{width:100%;min-height: 0%; margin: 5% auto 0 auto; padding:0;}
.main_sec3_footer img{width:100%;height:auto;vertical-align: bottom;border-bottom-left-radius:10px;border-bottom-right-radius:10px;}
.tiket_wrap{width:80%;margin: 2% auto; border: 1px dotted #666;border-radius:15px;background: url("../images/pattern.png")}

.pt3_icon1{position: relative;  width: 75%; margin:5% 10% 0 auto;}
.pt3_icon1:before{position:absolute;content:"";top:0;bottom:0;left:-110px;margin:0 auto;background-image:url("../images/pt3_icon1.jpg");background-size:contain;vertical-align:top;display:inline-block;width:100px;height:100px;}

.pt3_icon2{position: relative;  width: 75%; margin:5% 10% 5% auto;}
.pt3_icon2:before{position:absolute;content:"";top:0;bottom:0;left:-110px;margin:0 auto;background-image:url("../images/pt3_icon2.jpg");background-size:contain;vertical-align:top;display:inline-block;width:100px;height:100px;}

.pt3_icon3{position: relative;  width: 75%; margin:5% 10% 0 auto;}
.pt3_icon3:before{position:absolute;content:"";top:0;bottom:0;left:-110px;margin:0 auto;background-image:url("../images/pt3_icon3.jpg");background-size:contain;vertical-align:top;display:inline-block;width:100px;height:100px;}

/***　画像配置の指定　共通　***/
.gate_section_img{flex-basis: 100%; margin: 0 auto;display: flex;margin-top: -30%; padding-left: 20%;}
.gate_section_img img{height:100%;}
.img_area_sec1{flex-basis: 95%;margin: 0 auto;}
.img_area_sec1 img{width:100%;height: auto;}
.img_area_sec2{flex-basis: 100%;margin: 0 2%;}
.img_area_sec2 img{width:100%;height: auto;border-radius:5px;box-shadow: 2px 2px 2px #666;}
.img_area{width:70%;margin: 0 auto;}
.img_area img{width:100%;height: auto;border-radius:5px;box-shadow: 2px 2px 2px #666; }
.img_area2{width:80%;margin: 0 auto;}
.img_area2 img{width:100%;height: auto;padding: 3%;-ms-background:#fff;background: linear-gradient(0deg,rgb(240,240,240),rgb(255,255,255));border:1px solid #ccc;border-radius:5px; }
.img_area3{width:80%;margin: 0 auto;}
.img_area3 img{width:100%;height: auto;border-radius:5px; }
.img_area4{width:80%;margin: 0 auto;}
.img_area4 img{width:100%;height: auto;border-radius:5px;box-shadow: 2px 2px 2px #666;border:1px solid #ccc; }
.img_area5{width:50%;margin: 0 auto;}
.img_area5 img{width:100%;height: auto;border-radius:5px;box-shadow: 2px 2px 2px #666; }
.main_section_item ul.column_right img{width: 100%; height: auto;border-radius:5px;box-shadow: 2px 2px 2px #666;}
.main_section2 ul.column_right img{width: 100%; height: auto;border-radius:5px;box-shadow: 2px 2px 2px #666;}
.arrow1{margin: 2% auto 0 auto;text-align: center;}
.step_title{width:95%;margin: 5% auto 0 auto;}
.step_title img{width:100%;height: auto;margin: 0 auto;}
.ticket_title{width:80%;margin: 2% auto;}
.ticket_title img{width:96%;height: auto;margin: 2%;}

/***　文字装飾　共通　***/
.txt1{font-size: 2em;display: block;margin: auto;align-self:center;}
.txt2{font-size: 1.5em;}
.txt3{font-size: 120%;font-weight: bold;}
.text_midashi1{font-size: 180%; font-weight:bold;width:100%;margin: 5% auto;display: flex;justify-content: center;flex-wrap: wrap;}
.text_center{text-align: center;}
.red{color:#ff0000;}
.blue{color:#006699;}
.darkblue{color:#000066;}
.main_section_txt_border_top1{width: 100%; margin: 0 auto;padding: 2% 10%;text-indent: 1em;font-size: 1em;font-weight:normal; line-height: 2em;border-top:1px dotted #999;}
.expiration_date_title{padding: 5% 0;letter-spacing: 1em;color:#006699;font-weight:bold;font-size: 30px;display: flex;justify-content: center;}
/***リストの飾りマーク***/
.count1,.count2,.count3,.count4,.count5,.count6,.count7,.count8,.count9{font-size: 1em;position: relative;padding-left:1.5em;}
.count1:before{content:"\02460";box-sizing: border-box;display: inline-block;margin: 0;position: absolute;top: 0;left: 0;}
.count2:before{content:"\02461";box-sizing: border-box;display: inline-block;margin: 0;position: absolute;top: 0;left: 0;}
.count3:before{content:"\02462";box-sizing: border-box;display: inline-block;margin: 0;position: absolute;top: 0;left: 0;}
.count4:before{content:"\02463";box-sizing: border-box;display: inline-block;margin: 0;position: absolute;top: 0;left: 0;}
.count5:before{content:"\02464";box-sizing: border-box;display: inline-block;margin: 0;position: absolute;top: 0;left: 0;}
.count6:before{content:"\02465";box-sizing: border-box;display: inline-block;margin: 0;position: absolute;top: 0;left: 0;}
.count7:before{content:"\02466";box-sizing: border-box;display: inline-block;margin: 0;position: absolute;top: 0;left: 0;}
.count8:before{content:"\02467";box-sizing: border-box;display: inline-block;margin: 0;position: absolute;top: 0;left: 0;}
.count9:before{content:"\02468";box-sizing: border-box;display: inline-block;margin: 0;position: absolute;top: 0;left: 0;}
.clock {
	font-size: 30px;
	position: relative;
	width: 30px;
	height: 30px;
	border: 3px solid #39a9d6;
	border-radius: 100%;
	display:inline-flex;
	margin:0 20px 0 0;
	padding: 0;
	align-content:flex-start;
	box-sizing: border-box;
}
/* 長針 */
.clock::before {
	content: "";
	position: absolute;
	top: 0.1em;
	left: 0.35em;
	width: 0.1em;
	height: 0.4em;
	background-color: #39a9d6;
}
/* 短針 */
.clock::after {
	content: "";
	position: absolute;
	top: 0.4em;
	left: 0.35em;
	width: 0.35em;
	height: 0.1em;
	background-color: #39a9d6;
}
/****************************************
footer
*****************************************/

/* More info */
.copyright {
	text-align: center;
	padding-top: 20px;
	padding-bottom: 20px;
	background-color: #000;
	color: #FFFFFF;
	text-transform: uppercase;
	font-weight: lighter;
	letter-spacing: 2px;
	border-top-width: 2px;
}
.footer_banner {
	background-color:#006699;
	padding-top: 60px;
	padding-bottom: 60PX;
	margin-bottom: 0px;
	background-repeat: repeat;
}

.hidden {
	display: none;
}

/*scroll_buttom*/
.demo a {
  position: absolute;
  bottom: 20px;
  left: 50%;
  z-index: 2;
  display: inline-block;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  color: #000;
  font : normal 400 20px/1 'Josefin Sans', sans-serif;
  letter-spacing: .1em;
  text-decoration: none;
  transition: opacity .3s;
}
.demo a:hover {
  opacity: .5;
}
#section01 a {
  padding-top: 60px;
}
#section01 a span {
  position: absolute;
  top: 0;
  left: 50%;
  width: 24px;
  height: 24px;
  margin-left: -12px;
  border-left: 1px solid #000;
  border-bottom: 1px solid #000;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  box-sizing: border-box;
}

/*topに戻るボタン*/
 .pagetop{
	 width: 40px;
	 height: 40px;
	 position:fixed;
	 right: 1vw;
	 bottom: 2vh;
	 opacity: 0.6;
	 background: #fff;
}
.pagetop a{
	position: relative;
	display: block;
	width: 20px;
	height: 20px;
	margin: 15px 0 0 10px;
	text-decoration: none;
	border-right: 3px solid #000;
	border-top: 3px solid #000;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	box-sizing: border-box;
}
/*ボタンリンク無効*/
.no_link{
	pointer-events:none;
}

/****************************************
tablet_1280
*****************************************/
@media screen and (max-width:1280px) { 	
.site-logo img{width:80%;}
.site-logo a{font-size:1em;}
.site-logo {margin-top: 0;}
.gnav__menu__item__link{font-size: .8em;}
.logo_item {
	width: 100%; margin: 0 auto; display: inline-block; text-align: center;
}
.logo_item1 {
	height: 200px; margin: 0; padding-right: 100px;
}
.logo_item2 {
	height: 198px; margin: 0; padding-left: 100px;
}
.logo_item img{
	display: inline-block; vertical-align: top; margin-bottom: 30px;
}
.index__menu{
	margin: 0;
	padding: 20px 0;
	border-top: 1px solid;
    border-image: linear-gradient(to right, #000 20%, #fff 50%, #000 80%);
    border-image-slice: 1;
	border-bottom: 1px solid;
    border-image: linear-gradient(to right, #000 20%, #fff 50%, #000 80%);
    border-image-slice: 1;
	width: 100%;
	text-align: center;
}
.index__menu__item{
	margin: 0 20px;
}

.index__menu__item__link{
	font-size: 1em;
	letter-spacing: 0.2em;
}
.contents_caption_txt{	font-size: 1.2em;}
.contents_caption_txt2{font-size: 1em;}
}
/****************************************
tablet max-width:854px
*****************************************/
@media screen and (max-width:854px) {
	.main_section_wrap{padding:0;}
	#dealer .main_section_wrap{padding:0;}
	.txt1{font-size: 1.5em;}
	.txt2{font-size: 1em;}
	.login {display:none;}
	.login2 {display:flex;}
	.main_section_txt{padding: 2% 5%;}
	.main_section_txt_border_top1{padding: 2% 5%;}
	ul.main_sec3_list{width: 90%;}
	ul.main_sec3_list2{width: 90%;}
	.reg_btn{width:70%;margin: 0 auto;}
	ul.main_sec2_list{flex-basis:100%;padding-right: 0;}
	ul.main_sec2_list li.style1{font-size: 1em;}
	ul.main_sec2_list li.style2{font-size: 1em;}
	ul.main_sec2_list_img{flex-basis: 100%;}
	.tiket_wrap{width:90%;}
	.main_sec3_registration_title{flex-basis: 90%;font-size: 1.5em;}
	.main_sec3_registration_txt{font-size: 1em;}
	.registration_btn_area span{font-size: 1.5em;}
	.registration_btn{font-size: 1.2em;}
	.img_area4{width:90%;}
	.main_section_item ul.column_left{flex-basis:100%;margin: 0;}
	.main_section_item ul.column_right{flex-basis: 100%;margin: 0;}
	.main_section2 ul.column_left{flex-basis:100%;margin: 0 2%;}
	.main_section2 ul.column_right{flex-basis: 100%;margin: 0 2%;}
	
	.dealer_dl_section_title{font-size: 1.2em;}
	.main_section_item_dealer li{font-size: 1em;}
	.main_section_item_dealer li.list_title_dealer{font-size: 1em;}
	ul.dealer_dl_section_list li{flex-basis: 90%;}
	.contents_caption_txt{font-size: 1em;}
	.contents_caption_txt2{font-size: .9em;}
	.contents_caption_txt:before,.contents_caption_txt2:before{content: none;margin-left:0;}
	.main_section_item_dealer ul.column_left_dealer{flex-basis:100%;margin:0 2% 1% 2%;}
	.main_section_item_dealer ul.column_right_dealer{flex-basis:100%;margin:0 2%;}
	dl.contens_dl{margin:5% 5% 0 5%;}
	dl.contens_dl dt{border-left:5px solid rgb(0,100,200);font-size: 100%;}
	dl.contens_dl2{margin:5% 5% 0 5%;}
	dl.contens_dl2 dt.caption{flex-basis: 100%;margin: -6% auto 2% auto;text-align: center;}
	dl.contens_dl2 dd.list{flex-basis: 95%;}
	ul.column_dealer_main{flex-basis: 90%;margin:5%;}
	ul.column_dealer_left{flex-basis:95%;margin-left: 5%;}
	ul.column_dealer_right{flex-basis: 60%;margin: 10% auto 0 auto;}
	.expiration_date_title{font-size: 120%;}
	}
/****************************************
mobile max-width:480px
*****************************************/
@media screen and (max-width:480px) {
.main_section_wrap{background:none} /*PC用の背景はオフ*/
body::before {
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  z-index:-1;
  width:100%;
  height:100vh;
  background:url(../images/tfo_main_sec1_bg.jpg) center/cover no-repeat; /*fixedをトル！*/
  -webkit-background-size:cover;/*Android4*/
  }
#dealer .main_section_wrap{background:none} /*PC用の背景はオフ*/
body#dealer::before {
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  z-index:-1;
  width:100%;
  height:100vh;
  background:url(../images/tfo_dealer_main_sec1_bg.jpg) center/cover no-repeat; /*fixedをトル！*/
  -webkit-background-size:cover;/*Android4*/
  }
.logo_item {width: 100%; margin: 0 auto; display: inline-block; text-align: center;}
.logo_item1 {
	width: auto;
	height:120px;
	padding-right: 3em;
}
.logo_item2 {
	width: auto;
	height:118px;
	padding: 0;
}
.logo_item img{
	display: inline-block; vertical-align: top; margin:50px 0;
}
.index__menu{
	margin: 20px 0;
	padding: 20px 0;
	border-top: 1px solid;
    border-image: linear-gradient(to right, #000 20%, #fff 50%, #000 80%);
    border-image-slice: 1;
	border-bottom: 1px solid;
    border-image: linear-gradient(to right, #000 20%, #fff 50%, #000 80%);
    border-image-slice: 1;
	width: 100%;
	text-align: center;
	display: flex;
    flex-direction: column;
}
.index__menu__item{
	margin: 20px 0;
}

.index__menu__item__link{
	font-size: 16px;
	letter-spacing: 0.2em;
}
.gate_section{width: 90%;}
.dealer_btn{flex-basis: 92%;margin: 2%;padding:2%;border-radius:20px;}
.reg_btn{width:90%;margin: 0 auto;}
.reg_btn img{width:80%;height: auto;margin: 5% auto;display: flex;}
.txt1{font-size: 1em;}
.txt2{font-size: 1em;}
.txt3{font-size: 1em;}
.text_midashi1{font-size: 80%;display: flex;flex-direction: column;}
.pt3_icon1{width: 90%;margin: auto;}
.pt3_icon1:before{background-image:none;}
.pt3_icon2{width: 90%;margin: auto;}
.pt3_icon2:before{background-image:none;}
.pt3_icon3{width: 90%;margin: auto;}
.pt3_icon3:before{background-image:none;}
.img_area2{width:90%;margin: 0 auto;}
.img_area3{width:90%;margin: 0 auto;}
div.main_sec3_list2_wrap{width: 90%;}
ul.main_sec3_list2{flex-basis: 100%;}
ul.main_sec3_list2_img{flex-basis: 90%;margin:2% auto;padding-right: 0; align-self: center;text-align: center;}
ul.main_sec3_list2_img img{width: 100%;height:auto;border-radius:5px;}
.ticket_title{width:90%;margin: 2% auto;}
.main_sec3_registration_title{flex-basis: 90%;font-size: 1em;}
.main_sec3_registration_txt{font-size: .8em;}
.registration_btn_area span{font-size: 1em;flex-basis: 100%;justify-content: center;}
.registration_btn_area span.arrow{display: none;}
.registration_btn_area a{flex-basis: 100%;display: flex;margin:2% auto;}
.registration_btn{padding: 3% 0;font-size: 1em;}
ul.main_sec2_list li.style1{font-size: 1em;}
ul.main_sec2_list li.style2{font-size: 1em;}
dl.main_sec3_list dt,dl.main_sec3_list dd {font-size: 1em;}
.copyright{font-size: .7em;}
.arrow1 img{width:50%;}
.count1,.count2,.count3,.count4,.count5,.count6,.count7,.count8,.count9{padding-left:1.5em;}
dl.main_sec3_list dd{padding-left:1.5em;}
}