@charset "utf-8";
/*
Theme Name: B.I.Global Network
Theme URI: http://www.bi-shanghai.jp/
Description: B.I.Global Networkのテーマです
*/


html, body, div, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, img, abbr, acronym, address, big, cite, code, del, dfn, em, 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, input, textarea {
	margin: 0;
	padding: 0;
	border: 0;
	font-style: normal;
	font-weight: normal;
	font-size: 100%;
	vertical-align: baseline;
	box-sizing: border-box;
	font-family: 'Noto Sans JP', sans-serif;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
	box-sizing: border-box;
}
html {
	overflow-y: scroll;
}
blockquote, q {
	quotes: none;
	box-sizing: border-box;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
	box-sizing: border-box;
}
 input, textarea, {
 margin: 0;
 padding: 0;
 box-sizing:border-box;
}
ol, ul {
	list-style: none;
	box-sizing: border-box;
}
table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	box-sizing: border-box;
}
caption, th {
	text-align: left;
	box-sizing: border-box;
}
a:focus {
	outline: none;
}
header:after, footer:after, section:after, article:after, aside:after, div:after, dl:after, ul:after {
	content : "";
	display : block;
	height : 0;
	clear : both;
}
br {
	letter-spacing: 0;
}
img {
	border: 0;
	vertical-align: bottom;
	box-sizing: border-box;
	vertical-align: top;
	width: auto;
}

/*共通使用部分*/

body {
	letter-spacing: 0.075em;
	font-size: 1em;
	line-height: 2.4;
	/*文字サイズの自動調整を無効*/
	-webkit-text-size-adjust: 100%;
	background:#FFF;
	color:#777;
	padding: 0 !important;  /* 「アンカー広告」がページを押し下げないように指定 */
}

@media (max-width: 1024px) {
body {
	font-size: 0.9em;
}
}

@media (max-width: 680px){
body {
	line-height:1.8;
}
}


.clear {
	clear: both;
}
/*文字色のスタイル*/

a:link, a:visited {
	text-decoration: none;
	overflow: hidden;
	color:#FFF;
}
a:hover {
	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;
	-ms-transition: 0s ease-in-out;
	filter: alpha(opacity=60);
	-moz-opacity: 0.60;
	opacity: 0.60;
}

.lb-container a:hover {
	-webkit-transition:none;
	-moz-transition:none;
	-o-transition:none;
	transition:none;
	-ms-transition:none;
}

/*hoverのスタイル*/ 
.fade {
	-webkit-transition: 0.15s ease-in-out;
	-moz-transition: 0.15s ease-in-out;
	-o-transition: 0.15s ease-in-out;
	transition: 0.15s ease-in-out;
	-ms-transition: 0s ease-in-out;
}
.fade:hover {
	opacity: 0.6;
	filter: alpha(opacity=60);
}

a:hover img {
	-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;
	-ms-transition: 0s ease-in-out;
	filter: alpha(opacity=60);
	-moz-opacity: 0.60;
	opacity: 0.60;
}

/*tableのスタイル*/

.page table {
}

table td a:link {
	text-decoration:underline;
}

table tr th,
table tr td:nth-child(1) {
	vertical-align:middle;
	border:1px solid #777;
}

table tr td {
	border:1px solid #777;
	vertical-align:middle;
	text-align:left;
}

img {
	vertical-align:top;
}

@media (max-width: 1024px){
table tr th,
table tr td:nth-child(1) {
	font-size:0.8em;
	padding:10px;
}

table tr td {
	font-size:0.8em;
	padding:10px;
}
}

/*scaleのスタイル*/
.scale {
	overflow: hidden;
}
.scale img {
	-webkit-transition: 0.15s ease-in-out;
	-moz-transition: 0.15s ease-in-out;
	-o-transition: 0.15s ease-in-out;
	transition: 0.15s ease-in-out;
	-ms-transition: 0s ease-in-out;
}
.scale img:hover {
	webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	-o-transform: scale(1.05);
	-ms-transform: scale(1.05);
	transform: scale(1.05);
}

/*boxのスタイル*/
.box1280 {
	clear: both;
	width: 100%;
	max-width: 1120px;
	margin: 0 auto;
	position: relative;
}
.box1280 img {
	max-width: 1120px;
}

/* IE10 以降にのみ適用される */
@media all and (-ms-high-contrast: none) {
	.base {
		padding-left:1.5rem;
		padding-right:1.5rem;
	}
}

@media (max-width:1300px) {
.base {
	padding-left:15px;
	padding-right:15px;
}
}

/* 表示・非表示*/
.pc_none {
	display:none;
}

@media (max-width: 1280px){
.pc_none {
	display:block;
}
.sp_none {
	display:none;
}
}


/*titleのスタイル*/

#page_title {
	position: relative;
	z-index: 10;
}

#page_title h1 {
	width:100%;
	max-width:1120px;
	margin:0 auto;
	font-size: 2.2em;
	padding:4.5rem 10px 4.5rem 0;
	color:#991e35;
	font-weight:bold;
	letter-spacing:0.25rem;
	text-shadow: 1px 1px 2px #FFF,-1px 1px 2px #FFF,1px -1px 2px #FFF,-1px -1px 2px #FFF;
}

#breadcrumb {
	padding-top:0.5rem;
	padding-bottom:0.5rem;
}

#breadcrumb ul {
	width:100%;
	margin:0 auto;
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	list-style:none;
}

#breadcrumb ul li {
	margin-right:0.5rem;
	letter-spacing:0;
}

#breadcrumb ul li a {
	color:#991e35;
}

#breadcrumb ul li:after {
    content: "\f105";
    font-family: FontAwesome;
    margin-left:0.5rem;
}

#breadcrumb ul li:last-child:after {
	content:none;
}

.second_del #breadcrumb ul li:nth-child(2) {
	display:none;
}

@media (max-width: 1024px){

#breadcrumb ul li {
	margin-right:0.25rem;
}

#breadcrumb ul li:after {
    margin-left:0.25rem;
}

#breadcrumb {
	padding:0.5rem 10px 0 10px;
	font-size:0.55em;
	letter-spacing:0;
}
}



@media (max-width: 1024px) {

#page_title {
	margin-top:0;
}

