﻿a, abbr, acronym, address, applet, article, aside, audio, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, dhtml, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit
}


/* HTML5 display-role reset for older browsers */

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block
}

body {
  line-height: 1;
  min-width: 1110px;
}
.tc-center {
    text-align: center;
}
cite {
  word-break: break-all;
}

blockquote, blockquote.twitter-tweet {
  margin: 20px auto !important;
}


/* ツイートウィジェットが表示されない時は↓のデザインで表示 */

blockquote.twitter-tweet.twitter-tweet-error {
  display: table;
  width: 500px;
  margin: 20px auto !important;
  border: 2px solid #ccc;
  background: #fff;
  border-radius: 10px;
  padding: 20px;
  box-shadow: 4px 4px 0px rgba(155, 155, 155, 0.3);
}


/* ツイッター用中央寄せ */

.twitter-tweet.twitter-tweet-rendered {
  margin: 20px auto !important;
  border: 2px solid #ccc;
  border-radius: 10px;
  box-shadow: 4px 4px 0px rgba(155, 155, 155, 0.3);
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

body {
  /*color: #353432;*/
  color:rgba( 53, 52, 50, 0.9 );
  /*color:darken(#353432, 10%);*/
  font-family: 'Noto Sans JP', sans-serif, "メイリオ", Meiryo, "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  background: #eee;
  height: 100%;
  font-size: 19.2px;
}

table {
  border-collapse: collapse;
}


/* テキストの寄せ（左、中央、右） */

.left {
  text-align: left;
}

.center {
  text-align: center;
}

.right {
  text-align: right;
}


/* サンプルコード */

pre, code {
  text-align: left;
  background: #000;
  color: #fff;
  padding: 0px;
  line-height: 1.5;
  font-size: 13px;
  font-family: 'ＭＳ ゴシック';
}

pre {
  margin: 5px;
  padding: 10px;
}

pre {
  overflow-x: scroll;
}

pre::-webkit-scrollbar {
  height: 10px;
}


/*バーの太さ*/

pre::-webkit-scrollbar-track {
  background: #dddddd;
}


/*バーの背景色*/

pre::-webkit-scrollbar-thumb {
  background: #2cc2e4;
}


/*バーの色*/


/*--------------------------------------------------*/


/*  link
----------------------------------------------------*/

a {
  color: #000000;
  text-decoration: underline;
  font-weight: 600;
}

a.outlink::after {
  content: "\f08e";
  font-family: FontAwesome;
}

a, a::before, a::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

header img, header img::before, header img::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
  margin: 0;
  padding: 0;
}

html {
  height: 100%;
}

.clear {
  clear: both;
}

p {
  margin-bottom: 20px;
  padding-left: 14px;
  padding-right: 14px;
}


/*------------------------------------------------------
                 wrapper
-------------------------------------------------------*/

#container {
  width: 100%;
  margin: 0 auto;
  display: block;
}

#header {
  width: 100%;
  z-index: 1;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#2e125e+0,121c87+100 */
  background: url("../image/bg_night.png"), url("../image/top_back2.png"), #013E85;
  /* Old browsers */
  background: url("../image/bg_night.png"), url("../image/top_back2.png"), -moz-linear-gradient(to bottom, #013E85 18%, #013E85 18%, #0067AA 43%, #0795cc 74%, #0795cc 74%, #4fabd0 100%);
  /* FF3.6-15 */
  background: url("../image/bg_night.png"), url("../image/top_back2.png"), -webkit-linear-gradient(to bottom, #013E85 18%, #013E85 18%, #0067AA 43%, #0795cc 74%, #0795cc 74%, #4fabd0 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: url("../image/bg_night.png"), url("../image/top_back2.png"), linear-gradient(to bottom, #013E85 18%, #013E85 18%, #0067AA 43%, #0795cc 74%, #0795cc 74%, #4fabd0 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari*/
  background-repeat: repeat-x;
  background-position: center 110%;
}


/*------------------------------------------------------
                 header
-------------------------------------------------------*/

header {
  width: 1100px;
  margin: 0 auto;
  position: relative;
  padding: 0;
}

header #hd_left {
  position: relative;
  width: 100%;
  margin: 0px auto;
  padding: 15px 0px;
  text-align: center;
}

header #hd_left img {
  width: 275px;
  height: 58px;
}

#hd_right h1 {
  position: absolute;
  top: 45%;
  font-size: 24px;
  font-weight: bolder;
  background-image: linear-gradient(#453fa8 0.05em, transparent 0.05em);
  background-size: auto 2em;
  border-bottom: #453fa8 solid 0.05em;
  line-height: 2em;
  display: table-cell;
  vertical-align: middle;
  color: #fff;
}

header p {
  width: 1100px;
  font-size: 12px;
  margin: 0 auto;
  text-align: center;
}

header #sitemap_icon a {
  font-size: 15px;
  font-weight: bolder;
  position: absolute;
  top: 10px;
  right: 0px;
  width: 150px;
  padding: 15px;
  text-decoration: none;
  text-align: center;
  background: #FF5722;
  color: #fff;
  border-radius: 15px;
  /* CSS3草案 */
  -webkit-border-radius: 15px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 15px;
  /* Firefox用 */
  outline: none;
  border: 3px solid #fff;
}

header #sitemap_icon a:hover {
  background: #FF9800;
  color: #000;
}

header img:hover {
  cursor: pointer;
  filter: alpha(opacity=60);
  -ms-filter: "alpha(opacity=60)";
  -moz-opacity: 0.6;
  -khtml-opacity: 0.6;
  opacity: 0.6;
  zoom: 1;
}


/*----------------------*/


/*		更新日		*/


/*----------------------*/

.update {
  margin: 0px;
  display: block;
  text-align: right;
}

.update .udbox {
  display: inline-block;
  font-size: 14px;
  line-height: 1;
  padding: 8px 15px;
  border-radius: 5px;
}

.update .udbox::before {
  content: "更新日：";
}

.update .udbox::after {
  content: "";
  display: block;
  clear: both;
}


/*--------------------------------------------------*/


/*  パンくずリスト                                */


/*--------------------------------------------------*/

#Breadcrumbs {
  margin: 0px 0px 20px;
  padding: 0px;
}

#Breadcrumbs li {
  display: inline-block;
  font-size: 14px;
  line-height: 20px;
}

#Breadcrumbs li:last-child {
  color: #303030;
}

#Breadcrumbs li:not(:last-child):after {
  display: inline-block;
  content: "\f105";
  padding: 0 5px;
  color: #808080;
  font-family: FontAwesome;
  font-style: normal;
  font-size: 12px;
  line-height: 20px;
}

