@charset "utf-8";

/*
theme Name: W0703_dl
Author: 
Description: original theme
version： 
*/

/*contact form 7 add confirm*/
form.wpcf7-form{
	margin-top: -88px;
	padding-top: 88px;
}

.custom-wpcf7c-confirmed .check .wpcf7-list-item-label:before {
    content:none;
}

input:-webkit-autofill.wpcf7c-conf {
  -webkit-box-shadow: 0 0 0px 1000px #fff inset !important;
  border: none !important;
  background: #fff !important; }
  input:-webkit-autofill.wpcf7c-conf:focus {
    border: none !important; }

.wpcf7c-conf {
  background: #fff !important;
  border-color: #fff !important; }
  .wpcf7c-conf:focus {
    border-color: transparent !important; }

.wpcf7 form.sent .wpcf7-response-output {
	background:#fff;
}
/*contact form 7 add confirm ここまで*/

p:empty:before {
    content: "​";
	display:none;
}

.single-post .category{
	display:inline-block;
	text-align:center;
	margin:0 0 10px 0;
	line-height:1.6em;
}
	
.single-post .category p{
	display:inline-block;
	margin:0 5px 10px 0;
	color:#005bac;
	background:#faf725;
	padding:5px 20px;
	border-radius:100px;
	line-height:1.6em;
}


.single-post .article-content p.data{
	padding:40px 0 0 0;
	border-top:1px solid #000000;
}

.n2-section-smartslider{
	padding:0 0 30px 0;
}

.wp-block-image {
    margin-bottom: 1em;
}

.article-content .article-info {
    margin-bottom: .5rem;
}

.article-content p,
.article-content img,
.article-content table,
.article-content ul,
.article-content ol {
  text-align: left;
}

.custom-wpcf7c-confirmed {
    border: none;
	padding:0;
}

.container{
	padding:0 20px;
}

.single-article .subtit{
	text-align:center;
	font-size:14px;
	margin:20px 0 0 0;
}

.single-article h1{
	padding:20px 0 30px 0;
	text-align:center;
}

.single-article .article-info{
	text-align:center;
}

.single-article .wp-block-group{
	padding:0 0 30px 0;
}

.container h2{
	padding:60px 0 60px 0;
	text-align:center;
	font-size:40px;
	color:#000;
}

.thanks_txt{
	font-size:18px;
	line-height:2em;
	color:#000;
}
@media screen and (max-width: 800px) {
.works_link{
	text-align:center;
	padding:0 20px 60px 20px;
}
	
.works_link li{
	display:block;
	border-left:none;
}

.works_link li a{
	padding:10px;
	font-size:16px;
	width:100%;
	box-sizing:border-box;
	display:block;
	border-bottom:1px solid #000;
}

.works_link li:last-child{
	border-right:none;
}
	
.single-post .category{
	display:block;
	text-align:center;
	font-size:12px;
	margin:0 0 10px 0;
	line-height:1.6em;
}
	
.single-post .category p{
	margin:0 0 10px 0;
	padding:5px 20px;
	line-height:1.6em;
}
	
.single-post .article-content p.data{
	padding:40px 0 0 0;
	border-top:1px solid #000000;
}
	
.container{
	margin:40px 0 60px 0;
	padding:0 20px;
}

.container h2{
	padding:30px 0 30px 0;
	text-align:center;
	font-size:24px;
}

.thanks_txt{
	font-size:15px;
	line-height:2em;
	color:#000;
}

}

/* contact */
.select_tit{
	font-weight:bold;
	font-size:18px;
	padding:0 0 30px 0;
}

.select_tit label{
	padding:0 10px;
}

.select_tit span{
	padding:0 3px;
}

.wpcf7-list-item-label:hover{
	cursor:pointer;
}

.formbox input[type="text"],
.formbox input[type="email"],
.formbox input[type="tel"]{
    width: 100%;
    padding: 7px 2%;
    background: #fafafa;
    -webkit-appearance: none;
    font-size: 100%;
    box-sizing: border-box;
    border:1px solid #CCC;
    border-radius: 3px;
}

.formbox .wpcf7c-conf{
    border:1px solid #EA6006 !important;
}

.formbox textarea {
    width: 100%;
    height: 100px;
    padding: 7px 2%;
    resize: vertical;
    border:1px solid #CCC;
    border-radius: 3px;
    background: #fafafa;
    -webkit-appearance: none;
    font-size: 100%;
    box-sizing: border-box;
}

.formbox input[type="submit"],
.formbox input[type="button"]{
	padding: 15px 20px;
	border: none;
	border-radius: 3px;
	background: #7d7d7d;
	font-size: 18px;
	color: #fff;
	-webkit-appearance: none;
	font-weight:bold;
}

.formbox input[type="button"]{
	margin:0 10px 0 0;
}


.formbox input[type="submit"]:hover,
.formbox input[type="button"]:hover{
	cursor: pointer;
	color:#fff;
	background: #484848;
	transition: all 0.3s;
}

.formbox p{
	padding: 5px 0;
	overflow: hidden;
	font-weight:bold;
	color:#484848;
}

.formbox p.center{
	text-align:center;
}
@media screen and (max-width: 800px) {
.single-article .subtit{
	text-align:center;
	font-size:13px;
	margin:20px 0 0 0;
}
	
.select_tit{
	font-weight:bold;
	font-size:16px;
	padding:0 0 20px 0;
}

.select_tit label{
	padding:0 10px;
	display:block;
	margin-top:-3px;
}
.buy_area .select_tit span.wpcf7-list-item {
    position: relative;
    padding: 0 0 0 20px;
}

.buy_area .select_tit input[type=checkbox] {
    position: absolute !important;
    left: 0;
	top:-1px;
}
	
.formbox input[type="text"],
.formbox input[type="email"],
.formbox input[type="tel"]{
    width: 100%;
    padding: 7px 2%;
    border-radius: 3px;
	font-size:16px;
    background: #fafafa;
    -webkit-appearance: none;
    box-sizing: border-box;
}

.buy_area span.wpcf7-list-item{
	position:relative;
	padding:0 0 0 32px;
}

input[type=checkbox] {
	position: absolute !important;
	left:0;
}
	
.formbox textarea {
    width: 100%;
    height: 100px;
    padding: 7px 2%;
    resize: vertical;
    border-radius: 3px;
    background: #fafafa;
    -webkit-appearance: none;
	font-size:16px;
    box-sizing: border-box;
}

.formbox input[type="submit"],
.formbox input[type="button"]{
	padding: 15px 20px;
	border: none;
	border-radius: 3px;
	background: #7d7d7d;
	font-size: 14px;
	color: #fff;
	-webkit-appearance: none;
	font-weight:bold;
	margin:10px auto 0;
	width:138px;
	box-sizing:border-box;
	display:block;
}

.formbox input[type="submit"]:hover,
.formbox input[type="button"]:hover{
	cursor: pointer;
	color: #484848;
	background: #ebebeb;
	border: none;
	transition: none;
}
	
.formbox input[type="button"]{
	margin:10px auto 10px;
}

.formbox p{
	padding: 5px 0;
	overflow: hidden;
	font-weight:bold;
	color:#484848;
}
}



/* news */

.container .type-post{
	padding:0;
}

.type-post{
	display:table-cell;
	vertical-align:middle;
	font-size:12px;
	padding:0 0 0 80px;
}

.post-date{
	padding:0 20px 0 0;
}

.post-title{
	text-decoration:underline;
}

.post-title a{
	font-size:14px;
	color:#0b152e;
}

.new-txt{
	position: absolute;
    left: 0;
    top: -1px;
    width: 47px;
    border: 1px solid #e60012;
    font-size: 11px;
    text-align: center;
    color: #e60012;
	box-sizing:border-box;
}
@media screen and (max-width: 800px) {
.type-post{
	display:block;
	font-size:12px;
	padding:0;
}

.post-date{
	padding:0;
}

.post-title{
	font-size:14px;
	text-decoration:underline;
	display:block;
	padding:5px 0 0 0;
}

.new-txt{
    position: absolute;
    left: 65px;
    top:-1px;
    width: 47px;
    border: 1px solid #e60012;
    font-size: 11px;
    text-align: center;
    color: #e60012;
	box-sizing:border-box;
}
}


#sidebar{
	display:none;
}

.current{
	font-size:12px;
}
.bogo-language-switcher {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
}
.bogo-language-switcher .ja {
	order: 1;
}
.bogo-language-switcher .en-US {
	order: 2;
}
.bogo-language-switcher .zh-CN {
	order: 3;
}
.bogo-language-switcher .zh-TW {
	order: 4;
}
@media screen and (max-width: 800px) {
.current{
	color:#fff;
	font-size:12px;
}
}

/*---------------------------------------------------------
ヘッダー
---------------------------------------------------------*/
.site-title-wrap {
  text-align: left;
}

/*タイトルを画像にする場合*/
.site-title a {
  font-weight: bold;
  line-height: 1;
  display: inline-block;
  text-decoration: none;
}

.site-title a img {
  display: inline-block;
  width: auto;
  height: 44px;
}

/*タイトルを文字列にする場合*/
/* .site-title a {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1;
  display: inline-block;
  text-decoration: none;
  color: #000;
} */



/*---------------------------------------------------------
サイドバー
---------------------------------------------------------*/
.sidebar-wrapper {
  margin-bottom: 2rem;
}

.sidebar-title {
  font-size: 1.1rem;
  box-sizing: border-box;
  margin: 0 0 1.2rem;
  padding: .5rem;
  color: #000;
  border-bottom: 4px solid #03162f;
}

/*デフォルトウィジェット*/
.widget_recent_entries ul,
.widget_meta ul,
.widget_recent_comments ul,
.widget_pages ul,
.widget_meta ul,
.widget_categories ul,
.widget_archive ul,
.widget_nav_menu ul,
.calendar_wrap,
.tagcloud {
  list-style: none;
}

.widget_recent_entries li,
.widget_meta li,
.widget_recent_comments li,
.widget_pages li,
.widget_meta li,
.widget_archive li,
.widget_nav_menu li {
  position: relative;
  margin-bottom: .5rem;
}

.widget_recent_entries a,
.widget_meta a,
.widget_recent_comments a,
.widget_pages a,
.widget_meta a,
.widget_categories a,
.widget_archive a,
.widget_nav_menu a {
  text-decoration: none;
  color: #333;
}

.sidebar-wrapper a:hover {
  opacity: .6;
}

/*カテゴリウィジェット*/
.widget_categories li {
  display: block;
  margin-bottom: .5rem;
}

.widget_categories li a {
  font-size: .95rem;
  position: relative;
  display: block;
  padding: .9rem .6rem .9rem 2rem;
  color: #fff;
  background-color: #03162f;
}

.widget_categories li a::before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  position: absolute;
  top: 50%;
  left: .6rem;
  content: '\f02b';
  transform: translateY(-50%);
  color: #fff;
}

