body{-webkit-text-size-adjust: 100%;-webkit-overflow-scrolling: touch;}
body.fixed{
	position: fixed;
}
body,
#wrapper{
	width: 100%;
	height: auto;
	font-size: 16px;
	color: #333;
	font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}
input:autofill {
	box-shadow: 0 0 0px 1000px white inset;
}
input:-webkit-autofill {
-webkit-box-shadow: 0 0 0px 1000px white inset;
}
img{width:100%; height:auto;}
.clear{clear: both;}
a{display: block;}
.left{text-align: left; display: inline-block;width: 100%;}
.center{text-align: center; display: inline-block;width: 100%;}
.right{text-align: right; display: inline-block;width: 100%;}
.mid{font-size: 22px;}
.small{font-size: 20px;}
.sp_none{display: none;}
.section{
	width: 100%;
	height: auto;
	padding: 40px 0;
	text-align: center;
	position: relative;
	background: #fff;
}
@font-face{
	font-family:"Cotillion Regular";
	src:url("font/COTILLIO.eot?") format("eot"),
		url("font/COTILLIO.woff") format("woff"),
		url("font/COTILLIO.ttf") format("truetype"),
		url("font/COTILLIO.svg#Cotillion") format("svg");
	font-weight:normal;font-style:normal;
}
@font-face{
	font-family:"Allura";
	src:url("font/Allura-Regular.otf");
	font-weight:normal;font-style:normal;
}
.container{
	width: 100%;
	padding: 0 20px;
}
#page_top,
#archive_works_top,
#taxonomy_works_top,
#taxonomy_contents_top,
#single_works_top,
#archive_contents_top,
#archive_works_top{
	padding:0;
	width: 100%;
	height: 300px;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	background: transparent;
}
.title{
	color: rgb(160, 14, 21);
	font-family: 'Londrina Solid',"Rounded Mplus 1c", cursive;
	margin-top: 20px;
	text-shadow: 1px 1px 1px #fff;

}
.title h1{
	font-size: 56px;
	letter-spacing: 10px;
	font-weight: bold;
}
.subtitle{
	font-size: 26px;
	font-weight: bold;
	padding-bottom: 30px;
	position:relative;
}
.subtitle span{
	display: inline-block;
	position: relative;
	color: rgb(160, 14, 21);
}
h3{
	font-weight: bold;
	font-size:20px;
	margin-bottom: 20px;
}
.links a{
	margin-top: 40px;
	font-weight: bold;
	color: #fff;
	position: relative;
	display: inline-block;
	padding: 20px 40px;
	background: #333;
}
/*------------------------------ top ------------------------------*/
/* ---------------- cacthphrase ---------------- */
#cacthphrase.section{
	padding: 60px 0 40px;
}
.cacthphrase_box{
	font-size: 16px;
	margin: 0 auto;
	text-align: justify;
	line-height: 2;
	max-width: 880px;
}
.cacthphrase_box p{
	margin-bottom: 32px;
}
.cacthphrase_box p:last-child{
	margin-bottom: 0;
}
/* ---------------- cacthphrase ---------------- */

/* ---------------- top-SERVICE ---------------- */
#sevice{
	background: none;
	padding: 80px 0;
}
#sevice .subtitle{
	padding: 0;
}
.graphic h3{
	margin-left: -10px;
}
.service_wrap{
	background: #fff;
	margin:0 auto;
	padding:50px 0;
}
.service_contents{
	margin-top:-3px;
	padding: 50px 20px 20px;
}
.service_contents > div:not(.links){
	margin-bottom:40px;
}
.service_text{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.service_text p{
	text-align: center;
	flex-basis: 50%;
	margin-bottom:15px;
	font-size: 14px;
}
.owned_service{
	width: 92%;
	margin: 0 auto;
}
.owned_service img{
	width: 100%;
	height: auto;
}
.owned_service > div{
	margin-top: 30px;
}
#sevice .links a{
	width: 92%;
}
/* ---------------- top-SERVICE ---------------- */