#Breadcrumbs li a {
  color: #183483;
  text-decoration: underline;
}

#Breadcrumbs p {
  font-size: 13px;
}

#FootPrint {
  font-size: 11px;
  padding: 9px;
}

#FootPrint a {
  text-decoration: underline;
  color: #2aafea;
}


/*------------------------------------------------------
                SiteTitle
-------------------------------------------------------*/

.title {
  width: 1100px;
  height: 50px;
  background: #fff;
  margin: 0 auto;
  padding: 30px 0;
}


/*------------------------------------------------------
                   MenuNavi
-------------------------------------------------------*/

.menuNavi {
  position: relative;
  overflow: hidden;
  width: 100%;
  margin: 0 auto;
  padding: 15px 0px;
  background: #013e85;
  display: inline-block;
  text-decoration: none;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#1a3996+43,516191+100 */
  /*	background: #1a3996; /* Old browsers */
  /*	background: -moz-linear-gradient(top, #1a3996 43%, #516191 100%); /* FF3.6-15 */
  /*	background: -webkit-linear-gradient(top, #1a3996 43%,#516191 100%); /* Chrome10-25,Safari5.1-6 */
  /*	background: linear-gradient(to bottom, #1a3996 43%,#516191 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  /*	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1a3996', endColorstr='#516191',GradientType=0 ); /* IE6-9 */
}

.menuNavi ul {
  width: 1100px;
  margin: 0 auto;
  list-style: none;
}

.menuNavi ul li {
  margin: 0px 0px;
  float: left;
  text-align: center;
}

.button::before, .button::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.button {
  font-size: 15px;
  line-height: 1;
  display: block;
  color: #fff;
  padding: 5px 20px;
  text-decoration: none;
  font-weight: bold;
  border-right: 1px dotted #fff;
}

.button a {
  font-weight: normal !important;
}

.button::before {
  content: "★";
  font-size: 90%;
  color: #fce427;
  margin-right: 7px;
}

.button a:active {
  background: #00b400;
}

.button1:hover {
  color: #ffd000;
}


/*border:#fff 1.5px solid; }*/

.button2:hover {
  color: #ffd000;
}


/*border:#00A29A 1.5px solid; }*/

.button3:hover {
  color: #ffd000;
}


/*border:#22AC38 1.5px solid; }*/

.button4:hover {
  color: #ffd000;
}


/*border:#EA5514 1.5px solid; }*/

.button5:hover {
  color: #ffd000;
}


/*border:#FFD000 1.5px solid; }*/


/*------------------------------------------------------
                 FootPrint
-------------------------------------------------------*/

.FootPrint {
  width: 100%;
  font-size: 12px;
  margin: 0px auto;
  margin-bottom: 15px;
}


/*------------------------------------------------------
                 SettingContents
-------------------------------------------------------*/

#wrapper {
  width: 1100px;
  margin: 8px auto;
  overflow: hidden;
}

#wrapper .mainbox {
  width: 794px;
  margin-left: 10px;
  float: right;
  padding: 15px 0px;
}

#wrapper .rightbox {
  width: 280px;
  float: left;
}

.ccl {
  clear: both;
}


/*------------------------------------------------------
                 MainContents
-------------------------------------------------------*/

.mainbox p {
  margin-bottom: 30px;
}

.mainbox h1 {
  font-size: 25px;
  line-height: 35px;
  font-weight: bold;
  padding: 0px 0px 18px 0px;
}

.mainbox h2 {
  padding: 10px 20px;
  background: #59499c;
  font-weight: bold;
  font-size: 22px;
  color: #fff;
  margin-bottom: 30px;
  padding-left: 30px;
  position: relative;
}

.mainbox h2:before {
  content: "";
  position: absolute;
  width: 7px;
  top: 0;
  bottom: 0;
  line-height: 0;
  left: 10px;
  margin: 10px 0px;
  background: #907fd8;
}

.mainbox h3 {
  padding: 10px;
  border: 4px solid #8278d6;
  background: #fff5ff;
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 20px;
}

.mainbox h3:before {
  content: "★";
  color: #8278d6;
  margin-right: 5px;
}

.mainbox h4 {
  font-size: 19px;
  font-weight: 600;
  margin-bottom: 10px;
  border-bottom: 4px solid #8278d6;
  padding: 10px;
}

.h4_table p {
  margin-bottom: 15px;
  padding-left: 10px;
  padding-right: 10px;
}

.mainbox h5 {
  font-size: 17px;
  font-weight: 600;
  margin-bottom: 10px;
  padding: 10px;
}

.mainbox h5::before {
  content: '';
  border-left: 7px double #FF9900;
  padding-right: 15px;
}

.mainbox {
  line-height: 1.8em;
}


/* 追加(20/04/13) 小見出し */

.heading {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 10px;
  border-left: 4px solid #8278d6;
  padding: 10px;
  color: #000;
}


/* 内部リンク */

.link {
  font-size: 17px;
  text-align: right;
}

.link::before {
  color: #ff6e4c;
  content: "\f0da";
  font-family: FontAwesome;
  font-style: normal;
  font-size: 18px;
}

.outline {
  width: 70%;
  margin: 40px auto;
  padding: 15px;
  background: #f7f7f7;
  border-top: 5px solid #67a5e4;
  box-shadow: 1px 1px 0px #ccc;
}

.outline a {
  color: #1563b1 !important;
}

.outline p {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  margin: 0 0 15px 0;
}

.outline ul {
  width: 75%;
  margin: 0px;
  padding: 0px 35px !important;
}

.outline li.sub {
  margin-left: 30px;
}

.mark {
  color: red;
  font-weight: bold;
}

.mainbox a {
  text-decoration: underline;
  color: #ef6906;
}

.mainbox a:hover {
  text-decoration: none;
  filter: alpha(opacity=50);
  /* IE 6,7*/
  -ms-filter: "alpha(opacity=80)";
  /* IE 8,9 */
  -moz-opacity: 0.5;
  /* FF , Netscape */
  -khtml-opacity: 0.5;
  /* Safari 1.x */
  opacity: 0.5;
  zoom: 1;
  /*IE*/
}

.mainbox p.linkbtn {
  width: 500px;
  margin: 0 auto;
}

.mainbox p.linkbtn a {
  text-align: center;
  display: block;
  color: #fff;
  background: #ff1493;
  margin: 0 auto;
  padding: 10px;
  border-radius: 5px;
  /* CSS3草案 */
  -webkit-border-radius: 5px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 5px;
  /* Firefox用 */
  outline: none;
}