#page_title h1 {
	padding:1rem 10px;
	font-size:1.2em;
}
}

/*吹き出しボックス*/
.arrow_box{
    position:relative;
    background:#FFFFFF;
    text-align:center;
    border:2px solid #04AFCD;
    border-radius:10px;
    -webkit-border-radius:10px;
    -moz-border-radius:10px;
	padding:0.5rem;
	width:80%;
	margin:2rem auto 0 auto;
}
.arrow_box:after,.arrow_box:before{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    bottom:100%;
    left:50%;
}
.arrow_box:after{
    border-color: rgba(255, 255, 255, 0);
    border-top-width:20px;
    border-bottom-width:20px;
    border-left-width:10px;
    border-right-width:10px;
    margin-left: -10px;
    border-bottom-color:#FFFFFF;
}
.arrow_box:before{
    border-color: rgba(4, 175, 205, 0);
    border-top-width:24px;
    border-bottom-width:24px;
    border-left-width:12px;
    border-right-width:12px;
    margin-left: -12px;
    margin-bottom: 2px;
    border-bottom-color:#04AFCD;
}

/*改行消す*/
@media (max-width: 1024px){
.br_none {
	display:none;
}
}


/*ページのCSS*/

.page-template-default #page_contents {
	padding-bottom:0;
}

.page-template-default #page_contents h2 {
	font-size:1.6em;
	margin-bottom:2rem;
	font-weight:bold;
	background:url(../../images/bg_ptn03.jpg) repeat;
	padding:0.5rem 1rem;
	color:#FFF;
	border-radius:0.5rem;
}

.page-template-default #page_contents h2:before {
    content: "\f0a4";
    font-family: FontAwesome;
    margin-right:0.5rem;
	font-size:1.2em;
}

.page-template-default #page_contents h3 {
	font-size:1.3em;
	margin-bottom:1.5rem;
	font-weight:bold;
	border-bottom:3px solid #991e35;
	padding-bottom:0;
	padding-left:0.5rem;
}

.page-template-default #page_contents h3:before {
    content: "\f138";
    font-family: FontAwesome;
    margin-right:1rem;
	font-size:1.2em;
	color:#991e35;
}

.page-template-default #page_contents h4 {
	font-size:1.2em;
	margin-bottom:0.5rem;
	font-weight:bold;
}


.page-template-default #page_contents p {
	margin-bottom:1.25rem;
	line-height:2;
}

.page-template-default #page_contents strong {
	background: linear-gradient(transparent 60%, #fec9ca 60%);
	font-weight:500;
}

.page-template-default #page_contents p.has-small-font-size {
	font-size:0.9em;
}

.page-template-default #page_contents table {
	margin-bottom:1rem;
}

.page-template-default #page_contents table.aligncenter {
	margin-left:auto;
	margin-right:auto;
}

.page-template-default #page_contents ul {
	margin-bottom:1.5rem;
	padding-left:1.5rem;
	list-style-type:inherit;
}

.page-template-default #page_contents ol {
	margin-bottom:1.5rem;
	padding-left:1.5rem;
	list-style-type:decimal;
}

.page-template-default #page_contents ul li,
.page-template-default #page_contents ol li {
	font-size:1.2em;
	font-weight: 400;
	margin-bottom:1rem;
}


.page-template-default #page_contents p strong {
	font-weight:bold;
	font-size:1.2em;
	background: linear-gradient(transparent 70%, #ffaaaa 70%);
}

.page-template-default #page_contents em {
	border-bottom:dotted 5px #fed60c;
	font-weight:500;
}


.page-template-default #page_contents img {
	width:100%;
	height:auto;
	border-radius:0.5rem;
}

.page-template-default #page_contents table img {
	border-radius:0 !important;
}

.page-template-default #page_contents .wp-image-100 {
	margin-bottom:3rem;
}

.page-template-default #page_contents .wp-block-media-text {
	margin-bottom:3rem;
}

.wp-block-media-text .wp-block-media-text__content {
	padding:0 3%;
}

@media (max-width: 1024px){
.page-template-default #page_contents h2 {
	font-size:1.3em;
	margin-bottom:1.5rem;
	font-weight:bold;
	padding:0.25rem 1rem;
}

.page-template-default #page_contents h3 {
	font-size:1.2em;
	margin-bottom:1rem;
}

.page-template-default #page_contents ul {
	display:block;
}

.page-template-default #page_contents ul li {
    font-size: 1.1em;
	letter-spacing:0;
}

.page-template-default #page_contents p {
	margin-bottom:1.5rem;
}

.page-template-default #page_contents .wp-image-100 {
	margin-bottom:1.5rem;
}

.page-template-default #page_contents img {
	max-width:80%;
	display:block;
	margin:0 auto;
}


.page-template-default #page_contents .wp-block-media-text {
	align-items:flex-start;
	margin-bottom:1.5rem;
}

.page-template-default #page_contents p strong {
	font-size:1.1em;
}

.wp-block-spacer {
	height:1.5rem !important;
}

.has-2-columns p {
	margin-bottom:0 !important;
}

.wp-block-media-text {
	display:block;
}

.wp-block-media-text .wp-block-media-text__media {
	margin-bottom:1rem;
}

.has-medium-font-size {
	font-size:16px;
}

.has-large-font-size {
	font-size:20px;
}

.wp-block-media-text .wp-block-media-text__content {
	padding:0;
}


}


/*textleftのスタイル*/

.textleft {
	text-align: left !important;
}
.textcenter {
	text-align: center !important;
}
.textright {
	text-align: right !important;
}
p.crumbs {
	clear: both;
	padding-top: 20px;
	font-size: 0.9em;
}
@media (max-width: 1280px) {
p.crumbs {
	display: none;
}
}

/*tableのスタイル*/


/*mapのスタイル*/
.maps {
}
.maps iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

/*youtubeのスタイル*/
div.youtube01 {
	position: relative;
	width: 100%;
	padding: 54.3% 0 0 0;
}

div.youtube01 iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*header*/

header#header {
	background:#991e35;
}

header#header #header_inner {
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

header#header #header_inner:after {
	content:none;
}

header#header #header_logo {
	width:32%;
	margin-bottom:1rem;
}

header#header #header_logo img {
	width:100%;
	height:auto;
	max-width:360px;
}