/* ---------------- top-WORKS ---------------- */
#works .container{
	padding: 0;
}
div.works_wrap{
	width: 100vw;
	height: 295px;
	overflow-x: scroll;
	position: relative;
}
div.slide_wrap{
	position: absolute;
	top: 0;
}
div.slide_wrap:nth-of-type(1){
	left: 0;
}
div.slide_wrap:nth-of-type(2){
}
div.slide_wrap:nth-of-type(3){
}
figure.works_item{
	float: left;
	color: #fff;
	position: relative;
	margin: 10px;
	width: 275px;
}
figure.works_item *{
	color: #333;
}
figure.works_item > a{
	width: 275px;
}
figure.works_item img{
	height: 100%;
	vertical-align: bottom;
	width: 275px;
}
figure.works_item h3{
	font-weight: bold;
	font-size: 18px;
	margin: 0;
	position: absolute;
	top:  0;
	text-align: center;
	width: 100%;
	z-index: 1;
}
figure.works_item h3 a{
	display: inline-block;
	text-align: left;
}
figure.works_item figcaption{
	position: absolute;
	bottom: 20px;
	text-align: center;
	width: 275px;
	z-index: 2;
}
figure.works_item figcaption h4{
	font-weight: bold;
}
#works .links a{
	width: 75%;
}
/* ---------------- top-WORKS ---------------- */
/*------------------------------ top ------------------------------*/

/*------------------------------ POLICY ------------------------------*/
#policy h2{
	line-height: 2;
	margin-bottom: 0px;
}
#policy h2:last-of-type{
	margin-top: 30px;
}
#policy p{
	line-height: 2;
	width: 100%;
	font-size: 16px;
	text-align: justify;
}
/*------------------------------ POLICY ------------------------------*/

/*------------------------------ SERVICE ------------------------------*/
.service_box{
	width: 100%;
	align-items: center;
}
figure.service_item{
	position: relative;
	width: 100%;
	margin: 0 0 50px 0;
	text-align: justify;
	overflow: hidden;
}
figure.service_item img{
	width: 100%;
	filter: grayscale(0%);
	vertical-align: bottom;
	backface-visibility: hidden;
}
figure.service_item figcaption{
	position: absolute;
	bottom: 5%;
	right: 5%;
	width: 90%;
	height: 90%;
	padding: 5px 10px 10px;
	background: rgba(255, 255, 255, .8);
}
figure.service_item figcaption::before,
figure.service_item figcaption::after{
	height: 2px;
	position: absolute;
	content: '';
	background: rgba(255, 255, 255, .8);
}
figure.service_item figcaption::before{
	top: 0;
	left: 0;
	width: 106%;
}
figure.service_item figcaption::after{
	bottom: 0;
	right: 0;
	width: 106%;
}
figure.service_item figcaption .heading::before,
figure.service_item figcaption .heading::after{
	width: 2px;
	position: absolute;
	content: '';
	background: rgba(255, 255, 255, .8);
}
figure.service_item figcaption .heading::before{
	top: 0;
	left: 0;
	height: 107%;
}
figure.service_item figcaption .heading::after{
	bottom: 0;
	right: 0;
	height: 107%;
}
figure.service_item figcaption .heading h3{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 20%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 20px;
}
figure.service_item figcaption p{
	position: absolute;
	top: 55%;
	left: 5%;
	width: 90%;
	transform: translateY(-50%);
}
#flow{
	padding-top: 0;
	overflow-x: scroll;
}
#flow .container{
	padding: 0;
}
#flow .subtitle span::after{
	content: "制作の流れ";
	display: block;
	font-weight: normal;
	font-size: 16px;
	color: #000;
}
.flow_wrap{
	display: flex;
	justify-content: space-between;
	align-items: center;
	overflow-x: scroll;
	width: 100%;
	padding-bottom: 10px;
}
.flow_content{
	flex-basis: 200px;
}
.flow_content img{
	width: 200px;
	vertical-align: bottom;
}
.flow_arrow{
	flex-basis: 100px;
	margin: 0 10px 40px;
}
.flow_arrow img{
	transform: rotate(-90deg);
	width: 30px;
}
.flow_wrap h3{
	margin-bottom: 0;
}
/*------------------------------ SERVICE ------------------------------*/