.mainbox p.linkbtn a:hover {
  background: #ff1493;
}

.textBox p, .textBox ul, .textBox ol {
  overflow: auto;
  display: block;
}

.textBox table {
  margin: 20px auto;
  display: inline-block;
  border: none !important;
}

ul.check_point, ol.check_point {
  overflow: auto;
  display: block;
  margin: 15px;
  background: #fff;
  border: 1px solid #ccc;
  padding: 15px 35px 15px 40px;
}

.check_point2 td {
  padding: 20px !important;
  border: 0px !important;
  line-height: 1.7em;
}

article img {
  display: inline-block;
  margin: auto;
  text-align: center;
}

.mainbox img.img_float {
  display: block;
  max-width: 65%;
  margin: auto;
  padding: 0px 0px 15px;
  clear: both;
}
.mainbox img.img_float{
  width: 516px;
  height: 321px;
}

.mainbox ul.reaction {
  width: 22%;
  padding: 0px 10px 0px 0px;
  float: left;
}

.mainbox ul.reaction2 {
  width: 15%;
  padding: 0px;
  float: left;
  margin-left: 5px;
}

.mainbox ul.reaction3 {
  width: 32%;
  padding: 0px;
  float: left;
  margin-left: 0px;
}

.mainbox ul.reaction li, .mainbox ul.reaction2 li, .mainbox ul.reaction3 li {
  margin: 0px;
  padding: 0px;
  list-style: normal;
}

.clear {
  clear: both;
}

.mainbox table {
  max-width: 700px;
  font-size: 92%;
  padding: 20px;
  margin: 12px auto;
  line-height: 1.5em;
  border: 1px solid #8c8c8c;
}

.mainbox table th img, .mainbox table td img {
  max-width: 100%;
}

.mainbox table.ra td {
  padding: 25px;
  border: 1px solid #ccc;
}

.mainbox caption {
  text-align: left;
}

.mainbox tr {
  padding: 10px;
  background: #fff;
}

.mainbox th {
  background: #ccc;
  padding: 5px;
  border: 1px solid #8c8c8c;
}

.mainbox td {
  padding: 10px;
  border: 1px solid #8c8c8c;
}