.widget_categories .children {
  margin-bottom: .5rem;
  padding: 0;
  padding-left: 1rem;
  background-color: #415671;
}

.widget_categories .children li {
  margin-bottom: 0;
}

.widget_categories .children li a {
  font-size: .9rem;
  background-color: transparent;
}

.widget_categories .children li a::before {
  position: absolute;
  top: 50%;
  left: .6rem;
  content: '∟';
  transform: translateY(-50%);
  color: #fff;
}

/*カテゴリウィジェットとアーカイブウィジェットのドロップダウン表示*/
.widget_categories .screen-reader-text {
  display: none;
}

.widget_archive .screen-reader-text {
  position: relative;
  display: block;
  height: 0;
  text-indent: -9999999px;
}

.widget_categories form {
  position: relative;
}

.widget_categories form::after {
  position: absolute;
  top: 50%;
  right: 1rem;
  content: '▼';
  transform: translateY(-50%);
  pointer-events: none;
}

.widget_categories .postform,
.widget_archive select {
  font-size: .95rem;
  width: 100%;
  padding: 4px 10px;
  cursor: pointer;
  border: 1px solid #e0e3ef;
  border-radius: 0;
  background-color: #f4f5f9;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.widget_archive label::after {
  position: absolute;
  top: .5rem;
  right: 1rem;
  content: '▼';
  text-indent: 0;
  pointer-events: none;
}