/*------------------------------ WORKS ------------------------------*/
#taxonomy_works_top h1{
	font-size: 36px;
	font-weight: bold;
	letter-spacing: 0;
}
.cat_wrap ul{
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}
.cat_wrap .cat_links{
	flex-basis: 50%;
}
.cat_links .active,
.cat_links a{
	color: #333;
	position: relative;
	display: block;
	padding: 10px 0;
	border: 1px solid #333;
	transition: .3s all;
	white-space: nowrap;
}
.cat_wrap .cat_links:nth-of-type(3) a,
.cat_wrap .cat_links:nth-of-type(4) a{
	border-top: none;
}
.cat_wrap .cat_links:nth-of-type(2) a,
.cat_wrap .cat_links:nth-of-type(4) a{
	border-left: none;
}
.cat_links .active{
	background: #333;
	color: #fff;
}
#works_content{
	margin-top: 30px;
}
figure.works_box{
	float: left;
	overflow: hidden;
	position: relative;
	width: 50%;
	margin: 0;
	padding-bottom: 20px;
}
figure.works_box *{
	color: #333;
}
figure.works_box:nth-of-type(1),
figure.works_box:nth-of-type(6){
	width: 100%;
}
figure.works_box::after{
	content: '';
	display: block;
	position: absolute;
	bottom: 10px;
	height: 0.5px;
	width: 80%;
	background: #aaa;
	z-index: 10;
}
figure.works_box:nth-of-type(1)::after,
figure.works_box:nth-of-type(6)::after{
	width: 92%;
	left: 4%;
}
figure.works_box:nth-of-type(2)::after,
figure.works_box:nth-of-type(4)::after,
figure.works_box:nth-of-type(7)::after{
	left: 5%;
}
figure.works_box:nth-of-type(3)::after,
figure.works_box:nth-of-type(5)::after,
figure.works_box:nth-of-type(8)::after{
	right: 5%;
}
figure.works_box:nth-of-type(2)::before,
figure.works_box:nth-of-type(4)::before,
figure.works_box:nth-of-type(7)::before{
	content: '';
	display: block;
	position: absolute;
	top: 5%;
	right: 0;
	width: 0.5px;
	height: 80%;
	background: #aaa;
}
figure.works_box img{
	height: 100%;
	vertical-align: bottom;
	width: 100%;
}
figure.works_box h2{
	font-weight: bold;
	margin: 0;
	position: absolute;
	top:  0;
	text-align: center;
	width: 100%;
	z-index: 1;
}
figure.works_box:nth-of-type(1) h2 a,
figure.works_box:nth-of-type(6) h2 a{
	padding: 15px 15px 0;
	font-size: 16px;
}
figure.works_box h2 a{
	padding: 5px 15px 0;
	font-size: 14px;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
figure.works_box:nth-of-type(1) figcaption,
figure.works_box:nth-of-type(6) figcaption{
	padding: 0 15px 15px;
}
figure.works_box figcaption{
	padding: 0 15px 5px;
	position: absolute;
	bottom: 20px;
	text-align: left;
	width: 100%;
	z-index: 2;
}
figure.works_box:nth-of-type(1) figcaption h3,
figure.works_box:nth-of-type(6) figcaption h3{
	font-size: 16px;
}
figure.works_box figcaption h3{
	font-size: 14px;
	margin-bottom: 0;
	text-align: center;
}
.pagenation{
	margin-top: 40px;
}
.page-numbers{
	font-size: 10px;
	margin: 0 8px;
	padding: 10px;
	border: 1px solid #333;
	color: #333;
	font-weight: bold;
	position: relative;
	display: inline;
}
.current{
	background: #333;
	color: #FFF;
}
/*------------------------------ WORKS ------------------------------*/

/*------------------------------ WORKS-single ------------------------------*/
.work_intro{
	margin: 100px 0 40px; 
}
.catch_main{
	/* overflow: hidden; */
	display: flex;
}
.catch_main_pc{
	float: left;
	width: 74%;
	padding-right: 20px;
	position: relative;
}
.catch_main_sp{
	float: left;
	padding-top: 20px;
	position: relative;
	width: 26%;
}
.catch_pc_outer{
	position: relative;
	z-index: 10;
}
.catch_pc_inner{
	width: 87%;
	position: absolute;
	top: 5.63%;
	left: 4.4%;
	z-index: 5;
}
.catch_sp_outer{
	position: relative;
	z-index: 10;
}
.catch_sp_inner{
	width: 93%;
	margin: 0 auto;
	position: absolute;
	top: 17.5%;
	left: 4.4%;
	z-index: 5;
}


.graphic_catch_sp{
	width: 100%;
	height: auto;
	margin-top: -80px;
}
.graphic_catch_sp img{
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

#work_wrap h1{
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 0;
	margin: 40px 0 20px;
}
#work_wrap h1 span{
	text-align: left;
	display: inline-block;
}
.catch_side{
	margin: 30px 0;
}
.work_termname{
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
.work_termname > div{
	padding-bottom: 5px;
}
.term_inner,
.job_category{
	border-bottom: 1px solid #333;
	width: 48%;
	text-align: center;
}
.term_inner a{
	color: #000;
}
.work_termname .side_cat_links{
	text-align: center;
	width: 70%;
	margin: 40px auto;
}
.work_termname .side_cat_links a{
	color: #333;
	border: 1px solid #333;
	margin-bottom: 0;
	text-align: center;
	padding: 20px 0 20px 10px;
}
.main_work{
	text-align: justify;
	margin-bottom: 40px;
}
.main_work h2{
	font-size: 26px;
	font-weight: bold;
	margin-top: 40px;
	margin-bottom: 30px;
	text-align: left;
}
.main_work h2 span{
	display: inline-block;
	text-align: left;
}
.main_work h3{
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 20px;
}
.main_work p{
	letter-spacing: 2px;
	line-height: 2;
}
.main_work b,
.main_work strong{
	font-weight: bold;
}
.main_work ul,
.main_work ul li{
	list-style: inside disc;
}
.main_work ul{
	margin: 15px 0;
}
.main_work ul li{
	margin: 10px 0;
}
.main_work a{
	color: #73bfee;
	transition: .3s all;
}
.main_work blockquote{
	position: relative;
	padding: 20px;
	 font-style:  italic;
	 color: #585858;
	 border: 1px solid #333;
	 margin: 20px 0;
}
.main_work blockquote::before,
.main_work blockquote::after{
	display: inline-block;
	position: absolute;
	width: 40px;
	height: 40px;
	line-height: 40px;
	border-radius: 50%;
	vertical-align: middle;
	text-align: center;
	font-family: FontAwesome;
	background: #585858;
	color: #fff;
	font-size: 22px;
}
.main_work blockquote::before{
	top: -20px;
	left: -20px;
	content: '\f10d';
}
.main_work blockquote::after{
	bottom: -20px;
	right: -20px;
	content: "\f10e";
}
#sidebar{
	padding: 20px 0;
}
.side_cat{
	margin-bottom: 50px;
}
.side_cat h2{
	font-size: 22px;
	margin-bottom: 30px;
}
.side_cat ul{
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}
.side_cat .side_cat_links{
	flex-basis: 50%;
}
.side_cat .side_cat_links:nth-of-type(3),
.side_cat .side_cat_links:nth-of-type(4){
	margin-top: -0.5px;
}
.side_cat_links a{
	color: #aaa;
	position: relative;
	display: block;
	padding: 10px 0;
	border: 1px solid #aaa;
	transition: .3s all;
	white-space: nowrap;
	margin-right: -0.5px;
}
.side_new_work{
	margin-bottom: 40px;
}
.side_new_work h2{
	font-size: 22px;
	margin-bottom: 0px;
}
.new_work_title{
	position: relative;
	z-index: 10;
	position: absolute;
	bottom: 10%;
	width: 100%;
}
.new_work_title a{
	color: #333;
	font-size: 16px;
}
.side_work_thumb:nth-of-type(1) .new_work_title a{
	font-size: 18px;
}
.side_work_thumb{
	width: 50%;
	height: auto;
	overflow: hidden;
	position: relative;
	float: left;
}
.side_work_thumb:nth-of-type(1){
	width: 100%;
}
.side_work_thumb::before{
	content: '';
	display: block;
	padding-top: 110%;
}
.side_work_thumb:nth-of-type(1)::before{
	padding-top: 100%;
}
.side_work_thumb::after{
	content: '';
	display: block;
	height: 0.5px; 
	width: 80%;
	background: #aaa;
	position: absolute;
	bottom: 0;
	z-index: 10;
}
.side_work_thumb:nth-of-type(1)::after{
	width: 92%;
	left: 4%;
}
.side_work_thumb:nth-of-type(2)::after,
.side_work_thumb:nth-of-type(4)::after{
	left: 5%;
}
.side_work_thumb:nth-of-type(3)::after,
.side_work_thumb:nth-of-type(5)::after{
	right: 5%;
}
.side_work_thumb a{
	display: block;
}
.side_work_thumb img{
	height: auto;
	position: absolute;
	top: 46%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}
