/* ----------------------------------------------------------

common

---------------------------------------------------------- */
/*html {visibility:hidden}*/
html.wf-active {visibility:visible}

/*pc + sp*/
.pc   {display:block}
.tb   {display:block}
.sp   {display:none}
@media only screen and (max-width:520px) {
.pc   {display:none}
.tb   {display:none}
.sp   {display:block}
}
@media only screen and (min-width:521px) and (max-width:960px) {
.pc   {display:none}
.tb   {display:block}
.sp   {display:none}
}

div,h1,h2,h3,h4,h5,h6,p,ul,ol,li,dt,dd  {
padding:0;
margin:0;
line-height:1.8em;
box-sizing:border-box;
outline:none;
font-family:sans-serif;
}
h1,h2,h3,h4,h5,h6   {font-weight:normal;padding:0;margin:0}
ul,ul li            {list-style:none;padding:0;margin:0}
ol li  {margin-left:1.35em}
dl,dl dt,dl dd      {padding:0;margin:0}

* html .clearfix,
*+html .clearfix    {zoom:1}
.clearfix:after     {height:0;visibility:hidden;content:".";display:block;clear:both}

.center       {text-align:center}
.left         {text-align:left}
.right        {text-align:right}
.strong       {font-weight:bold}
.large        {font-size:120%}
.red          {color:#ff0000}
.green        {color:#4f8355}

a             {cursor:pointer;color:#321e21}
a:hover       {cursor:pointer}

img           {vertical-align:middle;-ms-interpolation-mode:bicubic;max-width:100%}
.img_border   {border:1px solid #dedede;box-sizing:border-box}
.alignnone,
.alignleft,
.alignright,
.aligncenter  {max-width:100%;margin:0;width:auto}
.alignnone    {margin-bottom:5px} 
.alignleft    {display:inline;float:left;margin-top:5px;margin-right:25px;margin-bottom:25px}
.alignright   {display:inline;float:right;margin-top:5px;margin-left:25px;margin-bottom:25px}
.aligncenter  {clear:both;display:block;margin-left:auto;margin-right:auto;text-align:center}
 @media only screen and (max-width:767px) {
.alignnone,
.alignleft,
.alignright,
.aligncenter  {display:block;float:none;text-align:center;margin:1em auto}
}

/*wefont*/
.tenmincho    {font-family:ten-mincho, serif;font-style:normal;font-weight:300;letter-spacing:-0.01em}
.yumincho     {font-family:"Yu Mincho", "YuMincho", serif}
@font-face    {font-family:"Yu Mincho";src:local("Yu Mincho Demibold");font-weight:500}

/* ----------------------------------------------------------

btn

---------------------------------------------------------- */
/*btn*/
.btn    {
max-width:100%;
position:relative;
text-align:center;
display:block;
border-radius:200px;
box-sizing:border-box;
text-decoration:none;
z-index:2;
transition:all 0.3s;
}

.btn_primary  {
background:url(../img/arrow1.png) no-repeat 95% 46% #dc3813;
border:1px solid #dc3813; 
color:#fff;
padding:2em 2.5em;
}

.btn_secondary  {
background:url(../img/arrow2.png) no-repeat 95% 46% #fff;
border:1px solid #dc3813;
color:#dc3813;
padding:2em 2.5em;
}

.btn_collabo  {
background:url(../img/arrow1.png) no-repeat 95% 46% #2e4f97;
border:1px solid #2e4f97; 
color:#fff;
padding:2em 2.5em;
}
@media only screen and (max-width:960px) {
}


/*
a:after,
.btn:after,
.btn:before           {position:absolute;font-family:"Font Awesome 5 Free";font-weight:900}
.btn_primary:after    {top:39.5%;right:1em;content:'\f054';color:#fff;font-size:90%;line-height:1}
.btn_secondary:after  {top:39.5%;right:1em;content:'\f054';color:#321e21;font-size:90%;line-height:1}
.btn_back:before      {top:39.5%;left:1em;content:'\f104';color:#444;font-size:90%;line-height:1}
*/


/* ----------------------------------------------------------

Table Layout

----------------------------------------------------------
.table            {width:100%;border:none!important;table-layout:fixed;padding:0;margin:0;font-size:90%;border-collapse:collapse}
.table tbody th   {padding:0.5em 1em;text-align:left;font-weight:600;width:20%!important}
.table tbody td   {padding:0.5em 1em;text-align:left}
.table_bordered tbody th  {border:5px solid #fff;background:#f7f7f7;width:20%!important}
.table_bordered tbody td  {border:5px solid #fff;background:#fff}
.table_striped tbody tr th,
.table_striped tbody tr td   {border:none}
.table_striped tbody tr:nth-child(odd) th,
.table_striped tbody tr:nth-child(odd) td  {border-bottom:5px solid #fff;border-top:5px solid #fff;background:#f7f7f7}
.table_striped tbody tr:nth-child(even) th ,
.table_striped tbody tr:nth-child(even) td {border-bottom:5px solid #fff;border-top:5px solid #fff}
@media only screen and (max-width:960px) {
.table tbody th,
.table tbody td   {display:block;width:100%!important;position:relative;margin-bottom:-1px}
.table tbody th   {padding:14px 0 0 0!important;border-bottom:1px solid #fff!important}
.table tbody td   {padding:0 0 14px 0!important;border-top:1px solid #fff!important}
} */

/* ----------------------------------------------------------

Form Layout

---------------------------------------------------------- */
input[type=text],
input[type=email],
input[type=tel],
input[type=url],
textarea  {
border:1px solid #ddd;
background:#fff;
min-height:40px;
padding:10px;
appearance:none;
border-radius:100px;
outline:0
}
input[type=submit] {
appearance:button;
box-sizing:border-box;
cursor:pointer;
}
select  {margin:0 0.12em;border-radius:6px;padding:16px;border:1px solid #ccc;min-height:40px;font-size:100%;outline:0}
@media only screen and (max-width:960px) {
select  {
-webkit-appearance:none;appearance:none;box-sizing:border-box;cursor:pointer;outline:none;
margin:0 0.12em;border-radius:6px;padding:21px;border:1px solid #ccc;min-height:40px}
}
}

/* ----------------------------------------------------------

Layout

---------------------------------------------------------- */
body,
div         {position:relative;margin:auto}
body        {
font-feature-settings:"pkna" 1!important;
line-break:strict!important;
overflow-wrap:break-word!important;
word-wrap:break-word!important;
text-align:justify;
box-sizing:border-box;
width:100%;
color:#383838;
min-width:1px;
}
.container        		{max-width:1024px;margin:auto}
.container_middle 		{max-width:980px;margin:auto}
.container_narrow 		{max-width:880px;margin:auto}
.container_xnarrow 		{max-width:640px;margin:auto}
@media only screen and (max-width:960px) {
body              		{-webkit-text-size-adjust:100%;-webkit-overflow-scrolling:touch}
.container,
.container_middle,
.container_narrow,
.container_xnarrow 		{max-width:100%;padding-left:1em;padding-right:1em;box-sizing:border-box}
}

/* ----------------------------------------------------------

header

---------------------------------------------------------- */
/*topbar
.topbar             	{background:#fff;position:relative;height:70px;max-height:70px}
.topbar #logo       	{z-index:11;position:relative;margin:auto;text-align:center;top:-15.0px;width:200px}
.topbar #logo a     	{border-radius:300px;display:block;background:#fff;width:200px;padding:1em 0;box-sizing:border-box;margin:auto;text-align:center}
.topbar #logo img   	{width:122px;padding:10px}
@media only screen and (max-width:551px) {
.topbar #logo a     	{border-radius:300px;width:150px}
.topbar #logo img   	{width:90px;padding:10px 20px}
}
@media only screen and (min-width:552px) and (max-width:960px) {
}

/*topbar_sns_list*
.topbar_menu_container  {position:absolute;right:1em;top:2.25em;width:100%}
.topbar_sns_list        {margin:0 auto;text-align:right}
.topbar_sns_list li     {display:inline-block;margin:0 0.75%}
.topbar_sns_list  a     {color:#321e21;font-size:200%}
@media only screen and (max-width:960px) {
.topbar_sns_list 		{display: none}
}

/*fat-nav
.hamburger              {display:block;top:2em;left:1em;z-index:100000}
.hamburger .hamburger__icon, 
.hamburger .hamburger__icon:before, 
.hamburger .hamburger__icon:after {background-color:#282828;width:40px}
.nav__wrapper           {text-align:center}
.nav__wrapper a         {cursor:pointer}
.main_menu_list li      {font-size:160%}
.main_menu_list li a    {display:block;padding:0.65em 0}
@media only screen and (max-width:551px) {
.hamburger              {display:block;top:10px;right:10px}
.main_menu_list li a    {display:block;padding:20px 0}
.main_menu_list li      {font-size:140%}
.main_menu_list li a    {padding:0.5em 0}
}
@media only screen and (min-width:552px) and (max-width:960px) {
.hamburger              {display:block;top:10px;right:10px}
.main_menu_list li a    {display:block;padding:20px 0}
}

/*keyvisual*
.keyvisual              {margin-top:30px;z-index:1;position:relative;width:100%;height:100%;overflow-x: hidden}
.keyvisual img          {width:100%}
.keyvisual_pc   		{display:block}
.keyvisual_sp   		{display:none}
@media only screen and (max-width:551px) {
.keyvisual_pc   		{display:none}
.keyvisual_sp   		{display:block}
}/

/*header*/
.mainvisual   {
width: 100%;
height: 600px;
background:url(../img/mainvisual.jpg) no-repeat top center;
background-size:cover
}
.topbar                 {width: 100%;height: 100px;background:#dc3813;}
.topbar #logo           {position: relative;text-align:center;margin:auto;}
.topbar #logo img       {margin:-145px auto;}
ul.wsp-blogs-list li    {padding:0.25em 0;display:block;width:100%;vertical-align:top}
@media only screen and (max-width:520px) {
.mainvisual   {height: 53.5vh;}
.topbar                 {width: 100%;height: 78.0px;}
.topbar #logo img       {width: 266px;margin:-98px auto;}
}

/* ----------------------------------------------------------

section

---------------------------------------------------------- */
/*sectioin*/  
.section              {padding: 5em 0;margin:auto;;}
.section.bg1          {background:url(../img/bg1.jpg) repeat top center;}
.section.bg2          {background:url(../img/bg2.jpg) repeat top center;}
.section.bg3          {background::#fff}
.section .title       {text-align: center;font-size: 200%;color: #dc3813;line-height: 1.6789em;padding:1.5em 0;margin:auto;position: relative}
.form_submit          {margin:1.5em auto;text-align:center;}
@media only screen and (max-width:520px) {
.section              {padding:2.5em 0;margin:auto;;}
.section .title       {font-size: 180%;line-height: 1.456789em;}
}

/*content_menu
.home .content_menu 		{background:#fff}
.content_menu 				{background:#eee;padding:2.5em 0}
.content_menu_container   	{margin:auto}
.content_menu_list        	{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:top}
.content_menu_list li     	{flex-basis:23%;margin:0 1%}
.content_menu_list li a   	{font-size:90%;text-decoration:none}
.content_menu_list span   	{display:block;text-align:center;margin:0.25em auto}
@media only screen and (max-width:551px) {
.content_menu 				{padding:1.5em 0}
.content_menu_list li     	{flex-basis:48%;margin:1%}
.content_menu_list li a   	{font-size:88%;text-decoration:none}
}
@media only screen and (min-width:552px) and (max-width:960px) {
.content_menu_list li a   	{font-size:82%;text-decoration:none}
}*/

/*noentry*/
.noentry					{padding:5em 0}
.noentry .form_submit		{width:400px;margin:3em auto 0}
@media only screen and (max-width:551px) {
.noentry .form_submit		{width:80%;margin:auto}
}

/*wp-pagenavi*/
.wp-pagenavi 				{clear:both;margin:2.5em auto 5em;text-align:center}
.wp-pagenavi a, .wp-pagenavi span {
color:#321e21;
background-color:#fff;
border:1px solid #321e21;
padding:8px 15px;
margin:0 -1px;
white-space:nowrap;
border-radius:0;
-webkit-transition:0.2s ease-in-out;
-moz-transition:0.2s ease-in-out;
-o-transition:0.2s ease-in-out;
transition:0.2s ease-in-out;
text-align:center;
text-decoration:none;
}
.wp-pagenavi a:hover 		{color:#fff;background-color:#321e21;border-color:#321e21}
.wp-pagenavi span.current 	{color:#fff;background-color:#321e21;border-color:#321e21;font-weight:bold}
@media only screen and (max-width:551px) {
.wp-pagenavi a, .wp-pagenavi span {padding:8px 10px}
}

/* ----------------------------------------------------------

HOME

---------------------------------------------------------- */
/*about*/
.about_list           		{display:flex;flex-wrap: wrap;justify-content: space-between;align-items: center;}
.about_list_text      		{flex-basis:60%}
.about_list_img       		{flex-basis:36%;text-align: right;}
.about_list_comment   		{font-size: 98%;line-height:2.345em}
.about_list_img img   		{width: 100%;}
@media only screen and (max-width:520px) {
.about_list_text      		{flex-basis:100%}
.about_list_img      			{flex-basis:100%;text-align: center;margin: 2.5em auto auto}
.about_list_img img   		{width: 75%;}
}

/*lineup*/
.lineup_list_container    {display:flex;flex-wrap: wrap;justify-content: space-between;align-items: center;}
.lineup_list              {flex-basis:30%;margin:2.5% 1.5%;}
.lineup_list_img img      {width: 100%;text-align:center;}
.lineup_list_title        {text-align:center;font-size: 124%;margin-top:1em}
.lineup_btn_list          {text-align:center;margin:2.5em auto 1em;padding: 0 2.5em;box-sizing:border-box;}
.lineup_btn_list li       {display:inline-block;vertical-align: middle;width: 440px}
.lineup_btn_list li a     {display:block;margin:0.5em 1.5em;font-size: 110%}
@media only screen and (max-width:520px) {
.lineup_list              {flex-basis:100%;margin:0.5em auto 1.5em;text-align:center;}
.lineup_list_img img      {width: 75%;}
.lineup_list_title        {font-size: 144%;margin-top:0.5em}
.lineup_btn_list          {margin:2.5em auto 1em;padding: 0;text-align:center;}
.lineup_btn_list li       {display:block;width: 85%;text-align:center;margin:auto;}
.lineup_btn_list li a     {display:block;margin:1.5em auto;font-size: 120%}
}

/*collabo*/
.collabo_list                   {display:flex;flex-wrap: wrap;justify-content: space-between;align-items: center}
.collabo_list_img               {flex-basis:32%;}
.collabo_list_text              {flex-basis:60%;text-align: left;}
.collabo_list_title             {text-align:left;font-size: 142%;margin-bottom:1.25em;color:#111}
.collabo_list_img img           {width: 100%;}
.collabo_list a.external        {color:#2e4f97;text-decoration: underline;}
.collabo_btn_list               {text-align:center;margin:2.5em auto 1em;padding: 0 1em;box-sizing:border-box;}
.collabo_btn_list li            {display:block;text-align:center;margin:auto;width: 280px}
.collabo_btn_list li a          {display:block;margin:0.5em auto;font-size: 110%}
@media only screen and (max-width:520px) {
.collabo_list_img               {flex-basis:100%;margin:0.5em auto 1.5em;text-align:center;}
.collabo_list_text              {flex-basis:100%;text-align:center;}
.collabo_list_img img           {width: 75%;}
.collabo_list_title             {text-align:center;font-size: 144%;}
.collabo_btn_list               {margin:2.5em auto 1em;padding: 0;text-align:center;}
.collabo_btn_list li            {display:block;width: 85%;text-align:center;margin:auto;}
.collabo_btn_list li a          {display:block;margin:1.5em auto;font-size: 120%}
}

/*information*/
.information_list dl      {padding: 1em 0;border-bottom:1px dashed #aaa;font-size: 110% }
.information_list dl dt   {width: 18%;vertical-align: middle;display:inline-block;}
.information_list dl dd   {width: 81%;vertical-align: middle;display:inline-block;}
@media only screen and (max-width:520px) {
.information_list dl dt,
.information_list dl dd   {width: 100%;vertical-align: middle;display:block;}
}

/*cta*/
.section.cta          		{padding:0 0 5em;margin-top: -1.5em}
.cta a.btn_primary    		{display:block;text-align:center;margin:auto;width: 400px;font-size:130%;letter-spacing:-0.01em}
@media only screen and (max-width:520px) {
.section.cta          		{padding:2em 0 3.5em;margin-top: -2.5em}
.cta a.btn_primary    		{display:block;margin:1.5em auto;font-size: 120%}
}


/* ----------------------------------------------------------

inquiry

---------------------------------------------------------- */
.iframe_container          {width:100%;margin:2.5em auto 0;background:#fff}
.iframe_container iframe   {width:100%;border:none}
@media only screen and (max-width:520px) {
}

/*inquiry
.section.inquiry 			{padding:5em 0}
.section.inquiry input[type=text],
.section.inquiry input[type=email],
.section.inquiry textarea  	{
width:100%;
border:1px solid #ccc;
background:#fff;
min-height:40px;
padding:1em;
box-sizing:border-box;
appearance:none;
border-radius:10px;
outline:0
}
.inquiry_container         	{padding:2.5em 0}
.inquiry_container dl      	{padding:1.5em 1em;margin:auto;display:flex;flex-wrap:wrap;justify-content:left;align-items:center}
.inquiry_container dl:nth-child(even)   {background:#fff}
.inquiry_container dl:nth-child(odd)    {background:#f5f5f5}
.inquiry_container dl dt   	{flex-basis:25%;font-weight:600}
.inquiry_container dl dd   	{flex-basis:75%;box-sizing:border-box}
.icon.req  {
border-radius:20px;
background:#e31c24;
display:inline-block;
vertical-align:middle;
color:#fff;
font-size:8pt;
line-height:1;
text-align:center;
padding:5px;
margin:-2px 0 0 8px;
}
.contact_caution  {text-align:center;font-size:80%;margin:1em auto;text-align:center;;display:block}
.section.inquiry .form_submit input[type=submit]      	{width:256px;margin:2.5em auto 0}
.confirm .mw_wp_form span.req   {display:none}
.thanks .form_submit            {width: 256px;margin:auto;text-align:center}
@media only screen and (max-width:551px) {
.section.inquiry 			{padding:2.5em 0}
.inquiry_container dl dt   	{flex-basis:100%}
.inquiry_container dl dd   	{flex-basis:100%}
}
@media only screen and (min-width:552px) and (max-width:960px) {
}
*/
/* ----------------------------------------------------------

sitemap

---------------------------------------------------------- */
/*wsp-container
.section.sitemap        {padding:5em 0}
.wsp-container        	{margin:auto;font-size:90%;padding:2.5em 0}
.wsp-container a      	{text-decoration:underline;color:#000}
.wsp-pages-title ,
.wsp-blogs-title      	{border-top:1px solid #212121;border-bottom:1px solid #212121;padding:0.5em  0}
.wsp-container ul     	{padding:10px 0 50px}
.wsp-container ul:nth-last-child(1)    {padding:10px 0 0}
ul.wsp-pages-list li  	{padding:0.25em 0;display:inline-block;width:49%;vertical-align:top;text-align:left}
ul.wsp-blogs-list li  	{padding:0.25em 0;display:block;width:100%;vertical-align:top}
@media only screen and (max-width:960px) {
.wsp-container        	{padding-bottom:0}
ul.wsp-pages-list li ,
ul.wsp-blogs-list li  	{padding:0.25em 0;display:block;width:100%;vertical-align:top}
}*/

/* ----------------------------------------------------------

footer

---------------------------------------------------------- */
/*footer*/
.footer                   {padding:2.5em 0;margin:auto;text-align:center;background: #211306}
.footer_address address   {font-style:normal;font-size:78%;color:#858585}