/*タグウィジェット*/
.tagcloud a {
  font-size: .9rem !important;
  line-height: 1;
  position: relative;
  display: inline-block;
  margin-bottom: .5rem;
  padding: .2rem .5rem;
  text-decoration: none;
  color: #03162f;
  border: 1px solid #000;
  background-color: #fff;
}

/*メニューウィジェット*/
.widget_nav_menu li a {
  font-size: 1rem;
  font-weight: bold;
  position: relative;
  padding-left: 1.3rem;
  color: #333;
}

.widget_nav_menu li a::before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  position: absolute;
  top: 50%;
  left: 0;
  content: '\f105';
  transform: translateY(-50%);
  color: #03162f;
}

/*最近の投稿*/
.widget_recent_entries li {
  padding-bottom: .5rem;
  border-bottom: 1px solid #ddd;
}

.widget_recent_entries li a:before {
  font-family: 'Font Awesome 5 Free';
  font-weight: bold;
  font-weight: 900;
  position: absolute;
  left: 5px;
  content: '\f303';
  color: #000;
}

.widget_recent_entries li a {
  display: block;
  margin-bottom: .3rem;
  padding-left: 1.6rem;
}

.widget_recent_entries .post-date {
  font-size: .8rem;
  display: block;
}

/*カレンダーウィジェット*/
.calendar_wrap {
  padding: 1rem;
  border: 1px solid #ddd;
}