.mainbox .t_gradation tr {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ff3236+0,003aea+100 */
  background: #ff3236;
  /* Old browsers */
  background: -moz-linear-gradient(left, #ff3236 0%, #003aea 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #ff3236 0%, #003aea 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #ff3236 0%, #003aea 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff3236', endColorstr='#003aea', GradientType=1);
  /* IE6-9 */
  color: #fff;
}

.mainbox .t_gradation td {
  border: 0px;
}

.mainbox ul {
  margin: 0px 15px;
  padding: 15px 35px;
  margin-bottom: 20px;
}

.comment_t {
  padding-left: 1em;
  padding-right: 1em;
}

.comment {
  padding-left: 1.5em;
  padding-right: 1.5em;
}


/*-----------------------------------------------------------
                    Q&A用の吹き出し
---------------------------------------------------------- */


/* 画像 */

dl.qanda {
  margin: 20px;
  min-height: 50px;
  border-bottom: 1px dotted #000;
}

dl.qanda dd {
  min-height: 90px;
  margin: auto 0px;
}

dl.qanda .left {
  padding: 1px 0px;
  background-position: 0% 50%;
  background-repeat: no-repeat;
}

dl.qanda .right {
  padding: 0px 0px;
  background-position: 100% 50%;
}

dl.qanda .men_d-9 {
  background-image: url(../image/tokuchou/d-9.png);
  background-repeat: no-repeat;
}

dl.qanda .men_d-11 {
  background-image: url(../image/tokuchou/d-11.png);
  background-repeat: no-repeat;
}

dl.qanda .men_d-12 {
  background-image: url(../image/tokuchou/d-12.png);
  background-repeat: no-repeat;
}

dl.qanda .men_d-13 {
  background-image: url(../image/tokuchou/d-13.png);
  background-repeat: no-repeat;
}

dl.qanda .men_d-15 {
  background-image: url(../image/tokuchou/d-15.png);
  background-repeat: no-repeat;
}

dl.qanda .girl_d-10 {
  background-image: url(../image/tokuchou/d-10.png);
  background-repeat: no-repeat;
}

dl.qanda .girl_d-14 {
  background-image: url(../image/tokuchou/d-14.png);
  background-repeat: no-repeat;
}

dl.qanda .girl_d-16 {
  background-image: url(../image/tokuchou/d-16.png);
  background-repeat: no-repeat;
}


/* 強調タグ */

.red {
  color: red;
}

.bold {
  font-weight: bold;
  color: #000;
  font-size: 17px;
}

.point {
  font-weight: bold;
  color: #000;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #ff6));
  background: linear-gradient(transparent 70%, #ff6 70%);
  background: -webkit-linear-gradient(transparent 70%, #ff6 70%);
}

.que {
  color: #0484ce;
}

.red-b {
  color: red;
  font-weight: bold;
}

.blue-b {
  color: #0484ce;
  font-weight: bold;
}


/* 追加(20/04/06) 文字サイズ大 */

.big {
  font-size: 150%;
  font-weight: bold;
}

.fs12 {
  font-size: 12px!important;
}

.fs14 {
  font-size: 14px!important;
}

.fs16 {
  font-size: 16px!important;
}

.fs18 {
  font-size: 18px!important;
}


/* マイナスマージン */

.mt-20 {
  margin-top: -20px!important;
}

.mt-30 {
  margin-top: -30px!important;
}

.mt-40 {
  margin-top: -40px!important;
}

.mt-50 {
  margin-top: -50px!important;
}

.mt-60 {
  margin-top: -60px!important;
}

.mt-70 {
  margin-top: -70px!important;
}

.mb-20 {
  margin-bottom: -20px!important;
}

.mb-30 {
  margin-bottom: -30px!important;
}

.mb-40 {
  margin-bottom: -40px!important;
}

.mb-50 {
  margin-bottom: -50px!important;
}

.mb-60 {
  margin-bottom: -60px!important;
}

.mb-70 {
  margin-bottom: -70px!important;
}


/* /画像 */

.qa_balloon {
  position: relative;
  background: #e5f7fd;
  /* 吹き出し四角の色 */
  padding: 10px;
  font-weight: bold;
  padding-left: 2em;
  padding-right: 1em;
  text-indent: -1.3em;
  margin: 15px 0px 25px 100px;
  /* 吹き出しの幅(順序：上 右 下 左)を変える */
  border: 0px solid #555;
  border-radius: 5px;
  /* CSS3草案 */
  -webkit-border-radius: 5px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 5px;
  /* Firefox用 */
}

.qa_balloon:before, .qa_balloon:after {
  position: absolute;
  left: -7px;
  top: 30%;
  border: solid transparent;
  content: '';
  height: 0px;
  width: 0px;
  border-width: 10px;
  margin: 0 0 0 0px;
}

.qa_balloon:before {
  border-right-color: transparent;
  /* 吹き出し口線の色 */
  margin-left: -13px;
}

.qa_balloon:after {
  border-right-color: #e5f7fd;
  /* 吹き出し矢印の色 */
  margin: 0 -1px 0 -12px;
}

.an_balloon {
  position: relative;
  background: #fde4e8;
  /* 吹き出し四角の色 */
  padding: 10px;
  font-weight: bold;
  padding-left: 2em;
  padding-right: 1em;
  text-indent: -1em;
  margin: 15px 100px 25px 0px;
  /* 吹き出しの幅(順序：上 右 下 左)を変える */
  border: 0px solid #555;
  border-radius: 5px;
  /* CSS3草案 */
  -webkit-border-radius: 5px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 5px;
  /* Firefox用 */
}

.an_balloon:before, .an_balloon:after {
  position: absolute;
  right: -21px;
  top: 50%;
  border: solid transparent;
  content: '';
  height: 0px;
  width: 0px;
  border-width: 10px;
  margin: 0 0 0 0px;
}

.an_balloon:before {
  border-left-color: transparent;
  /* 吹き出し口線の色 */
  margin-left: 13px;
}

.an_balloon:after {
  border-left-color: #fde4e8;
  /* 吹き出し矢印の色 */
  margin: 0 1px 0 12px;
}


/*------------------------------------------------------
                 SideContents
-------------------------------------------------------*/

.menutable {
  width: 265px;
}

.menutable h3 {
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  display: block;
  padding: 12px;
  margin: 15px 0px 0px 0px;
  background: #59499c;
}

.menutable h3::before {
  content: "▼";
  margin-right: 7px;
  color: #a291ea;
}

.menutable h3 a:hover {
  background: #456ad8;
  color: #fff;
  transform: rotate(0deg);
}

.menutable ul {
  margin: 0px 0px 30px;
  padding: 7px;
  background-color: #fff;
  border: 2px solid #59499c;
}

.menutable li {
  display: list-item;
  list-style-type: none;
  text-transform: uppercase;
  padding: 0px;
  border-bottom: 1px solid #ccc;
  font-size: 15px;
  line-height: 18px;
  text-indent: -23px;
}

.menutable li:last-child {
  border-bottom: 0px;
}

.menutable li a {
  padding: 6px 0px 6px 22px;
  display: block;
  text-decoration: none;
  font-weight: normal;
}

.menutable li a::before {
  content: "\f0da";
  padding: 0px 10px;
  font-style: normal;
  font-family: FontAwesome;
}

.menutable li a:hover {
  display: block;
  text-decoration: underline;
  font-weight: normal;
  color: #183483;
}

.menubana {
  width: 280px;
  text-align: center;
}

.menubana img {
  width: 250px;
  height: 250px;
  box-shadow: 2px 2px 3px #999;
  margin: 0 auto;
}


/*----------------------------------------------------
				購入ボタン
-------------------------------------------------------*/

.btn {
  /* display:table; */
  margin: 40px auto;
  text-align: center;
}

.btn a {
  display: inline-block;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  padding: 25px 60px;
  margin: 10px auto;
  position: relative;
  /* background: -webkit-linear-gradient(#4caf50,#029e07);
	background: linear-gradient(#4caf50,#029e07); */
  background: #1abd05;
  color: #fff;
  border: 3px solid #fff;
  border-radius: 10px;
  text-decoration: none;
  box-shadow: 0px 4px 12px 1px rgba(0, 0, 0, 0.2);
}

.btn a:after {
  content: "\f054";
  font-family: FontAwesome;
  position: absolute;
  line-height: 0;
  width: 0;
  height: 0;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 20px;
  font-weight: normal;
  font-size: 0.6rem;
}


/* 上矢印 */

.btn.ar-top a::after {
  content: "\f077";
}


/* 下矢印 */

.btn.ar-bottom a::after {
  content: "\f078";
}

.btn.buy a {
  background: #d45858;
  border-color: #9e3a0a;
}


/* (※追加 /19/12/27) ボタン(取り扱いなしver) */

.btn a.nolink {
  background: #8c8c8c;
  opacity: 0.6;
}

.btn a.nolink:hover {
  opacity: 0.65;
}

.btn a.nolink::after {
  content: none;
}

.btn.buy a:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 4px;
  border-radius: 8px;
  border: dashed #fff 1px;
}


/* (※追加 19/12/26) ボタン：薄黄ver */

.btn.yellow a {
  background: -webkit-linear-gradient(#1B8CF6, #0071BD);
  background: linear-gradient(#1B8CF6, #0071BD);
  color: #ffffff!important;
  border-radius: 10px;
  border: 3px solid #0071BC;
  font-weight: normal;
}

.btn.bluebn a {
  background: none;
  color: #0067aa!important;
  border: 3px solid #0067aa;
}


/*------------------------------------------------------
                 Footer
-------------------------------------------------------*/

footer {
  width: 100%;
  background: #000;
  padding: 0;
  margin: 40px 0 0 0;
  color: #fff;
}

footer h2 {
  border-bottom: 1px solid #fff;
  padding: 10px 0;
}

footer #ftc {
  width: 1000px;
  margin: 0 auto;
  padding: 20px 0;
}

footer #copyright {
  text-align: center;
  color: #fff;
  padding: 10px;
  font-size: 11px;
}

footer .ftl {
  width: 300px;
  padding: 20px;
  float: left;
  line-height: 1.5em;
}


/*------------------------------------------------------------
            TOPページボタン
-------------------------------------------------------------*/

#pageTop {
  position: fixed;
  bottom: 45px;
  right: 45px;
}

#pageTop a {
  text-decoration: none;
  font-size: 30px;
  display: block;
  color: #000;
  background: #fce427;
  width: 50px;
  height: 50px;
  padding: 7px;
  text-align: center;
  z-index: 999;
  display: block;
  text-align: center;
  border-radius: 65px;
  -webkit-border-radius: 65px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 65px;
  /* Firefox用 */
}

#pageTop a:hover {
  text-decoration: none;
  opacity: 0.6;
}


/*  ↓9/13
------------------------------------------------------------ */

.goods {
  width: 85%;
  margin: 20px auto;
  border: 1px solid #ccc;
  background: #fff;
  box-sizing: border-box;
  padding: 15px;
}