header#header nav {
	width:60%;
}

header#header nav ul {
	text-align:right;
}

header#header nav ul li {
	padding:0 0.5rem;
	letter-spacing:0;
}

header#header nav ul li a {
	color:#FFF;
	font-size:0.8em;
	font-weight:bold;
}

@media (max-width: 1024px) {

header#header {
	padding:0;
}

header#header h1 {
	display:none;
}

header#header #header_logo {
	width:54%;
	margin-bottom:0.5rem;
}
}

#nav ul {
	width:100%;
	display:table;
}

#nav ul li {
	text-align:center;
	line-height:1.4;
	display:table-cell;
	vertical-align:middle;
}

#nav ul li a {
	display:block;
	text-align:center;
	padding:1.5rem 0.25rem;
}


@media (max-width: 1024px) {
#nav {
	display:none;
}
}

/*footer*/

#footer {
	background:#991e35;
	padding:9rem 0;
}

#footer nav {
}

#footer nav ul {
	width:100%;
	margin:0 auto;
	border-bottom:1px solid #FFF;
}

#footer nav ul li {
	display:inline-block;
	line-height:1;
	color:#FFF;
	margin-right:1.5rem;
}

#footer nav ul li:last-child {
	border:none;
	margin:0;
	padding:0;
}

#footer nav ul li a {
	color:#FFF;
	font-size:0.9em;
	font-weight:bold;
}

#footer_info {
	width:100%;
}

#footer_info dl {
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#footer_info dl:after {
	content:none;
}

#footer_info dl dt img {
	width:100%;
}

#footer_info dl dt {
	width:28%
}

#footer_info dl dd {
	color:#FFF;
	line-height:1.6;
	font-size:0.8em;
	margin-top:1rem;
}
#footer #copy {
	color:#bdbebf;
	font-size:0.8em;
	margin-bottom:3rem;
}

@media (max-width: 1024px){

#footer {
	padding: 3rem 0 6.5rem 0;
}

#footer nav ul {
	padding-bottom:0.5rem;
	margin-bottom:0.5rem;
}

#footer_info dl dt {
	width:45%;
}

#footer #copy {
	padding-bottom:0;
	margin-bottom:1.5rem;
	font-size:0.8em;
	letter-spacing:0;
}

}

/*装飾*/

.bottom10 {
	margin-bottom:1rem;
}

.bottom15 {
	margin-bottom:1.5rem;
}

.bottom20 {
	margin-bottom:2rem;
}

.bottom30 {
	margin-bottom:3rem;
}

.bottom40 {
	margin-bottom:4rem;
}

.bottom45 {
	margin-bottom:4.5rem;
}

.bottom50 {
	margin-bottom:5rem;
}

.bottom60 {
	margin-bottom:6rem;
}

.bottom75 {
	margin-bottom:7.5rem;
}

.bottom90 {
	margin-bottom:9rem;
}

@media (max-width: 1024px){

.bottom10 {
	margin-bottom:0.5rem;
}

.bottom15 {
	margin-bottom:1rem;
}

.bottom20 {
	margin-bottom:1rem;
}

.bottom30 {
	margin-bottom:1.5rem;
}

.bottom40 {
	margin-bottom:1.5rem;
}

.bottom45 {
	margin-bottom:2rem;
}

.bottom50 {
	margin-bottom:2.5rem;
}

.bottom60 {
	margin-bottom:3rem;
}

.bottom75 {
	margin-bottom:3.5rem;
}

.bottom90 {
	margin-bottom:4.5rem;
}
}


/*共通*/

#wrapper {
}

#home #wrapper {
}

#wrapper_main {
}

#main {
	padding:3rem 0 0 0;
    display: block; /* 追記 */
	width:100%;
}

#home #wrapper #main {
	padding-top:0;
}

#main iframe {
	width:100%;
}

.contact_ban {
	margin-bottom:6rem;
}

.contact_ban figure {
	text-align:center;
}

.contact_ban img {
	max-width:1120px;
	width:100%;
	height:auto;
}

@media (max-width: 1024px) {
#wrapper {
	padding:0;
}

#wrapper {
	margin-bottom:3rem;
}

#home #wrapper {
	margin-bottom:0;
}

#main {
	width:100%;
	padding:1.5rem 0;
}

.page-template-default #main {
	padding-bottom:0;
}

.contact_ban {
	margin-bottom:2rem;
}
}

/*main_img*/

#main_img {
	background-size:cover;
	position: relative;
	z-index: 5;
	overflow:hidden;
}

#main_img .flexslider {
	width:100%;
	margin:0 auto;
}

#main_img .flexslider img {
	max-width:100%;
	height:auto;
}

#main_img .flexslider a {
	line-height:1.6;
}

#main_img p {
	/*中央*/
	position: absolute;
	top: 20%;
	left: 50%;
	transform: translateY(-20%) translateX(-50%);
	-webkit- transform: translateY(-20%) translateX(-50%);
	margin: auto;
	display:inline-block;
	z-index:100;
	text-align:center;
	font-size:2.4em;
	font-family: Yu Mincho, '游明朝','Hiragino Mincho Pro','Hiragino Mincho Pro','ＭＳ 明朝',serif;
	width:100%;
	letter-spacing:0;
	color:#FFF;
		text-shadow: 1px 1px 2px #333,-1px 1px 2px #333,1px -1px 2px #333,-1px -1px 2px #333;
}


/* アニメーション設定 */
.arrowWrap {
	height: 200px;
	z-index:1000;
	/*中央*/
	position: absolute;
	top: 95%;
	left: 50%;
	transform: translateY(-95%) translateX(-50%);
	-webkit- transform: translateY(-95%) translateX(-50%);
	margin: auto;
	display:inline-block;
}

.arrowInner small {
  font-size: 10px;
  display:block;
  color:#FFF;
}

.arrow {
  width: 1px;
  height: 100px;
  margin: 50px auto 0;
  background-color: #eee;
  position: relative;
  overflow: hidden;
}

.arrow::before {
  content: '';
  width: 1px;
  height: 100px;
  margin: 50px auto 0;
  background-color: #000;
  position: absolute;
  top: -150px;
  left: 0;
  -webkit-animation: arrow 2.5s ease 0s infinite normal;
  animation: arrow 2.5s ease 0s infinite normal;
}