.side_work_thumb:nth-of-type(2) > a::after,
.side_work_thumb:nth-of-type(4) > a::after{
	content: '';
	display: block;
	position: absolute;
	width: 0.5px;
	height: 80%;
	top: 10%;
	right: 0;
	background: #aaa;
}
.add_space{
	width: 100%;
	height: auto;
}
.add_space .webtag{
	margin-top: 40px;
	margin-bottom: 30px;
}
.add_space .webtag img,
.add_space .meo img{
	width: 100%;
	vertical-align: bottom;
}
/*------------------------------ WORKS-single ------------------------------*/

/*------------------------------ CONTENTS ------------------------------*/
#content figure{
	margin:  0;
	padding: 0;	
}
#content figure img{
	vertical-align: bottom;
}
.contents_outer{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 40px;
}
.contents_cacth{
	width: 35%;
	height: 30vw;
	position: relative;
	overflow: hidden;
}
.contents_cacth img{
	width: auto;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.contents_box{
	width: 65%;
	height: auto;
	padding: 0 0 0 11px;
	text-align: left;
}
.inner_wrap{
	font-size: 12px;
}
.inner_wrap a{
	color: #000;
	display: inline-block;
}
.inner_wrap a:nth-of-type(2),
.inner_wrap a:nth-of-type(3){
	margin-left: 71px;
}
.contents_box h2{
	margin: 5.5px 0 0;
	font-size: 16px;
	font-weight: bold;
	overflow: hidden;
}
.contents_box h2 a{
	color: #000;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.side_contentscat{
	margin-top: 60px;
	text-align: center;
}
.side_contentscat h2{
	font-size: 22px;
	margin-bottom: 30px;
}
.side_contentscat ul{
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}
.side_contentscat ul li{
	width: 50%;
}
.side_contentscat ul li a{
	color: #333;
	position: relative;
	display: block;
	padding: 10px 0;
	border: 1px solid #333;
	border-top: none;
	white-space: nowrap;
}
.side_contentscat ul li:nth-of-type(even) a{
	border-left: none;
}
.side_contentscat ul li:nth-of-type(2) a,
.side_contentscat ul li:first-of-type a{
	border-top: 1px solid #333;
}

/*------------------------------ CONTENTS ------------------------------*/

/*------------------------------ CONTENTS single ------------------------------*/
#single_contents{
	overflow: hidden;
	text-align: left;
}
.eyecacth{
	overflow: hidden;
}
.eyecacth img{
	width: 100%;
	height: auto;
	vertical-align: bottom;
	transform: scale(1.4);
}
.single_contents_title_inner{
	margin-top: 20px;
}
.single_contents_title_inner p.time{
	font-size: 12px;
}
.single_contents_title_inner h1{
	font-size: 22px;
	letter-spacing: 0;
	margin: 5px 0;
	color: rgb(160, 14, 21);
	font-weight: bold;
}
.single_contents_title_inner p.cat{
	font-size: 14px;
}
.single_contents_title_inner p.cat span{
	display: inline-block;
	font-weight: bold;
	margin-left: 16px;
	vertical-align: top;
}
.single_contents_title_inner p.cat a{
	color: #555;
}
.cat_intro{
	margin: 10px 0;
	font-size: 12px;
}
p.contents_add{
	margin: 10px 0;
	font-size: 12px;

}
.main_content_outer article{
	margin-top: 30px;
	padding-top: 30px;
	border-top: 2px solid #eee;
}
.main_content_outer article h2{
	font-size: 20px;
	font-weight: bold;
	margin: 40px -10px 30px;
	text-align: left;
	border-left: 5px solid rgb(160, 14, 21);
	padding: 10px 10px;
	background: #eee;
}
.main_content_outer article h2 span{
	display: inline-block;
	text-align: left;
}
.main_content_outer article h3{
	font-size: 19px;
	font-weight: bold;
	margin: 20px 0;
	padding: 10px 0;
	border-bottom: 1px solid #ddd;
	border-top: 1px solid #ddd;
}
.single_contents_main article h4{
	font-weight: bold;
	font-size: 18px;
	line-height: 22px;
	margin: 20px 0;
}
.single_contents_main article h5{
	font-size: 18px;
	line-height: 22px;
	margin: 20px 0;

}
.single_contents_main article h6{
	font-size: 16px;
	font-weight: bold;
	line-height: 22px;
	margin: 20px 0;
}
.main_content_outer article p{
	letter-spacing: .5px;
	line-height: 2;
	margin: 20px 0;
}
.main_content_outer article b,
.main_content_outer article strong{
	font-weight: bold;
}
.main_content_outer article ol li{
	list-style: decimal inside;
}
.main_content_outer article ul li{
	list-style: inside disc;
}
.main_content_outer article ul,
.main_content_outer article ol{
	margin: 20px 0;
}
.main_content_outer article ul li,
.main_content_outer article ol li{
	margin: 10px 0;
}
.main_content_outer article a{
	color: #73bfee;
	transition: .3s all;
}
.main_content_outer article blockquote{
	position: relative;
	padding: 10px 15px;
	font-style:  italic;
	color: #585858;
	border: 1px solid #333;
	margin: 30px 0;
}
.main_content_outer article blockquote::before,
.main_content_outer article blockquote::after{
	display: inline-block;
	position: absolute;
	width: 30px;
	height: 30px;
	line-height: 30px;
	border-radius: 50%;
	vertical-align: middle;
	text-align: center;
	font-family: FontAwesome;
	background: #585858;
	color: #fff;
	font-size: 18px;
}
.main_content_outer article blockquote::before{
	top: -15px;
	left: -15px;
	content: '\f10d';
}
.main_content_outer article blockquote::after{
	bottom: -15px;
	right: -15px;
	content: "\f10e";
}
.single_contents_main code{
	background: #111;
	color: #fff;
	padding: 11px 33px;
	line-height: 2;
}
.single_contents_main .hljs-string,
.single_contents_main .hljs-number{
	color: #fff;
}
div#toc_container{
	margin: 40px 0;
	padding: 15px;
	font-weight: bold;
}
div#toc_container p.toc_title{
	font-size: 18px;
	padding-bottom: 10px;
	border-bottom: 3px solid #ddd;
	margin-bottom: 15px;
}
div#toc_container ul.toc_list > li{
	margin: 15px 0 10px 25px;
	list-style: decimal;
	font-size: 16px;
	color: #73cfee;
}
div#toc_container ul.toc_list > li > a{
	font-size: 16px;
}
div#toc_container ul.toc_list > li ul li{
	margin: 10px 0;
	list-style: disc;
	color: #73cfee;
}
/*------------------------------ CONTENTS single ------------------------------*/