.goods .goods_label {
  padding: 15px;
  color: #FFF;
  background: #4e83c7;
  margin-bottom: 20px;
  font-size: 23px;
  line-height: 1;
  position: relative;
}

.goods .goods_label::before {
  content: "\f186";
  font-family: FontAwesome;
  color: yellow;
  margin-right: 7px;
}

.goods .goods_label::after {
  content: "";
  border: 10px solid transparent;
  border-top: 15px solid #4e83c7;
  position: absolute;
  width: 0;
  height: 0;
  left: 15%;
  bottom: -22px;
}

.goods .goodsimg, .goods .goodsinfo {
  display: inline-block;
  vertical-align: top;
}

.goods .goodsimg {
  width: 250px;
  height: 200px;
  margin-right: 10px;
}

.goods .goodsimg img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: contain;
}

.goods .goodsinfo {
  width: calc(100% - 270px);
}

.goods .goodsinfo .goodsinfo_tag dt, .goods .goodsinfo .goodsinfo_tag dd {
  display: inline-block;
  vertical-align: top;
  margin-bottom: 15px;
}

.goods .goodsinfo .goodsinfo_tag dt {
  width: 80px;
  text-align: center;
  font-size: 14px;
  background: #000;
  line-height: 1;
  padding: 5px;
  margin-right: 5px;
  color: #fff;
}

.goods .goodsinfo .goodsinfo_tag dd {
  width: calc(100% - 110px);
  margin-top: -5px;
}

.goods .goodsinfo .goodsinfo_tag dd ul {
  margin: 0 22px;
  padding: 0;
}


/* 口コミ */

.review {
  width: 85%;
  background: #fff;
  border: 2px solid #ccc;
  border-radius: 10px;
  margin: 30px auto;
  box-sizing: border-box;
  padding: 10px 20px 20px;
  box-shadow: 4px 4px 0px rgba(155, 155, 155, 0.3);
}

.review_icon, .review_name {
  display: inline-block;
  vertical-align: middle;
  margin-bottom: 15px;
}

.review_icon {
  width: 86px;
  height: 86px;
  margin-right: 20px;
}

.review_icon img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: contain;
}

.review_name {
  width: calc(100% - 130px);
  margin: 0 0 20px;
  padding: 10px 0;
  font-size: 16px;
  font-weight: bold;
  border-bottom: 2px solid #ccc;
}

.review_text .review_info {
  display: block;
  text-align: right;
  font-size: 12px;
  line-height: 1;
  margin: 30px 0px 0px;
  padding: 0;
}


/* 2019/10/15追加：通販サイトの比較表用 .table-hikaku */

.table-hikaku th {
  background-color: #c4eeff;
}


/* 表に背景色と枠を付ける */

.mainbox table .table-point {
  border: 3px solid #f31616;
  background: #fff57a;
  color: #f31616;
  font-weight: bold;
}


/* (あしとみが追加 /19/12/12) 価格表
---------------------------------- */

.table_scroll, .scroll-area {
  width: auto;
  margin: 40px 10px 20px;
  /*	white-space: nowrap;*/
  overflow-x: scroll;
}

.table_scroll::-webkit-scrollbar, .scroll-area::-webkit-scrolbar {
  height: 5px;
}

.table_scroll::-webkit-scrollbar-track, .scroll-area::-webkit-scrollbar-track {
  background: #ccc;
}

.table_scroll::-webkit-scrollbar-thumb, .scroll-area::-webkit-scrollbar-thumb {
  background: #999;
}

.comparison {
  max-width: 100%;
  border-collapse: collapse;
  margin: 40px auto 20px!important;
}

.mainbox table.comparison {
  border: none;
}

.table_scroll>.comparison {
  margin: 0 0 20px!important;
}

.comparison th, .comparison td {
  padding: 10px;
  font-size: 14px;
  border: 1px solid #aaa;
  vertical-align: middle;
}

.comparison th {
  font-weight: bold;
  background: #4e83c7;
  color: #fff;
  line-height: 1.1;
  text-align: left;
  width: 70px;
  min-width: 70px;
}


/* 20/04/15 テーブル項目固定表示 */

.table_scroll .comparison th:first-child, .scroll-area .comparison th:first-child {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
  z-index: 2;
}

.table_scroll .comparison th:first-child::after, .scroll-area .comparison th:first-child::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 2px 4px 1px rgba(179, 179, 179, 0.8);
}

.comparison.th30 th {
  width: 10%!important;
  max-width: 10%!important;
}

.comparison td {
  width: 140px;
  min-width: 140px;
}


/* ▽2列の場合 */

.comparison.col2 td {
  width: calc(100%/2);
}


/* ▽3列の場合 */

.comparison.col3 td {
  width: calc(100%/3);
}


/* ▽5列の場合 */

.comparison.col5 td {
  width: calc(100%/5);
}

.comparison td img {
  display: block;
  width: 120px;
  height: 100px;
  max-width: 120px!important;
  object-fit: contain;
  margin: 0 auto!important;
}


/* ▽ランキング仕様 */

.comparison .ranking {
  counter-reset: ranking;
}

.comparison .ranking td::after {
  content: counter(ranking);
  counter-increment: ranking;
  display: inline-block;
  position: absolute;
  top: 3px;
  left: 3px;
  background: #dfdfdf;
  font-weight: bold;
  font-size: 12px;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
}

.comparison .ranking td:nth-of-type(1)::after {
  background-color: #ffc233;
}

.comparison .ranking td:nth-of-type(2)::after {
  background-color: #34495e;
  color: #fff;
}

.comparison .ranking td:nth-of-type(3)::after {
  background-color: #dd7f7f;
}

.comparison td ul {
  padding: 0;
  list-style-type: none;
}

.comparison td ul li {
  margin-bottom: 10px;
  list-style: disc;
  line-height: 1.5;
}

.comparison td.link_area {
  text-align: center;
  position: relative;
}

.comparison td.link_area figcaption {
  font-weight: bold;
  font-size: 12px;
  padding: 5px 0;
}

.comparison td.link_area, .comparison td.base {
  vertical-align: inherit;
}

.comparison td .btn {
  display: block;
  margin: 0;
  padding: 0;
}

.comparison td .btn a {
  font-size: 12px;
  color: #fff;
  min-width: 120px;
  max-width: 100%;
  margin: 0 auto 8px;
  padding: 15px 10px;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 95px;
}


/* .comparison td .btn a::after{
	content: none;
} */

.comparison td .btn a::after {
  right: 14px;
}

.comparison td .btn.yellow a, .comparison td .btn.bluebn a {
  display: block!important;
  height: auto!important;
}