@keyframes arrow {
  0% {
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
  }

  60% {
    -webkit-transform: translate3d(-50%, 100px, 0);
    transform: translate3d(-50%, 100px, 0);
  }

  100% {
    -webkit-transform: translate3d(-50%, 100px, 0);
    transform: translate3d(-50%, 100px, 0);
  }
}


@media (max-width: 1024px){
.arrowWrap {
	display:none;
}
}


#main section {
	margin-bottom:9rem;
}

@media (max-width: 1024px){

#main_img {
	margin-top:0;
}

#main_img p {
	margin-bottom:1rem;
}

#main section {
	margin-bottom:4.5rem;
}
}

@media (max-width: 680px){
#main section {
	margin-bottom:3rem;
}

#main_img p {
	font-size:1.6em;
}

.scroll {
    box-sizing: border-box;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
}

.scroll table {
	border-right: none;
}

}

/*index*/

.home #main h2 {
	text-align:center;
	margin-bottom:4rem;
}

.home #main h2 span {
	padding-bottom:0.25rem;
	display:inline-block;
	color:#991e35;
	font-weight:bold;
	border-bottom:5px solid #991e35;
}

.home #main h2 small {
	margin-top:0.5rem;
	color:#999999;
}

.home #main h3 {
	font-size:2.4em;
	font-family: Yu Mincho, '游明朝','Hiragino Mincho Pro','Hiragino Mincho Pro','ＭＳ 明朝',serif;
	color:#991e35;
	margin-bottom:0.5rem;
	text-align:center;
}

.home #main h4.h4_style01 {
	border:1px solid #991e35;
	line-height:1;
	position:relative;
	padding:0.8rem 1rem;
	margin-bottom:1.5rem;
}

.home #main h4.h4_style01 span {
	display:inline-block;
	padding:1rem 2rem;
	background:#FFF;
	position:absolute;
	/*中央*/
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	margin: auto;
	color:#991e35;
	font-size:1.2em;
	font-weight:bold;
}


#main section#index01 {
	padding:9rem 0 0 0;
	margin-bottom:0;
	background:url(../../images/index/index01_side_title.svg) 3% 9.5rem no-repeat;
	background-size:1.5%;
}

#index01 p {
	text-align:center;
	margin-bottom:-3rem;
}

#index01 .box01 {
	background:url(../../images/index/index01_bg.svg) no-repeat top center;
	padding:12rem 0 8rem 0;
}

#index01 .box01 ul {
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	padding-top:4.5rem;
}

#index01 .box01 ul:after {
	content:none;
}

#index01 .box01 ul li {
	width:30%;
}

#index02 p {
	text-align:center;
	margin-bottom:4.5rem;
}

#index02 ul {
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	margin-bottom:4.5rem;
}

#index02 ul:after {
	content:none;
}

#index02 ul li {
	width:19%;
	margin-right:1.25%;
	line-height:1.6;
}

#index02 ul li:nth-child(5n) {
	margin-right:0;
}

#index02 .box01 {
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#index02 .box01:after {
	content:none;
}

#index02 .box01 dl {
	width:48%;
}

#index02 .box01 dl dt {
	margin-bottom:2rem;
}

#index02 .box01 dl dt img {
	width:100%;
	height:auto;
}

#index02 .box01 dl dd {
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#index02 .box01 dl dd h5 {
	width:18%;
}

#index02 .box01 dl dd ul {
	width:80%;
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	margin-bottom:0;
	padding-left:3%;
}

#index02 .box01 dl dd ul li {
	width:49%;
	line-height:1.6;
	margin-right:0;
	font-size:0.95em;
}

#index02 .box01 dl dd ul li:before {
    content: "〇";
    margin-right:0.25rem;
}

#main section#index03 {
	padding:9rem 0;
	margin-bottom:0;
	background:url(../../images/index/index03_side_title.svg) 3% 9rem no-repeat #991e35;
	background-size:1.5%;
}

.home #main #index03 h4.h4_style01 {
	border:1px solid #FFF;
	margin-bottom:4.5rem;
}

.home #main #index03 h4.h4_style01 span {
	background:#991e35;
	color:#FFF;
	
}


#index03 ul {
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#index03 ul:after {
	content:none;
}

#index03 ul li {
	width:4.16%;
	background:#FFF;
	writing-mode: vertical-rl;
	position:relative;
	box-sizing:border-box;
	color:#991e35;
	min-height:240px;
}

#index03 ul li:nth-child(2n) {
	background:none;
	text-align:center;
	color:#FFF;
}

#index03 ul li p {
	padding:1rem 7%;
	box-sizing:border-box;
	width:100%;
	display:inline-block;
	line-height:1;
}

#index03 ul li i {
	font-size:2em;
	line-height:1;
	padding:1rem 4%;
	box-sizing:border-box;
	display:inline-block;
}

.home #main #index04 h4.h4_style01 {
	margin-bottom:4.5rem;
}

#index04 {
	padding-top:9rem;
	background:url(../../images/index/index04_side_title.svg) 3% 9.5rem no-repeat;
	background-size:1.5%;
}

#index04 table {
	margin-bottom:1.5rem;
}

#index04 table td {
	padding:1.5rem 10px;
	line-height:1.4;
	font-size:0.9em;
}
#index04 table td.table_head {
	background:#991e35;
	color:#FFF;
	font-size:1.2em;
	font-weight:bold;
	padding:3px 10px;
}

#index04 table td small {
	font-size:0.8em !important;
	font-weight:bold;
}


#index04 table td.tategaki {
	writing-mode: vertical-rl;
	color:#991e35;
	text-align:center;
	vertical-align:middle;
	font-weight:bold;
	width:42px;
}

#index04 table td.langage_arrow {
	text-align:center;
	color:#991e35;
	background:#e3b3c2;
	
}

#main section#index05 {
	background:#f5f5f5;
	margin-bottom:0;
	padding-bottom:9rem;
}

#index05_inner {
	background:url(../../images/index/index05_side_title.svg) 3% 0.5rem no-repeat;
	background-size:1.5%;
}

#index05 ol {
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#index05 p img {
	width:100%;
	height:auto;
}