/*------------------------------ COMPANY ------------------------------*/
.company_box{
	width: 100%;
	max-width: 450px;
	height: auto;
	margin: 20px auto 0;
}
#company table{
	width: 100%;
}
#company th,
#company td{
	padding: 15px 0;
	font-size: 14px;
	font-weight: bold;
}
#company th{
	text-align: right;
	width: 75px;
	padding-right: 15px;
	vertical-align: top;
	color: #777;
}
#company td{
	text-align: left;
	padding-left: 15px;
	color: #333;
}
.company_box li{
	margin-bottom: 5px;
}
.company_box p{
	margin-bottom: 20px;
}
.company_box p:last-child{
	margin-bottom: 0;
}
.company_box p a{
	color: #aaa;
	transition: .3s all;
}
.company_box dl{
	margin-bottom: 20px;
}
.company_box dd{
	font-weight: normal;
	margin-top: 5px;
}
/*------------------------------ COMPANY ------------------------------*/

/*------------------------------ CONTACT ------------------------------*/
.contact_guide{
	width: 100%;
	margin: 0 auto 50px;
	text-align: justify;
}
.contact_guide_box{
	margin-top: 40px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.contact_guide_box li{
	background: #ddd;
	font-weight: bold;
	padding: 20px 5px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
}
.guide_inner1{
	font-size: 14px;
	margin-left: 10px;
	height: 25px;
}
.guide_inner2{
	font-size: 16px;
	margin-right: auto;
	height: 30px;
}
.guide_inner3{
	font-size: 16px;
	margin-right: 10px;
	margin-left: 2px;
	height: 30px;
}
.contact_guide_box li.active{
	background: #999;
	color: #fff;
}
.contact_guide_box li span{
	vertical-align: middle;
}
#contact div.form_box{
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
}
.required_item{
	color: #a00e15;
}
#contact .input_box{
	width: 100%;
	margin-bottom: 55px;
}
#contact .form_box dl.textarea_box{
	width: 100%;
	padding-bottom: 0px;
	margin-bottom: 50px;
}
#contact .input_box dt,
#contact .input_box dd,
#contact .textarea_box dt,
#contact .textarea_box dd{
	float: left;
	font-size: 16px;
	color: #aaa;
	font-weight: bold;
}
#contact .input_box dt,
#contact .input_box dd{
	height: 21px;
}
#contact .form_box dl{
	border-bottom: #aaa 1px solid;
	padding-bottom: 30px;
	line-height: 1;
}
#contact .form_box dl.focus{
	border-bottom-color: #73bfee;
	transition: .3s all;
}
#contact .form_box dl.no_focus{
	border-bottom-color: #aaa;
	transition: .3s all;
}
#contact .form_box dt{
		margin-top: 7px;
	width: 120px;
	text-align: left;
}
#contact .form_box dt.focus_size{
	font-size: 1.02em;
	color: #73bfee;
	transition: .3s all;
}
#contact .form_box dt.no_focus_size{
	font-size: 14px;
	color: #aaa;
	transition: .3s all;
}
#contact .form_box dd{
	width: calc(100% - 120px);
}
#contact .form_box input,
#contact .form_box textarea{
	width: 100%;
	border: none;
	font-weight: normal;
	position: relative;
	transition: .3s all;
}
#contact .form_box textarea{
	resize: vertical;
}
.form_box input:focus, 
.form_box textarea:focus{
    outline-offset: 0px;
}
:focus {
    outline: -webkit-focus-ring-color 0px;
}
input[type="button"],input[type="text"],input[type="submit"] {
	-webkit-appearance: none;
	border-radius: 0;
}
#contact .form_box .wpcf7 input#submit,
#contact .form_box input#return,
#contact .form_box input#send{
	cursor: pointer;
	width: 300px;
	height: 80px;
	font-weight: bold;
	color: #fff;
	background: #333;
	border: 1px solid #333;
}
#contact .form_box .wpcf7 input#submit{
	width: 300px;
}
#contact .form_box input#return,
#contact .form_box input#send{
	width: 140px;
}
#contact .form_box input#return{
	margin-right: 20px;
}
.contact_policy{
	margin: 60px auto 0;
}
.contact_policy h2{
	font-size: 22px;
	font-weight: bold;
}
.scroll_area{
	margin: 30px auto 0;
	border: 1px solid #aaa;
	padding: 30px 20px;
	width: 100%;
	height: 250px;
	text-align: left;
	overflow-y: scroll;
}
.scroll_area p{
	font-size: 14px;
	line-height: 1.8;
}
.scroll_area dl{
	margin: 20px 0;
}
.scroll_area dt{
	font-weight: bold;
	font-size: 16px;
}
.scroll_area dd{
	margin-top: 5px;
	margin-left: 10px;
	font-size: 12px;
	line-height: 1.8;
}
.scroll_area ol{
	margin-top: 10px;
	margin-left: 15px;
}
.scroll_area ol li{
	list-style: decimal;
}
.thanks_btn a{
	display: block;
	width: 300px;
	height: 80px;
	line-height: 80px;
	font-weight: bold;
	transition: .3s all;
	color: #fff;
	background: #999;
	border: 1px solid #999;
	margin: 80px auto 0;
}
/*------------------------------ CONTACT ------------------------------*/

/*------------------------------ PRIVACY POLICY ------------------------------*/
.privacy_box{
	width: 100%;
	margin: 0px auto 0;
	text-align: justify;
}
.privacy_inner p{
	font-size: 16px;
	line-height: 1.8;
}
.privacy_inner dl{
	margin: 30px 0;
}
.privacy_inner dt{
	font-weight: bold;
	font-size: 18px;
}
.privacy_inner dd{
	margin-top: 20px;
	font-size: 14px;
	line-height: 1.8;
}
.privacy_inner ol{
	margin-top: 20px;
	margin-left: 25px;
}
.privacy_inner ol li{
	list-style: decimal outside;
}
/*------------------------------ PRIVACY POLICY ------------------------------*/

@media screen and (orientation:portrait) {/* 縦向き */
	.catch_pc_inner{
		width: 83.4%;
		left: 4.3%;
	}
	.catch_sp_inner{
		width: 93%;
		top: 22%;
	}
}


@media screen and (orientation:landscape) {/* 横向き */
	.catch_pc_inner{
		width: 87%;
		left: 4.1%;
		top: 5.6%;
	}
	.catch_sp_inner{
		width: 93%;
		top: 17%;
		left: 4%;
	}
	.company_box{
		margin-left: 170px;
	}

}