/* 枠強調(テーブル用)単体 */

.tb-border, .border-f, .border, .border-l, tr.tb-line td {
  font-weight: bold;
  background: #fff57a!important;
  text-align: center;
}


/* 枠強調(テーブル用)一列 */

td.border-f, td.border, td.border-l {
  border-left: 3px solid #ffaf27!important;
  border-right: 3px solid #ffaf27!important;
  position: relative;
}

tr.tb-line td {
  border-top: 3px solid #ffaf27!important;
  border-bottom: 3px solid #ffaf27!important;
}

.comparison th .bf-tag, .comparison td .bf-tag {
  display: block;
  position: absolute;
  /*min-width: 70%;
  max-width: 90%;*/
  background: #ff6;
  border: 1px solid #dfdfdf;
  color: #333;
  font-weight: bold;
  text-align: center;
  font-size: 13px;
  margin-bottom: -20px;
  padding: 3px 5px;
  top: -34px;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 10px;
  z-index: 1;
  white-space: nowrap;
}

.comparison th .bf-tag::before, .comparison td .bf-tag::before {
  content: "\f0a7";
  font-family: FontAwesome;
  padding-right: 5px;
  font-size: 20px;
}


/* ▽(※追加 20/04/02) グループ分けタグ */
tr.tb_group, tr.tb_group th, tr.tb_group td {
  border: none!important;
  background: none;
}

tr.tb_group th, tr.tb_group td {
  padding: 0;
}


/* グループ1(青) */
tr.tb_group td.group_1 span {
  background: #0484ce;
}


/* グループ2(オレンジ) */
tr.tb_group td.group_2 span {
  background: #ff8040;
}


/* グループ3(緑) */

tr.tb_group td.group_3 span {
  background: #4caf50;
}

tr.tb_group td.group_1 span, tr.tb_group td.group_2 span, tr.tb_group td.group_3 span {
  color: #fff;
  font-weight: bold;
  font-size: 0.9em;
  /* border-radius: 5px; */
  display: block;
  padding: 5px;
  position: relative;
  text-align: center;
}

.re_col2 th, .re_col2 td {
  border: none;
  border-top: 1px solid #aaa;
  border-bottom: 3px solid #aaa;
  padding: 12px 8px;
}

.re_col2 th:first-child {
  border-right: 1px solid #aaa;
}

.re_col2 th:first-child, .re_col2 td:first-child {
  width: 27%;
  min-width: 27%;
}

.re_col2 td:nth-child(2) {
  width: 73%;
  min-width: 73%;
}


/*▼(追加 /20/06/01) テーブル項目色、幅調整
---------------------------------- */

.comparison.re_simple th, .comparison.re_simple td {
  border-color: #bcbcbc;
}

.comparison.re_simple th {
  padding: 15px;
  font-size: 13px;
  /* background: #ebebeb;
	color: #000; */
}

.table_scroll .comparison.re_simple th:first-child, .scroll-area .comparison.re_simple th:first-child, .table_scroll .comparison.re_simple td:first-child, .scroll-area .comparison.re_simple td:first-child {
  border-left-color: transparent!important;
  border-right-color: transparent!important;
}

.table_scroll .comparison.re_simple td:first-child, .scroll-area .comparison.re_simple td:first-child {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
  z-index: 7;
  background: #fff;
}

.table_scroll .comparison.re_simple td:first-child::after, .scroll-area .comparison.re_simple td:first-child::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.table_scroll .comparison.re_simple th:first-child::after, .scroll-area .comparison.re_simple th:first-child::after, .table_scroll .comparison.re_simple td:first-child::after, .scroll-area .comparison.re_simple td:first-child::after {
  box-shadow: 10px 0px 25px 1px rgba(0, 0, 0, 0.2);
}

.comparison.re_simple td .btn a {
  padding: 12px 10px!important;
  height: auto;
}


/* ▽▽各リンクへジャンプ▽▽ */

.link_item {
  max-width: 100%;
  margin: 0 0 10px;
  list-style: none;
}

.link_item li a {
  display: inline-block;
  position: relative;
  padding: 0 0 10px 15px;
  text-decoration: underline;
  font-weight: bold;
}

.link_item li a::before {
  content: "\f105\f105";
  font-family: FontAwesome;
  position: absolute;
  top: 0;
  left: 0;
}


/* 追加(20/04/08) テーブルリサイズ */

.comparison.re3 {
  width: 100%;
  max-width: 100%!important;
}


/* ▼(あしとみが追加 /19/12/13) 吹き出し
---------------------------------- */

.coment {
  width: 100%;
  margin: 1.5em 0;
  overflow: hidden;
}

.coment .coment-icon {
  float: left;
  margin-right: -90px;
  width: 80px;
  text-align: center;
}

.coment-icon figcaption {
  font-weight: normal;
  font-size: 13px;
  font-weight: bold;
}

.coment .coment-icon img {
  width: 100%;
  height: 80px;
  object-fit: contain;
  border: solid 3px #ccc;
  background: #fff;
  border-radius: 50%;
}

.coment .coment-box {
  width: 100%;
}

.coment-inner {
  display: inline-block;
  position: relative;
  margin: 5px 0 0 105px;
  padding: 15px 10px;
  border-radius: 12px;
  background: #fff;
  border: 3px solid #ccc;
}

.coment-inner::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px;
  left: -19px;
  border: 12px solid transparent;
  border-right: 12px solid #fff;
  z-index: 2;
}

.coment-inner::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px;
  left: -24px;
  border: 12px solid transparent;
  border-right: 12px solid #ccc;
}

.coment-inner p {
  margin: 0;
  padding: 0;
  color: #333;
}


/* (※追加 19/12/23) 吹き出し(画像挿入時) */

.coment-inner.flex {
  display: flex;
  align-items: flex-start;
}

.coment-inner.flex img {
  width: 125px;
  max-width: 125px;
  padding: 0 5px;
}

.coment-inner.flex p {
  width: 100%;
  max-width: 100%;
}


/*▽▽ (※追加 19/12/18) 厳選内部リンク(画像)枠 ▽▽*/

.cl_area_cover {
  position: relative;
  margin: 30px 0 15px 0;
  padding: 50px 0 0;
}

.cl_area_cover * {
  box-sizing: border-box;
}

.cl_title {
  position: absolute;
  display: inline-block;
  top: 0;
  left: 0;
  width: 100%;
  color: #fff;
  background: #4e83c7;
  padding: 5px 0;
  font-weight: bold;
  text-align: center;
}

.cl_area_cover>p {
  line-height: 30px;
}