#index05 ol li {
	width:31%;
	position:relative;
	padding:6% 1.5rem 1.5rem 1.5rem;
}

#index05 ol li h4 {
	color:#FFF;
	text-align:center;
	font-size:1.4em;
	font-weight:bold;
	margin-bottom:0.5rem;
}

#index05 ol li p {
	color:#FFF;
	line-height:1.6;
}

#index05 ol li strong {
	display:block;
	text-align:center;
	padding:0.25rem 1rem;
	background:#FFF;
	line-height:1.6;
	margin-bottom:1.5rem;
}

#index05 ol li:nth-child(1) {
	background:#a30035;
}

#index05 ol li:nth-child(2) {
	background:#666666;
}

#index05 ol li:nth-child(3) {
	background:#999999;
}

#index05 ol li span {
	/*中央*/
	position: absolute;
	top: -15%;
	left: 50%;
	transform:translateX(-50%);
	-webkit- transform: translateX(-50%);
	margin: auto;
	display:inline-block;
	letter-spacing: 0;
}

#index05 ol li:nth-child(1) span {
	display:inline-block;
	background:#FFF;
	padding:0.75rem 2rem;
	text-align:center;
	border:5px solid #a30035;
	line-height:1;
	color:#a30035;
}

#index05 ol li:nth-child(1) span small {
	font-size:0.6em;
	font-family:Arial, Helvetica, sans-serif;
	font-weight:bold;
}

#index05 ol li:nth-child(1) span small b {
	font-size:6.4em;
	font-family:Arial, Helvetica, sans-serif;
	font-weight:bold;
	display:block;
}

#index05 ol li:nth-child(2) span {
	display:inline-block;
	background:#FFF;
	padding:0.75rem 2rem;
	text-align:center;
	border:5px solid #666666;
	line-height:1;
	color:#666666;
}

#index05 ol li:nth-child(2) span small {
	font-size:0.6em;
	font-family:Arial, Helvetica, sans-serif;
	font-weight:bold;
}

#index05 ol li:nth-child(2) span small b {
	font-size:6.4em;
	font-family:Arial, Helvetica, sans-serif;
	font-weight:bold;
	display:block;
}

#index05 ol li:nth-child(3) span {
	display:inline-block;
	background:#FFF;
	padding:0.75rem 2rem;
	text-align:center;
	border:5px solid #999999;
	line-height:1;
	color:#999999;
}

#index05 ol li:nth-child(3) span small {
	font-size:0.6em;
	font-family:Arial, Helvetica, sans-serif;
	font-weight:bold;
}

#index05 ol li:nth-child(3) span small b {
	font-size:6.4em;
	font-family:Arial, Helvetica, sans-serif;
	font-weight:bold;
	display:block;
}



#index05 ol li:nth-child(1) strong {
	color:#a30035;
}

#index05 ol li:nth-child(2) strong {
	color:#666666;
}

#index05 ol li:nth-child(3) strong {
	color:#999999;
}

#main section#index06 {
	margin-bottom:0;
}

#main section#index06 ul {
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#main section#index06 ul li {
	width:50%;
	text-align:center;
}

#main section#index06 ul li:nth-child(1) {
	background:url(../../images/index/index06_bg01.png) no-repeat center center;
	background-size:cover;
}


#main section#index06 ul li:nth-child(2) {
	background:url(../../images/index/index06_bg02.png) no-repeat center center;
	background-size:cover;
}

#main section#index06 ul li a {
	display:block;
	padding:4.5rem 0 1.25rem 0;
}

#main section#index06 ul li strong {
	display:block;
	background:rgba(0,0,0,0.5);
	color:#FFF;
	padding:1.5rem 0;
	font-size:1.8em;
	font-weight:bold;
	line-height:1.6;
	font-family:Arial, Helvetica, sans-serif;
	margin-bottom:0.5rem;
}

#main section#index06 ul li small {
	font-size:0.7em;
	font-family:Arial, Helvetica, sans-serif;
}

#main section#index06 ul li strong span {
	font-size:0.6em;
	display:block;
}


@media (max-width: 1280px){
#main section#index01,
#main section#index04,
#main section#index05 #index05_inner {
	background:none;
}

#main section#index03 {
	background:#991e35;
}

}

@media (max-width: 1024px){
.home #main h2 {
	margin-bottom:2rem;
}
.home #main h3 {
	font-size:1.6em;
}

.home #main h4.h4_style01 {
	padding:0.5rem 1rem;
}

.home #main h4.h4_style01 span {
	padding:1rem 1.5rem;
	font-size:1.1em;
}

#main section#index01 {
	padding:4.5rem 0 0 0;
	margin-bottom:0;
}

#index01 p {
	text-align:center;
	margin-bottom:-3rem;
}

#index01 .box01 {
	background:url(../../images/index/index01_bg.svg) no-repeat top center;
	background-size:cover;
	padding:6rem 0 4rem 0;
}

#index01 .box01 ul {
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	padding-top:4.5rem;
}

#index01 .box01 ul:after {
	content:none;
}

#index01 .box01 ul li {
	width:30%;
}

#main section#index03 {
	padding:4.5rem 0;
}

#index03 ul li p {
	padding:1rem 3%;
}

#index03 ul li i {
	padding:1rem 0;
}

.home #main #index03 h4.h4_style01 {
	margin-bottom:2rem;
}

#index04 {
	padding-top:4.5rem;
}

.home #main #index04 h4.h4_style01 {
	margin-bottom:2rem;
}

#main section#index05 {
	padding-bottom:4.5rem;
}

#index05 ol li {
    width: 100%;
    padding: 10% 1.5rem 4.5rem 1.5rem;

}

#index05 p.bottom75 {
	margin-bottom:5rem;
}
}

@media (max-width: 680px){

#main section#index01 {
	padding-top:2.5rem;
}

#index01 .box01 {
	padding:3rem 0 2rem 0;
}

#index01 .box01 ul {
	padding-top:3rem;
}

#index01 .box01 ul li {
	width:32%;
}

#index02 p {
	margin-bottom:2rem;
}

#index02 ul {
	-webkit-justify-content: space-between;
	justify-content: space-between;
	margin-bottom:2rem;
}