.calendar_wrap table {
  width: 100%;
}

.calendar_wrap tbody {
  text-align: center;
}

.calendar_wrap caption {
  font-weight: bold;
  margin-bottom: 1rem;
}

.calendar_wrap td {
  padding: .3rem 0;
}

.calendar_wrap tfoot td {
  padding-top: .7rem;
}

.calendar_wrap tfoot td:last-child {
  text-align: right;
}

/*---------------------------------------------------------
記事一覧
---------------------------------------------------------*/
.archive-top h1 {
font-size: 1.6rem;
margin-bottom: 1.5rem;
}

.archive-top p {
font-size: .875rem;
line-height: 1.7;
margin-bottom: 1.5rem;
}

.article-list {
  margin-bottom: 1rem;
  padding: 1rem;
  border: 1px solid #ddd;
}

.article-list:hover {
  background-color: #eee;
}

.article-list a {
  display: block;
  text-decoration: none;
  color: #333;
}

.article-list a:after {
  display: block;
  clear: both;
  content: '';
}

.article-list .img-wrap {
  position: relative;
  float: left;
  line-height: 1;
}

.article-list .img-wrap img {
  width: 240px;
  height: 160px;
  object-fit: cover;
}

.article-list .img-wrap .cat-data {
  font-size: .75rem;
  position: absolute;
  top: 0;
  right: 0;
  padding: .3rem .5rem;
  color: #fff;
  background-color: #03162f;
}

.article-list .text {
  margin-left: 260px;
}

.article-list .text h2 {
  font-size: 1.15rem;
  margin-bottom: .5rem;
}

.article-list .text .article-date,
.article-list .text .article-author {
  font-size: .75rem;
  font-weight: bold;
  display: inline-block;
  margin-bottom: .5rem;
  color: #888;
}

.article-list .text .article-date {
  margin-right: .5rem;
}

.article-list .text .article-author i {
  margin-right: .3rem;
}

.article-list .text p {
  font-size: .8125rem;
  line-height: 1.7;
}

/*ページネーション*/
.pagination {
  margin: 2rem 0;
  text-align: center;
}

.pagination ul {
  font-size: 0;
}

.pagination ul li {
  font-size: 1rem;
  display: inline-block;
  margin-right: .5rem;
}

.pagination ul li:last-child {
  border: 0;
}

.pagination ul li a,
.pagination .current {
  display: block;
  padding: .5rem .8rem;
  border: 1px solid #ccc;
}

.pagination ul li .prev,
.pagination ul li .next {
  border: 0;
}

.pagination ul li a {
  text-decoration: none;
  color: #333;
}

.pagination ul li a:hover {
  opacity: .6;
}

.pagination .current {
  color: #fff;
  background-color: #03162f;
}

/*---------------------------------------------------------
投稿・固定ページ
---------------------------------------------------------*/
.article-content {
	max-width:1100px;
	margin:70px auto 200px;
	display:block;
}

@media screen and (max-width: 800px) {
.article-content {
	margin:0 auto;
}
}

.article-content .article-info {
  margin-bottom: .5rem;
}

.article-content .cat-data a {
  font-size: .8rem;
  margin-right: .5rem;
  padding: .1rem .5rem;
  text-decoration: none;
  color: #fff;
  background-color: #03162f;
}