.choose_link_area {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 15px;
  padding: 0 0 10px!important;
  list-style: none;
}

.choose_link_area li {
  width: calc(95%/4);
}

.choose_link_area li figcaption {
  font-size: 15px;
}

.choose_link_area.col3 {
  justify-content: space-between;
}

.choose_link_area.col3 li {
  width: calc(90%/3);
}


/* ▽２×２ver */

.choose_link_area.col2 {
  justify-content: space-between;
}

.choose_link_area.col2 li {
  width: calc(95%/2);
  margin-bottom: 10px;
}

.choose_link_area a {
  display: inline-block;
}

.choose_link_area img {
  width: 100%!important;
  max-width: 100%;
  border: 2px solid #bababa;
  margin: 0!important;
}

.choose_link_area a:hover img {
  border-color: #d01d1d;
}


/* --------------------------------
* 追加(/20/03/11) swiper各スライド枠コード
* -------------------------------- */

.swiper-cover {
  margin: 20px 0;
}

.swiper-cover * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}


/* 全体のスタイル */

.swiper-wrapper {
  width: 100%;
  height: 200px;
  margin-bottom: 35px!important;
}


/* 全スライド共通スタイル */

.swiper-slide {
  width: 80%;
  height: 80%;
  border-radius: 5px;
}

.swiper-slide img {
  width: 100%;
  height: 100%;
  max-width: 100%;
}

.swiper-slide .review {
  width: auto;
  max-width: 100%;
  margin: 10px auto;
  padding: 10px;
}


/* (追加/20/03/05) 画像スライドショー */

.swiper-cover.recommend .swiper-slide .content-eyecatch {
  width: 100%;
  height: auto;
  overflow: hidden;
  position: relative;
  border-radius: 5px;
  border: 1px solid #dbdbdb;
  box-shadow: 0 2px 7px 1px rgba(0, 0, 0, 0.2);
}

.swiper-cover.recommend .swiper-slide .content-eyecatch::before {
  content: "";
  display: block;
  padding-top: 56.25%;
}

.eyecatch-back {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: -webkit-gradient( linear, left top, left bottom, from(rgba(3, 3, 3, 0.05)), color-stop(0.45, rgba(3, 3, 3, 0)), color-stop(0.65, rgba(3, 3, 3, 0.15)), to(rgba(3, 3, 3, 0.65)));
  background: linear-gradient( top, rgba(3, 3, 3, 0.05) 0%, rgba(3, 3, 3, 0) 45%, rgba(3, 3, 3, 0.15) 65%, rgba(3, 3, 3, 0.65));
  z-index: 3;
}

.swiper-cover.recommend .swiper-slide .content-eyecatch a:hover .eyecatch-back {
  /* background: -webkit-gradient(
		linear, left top, left bottom,
		from(rgba(9,9,9,0.05)),
		color-stop(0.45, rgba(9,9,9,0)),
		color-stop(0.65, rgba(9,9,9,0.05)),
		to(rgba(9,9,9,0.5)));
	background: linear-gradient(
		top,
		rgba(9,9,9,0.05) 0%,
		rgba(9,9,9,0) 45%,
		rgba(9,9,9,0.05) 65%,
		rgba(9,9,9,0.5)); */
  opacity: 0.7;
  transition: .2s;
}

.eyecatch-category {
  position: absolute;
  top: 5px;
  left: 5px;
  z-index: 10;
  color: #fff;
  display: inline-block;
  padding: 5px;
  font-size: 70%!important;
  font-weight: normal!important;
  background: #4e83c7;
  border-radius: 5px;
  letter-spacing: 1px;
}

.eyecatch-category.cat2 {
  background: #59499c!important;
}


/* .eyecatch-category.cat3{
	background: #E8C446!important;
} */

.eyecatch-title {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 10;
  font-size: 20px!important;
  font-weight: bold;
  color: #fff!important;
  line-height: 1.5;
  margin: 0!important;
  padding: 10px;
  border: none;
}

.eyecatch-title>.eyecatch-category {
  position: relative!important;
  left: 0!important;
  margin-bottom: 15px;
}

.eyecatch-title>.eyecatch-category::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 7px solid transparent;
  border-top: 7px solid #4e83c7;
  z-index: 10;
}

.eyecatch-title>.eyecatch-category.cat2::after {
  border-top-color: #59499c!important;
}


/* .eyecatch-title > .eyecatch-category.cat3::after{
	border-top-color: #E8C446!important;
} */


/* 関連記事用css */

.swiper-cover.relation .swiper-slide a {
  text-decoration: none;
}

.swiper-cover.relation .swiper-slide a:hover {
  text-decoration: underline;
}

.swiper-cover.relation .swiper-slide a:hover img {
  opacity: 0.8;
}

.swiper-cover.relation .eyecatch-category {
  top: 0;
  left: 0;
  padding: 6px;
  font-size: 75%;
}

.relation-image {
  width: 100%;
  max-width: 100%;
  height: 250px;
  position: relative;
}

.swiper-cover.relation .relation-image img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  object-fit: cover;
  vertical-align: bottom;
  margin: 0!important;
}

.swiper-cover.relation .relation-title {
  margin: 0 auto!important;
  padding: 5px 0!important;
  font-weight: normal;
  font-size: 15px!important;
  color: #353432;
}

.swiper-cover.relation .swiper-slide a:hover .relation-title {
  color: #ef6906!important;
}

.eyecatch-image {
  position: absolute;
  width: 100%;
  height: auto;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
}

.eyecatch-image img {
  position: absolute;
  width: 100%!important;
  height: 100%!important;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  object-fit: contain;
  /* font-family: 'object-fit:cover'; */
  vertical-align: bottom;
}


/* 前ページ、次ページボタン共通のスタイル */

.swiper-button-prev, .swiper-button-next {
  background-image: none!important;
  /* デフォルトのボタン画像を消す */
  display: block;
  width: 40px!important;
  /* ボタンの幅 */
  height: 40px!important;
  /* ボタンの高さ */
  margin-top: -43px;
  /* 縦中央配置用：ボタンの高さの半分のネガティブマージン（top:50%がすでに設定されている） */
  line-height: 40px;
  text-align: center;
  transform: translateY(-50%)!important;
  user-select: none;
}


/* 前ページボタンのスタイル */

.swiper-button-prev {
  left: 0px!important;
}

.swiper-button-prev:before {
  font-family: FontAwesome;
  content: "\f104";
  /* angle-double-leftのUnicode */
  font-size: 25px;
  color: #353432;
}


/* 次ページボタンのスタイル */

.swiper-button-next {
  right: 0px!important;
}