#index02 ul li {
	width:48%;
	margin-right:0 !important;
}

#index02 .box01 dl {
	width:100%;
	margin-bottom:1.5rem;
}

#index02 .box01 dl dt {
	margin-bottom:1rem;
}

#main section#index03 {
	padding:2rem 0;
}

#main section#index03 p.bottom90 {
	margin-bottom:3rem;
}

#index03 ul li {
	width:100%;
	writing-mode: horizontal-tb;
	min-height:inherit;
}

#index03 ul li p{
	padding:10px;
	text-align:center;
}

#index03 ul li i  {
	padding:5px;
	
	/*90度右回転*/
	-moz-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
}

#index04 {
	padding-top:2rem;
}

#index04 table td {
	padding:7px;
	word-break:keep-all;
}
#index04 table td.table_head {
	font-size:1.1em;
	padding:3px 10px;
}

#index04 table td.tategaki {    
	width: 10%;
	writing-mode: inherit;
}

#index05 p.bottom75 {
	margin-bottom:2.5rem;
}

#index05 .box1280 p.bottom75 {
	margin-bottom:6rem;
}

#index05 ol li {
    padding: 15% 1.5rem 4.5rem 1.5rem;
}

#main section#index06 ul li {
	width:100%;
}

#main section#index06 ul li a {
	padding: 2.5rem 0 1rem 0;
}

}

@media (max-width: 480px){}

/*company*/
#company #main table td {
	padding:10px;
}

#company #main table td:nth-child(1) {
	background:#FAFAFA;
}


/*contact*/
#contact #main table {
	margin:0 0 3rem 0;
}

#contact #main table th,
#contact #main table td:nth-child(1) {
	width:30%;
	padding:15px;
}

#contact #main table td {
	padding:15px;
}

#contact #main table td input[type="text"] ,
#contact #main table td input[type="email"],
#contact #main table td input[type="tel"],
#contact #main table td input[type="date"] {
	height:35px;
	padding:0.5rem;
	width:80%;
	border:1px solid #CCC;
}

#contact #main table td input[type="date"] {
	border:1px solid #CCC;
	height:35px;
	padding:0.5rem;
	width:20%;
}

#contact #main table td input[type="text"]:focus,
#contact #main table td input[type="email"]:focus,
#contact #main table td input[type="tel"]:focus,
#contact #main table td input[type="date"]:focus,
#contact #main table td textarea:focus {
	outline: 0;
	-moz-box-shadow: inset 0 0 4px rgba(0,0,0,0.2);
	-webkit-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2);
	box-shadow: inner 0 0 4px rgba(0, 0, 0, 0.2);
}


#contact #main table td span.sp_btm10 {
	display:block;
	margin-bottom:0.5rem;
}

#contact #main table td span small {
	display:inline-block;
	padding:0.25rem 0.5rem;
	background:#135fa7;
	color:#FFF;
	font-size:0.8em;
	position:relative;
	top:-3px;
}

#contact #main table td textarea {
	width:100%;
	border:1px solid #CCC;
	padding:0.5rem;
}

#contact #main table td span.required {
	background:#FF0000;
	color:#FFF;
	font-size:0.8em;
	padding:0.15rem 0.5rem;
	display:inline-block;
	margin-left:0.5rem;
}

#contact p.kakunin {
	text-align:center;
}

#contact p.submit_btn {
	text-align:center;
	margin-bottom:1.5rem !important;
}

#contact p.submit_btn input {
	font-size:1.4em;
	padding:0.75rem 1.5rem;
	margin:0 1rem;
	border:1px solid #CCC;
}

div.wpcf7-validation-errors, div.wpcf7-acceptance-missing, div.wpcf7-response-output {
	border:2px solid #FF0000;
	padding:1rem;
	text-align:center;
	background:#FFFFFF;
	color:#FF0000;
	margin-left:0;
	margin-right:0;
}

span.wpcf7-list-item {
	margin:0 0.75rem 0 0 !important;
}

#contact #main table td strong {
	font-size:1.2em;
	margin-bottom:0.5rem;
	display:block;
}

#contact #main table td #privacy_box {
	font-size:0.8em;
	max-height:180px;
	overflow:auto;
	background:#FFF;
	padding:1rem;
}

#contact #main table td #privacy_box p {
	margin-bottom:0.5rem;
}

#contact #main table td.birth input[type="text"] {
	width:10%;
}


@media (max-width: 1024px){

#contact #main table {
	margin:0 0 1rem 0;
	width: 100%;
	table-layout: fixed;
	word-break: break-all;
	word-wrap: break-all;
}

#contact #main table th,
#contact #main table td:nth-child(1) {
	width:100%;
}


#contact #main table td:nth-child(1) {
	width:100%;
	border-bottom:none;
	font-size:1em;
}

#contact .content_wrapper p span {
	font-size:1em !important;
}

#contact #main table td input[type="text"] ,
#contact #main table td input[type="email"],
#contact #main table td input[type="tel"] {
	width:100%;
	font-size:16px;
}

#contact #main table td input[type="date"] {
	width:100%;
}

#contact #main table td.birth input[type="text"] {
	width:20%;
}

#contact #main table td span small {
	font-size:1em;
}

input[type=text],
textarea {
	font-size: 16px;
}

.wpcf7 table {
    border-bottom: 1px solid #DDD;
}

.wpcf7 table th,
.wpcf7 table td {
	width:100%;
	display:block;
	border-bottom:none;
}

p.soshin input {
	font-size:1.2em;
	padding:0.5rem 1rem;
}

#contact p.submit_btn input {
}

}

/*pagenav*/
.pagenav {
	clear: both;
	padding: 3rem 0 0 0;
	text-align: center;
}
a.page-numbers, .pagenav .current {
	background: #fff;
	border: solid 1px #ddd;
	padding: 5px 10px;
	margin: 5px 2px;
	text-decoration: none;
}
.pagenav .current {
	background: #135fa7;
	border: solid 1px #587724;
	color: #fff;
}

@media (max-width: 1280px) {
.pagenav {
	clear: both;
	padding: 1.5rem 0 0 0;
	text-align: left;
}
}

@media screen and (min-width:1024px){
#sp_contact {
	display:none;
}
}