.article-content .article-info .article-date{
  font-size: 18px;
  display: block;
  padding:20px 0 0 0;
}
.article-content .article-info .article-author {
  font-size: 26px;
  display: block;
}

.article-content .article-info .article-author i {
  margin-right: .3rem;
}

.article-content p,
.article-content b,
.article-content table,
.article-content ul,
.article-content ol {
  font-size: 16px;
  line-height: 1.7;
  letter-spacing: 1px;
}

.article-content p,
.article-content img,
.article-content table,
.article-content ul,
.article-content ol {
  margin-bottom: 2rem;
  line-height:1.8em;
}

.article-content h1 {
  font-size: 38px;
  padding:0 0 10px 0;
	line-height:1.4em;
  letter-spacing: 0.1em;
}

.article-content h2 {
  font-size: 1.7rem;
  margin: 3rem 0 2rem;
  padding: .4rem 0;
  letter-spacing: 1px;
  border-bottom: solid 5px #03162f;
}

.article-content h3 {
  font-size: 1.5rem;
  margin: 2.5rem 0 1.8rem;
  padding: 0 1rem;
  letter-spacing: 1px;
  border-left: solid 7px #415671;
  background: transparent;
}

.article-content h4 {
  font-size: 1.3rem;
  margin: 2rem 0 1rem;
  letter-spacing: 1px;
}

.article-content h5 {
  font-size: 1.1rem;
  margin: 0 0 .3rem;
  letter-spacing: 1px;
}

.article-content .article-img {
  margin-bottom: 2rem;
}

.article-content .article-img img {
  display: block;
  margin: 0 auto;
}

.article-content ul {
  margin-left: 2rem;
  list-style: disc;
}

.article-content ol {
  margin-left: 2rem;
  list-style: decimal;
}

.article-content table {
  border-collapse: collapse;
}

.article-content th,
.article-content td {
  padding: .6rem;
  vertical-align: middle;
  border: 1px solid #ddd;
}

.article-content figure {
  max-width: 100%;
}

.article-tag {
  text-align: right;
}

.article-tag ul {
  font-size: 0;
  margin-bottom: 0;
}

.article-tag ul li {
  font-size: .9rem;
  display: inline-block;
  margin-right: .5rem;
  vertical-align: middle;
}

.article-tag ul li:last-child {
  margin-right: 0;
}

.article-tag ul li a {
  padding: .2rem .5rem;
  text-decoration: none;
  color: #000;
  border: 1px solid #000;
}

.article-tag ul li a:hover {
  opacity: .6;
}

@media screen and (max-width: 800px) {
.article-content p,
.article-content b,
.article-content table,
.article-content ul,
.article-content ol {
  font-size: 14px;
  line-height: 2em;
  letter-spacing: 1px;
}
	
.article-content .article-info .article-date{
  font-size: 14px;
  display: block;
  padding:10px 0 10px 0;
	text-align:center;
}
.article-content .article-info .article-author {
  font-size: 18px;
  display: block;
}
}

/*---------------------------------------------------------
TOPページ
---------------------------------------------------------*/
.home-top .article-top .img-wrap img {
  width: 600px;
  height: 400px;
}

.home-top .article-top .text {
  margin-left: 630px;
}

.home-top .article-top .new-post {
  font-weight: bold;
  display: block;
  margin-bottom: .5rem;
  color: #f00;
}

.home-top .article-top .text h2 {
  font-size: 1.6rem;
  margin-bottom: 1rem;
}

.home-top .article-top .text .article-date,
.home-top .article-top .text .cat-data {
  margin-bottom: 1rem;
}


@media(max-width: 800px) {
  .contents,
  .sidebar {
    float: none;
    width: 100%;
    margin-right: 0;
  }

.single-article h1 {
    padding: 20px 0 0 0;
    text-align: center;
}
.article-content h1 {
  font-size: 20px;
  margin: 0 0 0 0;
  letter-spacing: 0.1em;
	text-align:center;
  font-weight:bold;
}
}

.back{
	text-align:center;
	padding:100px 0 120px 0;
}

.back a{
	font-size:22px;
	display:inline-block;
}
@media(max-width: 800px) {
.back{
	text-align:center;
	padding:40px 0 40px 0;
}

.back a{
	font-size:16px;
}
}