.swiper-button-next:before {
  font-family: FontAwesome;
  content: "\f105";
  /* angle-double-rightのUnicode */
  font-size: 25px;
  color: #353432;
}


/* .swiper-cover.recommend .swiper-button-prev,.swiper-cover.recommend .swiper-button-next,.swiper-cover.relation .swiper-button-prev,.swiper-cover.relation .swiper-button-next{
	background: rgba(0,0,0,0.35)!important;
	border-radius: 50%;
}
.swiper-cover.recommend .swiper-button-prev:before,.swiper-cover.recommend .swiper-button-next:before,.swiper-cover.relation .swiper-button-prev:before,.swiper-cover.relation .swiper-button-next:before{
	color: #fff!important;
} */

.swiper-button-prev, .swiper-button-next {
  background: rgba(0, 0, 0, 0.35)!important;
  border-radius: 50%;
}

.swiper-button-prev:before, .swiper-button-next:before {
  color: #fff!important;
}

.swiper-pagination-bullet-active {
  background-color: #4e83c7!important;
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  opacity: 0!important;
}


/* (追加/03/11) ボックス枠 */

.box01, .box02, .box03, .box04 {
  display: block;
  margin: 3em 0;
  padding: 20px;
  background: #fff;
  border-radius: 12px;
  position: relative;
}

.box01, .box01 *, .box02, .box02 *, .box03, .box03 *, .box04, .box04 * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.box01 p, .box02 p, .box03 p, .box04 p {
  padding: 0;
}

.box01 img, .box02 img, .box03 img, .box04 img {
  display: block;
  margin: auto;
  max-width: 85%;
}

.box01 {
  border: 3px solid #4e83c7;
}

.box-title {
  display: block;
  color: #353432;
  font-weight: bold;
  font-size: 21px;
  padding: 5px 0 10px;
}

.box02 {
  border: 4px double #4e83c7;
}

.box03 {
  border: 3px solid #59499c;
}

.box04 {
  border: 3px solid #d01d1d;
}


/* 追加(20/04/10) 見出し付きボックス1 */

.type1 {
  margin: 4em 0 5em;
  border-radius: 0;
}

.type1 .box-title {
  position: absolute;
  top: -51px;
  left: -3px;
  color: #fff;
  padding: 10px;
  font-size: 16px;
}

.box01.type1 .box-title, .box02.type1 .box-title {
  background: #4e83c7;
}

.box03.type1 .box-title {
  background: #59499c;
}

.box04.type1 .box-title {
  background: #d01d1d;
}


/*▽▽ (※追加 20/01/08) コピーボタン ▽▽*/

.coupon_btn {
  color: #050505;
  font-weight: normal;
  display: inline-block;
  padding: 8px 10px;
  background: -moz-linear-gradient( top, #ffffff 0%, #ebebeb 50%, #dbdbdb 50%, #b5b5b5);
  background: -webkit-gradient( linear, left top, left bottom, from(#ffffff), color-stop(0.50, #ebebeb), color-stop(0.50, #dbdbdb), to(#b5b5b5));
  -moz-border-radius: 7px;
  -webkit-border-radius: 7px;
  border-radius: 7px;
  border: 1px solid #949494;
  -moz-box-shadow: 0px 2px 3px rgba(000, 000, 000, 0.5), inset 0px 0px 2px rgba(255, 255, 255, 1);
  -webkit-box-shadow: 0px 2px 3px rgba(000, 000, 000, 0.5), inset 0px 0px 2px rgba(255, 255, 255, 1);
  box-shadow: 0px 2px 3px rgba(000, 000, 000, 0.5), inset 0px 0px 2px rgba(255, 255, 255, 1);
  text-shadow: 0px -1px 0px rgba(000, 000, 000, 0.2), 0px 1px 0px rgba(255, 255, 255, 1);
}

.coupon_btn:hover {
  background: -moz-linear-gradient( top, #ffffff 0%, #ebebeb 50%, #dbdbdb 50%, #b5b5b5);
  background: -webkit-gradient( linear, left top, left bottom, from(#ffffff), color-stop(0.50, #ebebeb), color-stop(0.50, #dbdbdb), to(#b5b5b5));
  -moz-border-radius: 7px;
  -webkit-border-radius: 7px;
  border-radius: 7px;
  border: 1px solid #949494;
  -moz-box-shadow: 1px 2px 3px #aaa inset;
  -webkit-box-shadow: 1px 2px 2px #aaa inset;
  box-shadow: 1px 2px 2px #aaa inset;
  text-shadow: 0px -1px 0px rgba(000, 000, 000, 0.2), 0px 1px 0px rgba(255, 255, 255, 1);
}
/*内部リンク装飾*/
.n-lnk-lst {
    margin: 30px auto 40px auto;
    max-width: 80%;
}
.n-lnk-lst ul {
    list-style-type: none;
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding: 0 !important;
}
.n-lnk-lst ul li{
    flex:1;
}
.n-lnk-lst ul li a{
    height: 85px;
    position: relative;
        display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 5px;
    padding: 12px 0 35px 0;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    background: -webkit-linear-gradient(top,#1B8CF6, #0071BD);
    background: -moz-linear-gradient(top, #1B8CF6, #0071BD);
    background: linear-gradient(to bottom, #1B8CF6, #0071BD);
    border: 1px solid #0071BC !important;
    border-radius: 4px;
    transition: .3s ease-in-out;
}
.n-lnk-lst ul li a:before {
    /*content: "";*/
    position: absolute;
    /* top: 100%; */
    bottom: 6px;
    left: 51%;
    margin-left: -10px;
    border: 10px solid transparent;
    border-top: 10px solid #b9b9b9;
}
.n-lnk-lst ul li a:after {
    content: "";
    position: absolute;
    /* top: 100%; */
    bottom: 7px;
    left: 50%;
    margin-left: -10px;
    border: 10px solid transparent;
    border-top: 10px solid #fff;
}
.n-lnk-lst ul li a:hover{
    /*box-shadow: 0 4px 15px rgba(0, 0, 0, .25);
    transform: translateY(-2px);*/
    }
/*目次リンク*/
 div#mokuji{
        position: fixed;
    bottom: 110px;
    right: 45px;
    }
    div#mokuji a{
    text-decoration: none;
    font-size: 17px;
    color: #000;
    background: #fce427;
    width: 50px;
    height: 50px;
    padding: 7px;
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 65px;
    -webkit-border-radius: 65px;
    -moz-border-radius: 65px; 
    }
    div#mokuji a:hover{
    text-decoration: none;
    opacity: 0.6;
    }