@media (max-width:1024px) {
#sp_contact {
    position: fixed !important;
    bottom: 0rem;
    right: 0;
	width: 100%;
	z-index:9999;
	border-top: 1px solid #FFF;
	border-bottom: 1px solid #FFF;
}

#sp_contact ul {
	position:relative;
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#sp_contact li {
	box-sizing:border-box;
    width: 50%;
}

#sp_contact li a {
    background: #991e35;
    text-decoration: none;
    color: #fff;
    padding: 15px 0;
    text-align: center;
	letter-spacing: 0rem;
    display: block;
	width:100%;
	font-size:1.2em;
}

#sp_contact li:nth-child(1) {
	border-right: 1px solid #FFF;
}

#sp_contact a:hover {
    text-decoration: none;
}

#sp_contact li a i {
	margin-right:0.5rem;
}

}





/*ページトップ
***************************************/
div.scroll-btn {
	position: fixed;
	right: 1.5rem;
	z-index: 10000;
}

div.scroll-btn a {
	background: rgba( 204, 204, 204, 0.5);
	width: 50px;
	height: 50px;
	display: block;
	text-align: center;
	transition: .2s ease-in-out;
	-moz-transition: .2s ease-in-out;
	-webkit-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	-ms-transition: .2s ease-in-out;
}

div.scroll-btn a:hover {
	background: #111;
}

div.scroll-btn a i {
	font-size: 60px;
	line-height: .8;
	color: #fff;
	opacity: .8;
	transition: .2s ease-in-out;
	-moz-transition: .2s ease-in-out;
	-webkit-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	-ms-transition: .2s ease-in-out
}

div.scroll-btn a:hover i {
	color: #FFF;
	opacity: 1;
}


.flex_wrapper {
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.flex_wrapper:after {
	content:none;
}


/* 1カラム flex */

.gallery-columns-1,
.gallery-columns-1 ul,
.gallery-columns-1 ol {
}

.gallery-columns-1 > div,
.gallery-columns-1 dl,
.gallery-columns-1 ul li,
.gallery-columns-1 ol li {
	margin-bottom:1.5rem;
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.gallery-columns-1 > div:after,
.gallery-columns-1 dl:after,
.gallery-columns-1 ul li:after,
.gallery-columns-1 ol li:after {
	content:none;
}

.gallery-columns-1 > div > figure,
.gallery-columns-1 dl dt,
.gallery-columns-1 ul li figure,
.gallery-columns-1 ol li figure {
	width:30%;
	margin-bottom:0.5rem;
}

.gallery-columns-1 > div > figure img,
.gallery-columns-1 dl dt img,
.gallery-columns-1 ul li figure img,
.gallery-columns-1 ol li figure img {
	max-width:100%;
	height:auto;
}

.gallery-columns-1 > div > .box_inner01,
.gallery-columns-1 dl dd,
.gallery-columns-1 ul li .box_inner01,
.gallery-columns-1 ol li .box_inner01 {
	width:66%;
}


/* 2カラム flex */

.gallery-columns-2,
.gallery-columns-2 ul,
.gallery-columns-2 ol {
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.gallery-columns-2:after,
.gallery-columns-2 ul:after,
.gallery-columns-2 ol:after {
	content:none;
}

.gallery-columns-2 > div,
.gallery-columns-2 dl,
.gallery-columns-2 ul li,
.gallery-columns-2 ol li {
	width:48%;
	margin-bottom:1.5rem;
}

.gallery-columns-2 > div > figure,
.gallery-columns-2 dl dt,
.gallery-columns-2 ul li figure,
.gallery-columns-2 ol li figure {
	margin-bottom:0.5rem;
}

.gallery-columns-2 ul li a > img,
.gallery-columns-2 ol li a > img {
	max-width:100%;
	height:auto;
}

.gallery-columns-2 > div > figure img,
.gallery-columns-2 dl dt img,
.gallery-columns-2 ul li figure img,
.gallery-columns-2 ol li figure img {
	max-width:100%;
	height:auto;
}


/* 3カラム flex */

.gallery-columns-3,
.gallery-columns-3 ul,
.gallery-columns-3 ol {
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.gallery-columns-3:after,
.gallery-columns-3 ul:after,
.gallery-columns-3 ol:after {
	content:none;
}

.gallery-columns-3 > div,
.gallery-columns-3 dl,
.gallery-columns-3 ul li,
.gallery-columns-3 ol li {
	width:32%;
	margin-bottom:1.5rem;
}

.gallery-columns-3 > div:nth-child(3n+2):last-child,
.gallery-columns-3 dl:nth-child(3n+2):last-child,
.gallery-columns-3 ul li:nth-child(3n+2):last-child,
.gallery-columns-3 ol li:nth-child(3n+2):last-child {
    margin-right: 34%;
}

.gallery-columns-3 > div > figure,
.gallery-columns-3 dl dt,
.gallery-columns-3 ul li figure,
.gallery-columns-3 ol li figure {
	margin-bottom:0.5rem;
}

.gallery-columns-3 > div > figure img,
.gallery-columns-3 dl dt img,
.gallery-columns-3 ul li figure img,
.gallery-columns-3 ol li figure img {
	max-width:100%;
	height:auto;
}

@media (max-width: 1024px){
.gallery-columns-3 > div,
.gallery-columns-3 dl,
.gallery-columns-3 ul li,
.gallery-columns-3 ol li {
	width:48%;
	margin-bottom:1rem;
}

.gallery-columns-3 > div:nth-child(3n+2):last-child,
.gallery-columns-3 dl:nth-child(3n+2):last-child,
.gallery-columns-3 ul li:nth-child(3n+2):last-child,
.gallery-columns-3 ol li:nth-child(3n+2):last-child {
    margin-right: 0;
}
}


/* 4カラム flex */
.gallery-columns-4,
.gallery-columns-4 ul,
.gallery-columns-4 ol {
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.gallery-columns-4:after,
.gallery-columns-4 ul:after,
.gallery-columns-4 ol:after {
	content:none;
}

.gallery-columns-4 > div,
.gallery-columns-4 dl,
.gallery-columns-4 ul li,
.gallery-columns-4 ol li {
	width:24%;
	margin-bottom:1.5rem;
}

.gallery-columns-4 > div:nth-child(4n+2):last-child,
.gallery-columns-4 dl:nth-child(4n+2):last-child,
.gallery-columns-4 ul li:nth-child(4n+2):last-child,
.gallery-columns-4 ol li:nth-child(4n+2):last-child {
    margin-right: 50.6%;
}

.gallery-columns-4 > div:nth-child(4n+3):last-child,
.gallery-columns-4 dl:nth-child(4n+3):last-child,
.gallery-columns-4 ul li:nth-child(4n+3):last-child,
.gallery-columns-4 ol li:nth-child(4n+3):last-child {
    margin-right: 25.3%;
}

.gallery-columns-4 > div > figure,
.gallery-columns-4 dl dt,
.gallery-columns-4 ul li figure,
.gallery-columns-4 ol li figure {
	margin-bottom:0.5rem;
}

.gallery-columns-4 > div > figure img,
.gallery-columns-4 dl dt img,
.gallery-columns-4 ul li figure img,
.gallery-columns-4 ol li figure img {
	max-width:100%;
	height:auto;
}



/*ブログ*/

#main.blog_list {
	padding-bottom:3rem;
}

.blog_list ul.category-list {
	margin-bottom:3rem;
	padding:1.5rem;
	background:#F5F5F5;
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
}

.blog_list ul.category-list:after {
	content:none;
}

.blog_list ul.category-list li {
	width:32%;
	margin-right:2%;
	margin-bottom:0.5rem;
}

.blog_list ul.category-list li:nth-child(3n) {
	margin-right:0;
}

.blog_list ul.category-list li a {
	display:block;
	background:#135fa7;
	color:#FFF;
	padding:1rem;
	text-align:center;
}

.blog_list ul.blog_post_list {
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
}

.blog_list ul.blog_post_list:after {
	content:none;
}

.blog_list ul.blog_post_list li {
	width:24%;
	margin-right:1.3%;
	padding:0.5rem;
	border:1px solid #DDD;
	margin-bottom:1.5rem;
}

.blog_list ul.blog_post_list li:nth-child(4n) {
	margin-right:0
}

.blog_list ul.blog_post_list li figure {
	margin-bottom:0.5rem;
}

.blog_list ul.blog_post_list li img {
	width:100%;
	height:auto;
}

.blog_list ul.blog_post_list li h2 {
	font-size:1.2em;
}

.blog_list ul.blog_post_list li span.date {
	display:block;
	text-align:right;
	font-size:0.8em;
}

#main.blog_single {
	padding-bottom:4.5rem;
}

.blog_single p {
	margin-bottom:1.5rem;
}

.blog_single h2 {
    font-size: 1.6em;
    margin-bottom: 2rem;
    font-weight: bold;
    background: url(../../images/bg_ptn03.jpg) repeat;
    padding: 0.5rem 1rem;
    color: #FFF;
    border-radius: 0.5rem;
}

.blog_single h2:before {
    content: "\f040";
    font-family: FontAwesome;
    margin-right:0.5rem;
	color:#FFF;
}

.blog_single h3 {
    font-size: 1.3em;
    margin-bottom: 1.5rem;
    font-weight: bold;
    border-bottom: 3px solid #04afcd;
    padding-bottom: 0.5rem;
    padding-left: 0.5rem;
}

.blog_single h3:before {
    content: "\f054";
    font-family: FontAwesome;
    margin-right:0.5rem;
	color:#04afcd;
}

.blog_single h4 {
    font-size: 1.2em;
    margin-bottom: 0.5rem;
    font-weight: bold;
}

.blog_single p em {
	text-decoration:underline;
}

.blog_single strong {
	font-weight:bold;
}

.blog_single .date {
	display:block;
	text-align:right;
	font-size:0.8em;
}

.blog_single .box1280 img {
	max-width:100%;
}

.blog_single .wp-block-media-text,
.blog_single .wp-block-image {
	margin-bottom:1.5rem;
	padding:1.5rem;
	background:#F5F5F5;
}

.blog_single .wp-block-media-text .wp-block-media-text__content {
	padding: 0 1.5rem;
}

@media (max-width: 1024px){
#main.blog_list {
	padding-bottom:1rem;
}

.blog_list ul.category-list {
	-webkit-justify-content: space-between;
	justify-content: space-between;
	padding:10px;
	margin-bottom:1.5rem;
}

.blog_list ul.category-list li {
	width:48%;
	margin-right:0;
	margin-bottom:0.25rem;
}

.blog_list ul.category-list li a {
	padding:0.5rem;
}

.blog_list ul.blog_post_list {
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.blog_list ul.blog_post_list li {
	width:48%;
	margin-right:0;
	margin-bottom:1rem;
}

.blog_list ul.blog_post_list li h2 {
	font-size:1em;
}

#main.blog_single {
	padding-bottom:2rem;
}

.blog_single h2 {    
	font-size: 1.3em;
    margin-bottom: 1.5rem;
    font-weight: bold;
    padding: 0.25rem 1rem;
}

.blog_single h3 {
	font-size:1.2em;
	margin-bottom:1rem;
    font-weight: bold;
}

.blog_single h4 {
    font-size: 1.1em;
    margin-bottom: 0.5rem;
    font-weight: bold;
}


.blog_single .box1280 img {
	max-width:320px;
	height:auto;
}

.blog_single .wp-block-media-text,
.blog_single .wp-block-image {
	text-align:center;
}

.blog_single .wp-block-media-text .wp-block-media-text__content {
	padding: 0;
}
}





@media (max-width: 680px){
.scroll {
  overflow-x: auto; /* x方向にスクロール表示 */
  -webkit-overflow-scrolling: touch; /* スマホでスクロールをスムーズな動きにする */
  position: relative;
}
.scroll:after {
  content:"＞"; /* 矢印 */
  position: absolute;
  right:50px; /* 初期位置 */
  font-size:80px; /* 大きさ */
  margin-top: -40px;
  top:50%;
  opacity: 0; /* 透明度100%で実質非表示 */
}
.scroll.show:after {
   opacity: 0.2; /* 透明度の変化で表示させる */
   transition: .8s; /* アニメーション */
   right:5px; /* 移動 */
}
.scroll.del:after { /* 矢印を隠す */
   display: none;
}
}