@charset "UTF-8";

/*子テーマ用「base.css」*/
/*---------------------------------------------------------------------
	Smooth scroll
----------------------------------------------------------------------*/
html{
    scroll-behavior: smooth;
}

/*---------------------------------------------------------------------
	Font
----------------------------------------------------------------------*/
.slide_font {
	font-family: "Hiragino UD Sans W6 JIS2004", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

/*---------------------------------------------------------------------
	Header
----------------------------------------------------------------------*/
.keni-header_cont {
    padding: 0;
}
.keni-header_wrap {
    background-image: none;
    padding-bottom: 10px;
}
.keni-header_wrap {
    background-image: none;
}
/*---------------------------------------------------------------------
	Global menu
----------------------------------------------------------------------*/
@media (min-width: 768px) {
.keni-gnav_wrap {
    border-top: 4px solid #212938;
}
}
@media (min-width: 768px) {
.keni-gnav_inner {
    padding-top: 0;
}
}
@media (min-width: 768px) {
.keni-gnav_inner li {
    display: table-cell;
    margin: 0;
    border-bottom: 0;
    vertical-align: middle;
    letter-spacing: 0;
    position: relative;
}
}
@media (min-width: 768px) {
.keni-gnav_inner li:after {
    content: '|';
    color: #ddd;
    position: absolute;
    top: 13px;
    font-size: 25px;
    left: -5px;
}
}
@media (min-width:768px) and ( max-width:810px) {
.keni-gnav_inner li a {
    font-size: 13px;
    padding: 20px 13px 16px;
    font-weight: bold;
    color: #505050;
}
}
@media (min-width:811px) and ( max-width:861px) {
.keni-gnav_inner li a {
    font-size: 13px;
    padding: 20px 13px 16px;
    font-weight: bold;
    color: #505050;
}
}
@media (min-width:862px) and ( max-width:990px) {
.keni-gnav_inner li a {
    font-size: 15px;
    padding: 20px 13px 16px;
    font-weight: bold;
    color: #505050;
}
}
@media (min-width: 991px) {
.keni-gnav_inner li a {
    font-weight: bold;
    color: #505050;
    font-size: 16px;
    padding: 20px 20px 16px;
}
}
@media (min-width: 768px) {
.keni-gnav_inner li a:hover, .keni-gnav_inner li a:active, .keni-gnav_inner li a:focus {
    border-bottom: 3px solid hsl(224deg 79% 30%);
    background: #eee;
    color: #212938;
}
}
@media (min-width: 768px) {
.keni-gnav-child_btn {
    top: 21px;
    right: 6px;
}
}
@media (min-width: 768px) {
.keni-gnav ul .keni-gnav-child_btn_icon-open > a, .keni-gnav ul .keni-gnav-child_btn_icon-close > a {
    padding-right: 30px;
}
}
@media (min-width: 768px) {
.keni-gnav_inner li ul {
    border-top: 1px solid #ddd;
    background: #fff0;
}
}
@media (min-width: 768px) {
.keni-gnav_inner li ul li {
    border-bottom: 1px solid #ddd;
}
}
@media (min-width: 768px) {
.keni-gnav_inner li ul a {
    background: #fff0;
    color: #505050;
    padding: 12px 20px;
}
}
@media (min-width: 768px) {
.keni-gnav_inner li ul li {
    width: 105%;
}
}
/*---------------------------------------------------------------------
	Main
----------------------------------------------------------------------*/
body {
    font-family: "Hiragino UD Sans W6 JIS2004", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
a {
    color: #0066cc;
}
.keni-main {
	background: #ffffff;
    letter-spacing: 0.05em;
}
.article-body p {
    margin: 0 0 1.6em;
}
.keni-section_wrap {
    margin: 0 10px 10px;
	padding: 0 0 10px;
}
@media (min-width: 768px) {
.keni-main .keni-section_wrap {
    padding: 0 10px;
}
}

/*---------------------------------------------------------------------
	Pankuzu_上
----------------------------------------------------------------------*/
.pankuzu {
    padding: 5px 0;
    font-size: 15px;
}
@media(max-width: 768px){
.pankuzu {
    font-size: 13px;
}
}
.pankuzu_link {
    color: #505050;
    text-decoration: none;
}
.pankuzu_link:hover {
    color: #0066cc;
    text-decoration: underline;
}
/*---------------------------------------------------------------------
	Pankuzu_下
----------------------------------------------------------------------*/
@media(min-width: 768px){
.col1 .keni-breadcrumb-list_outer{
    max-width: 900px;
}
}
/*---------------------------------------------------------------------
	Copy_write
----------------------------------------------------------------------*/
@media(min-width: 768px){
.col1 .keni-footer_outer{
    max-width: 900px;
}
}
.keni-copyright_wrap {
    text-align: center;
}
/*---------------------------------------------------------------------
	Entry status
----------------------------------------------------------------------*/
.entry_status .entry_category_item {
    display: inline-block;
    margin-right: 5px;
    margin-bottom: 5px;
    padding: .66em .99em;
    font-size: 1.2rem;
	border-radius: 0px;
    background: #ffffff;
    border: 1px solid #fff;
}

.entry_status .entry_date_item {
    color: #000;
    font-size: 1.8rem;
    float: right;
    margin-top: 9px;
}

.entry_status > ul {
    margin: 0 0 10px;
    letter-spacing: -.5em;
    float: left;
}

/*---------------------------------------------------------------------
	h1
----------------------------------------------------------------------*/
.keni-section h1 {
    padding: 20px 10px 0;
    background-image: linear-gradient( 
-45deg
, #fff 25%, #f0f0f0 25%, #f0f0f0 50%, #fff 50%, #fff 75%, #f0f0f0 75%, #f0f0f0 );
    background-size: 4px 4px;
    background-repeat: repeat-x;
    font-size: 2.0rem;
}

@media (min-width: 768px) {
.keni-main .keni-section h1 {
    padding: 18px 40px 0;
    font-size: 27px;
}
}

.keni-section h1:first-child {
    margin: -10px -10px 0px;
}

@media (min-width: 768px){
.keni-section h1:first-child {
	margin: 0 -40px 9px;
}
}
@media (min-width: 769px) {
.keni-section h1:first-child {
	/*padding-top: 12px;*/
}
}

/*---------------------------------------------------------------------
	h2
----------------------------------------------------------------------*/
h2 {
    background: transparent;
    color: #303641;
    border-left: 0;
    padding: 12px 0 12px;
    clear: both;
    border-top: 3px solid #212938;
    border-bottom: 3px solid #212938;
    font-size: 22px;
    margin: 56px 0 1em;
    font-weight: bold;
    line-height: 1.4;
    vertical-align: baseline;
}
@media (min-width: 768px) {
h2 {
    font-size: 28px;
    margin-top: 2em;
}
}

/*---------------------------------------------------------------------
	h3
----------------------------------------------------------------------*/
h3 {
    clear: both;
    border-left: 5px solid #212938;
    padding: 0 13px;
    color: #303641;
    font-size: 20px;
    margin: 56px 0 1em;
    font-weight: bold;
    line-height: 1.4;
    border-top: 0;
    border-bottom: 0;
    background: transparent;
}
@media (min-width: 768px) {
h3 {
    font-size: 24px;
    margin-top: 2em;
}
}

/*---------------------------------------------------------------------
	h4
----------------------------------------------------------------------*/
h4 {
	font-size: 18px;
	margin-bottom: 25px;
	font-weight: bold;
	line-height: 1.4;
	padding: 9px;
	border: 2px solid #303641;
	color: #303641;
}
@media (min-width: 768px) {
h4 {
    font-size: 20px;
    padding: 9px 15px;
}
}
.keni-section h4 {
    margin-top: 50px;
}
/*---------------------------------------------------------------------
	h5
----------------------------------------------------------------------*/

h5 {
    color: #212938;
    font-size: 18px;
    margin-bottom: 25px;
    border-bottom: none;
    padding: 6px 6px;
}

@media (min-width: 768px) {
h5 {
font-size: 20px;
    padding: 3px 9px 3px 0;
}
}

.keni-section h5 {
	margin-top: 30px;
}

/*---------------------------------------------------------------------
	Table
----------------------------------------------------------------------*/
table {
    word-break: normal;
}

th {
    border: 1px solid #ffffff;
    background-color: #212938;
    color: #fff;
    font-weight: bold;
    text-align: center;
}

td {
	text-align: center;
}
@media (max-width: 768px) {
.scroll-table {
  overflow: auto;
  white-space: nowrap;
}
}
tbody th {
    background: #f9f9f9;
    border: 1px solid #ddd;
    color: #505050;
}
/*---------------------------------------------------------------------
	Bubble
----------------------------------------------------------------------*/

.bubble{
	font-size: 1.6rem;
	min-height: 100px;
	min-width: 100%;
}

/*---------------------------------------------------------------------
	Box
----------------------------------------------------------------------*/

/*  item-box  */

.item-box {
    margin: 20px 0;
    padding: 10px 10px 0;
    background-color: #f9f9f9;
    border: 1px solid #f9f9f9;
}
@media (min-width: 768px) {
.item-box {
    padding: 10px 20px 0;
}
}

.item-box .item-box_title {
    color: #212938;
    margin-top: 0px;
	margin-bottom: 15px;
	border-bottom: 2px solid #ddd;
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 33px;
	padding-bottom: 10px;
}

/*  simple_box  */

.simple_box {
	border: 1px solid #ccc;
	padding: 20px 10px 0;
	margin: 30px 0;
}

@media (min-width: 768px) {
.simple_box {
	padding: 20px 20px 0;
}
}

/*  text_box1  */

.text_box1 {
	background: #f9f9f9;
	padding: 24px 10px 0;
	border: solid 2px #212938;
	margin-bottom: 2em;
	border-radius: 3px;
}

@media (min-width: 768px) {
.text_box1 {
	padding: 24px 20px 0;
}
}

.text_box1 ul {
	margin-top: 0;
}

.text_box1 ol {
	margin-top: 0;
}

/*  text_box2  */

.text_box2 {
	position: relative;
	margin: 69px 0 2em;
	padding: 20px 10px 0;
	border: solid 2px #212938;
	background: #f9f9f9;
}

@media (min-width: 768px) {
.text_box2 {
	padding: 20px 20px 0;
	margin: 69px 0 2em;
}
}

.text_box2 .box-title {
	position: absolute;
	display: inline-block;
	top: -41px;
	left: -3px;
	padding: 6px 15px;
	height: 39px;
	line-height: 27px;
	font-size: 16px;
	background: #212938;
	color: #ffffff;
	font-weight: bold;
	border-radius: 5px 5px 0 0;
}

.text_box2 ul {
	margin-top: 0;
}

.text_box2 ol {
	margin-top: 0;
}

/*  text_box3  */

.text_box3 {
	position: relative;
	margin: 48px 0 1.6em;
	padding: 20px 10px 0;
	border: solid 1px #86aabe;
	background: #fffbf4;
}

@media (min-width: 768px) {
.text_box3 {
	padding: 20px 20px 0;
}
}

.text_box3 .box-title {
	position: absolute;
	display: inline-block;
	top: -41px;
	left: 0px;
	padding: 6px 15px;
	height: 39px;
	width: 100%;
	line-height: 27px;
	font-size: 16px;
	background: #86aabe;
	color: #ffffff;
	font-weight: bold;
	border-radius: 5px 5px 0 0;
}

.text_box3 ul {
	margin-top: 0;
}

.text_box3 ol {
	margin-top: 0;
}
/*  infomation_box  */
.infomation_box {
    color: #017201;
    background: #f5fff5;
    border: 1px solid #01b901;
    padding: 20px 10px 0;
    margin: 30px 0;
}
@media (min-width: 768px){
.infomation_box {
    padding: 20px 20px 0;
}
}
/*---------------------------------------------------------------------
	Display
----------------------------------------------------------------------*/

.display-none {
display: none;
}

@media screen and (max-width: 767px) {
.pc_only {
	display: none;
}
}

@media screen and (min-width: 768px) {
.mb_only {
	display: none;
}
}

/*---------------------------------------------------------------------
	Mokuji
----------------------------------------------------------------------*/

.mokuji {
	position: relative;
	margin: 68px 0 1.6em;
	padding: 20px 10px;
	background: #f9f9f9;
	border: 5px solid #f0f0f0;
	border-radius: 2px;
}

@media (min-width: 768px) {
.mokuji {
	padding: 20px;
}
}

.mokuji .title {
	position: absolute;
	display: inline-block;
	top: -42px;
	left: -5px;
	padding: 6px 24px;
	height: 36px;
	line-height: 24px;
	font-size: 18px;
	background: #212938;
	color: #fff;
	font-weight: bold;
	border-radius: 5px 5px 0 0;
}

.mokuji ul {
	margin: 9px 0;
}

.mokuji .margin-left {
	margin-left: 9px;
}

/*---------------------------------------------------------------------
	Minus Margin
----------------------------------------------------------------------*/

.m-5-t {
	margin-top: -5px;
}
.m-10-t {
	margin-top: -10px;
}
.m-15-t {
	margin-top: -15px;
}
.m-20-t {
	margin-top: -20px;
}
.m-25-t {
	margin-top: -25px;
}
.m-30-t {
	margin-top: -30px;
}
.m-35-t {
	margin-top: -35px;
}
.m-40-t {
	margin-top: -40px;
}
.m-45-t {
	margin-top: -45px;
}
.m-50-t {
	margin-top: -50px;
}

/*---------------------------------------------------------------------
	Margin/Padding幅の追加
----------------------------------------------------------------------*/

.m35{ margin: 35px!important; }
.m35-t{ margin-top: 35px!important; }
.m35-r{ margin-right: 35px!important; }
.m35-b{ margin-bottom: 35px!important; }
.m35-l{ margin-left: 35px!important; }

.m45{ margin: 45px!important; }
.m45-t{ margin-top: 45px!important; }
.m45-r{ margin-right: 45px!important; }
.m45-b{ margin-bottom: 45px!important; }
.m45-l{ margin-left: 45px!important; }

.p35{ padding: 35px!important; }
.p35-t{ padding-top: 35px!important; }
.p35-r{ padding-right: 35px!important; }
.p35-b{ padding-bottom: 35px!important; }
.p35-l{ padding-left: 35px!important; }

.p45{ padding: 45px!important; }
.p45-t{ padding-top: 45px!important; }
.p45-r{ padding-right: 45px!important; }
.p45-b{ padding-bottom: 45px!important; }
.p45-l{ padding-left: 45px!important; }


/*---------------------------------------------------------------------
	フォントサイズ設定の追加
----------------------------------------------------------------------*/

.f05em{ font-size: 0.5em!important; }
.f06em{ font-size: 0.6em!important; }
.f07em{ font-size: 0.7em!important; }


/*---------------------------------------------------------------------
	Accordion
----------------------------------------------------------------------*/

dl {
	background: #cccccc;
}

.accordion-list dt {
	position: relative;
    padding: 12px 40px 12px 15px;
    background: #212938;
    color: #fff;
	font-weight: bold;
	margin: 10px 0 0;
	font-size: 17px;
}

.accordion-list dt::after {
	position: absolute;
	top: 18px;
	right: 18px;
	font-size: 18px;
	font-weight: bold;
}

.accordion-list dd {
	margin-left: 0;
	padding: 20px 10px 10px;
	background: #f9f9f9;
	border: 1px solid #f0f0f0;
}

@media (min-width: 768px) {
.accordion-list dd {
	padding: 20px;
}
}

/*---------------------------------------------------------------------
	Interval
----------------------------------------------------------------------*/

.interval01 span {
    background-color: #86aabe;
}

/*---------------------------------------------------------------------
	Tab-menu
----------------------------------------------------------------------*/

.tab-menu {
	margin-top: 10px;
}

/*---------------------------------------------------------------------
	Description-list
----------------------------------------------------------------------*/

.dl_style02 {
	margin: 30px 0;
}

.dl_style02 dt {
	display: block;
	background: #86aabe;
	color: #fff;
	font-weight: bold;
	font-size: 1.7rem;
	margin-top: 20px;
}

.dl_style02 dd {
	padding: 20px 10px;
	background: #fffbf4;
	border: 1px solid #86aabe;
}

@media (min-width: 768px) {
.dl_style02 dd {
	padding: 20px;
}
}

/*---------------------------------------------------------------------
	Q&A
----------------------------------------------------------------------*/

.qa-list dt::before {
	background: #265599;
	content: 'Q';
}

.qa-list dd::before {
	background: #eb3b54;
	content: 'A';
}

dl {
	background: #fff;
}

/*---------------------------------------------------------------------
	Step chart
----------------------------------------------------------------------*/

.step-chart li:nth-child(1) {
    background-color: #f1f5ff;
}
.step-chart_style01 li:nth-child(1)::after, .step-chart_style02 li:nth-child(1)::after {
    border-top-color: #f1f5ff;
}
.step-chart li:nth-child(2) {
    background-color: #dbe6ff;
}
.step-chart_style01 li:nth-child(2)::after, .step-chart_style02 li:nth-child(2)::after {
    border-top-color: #dbe6ff;
}
.step-chart li:nth-child(3) {
    background-color: #c6d8ff;
}
.step-chart_style01 li:nth-child(3)::after, .step-chart_style02 li:nth-child(3)::after {
    border-top-color: #c6d8ff;
}
.step-chart li:nth-child(4) {
    background-color: #212938;
}

@media (min-width: 768px) {
.step-chart_style01 > li {
	padding: 20px;
}
}

/*---------------------------------------------------------------------
	List style
----------------------------------------------------------------------*/

.list_style02 li::before {
	background: #86aabe;
}

/*---------------------------------------------------------------------
	Flex box 2column
----------------------------------------------------------------------*/

.flex_container {
	overflow: hidden;
	margin: 10px auto 0 auto;
	display: flex;
	flex-wrap: wrap;
}
.column1 {
	background: #fff;
	padding: 0px;
	width: 50%;
	flex: 1 0 200px;
}
.column2 {
	background: #fff;
	padding: 0px;
	width: 50%;
	flex: 1 0 200px;
}

@media (min-width: 768px) {
.column1 {
	padding: 0 20px;
}
.column2 {
	padding: 0 20px;
}
}

/*---------------------------------------------------------------------
	 Image frame
----------------------------------------------------------------------*/

.frame {
	max-width: 100%;
	padding: 8px;
	box-sizing: border-box;
	box-shadow: 0px 0px 8px #f3f3f3;
	background: #ccc;
}

/*---------------------------------------------------------------------
	 Red box
----------------------------------------------------------------------*/

.red-box {
	width: 100%;
	height: 100%;
	margin: 10px auto;
	color: red;
	font-weight: bold;
	border: 2px red solid;
	text-align: center;
	box-shadow: 1px 1px 1px rgba(0,0,0,0.4);
	font-size: 14px;
}

@media (min-width: 768px) {
.red-box {
	font-size: 16px;
	width: 50%;
}
}

/*---------------------------------------------------------------------
	 Center box 50%
----------------------------------------------------------------------*/

.center_box {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}

@media (min-width: 768px){
.center_box {
    width: 50%;
    margin: 0 auto;
    padding: 0 20px;
}
}
/*---------------------------------------------------------------------
	 Kanren
----------------------------------------------------------------------*/

.kanren {
	background: #e7e7e7;
	box-shadow: 0 0 0 2px rgba(255, 160, 138, 0), 2px 2px 3px 0 rgba(0, 0, 0, 0.05);
	border-radius: 6px;
	padding: 0.75em 0.75em;
	margin: 0 0 1.6em;
}

/*---------------------------------------------------------------------
	 Ranking-List
----------------------------------------------------------------------*/

.rank_thumb::after {
    display: none;
}
.review_desc {
    background-color: #f8f8f8;
    clear: both;
    padding: 20px 10px;
    margin-top: 20px;
}
@media (min-width: 768px) {
.review_desc {
    padding: 20px;
}
}
.ranking-list > li {
    padding-top: 20px;
    border-top: 1px solid #ccc;
}
.item-data {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #cccc;
}

/*---------------------------------------------------------------------
	 blockquote
----------------------------------------------------------------------*/

blockquote {
	margin: 0 0 30px;
}

/*---------------------------------------------------------------------
	 cast-box
----------------------------------------------------------------------*/

.cast-box {
    background-color: #f4f4f4;
    padding: 20px;
    margin-bottom: 30px;
    overflow: hidden;
    line-height: 1.5;
    background-image: none;
}
@media (min-width: 768px) {
.cast-box {
    padding: 30px;
}
}
.cast-box-title {
    margin: 1px 1px 30px;
    padding: 10px 0;
    background-color: transparent;
    border-top: 1px solid #303641;
    border-bottom: 1px solid #303641;
    color: #303641;
    font-size: 2.0rem;
    font-weight: bold;
}
.cast-box .box_inner {
    padding: 0px;
    background-color: #f4f4f4;
}
.cast {
    background: #f4f4f4;
}
.cast-box .cast_name {
    margin: 20px 0 3px;
    padding-bottom: 0;
    border: 0;
    text-align: center;
    color: #505050;
    font-size: 1.9rem;
    font-weight: bold;
}
@media (min-width: 768px) {
.cast-box .cast_name {
    margin: 20px 0 10px;
    padding-bottom: 0;
    text-align: left;
}
}
/*---------------------------------------------------------------------
	 Comment
----------------------------------------------------------------------*/
.comment-form-title, .comment-reply-title {
    background: transparent;
    color: #555;
    border-left: 0;
    padding: 12px 0 12px;
    clear: both;
    border-top: 3px solid #212938;
    border-bottom: 3px solid #212938;
    font-size: 22px;
    margin: 56px 0 1em;
    font-weight: bold;
    line-height: 1.4;
    vertical-align: baseline;
}
@media (min-width: 768px) {
.comment-form-title, comment-reply-title {
    font-size: 28px;
    margin-top: 2em;
}
}
.btn_style03 {
    background: #212938;
}
/*---------------------------------------------------------------------
	 Contact forme
----------------------------------------------------------------------*/
.Form-Item-Label-Required {
    background: #212938;
    color: #fff;
    padding: 10px;
    margin-right: 10px;
}
.Form-Btn {
    background: #212938;
    color: #fff;
    font-size: 18px;
    padding: 10px 20px;
    font-weight: bold;
    width: 100%;
    transition: 0.3s;
    border: none;
}
.Form-Btn:hover {
    background: #0066cc;
}
.wpcf7 form.sent .wpcf7-response-output {
    border-color: #9e8211;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
    border-color: #d94b59;
}
textarea {
    height: 150px;
}

/*---------------------------------------------------------------------
	 Top page css
----------------------------------------------------------------------*/
/*---------------------------------------------------------------------
	 Zentai
----------------------------------------------------------------------*/

.keni-main_inner {
	padding: 0 0 10px;
}
@media (min-width: 768px) {
.keni-section_wrap {
	margin-bottom: 0px;
}
}

/*---------------------------------------------------------------------
	 Header
----------------------------------------------------------------------*/

.keni-header_col2 .keni-header_cont {
    float: right;
    max-width: 50%;
	margin: 0;
}
@media (max-width: 767px) {
.keni-header_col2 .keni-header_cont {
	margin-top: 15px;
}
}
.header_btn {
	border: 2px solid #d51820;
	padding: 3px 6px;
	margin: 0 3px;
	background: #d51820;
	color: #fff;
	text-decoration: none;
}
.header_btn:hover{
	-webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
	box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
	color: #fff;
}
.header_btn_login {
	padding: 3px 6px;
	margin: 0 3px;
	color: #fff;
	text-decoration: none;
}
.header_btn_login {
    border: 2px solid #464d5b;
    background: linear-gradient(180deg, #464d5b,#cea63c);
}
@media (min-width: 768px) {
.header_btn_login {
	display: none;
}
}
.header_btn_login:hover{
	-webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
	box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
	color: #fff;
}
#head_btn {
    width: 100%;
}
@media (max-width: 767px) {
#head_btn {
	display: none;
}
}
#head_btn .around {
    justify-content: center;
    flex-wrap: wrap;
}
#head_btn .wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
}
#head_btn .square_btn_red {
    position: relative;
    width: 130px;
    line-height: 1.2em;
    text-decoration: none;
    text-align: center;
    color: #fff;
    padding: 7px 9px;
    min-width: 130px;
}
#head_btn .square_btn_red {
    background: linear-gradient(180deg, #212938, #373e4a);
    margin: 10px 5px 0;
}
#head_btn .square_btn_red:hover {
    -webkit-box-shadow: 0 5px 15px rgb(0 0 0 / 30%);
    box-shadow: 0 5px 15px rgb(0 0 0 / 30%);
    color: #fff;
}
#head_btn .square_btn_green {
    position: relative;
    width: 130px;
    line-height: 1.2em;
    text-decoration: none;
    text-align: center;
    color: #fff;
    padding: 7px 9px;
    min-width: 130px;
}
#head_btn .square_btn_green {
    background: linear-gradient(180deg, #464d5b,#cea63c);
    margin: 10px 5px 0;
}
#head_btn .square_btn_green:hover {
    -webkit-box-shadow: 0 5px 15px rgb(0 0 0 / 30%);
    box-shadow: 0 5px 15px rgb(0 0 0 / 30%);
    color: #fff;
}
#head_btn .btn-name {
    font-weight: bold;
    font-size: 14px;
}
#head_btn .small_text {
    font-weight: 100;
    font-size: 11px;
}

/*---------------------------------------------------------------------
	 section btn
----------------------------------------------------------------------*/

#btn {

}

#btn .wrap {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	padding: 20px 0;
}

#btn .around {
	justify-content: center;
	flex-wrap:wrap;
}

#btn .btn-name{
	font-weight: bold;
	font-size: 17px;
}
#btn .small{
	font-weight: normal;
	font-size: 15px;
}

/*---------------------------------------------------------------------
	 section btn : red/green
----------------------------------------------------------------------*/

#btn .square_btn_red {
	position: relative;
	width: 48%;
	line-height: 1.5em;
	text-decoration: none;
	background: #212938;
	text-align: center;
	color: #fff;
	padding: 9px 20px 0;
	min-width: 280px;
	margin: 5px;
}

#btn .square_btn_green {
	position: relative;
	width: 48%;
	line-height: 1.5em;
	text-decoration: none;
	background: #464d5b;
	text-align: center;
	color: #fff;
	padding: 9px 20px 0;
    min-width: 280px;
	margin: 5px;
}

@media (max-width: 767px) {
#btn .square_btn_red {
	width: 100%;
}

#btn .square_btn_green {
	width: 100%;	
}	
}

#btn .square_btn_red .fa {
	position: absolute;
	top: 21%;
	font-size: 33px;
	right: 15px;
	margin: 0;
	vertical-align: middle;
}

#btn .square_btn_green .fa {
	position: absolute;
	top: 21%;
	font-size: 33px;
	right: 15px;
	margin: 0;
	vertical-align: middle;
}

#btn .square_btn_red:hover {
	-webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
	box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
}

#btn .square_btn_red a{
	text-decoration: none;
	display: block;
	color: #f6f5f1;
	padding: 0.25em 0 0.5em 0;
    border: 3px solid #D74648;
}

#btn .square_btn_green:hover {
	-webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
	box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
}
#btn .square_btn_green a {
	text-decoration: none;
	display: block;
	color: #f6f5f1;
	padding: 0.25em 0 0.5em 0;
	border: 3px solid #1EC69B;
}

/*---------------------------------------------------------------------
	 section btn : back/forward
----------------------------------------------------------------------*/

#btn .square_btn_back {
	position: relative;
	width: 48%;
	line-height: 1.5em;
	text-decoration: none;
	text-align: center;
	padding: 9px 20px 0;
	min-width: 300px;
	margin: 5px 5px 10px;
	color: #fff;
	border-radius: 100vh;
	background: #212938;
	-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
	box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
}

#btn .square_btn_forward {
	position: relative;
	width: 48%;
	line-height: 1.5em;
	text-decoration: none;
	text-align: center;
	padding: 9px 20px 0;
    min-width: 300px;
	margin: 5px 5px 10px;
	color: #fff;
	border-radius: 100vh;
	background: #212938;
	-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
	box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
}

@media (max-width: 767px) {
#btn .square_btn_back {
	width: 100%;
}

#btn .square_btn_forward {
	width: 100%;	
}	
}

#btn .square_btn_forward .fa {
	position: absolute;
	top: 21%;
	font-size: 33px;
	right: 15px;
	margin: 0;
	vertical-align: middle;
}

#btn .square_btn_back .fa {
	position: absolute;
	top: 21%;
	font-size: 33px;
	left: 15px;
	margin: 0;
	vertical-align: middle;
}

#btn .square_btn_back:hover {
	-webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
	box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
}

#btn .square_btn_back a{
	text-decoration: none;
	display: block;
	color: #f6f5f1;
	padding: 0.25em 0 0.5em 0;
    border: 3px solid #D74648;
}

#btn .square_btn_forward:hover {
	-webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
	box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
}
#btn .square_btn_forward a {
	text-decoration: none;
	display: block;
	color: #f6f5f1;
	padding: 0.25em 0 0.5em 0;
	border: 3px solid #1EC69B;
}

/*---------------------------------------------------------------------
	 section rebate_btn
----------------------------------------------------------------------*/

#rebate_btn {

}

#rebate_btn .wrap {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	padding: 20px 0;
}

#rebate_btn .around {
	justify-content: space-between;
	flex-wrap:wrap;
}

#rebate_btn .btn-name{
	font-weight: bold;
	font-size: 17px;
}
#rebate_btn .small{
	font-weight: normal;
	font-size: 15px;
}

/*---------------------------------------------------------------------
	 section rebate_btn : red/green
----------------------------------------------------------------------*/

#rebate_btn .square_btn_red {
	position: relative;
	width: 48%;
	line-height: 1.5em;
	text-decoration: none;
	background: #212938;
	text-align: center;
	color: #fff;
	padding: 9px 20px 0;
	min-width: 280px;
	margin: 5px;
}

#rebate_btn .square_btn_green {
	position: relative;
	width: 48%;
	line-height: 1.5em;
	text-decoration: none;
	background: #464d5b;
	text-align: center;
	color: #fff;
	padding: 9px 20px 0;
    min-width: 280px;
	margin: 5px;
}

@media (max-width: 767px) {
#rebate_btn .square_btn_red {
	width: 100%;
}

#rebate_btn .square_btn_green {
	width: 100%;	
}	
}

#rebate_btn .square_btn_red .fa {
	position: absolute;
	top: 21%;
	font-size: 33px;
	right: 15px;
	margin: 0;
	vertical-align: middle;
}

#rebate_btn .square_btn_green .fa {
	position: absolute;
	top: 21%;
	font-size: 33px;
	right: 15px;
	margin: 0;
	vertical-align: middle;
}

#rebate_btn .square_btn_red:hover {
	-webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
	box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
}

#rebate_btn .square_btn_red a{
	text-decoration: none;
	display: block;
	color: #f6f5f1;
	padding: 0.25em 0 0.5em 0;
    border: 3px solid #D74648;
}

#rebate_btn .square_btn_green:hover {
	-webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
	box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
}
#rebate_btn .square_btn_green a {
	text-decoration: none;
	display: block;
	color: #f6f5f1;
	padding: 0.25em 0 0.5em 0;
	border: 3px solid #1EC69B;
}

/*---------------------------------------------------------------------
	 section news
----------------------------------------------------------------------*/

#news{
	max-width: 100%
}
#news .news_box{
	border: 3px solid #ddd;
	padding: 10px 20px;
	margin: 0 0 30px;
	background: #f5f5f5;
}
#news h2{
	margin: 20px 0 18px 0;
	padding: 10px 0 10px 0;
	text-align: center;
	font-size: 2.5rem;
	line-height: 1em;
	background-color: rgba(0, 0, 0, 0);
	letter-spacing: 0.1rem;
	color: #505050;
	font-weight: bold;
	border: none;
}
.news-list {
	margin-left: 0;
	margin-bottom: 9px;
}
#news .item-box {
    background-color: #303640;
    border: 1px solid #303640;
    color: #fff;
}
#news .item-box .item-box_title {
    color: #72bd44;
    border-bottom: 2px solid #303640;
    margin-bottom: 0px;
}
@media (min-width: 768px) {
#news .item-box .item-box_thumb {
    float: left;
    margin-right: 30px;
    margin-top: 20px;
}
}
#news .item-data {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #cccc;
    background: #303640;
}
#news dl {
    background: #303640;
    color: #fff;
}
#news .btn_gray {
    background: #5fa036;
    color: #d8d8d8;
}
@media (min-width: 768px){
#news .item-box {
    padding: 20px 20px 0;
}
}
@media (min-width: 768px) {
#news .item-box .btn-detail {
    margin-top: 3px;
    text-align: right;
}
}
#news .frame {
    padding: 3px;
}
#news .container {
    margin: 30px 0;
    border-bottom: 1px dotted #ccc;
    border-top: 1px dotted #ccc;
}
#news .date {
    margin: 20px 0 0;
}
#news .title {
    font-weight: bold;
    color: #555d66;
    padding: 0 10px;
    border-left: 5px solid #212938;
}
#news th, td, tbody th {
    text-align: left;
    vertical-align: middle;
    padding: 10px 10px;
}
@media (min-width: 768px) {
#news th, td, tbody th {
    padding: 10px 20px;
}
}
#news blockquote {
    margin: 0;
    padding: 40px 3px 20px;
}
@media (min-width: 768px){
#news blockquote {
    margin-right: 24px;
    margin-left: 24px;
    padding: 35px 40px;
}
}
#news dl {
    color: #555;
}
#news .move {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    margin: 30px 0;
}

/*---------------------------------------------------------------------
	 section works
----------------------------------------------------------------------*/

#works {
	padding-bottom: 0;
}

#works h2 {
	margin: 40px 0 18px 0;
	padding: 10px 0 10px 0;
	text-align: center;
	font-size: 2.5rem;
	line-height: 1em;
	background-color: rgba(0, 0, 0, 0);
	letter-spacing: 0.1rem;
	color: #505050;
	font-weight: bold;
	border-left: none;
}

#works h3 {
	margin: 40px 0 18px 0;
	padding: 10px 0 10px 0;
	text-align: center;
	font-size: 2.5rem;
	line-height: 1em;
	letter-spacing: 0.1rem;
	color: #505050;
	font-weight: bold;
	background: transparent;
	border: none;
}

#works .works_container {
	display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
#works .works-box {
	width: 100%;
	height: 100%;
	margin: 1px;
}
}

@media (min-width: 768px) {
#works .works-box {
	width: 33%;
	height: 100%;
	margin: 1px;
}
}

#works .works-box a {
	position: relative;
	display: block;
}

#works .works-box a:hover {
	opacity: 0.6;
}

#works .works-box a .works-box-inner {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	color: #fff;
	background-color: rgba(0, 0, 0, .4);
}

@media (max-width: 1000px) {
#works .works-box a .works-box-inner {
	display: block;
	background-color: rgba(0, 0, 0, .4);
	font-weight: bold;
}
}

#works .works-box a .works-box-inner div {
	position: relative;
	top: 45px;
	right: 0;
	bottom: 0;
	left: 0;
	height: 40%;
	margin: auto;
	text-align: center;
	padding-top: 7px;
	padding-bottom: 7px;
}

#works .works-box a .h3 {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	height: 48px;
	text-align: center;
	padding-top: 7px;
	padding-bottom: 7px;
	margin: 0;
	font-weight: bold;
	background-color: rgba(0, 0, 0, .7);
	font-size: 20px;
}

#works .works-box a .works-box-inner small {
	font-size: 1.5rem;
	display: block;
	margin-top: 54px;
	font-weight: bold;
	text-align: center;
}

#works .works-box a .works-box-inner .button-readmore {
	font-size: 1.8rem;
	font-weight: bold;
	display: block;
	width: 180px;
	margin: 6px auto 0;
	padding: 5px 0;
	text-align: center;
	color: #fff;
	-webkit-border-radius: 4px;
		-moz-border-radius: 4px;
			border-radius: 4px;
	background-color: #d5182060;
}

#works .works-box a:hover .works-box-inner {
	display: block;
	width: 100%;
}

#works .works-box img {
	display: block;
	max-width: 100%;
}

#works::after {
	display: block;
	clear: both;
	content: '';
}

/*---------------------------------------------------------------------
	 section item
----------------------------------------------------------------------*/

#item {
	padding-bottom: 5px;
	padding-top: 0;
	margin: 0 0 10px 0;
}

#item h2 {
	margin: 42px 0 18px 0;
	padding: 10px 0 10px 0;
	text-align: center;
	font-size: 2.5rem;
	line-height: 1em;
	background-color: rgba(0, 0, 0, 0);
	letter-spacing: 0.1rem;
	color: #505050;
	font-weight: bold;
	border: none;
}

#item .item_container {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	justify-content: center;
	position: relative;
	width: 100%;
	max-width: 100%;
	text-align: center;
}

#item .item-box a {
	display: block;
	text-decoration: none;
	color: #f1f1f1;
}

#item .item-box {
	width: 33%;
	margin: 1px 1px;
	padding: 10px;
	background-color: #fff;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
	border: 1px solid #ccc;
	text-decoration: none;
	color: #555d66;
}

#item .item-box:hover {
	opacity: 0.6;
}

@media (max-width: 550px) {
#item .item-box {
	width: 100%;
}  
}

#item .item_name {
	font-size: 1.8rem;
	text-align: center;
	font-weight: bold;
}

#item .about-item {
	font-size: 1.6rem; 
	text-align: center;
}

#item .button-readmore {
	font-size: 1.6rem;
	font-weight: bold;
	display: block;
	width: 100px;
	margin: 10px auto;
	padding: 5px 0;
	text-align: center;
	color: #fff;
	-webkit-border-radius: 4px;
		-moz-border-radius: 4px;
	border-radius: 4px;
	background-color: #ccc;
}


/*---------------------------------------------------------------------
	Section commentary
----------------------------------------------------------------------*/

#commentary{
    padding-bottom: 5px;
    padding-top: 5px;
    margin: 10px 0 10px 0;
}
#commentary h3{
    margin: 0;
    padding: 10px 0 10px 0;
    text-align: center;
    font-size: 1.2rem;
    line-height: 1em;
    background-color: rgba(0, 0, 0, .7);
    letter-spacing: 0.1rem;
    color: #fff;
    font-weight: bold;
    border-bottom: 1px solid #ae9559;
    clear: both;
}
#commentary .i-box{
    text-align: center;
}
#commentary i {
    width: 80px;
    height: 80px;
    margin: 20px auto 0;
    padding: 13px 0 0 1px;
    background-color: #c1b19d;
    font-size: 3.4rem;
    color: #FFF;
    text-align: center;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
}
#commentary .commentary-box{
    width: 70%;
    height: 100%;
    margin: 30px auto;
}
@media (max-width: 550px) {
#commentary .commentary-box{
    width: 100%;
    height: 100%;
    margin: 30px auto;
}}
#commentary .commentary-title{
    line-height: 1.10938em;
    letter-spacing: 0em;
    color: #111;
    font-size: 25px;
    text-align: center;
}
#commentary .commentary-text{
    margin-top: 20px;
    color: #111;
    font-size: 15px;
}
#commentary .breaking-out {
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
}
#commentary .section-container {
    padding-right: calc(50vw - 50%);
    padding-left: calc(50vw - 50%);
}
#commentary a{
    text-decoration: none;
    display: block;
    height: 100%;
    color: #f6f5f1;
}
#commentary a:hover{
    text-decoration: none;
    color: #ae9559;
    opacity: 1;
}
#commentary .br-text{
    padding: 0 10px;
}
#commentary .br-btn{
    font-size: 0.9rem;
    font-weight: bold;
    padding: 5px 0;
    text-align: center;
    color: #f6f5f1;
    background-color: #AD935A;
    border: 3px solid #AD935A;
    width: 280px;
    margin: 20px auto;
}
#commentary .br-btn:hover{
    background-color: #f0f0e1;
    color: #ae9559;
}

/*---------------------------------------------------------------------
	 Rebate program css
----------------------------------------------------------------------*/
/*---------------------------------------------------------------------
	 Section head
----------------------------------------------------------------------*/

#head {
	font-family: "Hiragino UD Sans W6 JIS2004", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	text-align: center;
}

#head h2 {
	margin: 30px 0 40px 0;
	padding: 0;
	font-size: 28px;
	font-weight: 500;
	line-height: 1.4;
	background: transparent;
	color: #505050;
	border: none;
}

@media (min-width: 768px) {
#head h2 {
	font-size: 26px;
}
}

/*---------------------------------------------------------------------
	 Section intro
----------------------------------------------------------------------*/

#intro {
    font-family: "Hiragino UD Sans W6 JIS2004", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
#intro h2 {
    margin: 60px 0 40px 0;
    padding: 0;
    font-size: 34px;
    font-weight: 500;
    line-height: 1.4;
    background: transparent;
    color: #505050;
    border-left: none;
    text-align: center;
}

/*---------------------------------------------------------------------
	 Section policy
----------------------------------------------------------------------*/

#policy h2 {
    margin: 0px 0 18px 0;
	padding: 50px 0 10px 0;
    text-align: center;
    font-size: 3.0rem;
    line-height: 39px;
    letter-spacing: 0.1rem;
    color: #505050;
    font-weight: bold;
    background: transparent;
    border: none;
}

#policy h3 {
    margin: 40px 0 18px 0;
    padding: 10px 0 10px 0;
    text-align: center;
    font-size: 2.5rem;
    line-height: 36px;
    letter-spacing: 0.1rem;
    color: #505050;
    font-weight: bold;
    background: transparent;
    border: none;
}

#policy .center_box {
    width: 100%;
    margin: 0 auto;
    padding: 20px;
    border: 1px solid #ccc;
    background: #fffff2;
}

@media (min-width: 768px) {
#policy .center_box {
    width: 82%;
}
}


/*---------------------------------------------------------------------
	 Wedget
----------------------------------------------------------------------*/

.keni-section .sub-section_title {
	line-height: 1.0;
	margin: 0 -20px 18px;
	padding: 10px;
	border: 0;
	outline: 0;
	background: #fff;
	font-weight: normal;
	font-size: 2.5rem;
	color: #505050;
	border-radius: 0;
	box-shadow: none;
	background: #fff;
	text-align: center;
	font-weight: bold;
}


.widget_recent_entries_img03 .list_widget_recent_entries_img .widget_recent_entries_img_entry_title a:hover {
	background: #000000c3;
}

/*---------------------------------------------------------------------
	 Section Suport
----------------------------------------------------------------------*/
#suport h2 {
    background: transparent;
    color: #000000;
    border-left: 0;
    padding: 9px 0 9px 10px;
    clear: both;
    border-top: 3px solid #212938;
    border-bottom: 3px solid #212938;
    font-size: 24px;
    margin: 30px 0 1em;
    font-weight: bold;
    line-height: 1.4;
    vertical-align: baseline;
}
#suport h3 {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.4;
    position: relative;
    padding: 0 0 0 10px;
    border-left: 3px solid #212938;
    margin: 30px 0 0;
    border-top:0;
    border-bottom:0;
    color: #000;
    background: transparent;
}
#suport .keni-section h3 {
    margin-top: 30px;
}
#suport .flex_container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#suport .flex_box {
    box-shadow: none;
    background-color: #FFFFFF;
    border: solid 3px #f5f5f5;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    position: relative;
}
@media (min-width: 768px) {
#suport .flex_box {
    width: 48%;
}
}
#suport .flex_box:hover {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    border: solid 3px #212938;
}
#suport .flex_box_title {
    display: inline-block;
    margin: 6px 10px 10px 10px;
    font-size: 20px;
    font-weight: 900;
    font-feature-settings: "palt";
    letter-spacing: 0.05em;
    line-height: 1.4;
    color: #000;
    margin-top: 20px;
    margin-bottom: 5px;
}
#suport .point {
    margin: 5px 20px 0 20px;
    color: #505050;
}
#suport  .link {
    position: relative;
    margin: auto 20px 15px 20px;
    text-align: right;
    font-size: 14px;
    font-feature-settings: "palt";
    letter-spacing: 0.007em;
}
#suport .flex_box .link_text {
    color: #0066cc;
    text-decoration: none;
}
#suport .link::after {
    position: absolute;
    margin-top: -3px;
    content: '';
    width: 6px;
    height: 6px;
    border: 0;
    right: -10px;
    border-top: solid 1px #0066cc;
    border-right: solid 1px #0066cc;
    transform: rotate(45deg);
	top: 50%;
}
#suport .container {
    background: #f9f9f9;
    padding: 20px;
    margin: 15px 0;
}
#suport .highlight {
    color: #212938;
    text-decoration: none;
}
#suport .highlight:hover {
    color: #0066cc;
    text-decoration: underline;
}
#suport .accordion-list dt {
    background: #f0f0f0;
    padding: 12px 40px 12px 15px;
    color: #505050;
}
#suport .accordion-list dt::after {
    top: 40%;
    right: 12px;
}
@media (min-width: 768px) {
#suport .accordion-list dt::after {
    top: 35%;
}
}
#suport .accordion-list dd {
    background: #f9f9f9;
    border: 1px solid #f0f0f0;
}


/*---------------------------------------------------------------------
	 Section TitanFX
----------------------------------------------------------------------*/

#titan h2 {
    background: transparent;
    color: #303641;
    border-left: 0;
    padding: 12px 0 12px;
    clear: both;
    border-top: 3px solid #60a037;
    border-bottom: 3px solid #60a037;
    font-size: 22px;
    margin: 56px 0 1em;
    font-weight: bold;
    line-height: 1.4;
    vertical-align: baseline;
}
@media (min-width: 768px) {
#titan h2 {
    font-size: 28px;
    margin-top: 2em;
}
}
#titan h3 {
    clear: both;
    border-left: 5px solid #60a037;
    padding: 0 13px;
    color: #303641;
    font-size: 20px;
    margin: 56px 0 1em;
    font-weight: bold;
    line-height: 1.4;
    border-top: 0;
    border-bottom: 0;
    background: transparent;
}
@media (min-width: 768px) {
#titan h3 {
    font-size: 24px;
    margin-top: 2em;
}
}
#titan h4 {
    font-size: 18px;
    margin-bottom:25px;
    font-weight: bold;
    line-height: 1.4;
    padding: 9px;
    border: 2px solid #303641;
    color: #303641;
}
@media (min-width: 768px) {
#titan h4 {
    font-size: 20px;
    padding: 9px 15px;
}
}
#titan h5 {
    margin-bottom: 25px;
    color: #444444;
    font-size: 1.6rem;
    border-bottom: none;
    border-left: 3px solid #60a037;
    padding: 6px 6px;
}
@media (min-width: 768px){
#titan h5 {
    color: #303641;
    font-size: 1.8rem;
    border-bottom: none;
    border-left: 3px solid #60a037;
    padding: 3px 9px;
}
}
#titan .text_box0 {
    background: #F8F8F8;
    padding: 24px 10px 0;
    border: solid 1px #F0F0F0;
    margin-bottom: 2em;
    border-radius: 3px;
}
@media (min-width: 768px) {
#titan .text_box0 {
    padding: 24px 20px 0;
}
}
#titan .text_box1 {
    background: #F8F8F8;
    padding: 24px 10px 0;
    border: solid 1px #60a037;
    margin-bottom: 2em;
    border-radius: 3px;
}
@media (min-width: 768px) {
#titan .text_box1 {
    padding: 24px 20px 0;
}
}
#titan .text_box2 .box-title {
    background: #60a037;
}
#titan .text_box2 {
    border: solid 2px #60a037;
    background: #f8f8f8;
}
@media (min-width: 768px) {
#titan .text_box2 {
    /*margin: 40px 0 2em;*/
}
}
#titan .haikei {
    background: #f8f8f8;
    padding: 10px;
    margin: 0 -10px 24px;
    border-left: 3px solid #71be44;
}
#titan .glay_haikei {
    background: #f8f8f8;
    padding: 12px 10px;
    margin-bottom: 24px;
}
#titan .step-chart li:nth-child(1) {
    background-color: #e5ece1;
}
#titan .step-chart_style01 li:nth-child(1)::after, #titan .step-chart_style02 li:nth-child(1)::after {
    border-top-color: #e5ece1;
}
#titan .step-chart li:nth-child(2) {
    background-color: #e5f5dc;
}
#titan .step-chart_style01 li:nth-child(2)::after, #titan .step-chart_style02 li:nth-child(2)::after {
    border-top-color: #e5f5dc;
}
#titan .step-chart li:nth-child(3) {
    background-color: #b8e49d;
}
#titan .step-chart_style01 li:nth-child(3)::after, #titan .step-chart_style02 li:nth-child(3)::after {
    border-top-color: #b8e49d;
}
#titan .step-chart li:nth-child(4) {
    background-color: #7cbd55;
}
#titan .step-chart_style01 li:nth-child(4)::after, #titan .step-chart_style02 li:nth-child(4)::after {
    border-top-color: #7cbd55;
}
#titan  .square_btn_green {
    background: #303641;
}
#titan .accordion-list dt {
    background: #303641;
    padding: 15px 30px 15px 20px;
}
@media (min-width: 768px) {
#titan .accordion-list dt {
    background: #303641;
    padding: 18px 30px 18px 40px;
}
}
#titan .accordion-list dt::after {
    top: 21px;
}
@media (min-width: 768px) {
#titan .accordion-list dt::after {
    top: 24px;
}
}
#titan .accordion-list dd {
    background: #fff;
    border: 1px solid #303641;
}
#titan .mokuji .title {
    background: #60a037;
}
#titan .mokuji {
    background: #f8f8f8;
    border: 5px solid #f0f0f0;
}
#titan .dl_style02 dt {
    background: #686c75;
    padding: 10px 20px;
}
#titan .dl_style02 dd {
    background: #fff;
    border: 1px solid #686c75;
}
#titan .green {
    color: #40ae00;
}
#titan table {
    width: 100%;
    margin: 30px auto;
}
#titan thead th {
    background: #303641;
}
#titan th, td {
font-size: 16px;
}
}
#titan th {
    background: #686c75;
    text-align: left;
    vertical-align: middle;
    padding: 10px;
}
@media (min-width: 768px) {
#titan th {
    padding: 10px 20px;
}
}
#titan td {
    text-align: left;
    vertical-align: middle;
    padding: 10px;
}
@media (min-width: 768px) {
#titan td {
    padding: 10px 20px;
}
}
#titan tbody th {
    background: #f0f0f0;
    text-align: left;
    vertical-align: middle;
    padding: 10px;
}
@media (min-width: 768px) {
#titan tbody th {
    padding: 10px 20px;
}
}
#titan tbody td {
    text-align: left;
    vertical-align: middle;
    padding: 10px;
}
@media (min-width: 768px) {
#titan tbody td {
    padding: 10px 20px;
}
}
#titan .column1 {
    padding: 0 3px;
}
#titan .column2 {
    padding: 0 3px;
}
#titan .qa-list {
    padding-top: 24px;
    padding: 24px 20px 0;
    background: #f0f0f0;
}
#titan .qa-list dt {
    margin-bottom: 20px;
    border-bottom: 1px dashed #ccc;
    padding: 40px 0 10px 0px;
}
@media (min-width: 768px) {
#titan .qa-list dt {
    padding: 6px 0 10px 40px;
}
}
#titan .qa-list dd {
    margin-bottom: 20px;
    padding: 4px 0 0 40px;
    padding: 40px 0 10px 0px;
}
@media (min-width: 768px) {
#titan .qa-list dd {
    padding: 6px 0 10px 40px;
}
}
#titan .qa-list dt::before {
    background: #303641;
}
#titan .qa-list dd::before {
    background: #71be44;
}
#titan .mokuji-b {
    padding-bottom: 20px;
    border: 2px solid #60a037;
    background: #f8f8f8;
    font-size: 1.1em;
}
#titan .item-box .item-box_title {
    color: #599437;
}

/*---------------------------------------------------------------------
	 Section XM
----------------------------------------------------------------------*/

#xm h2 {
background: transparent;
color: #000;
border-left: 0;
padding: 12px 15px 12px;
clear: both;
border-top: 3px solid #000;
border-bottom: 3px solid #000;
font-size: 22px;
margin: 56px 0 1em;
font-weight: bold;
line-height: 1.4;
vertical-align: baseline;
position: relative;
}
#xm h2:after {
content: "";
display: block;
line-height: 0;
overflow: hidden;
position: absolute;
left: 0;
bottom: 30%;
border-top: 18px solid transparent;
border-bottom: 18px solid transparent;
border-left: 12px solid #ec1c24;
}
@media (min-width: 768px) {
#xm h2 {
font-size: 28px;
margin-top: 2em;
}
#xm h2:after {
bottom: 25%;
}
}
#xm h3 {
clear: both;
border-left: 5px solid #ec1c24;
padding: 0 13px;
color: #000;
font-size: 20px;
margin: 56px 0 1em;
font-weight: bold;
line-height: 1.4;
border-top: 0;
border-bottom: 0;
background: transparent;
}
@media (min-width: 768px) {
#xm h3 {
font-size: 24px;
margin-top: 2em;
}
}
#xm h4 {
font-size: 18px;
margin-bottom: 25px;
font-weight: bold;
line-height: 1.4;
padding: 9px;
border: 2px solid #000;
color: #000;
}
@media (min-width: 768px) {
#xm h4 {
font-size: 20px;
padding: 9px 15px;
}
}
#xm .text_box0 {
background: #F8F8F8;
padding: 24px 10px 0;
border: solid 1px #F0F0F0;
margin-bottom: 2em;
border-radius: 3px;
}
@media (min-width: 768px) {
#xm .text_box0 {
padding: 24px 20px 0;
}
}
#xm .text_box1 {
background: #F8F8F8;
padding: 24px 10px 0;
border: solid 1px #ec1c24;
margin-bottom: 2em;
border-radius: 3px;
}
@media (min-width: 768px) {
#xm .text_box1 {
padding: 24px 20px 0;
}
}
#xm .text_box2 .box-title {
background: #000;
}
#xm .text_box2 {
border: solid 2px #000;
background: #f8f8f8;
}
@media (min-width: 768px) {
#xm .text_box2 {
/*margin: 40px 0 2em;*/
}
}
#xm .haikei {
background: #f8f8f8;
padding: 10px;
margin: 0 -10px 24px;
border-left: 3px solid #71be44;
}
#xm .glay_haikei {
background: #f8f8f8;
padding: 12px 10px;
margin-bottom: 24px;
}
#xm .step-chart li:nth-child(1) {
background-color: #fff7f7;
border: 1px solid #ec1c24;
}
#xm .step-chart_style01 li:nth-child(1)::after, #xm .step-chart_style02 li:nth-child(1)::after {
border-top-color: #ec1c24;
}
#xm .step-chart li:nth-child(2) {
background-color: #ffe6e6;
border: 1px solid #ec1c24;
}
#xm .step-chart_style01 li:nth-child(2)::after, #xm .step-chart_style02 li:nth-child(2)::after {
border-top-color: #ec1c24;
}
#xm .step-chart li:nth-child(3) {
background-color: #f5aaad;
border: 1px solid #ec1c24;
}
#xm .step-chart_style01 li:nth-child(3)::after, #xm .step-chart_style02 li:nth-child(3)::after {
border-top-color: #ec1c24;
}
#xm .step-chart li:nth-child(4) {
background-color: #ec1c24;
border: 1px solid black;
}
#xm .step-chart_style01 li:nth-child(4)::after, #xm .step-chart_style02 li:nth-child(4)::after {
border-top-color: black;
}
#xm  .square_btn_red {
    background: #000;
    border: 5px solid #ccc;
}
#xm  .square_btn_green {
background: #000;
}
#xm .accordion-list dt {
background: #000;
padding: 15px 30px 15px 20px;
}
@media (min-width: 768px) {
#xm .accordion-list dt {
background: #000;
padding: 18px 30px 18px 40px;
}
}
#xm .accordion-list dt::after {
    top: 21px;
}
@media (min-width: 768px) {
#xm .accordion-list dt::after {
top: 24px;
}
}
#xm .accordion-list dd {
background: #fff;
border: 1px solid #000;
}
#xm .mokuji .title {
background: #000;
}
#xm .mokuji {
background: #f8f8f8;
border: 5px solid #000;
	font-weight: bold;
}
#xm .dl_style02 dt {
background: #1e1e1e;
padding: 10px 20px;
}
#xm .dl_style02 dd {
background: #fff;
border: 1px solid #686c75;
}
#xm .green {
color: #40ae00;
}
#xm table {
width: 100%;
margin: 10px auto;
}
@media (min-width: 768px) {
#xm th, td {
font-size: 16px;
}
}

#xm th {
    background: #1e1e1e;
    text-align: left;
    vertical-align: middle;
    padding: 10px;
}
@media (min-width: 768px) {
#xm th {
    padding: 10px 20px;
}
}
#xm td {
    text-align: left;
    vertical-align: middle;
    padding: 10px;
}
@media (min-width: 768px) {
#xm td {
    padding: 10px 20px;
}
}
#xm tbody th {
    background: #f0f0f0;
    text-align: left;
    vertical-align: middle;
    padding: 10px;
}
@media (min-width: 768px) {
#xm tbody th {
    padding: 10px 20px;
}
}
#x tbody td {
    text-align: left;
    vertical-align: middle;
    padding: 10px;
}
@media (min-width: 768px) {
#xm tbody td {
    padding: 10px 20px;
}
}

#xm .column1 {
padding: 0 3px;
}
#xm .column2 {
padding: 0 3px;
}
#xm .qa-list dt {
margin-bottom: 20px;
border-bottom: 1px dashed #ccc;
padding: 40px 0 10px 0px;
}
@media (min-width: 768px) {
#xm .qa-list dt {
padding: 6px 0 10px 40px;
}
}
#xm .qa-list dd {
margin-bottom: 20px;
padding: 4px 0 0 40px;
padding: 40px 0 10px 0px;
}
@media (min-width: 768px) {
#xm .qa-list dd {
padding: 6px 0 10px 40px;
}
}
#xm .qa-list dt::before {
background: #000;
}
#xm .qa-list dd::before {
background: #ec1c24;
}
#xm .item-box .item-box_title {
color: #ec1c24;
}
#xm h5 {
margin-bottom: 25px;
margin-top: 45px;
color: #505050;
font-size: 1.8rem;
padding: 5px 0px;
border-bottom: none;
border-left: none;
}
/*---------------------------------------------------------------------
    XM用テーブル　ボーダー/背景色 デザイン
----------------------------------------------------------------------*/
#xm .bdt {
border-top: 2px solid #ec1c24;
}
#xm .bdl {
border-left: 2px solid #ec1c24;
}
#xm .bg01 {
background-color:  #ec1c24;
}
#xm .bg02 {
background-color:  #ec1c24;
}

/*---------------------------------------------------------------------
    英語住所 入力説明デザイン
----------------------------------------------------------------------*/
#xm .pre {
   background-color: #f0f0f0;
}
#xm .hon {
   color: #deac48;
   background-color: #f5eee2;
}
#xm .dis {
   color: #42a8e4;
   background-color: #dbeef9;
}
#xm .tow {
   color: #e43836;
   background-color: #ffeeed;
}
#xm .cit {
    color: #b343d9;
    background-color: #f4e3fa;
}
#xm .adn {
    color: #3f8f1e;
    background-color: #defcd2;
}
/*---------------------------------------------------------------------
    XPポイント ランクデザイン
----------------------------------------------------------------------*/
#xmp .executive {
box-shadow: 0 0 0 2px #505050 inset;
background-color: #f0f0f0;
}
#xmp .gold {
color: #deac48;
box-shadow: 0 0 0 2px #deac48 inset;
background-color: #f5eee2;
}
#xmp .diamond {
color: #42a8e4;
box-shadow: 0 0 0 2px #42a8e4 inset;
background-color: #dbeef9;
}
#xmp .elite {
color: #ec1c24;
box-shadow: 0 0 0 2px #ec1c24 inset;
background-color: #ffeeed;
}
/*---------------------------------------------------------------------
    XPポイント ランクステップ図
----------------------------------------------------------------------*/
#xmp .step-chart_xmp_style01 > li {
position: relative;
list-style: none;
margin-bottom: 16px;
padding: 20px 10px;
background: #ccc;
}
#xmp .step-chart_xmp li:nth-child(1) {
background-color: #f0f0f0;
border: 1px solid #505050;
}
#xmp .step-chart_xmp_style01 li:nth-child(1)::after {
border-top-color: #505050;
}
#xmp .step-chart_xmp li:nth-child(2) {
background-color: #f5eee2;
border: 1px solid #deac48;
color: #b58524;
}
#xmp .step-chart_xmp_style01 li:nth-child(2)::after {
border-top-color: #deac48;
}
#xmp .step-chart_xmp li:nth-child(3) {
background-color: #dbeef9;
border: 1px solid #42a8e4;
color: #236992;
}
#xmp .step-chart_xmp_style01 li:nth-child(3)::after {
border-top-color: #42a8e4;
}
#xmp .step-chart_xmp li:nth-child(4) {
background-color: #ffeeed;
border: 1px solid #ec1c24;
color: #d82d2b;
}
#xmp .step-chart_xmp_style01 li::after {
position: absolute;
bottom: -24px;
left: 50%;
margin-left: -12px;
border: solid transparent;
border-width: 12px;
content: '';
}
#xmp .font-executive {
background-color: #f0f0f0;
}
#xmp .font-gold {
background-color: #f5eee2;
color: #b58524;
}
#xmp .font-diamond {
background-color: #dbeef9;
color: #236992;
}
#xmp .font-elite {
background-color: #ffeeed;
color: #d82d2b;
}
#xm .cast-box-title {
margin: 1px 1px 30px;
padding: 10px 20px;
background-color: transparent;
border-top: 1px solid #000;
border-bottom: 1px solid #000;
color: #000;
font-size: 2.0rem;
font-weight: bold;
position: relative;
}
#xm .cast-box-title::before {
content: "";
display: block;
line-height: 0;
overflow: hidden;
position: absolute;
left: 0;
bottom: 0.45em;
border-top: 18px solid transparent;
border-bottom: 18px solid transparent;
border-left: 12px solid #ec1c24;
}

/*　一時無効
#xm .cast-box .cast_name, .cast-box_sub .cast_name {
color: #ec1c24;
}
*/

#xm .xm-box {
position: relative;
border: 0.15em solid #ec1c24;
margin: 2em 0em 1.8em;
padding: 1.8em 1em 0em;
}
#xm .xm-box_title {
position: absolute;
top: -0.9em;
left: 1em;
font-size: 1.2em;
font-weight: bold;
background: white;
padding: 0em 1.2em;
}
#xm .xm-box_title::before {
content: "";
display: block;
line-height: 0;
overflow: hidden;
position: absolute;
left: 0;
bottom: 0.2em;
border-top: 12px solid transparent;
border-bottom: 12px solid transparent;
border-left: 10px solid #ec1c24;
}
#xm h3 {
font-size: 24px;
margin-top: 2em;
}

#xm h4 {
font-size: 20px;
padding: 9px 15px;
}

#xm .text_box0 {
padding: 24px 20px 0;
}

#xm .text_box1 {
padding: 24px 20px 0;
}

#xm .text_box2 {
/*margin: 40px 0 2em;*/
}

#xm .accordion-list dt::after {
top: 24px;
}

#xm .arrow-d {
/* background-color: #f8f8f8;*/
text-align: center; 
/* width: 16em; */
margin: 30px 0px;
}

#xm .mokuji-b {
border: 2px solid #000000;
background: #f8f8f8;
font-size: 1.1em;
}

#xm .nobtn {
color: #000;
font-weight: bold;
padding: 0em 1em;
}

/*---------------------------------------------------------------------
    テキストボックス内　H4デザイン
----------------------------------------------------------------------*/
#xm .text_box1 > h4 {
    margin: 0 0 20px;
    color: #ec1c24;
    font-size: 1.8rem;
    padding: 5px 0px;
    border: none;
}

/*---------------------------------------------------------------------
	smart-mokuji
----------------------------------------------------------------------*/

#smart .smart-mokuji {
 position: relative;
 margin: 2em auto;
 padding: 3.3em 1em 0em;
 width: 100%; /* ボックス幅 */
 border-style: solid;
 border-color: #ec1c24; /* 枠の色 */
 border-width: 5px 1px 1px;
 background-color: #f7f7f7; /* 背景色 */
 box-shadow: 1px 1px 3px #ccc; /* 影 */
}

#smart .smart-mokuji_title {
 position: absolute;
 top: 25px;
 left: 15px;
 background-color: #f7f7f7; /* タイトル背景色 */
 font-size: 1.1em;
 font-weight: bold;
}

/*---------------------------------------------------------------------
	組み合わせ調整
----------------------------------------------------------------------*/

.accordion-list_cont > h4 {
    margin-top: 0;
}
.accordion-list_cont > h5 {
    margin-top: 0;
}
.simple_box > ul, .simple_box > ol {
    margin-top: 4px;
}
.simple_box.mokuji-b > ul {
    margin: 1em 0 1.5em 1.5em;
}

/*---------------------------------------------------------------------
	コメントアウトでpが付いてしまう場合にCSSを無効化
----------------------------------------------------------------------*/

p:empty:before {
content: initial!important;
}

/*--------------------------------------------
	モバイルテーブル（要 section id="mbt" ）
--------------------------------------------*/
@media screen and (max-width: 768px) {
#mbt .mb-tab thead {
    display: none;
}
#mbt .mb-tab th {
    background: #212938 !important;
    color: #fff !important;
}
#mbt .mb-tab th, .mb-tab td {
    display: block;
    width: 100%;
    padding-left: 8px !important;
}
#mbt .mb-tab tbody td:before {
   content: attr(data-label);
    display: table-cell;
    float: left;
    font-weight: bold;
    margin-right: 25px;
    background: #f0f0f0;
    width: 38%;
    box-shadow: 2px 0px 0px 10px #f0f0f0;
}
	#mbt .mb-tab.no_content tbody td:before {
content: none;
}
}

/*---------------------------------------------------------------------
	マニュアル用ボタン背景色
----------------------------------------------------------------------*/

.bg-btn01 {
background: #29a643;
border: 1px outset #29a643;
padding: 1px 5px;
color: #fff;
margin: 0 10px;
font-weight: bold;
vertical-align: middle;
white-space: nowrap;
}
/*---------------------------------------------------------------------
	トップページ　新規デザイン
----------------------------------------------------------------------*/
@media (min-width: 768px) {
.keni-main .keni-section_wrap.widget {
    padding: 20px;
    margin-top: 12px;
}
}

@media (min-width: 768px) {
#item h2 {
    margin: 20px 0 18px 0;
}
}
@media (min-width: 768px) {
.item-box .item-box_thumb {
    float: left;
    margin-right: 30px;
    margin-top: 20px;
}
}
#news .item-data {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #cccc;
    background: #303640;
}
#news dl {
    background: #303640;
    color: #fff;
}
#news .btn_gray {
    background: #5fa036;
    color: #d8d8d8;
}
@media (min-width: 768px){
.item-box {
    padding: 20px 20px 0;
}
}
@media (min-width: 768px) {
.item-box .btn-detail {
    margin-top: 3px;
    text-align: right;
}
}

/*-----------------------------------------------------
	お知らせ用 リンクカラー
-----------------------------------------------------*/
.news_box a:link, .news_box a:visited, .news_box a:hover, .news_box a:active {
    color: #f7f7f7;
}
@media screen and ( max-width: 767px) {
.news_box{
    padding: 0 20px;
}
}

/*-----------------------------------------------------
	H2見出しの装飾
-----------------------------------------------------*/
.h2_child {
    font-size: 0.5em;
    display: inline-block;
    margin-bottom: 15px;
    border-bottom: 3px solid;
} 
.wide-wrap h2 {
    border: none;
    text-align: center;
    margin-bottom: 5px;
    font-size: 30px;
}
@media screen and ( max-width: 767px) {
.h2_child {
    margin-bottom: 9px;
}
.wide-wrap h2 {
    font-size: 1.6em;
}
}

/*-----------------------------------------------------
	H3 H4見出し お問い合わせ
-----------------------------------------------------*/
#item h3 , #item h4 {
    margin-top: 20px;
    border: none;
    background: none;
    text-align: center;
}
@media screen and (max-width: 767px) {
    #item h3 , #item h4 {
    text-align: left;
}
}

/*-----------------------------------------------------
	f3リスト装飾
-----------------------------------------------------*/

.f3_list {
    font-size: 1.7em;
    font-weight: bold;
}
@media screen and (max-width: 768px) {
.f3_list {
    font-size: 1.35em;
    margin: 1em 0 1.5em 0.4em;
}
}

/*-----------------------------------------------------
	背景ワイド
-----------------------------------------------------*/
div.wide-wrap{
position:relative;
margin:0 calc(50% - 50vw);
overflow:hidden;
}

.fan_slide {
   padding: 25px;
}

/*-----------------------------------------------------
	スライド用テンプレート
-----------------------------------------------------*/
.fan_slide .simple_box {
    margin: 0;
    border: 3px solid #fff;
    width: 100%;
    height: 100%;
}

@media screen and ( max-width: 767px) {
.fan_slide {
    padding: 0px;
}
.fan_slide #top_btn .square_btn_red {
    min-width: 270px;
}
}


/*-----------------------------------------------------
	メニューアコーディオン　デザイン変更
-----------------------------------------------------*/
#dl_menu dl.accordion-list {
    margin-block-start: 5px;
    margin-block-end: 5px;
}
#dl_menu .accordion-list dt {
    background: #f0f0f0;
    color: #505050;
    margin-top: 0;
    margin-bottom: 0;
    padding: 12px 40px 12px 15px;;
    /*border-bottom: 1px solid #fff;*/
}
#dl_menu .accordion-list dd {
    padding: 0px;
}
#dl_menu .spc_dd {
    margin-inline-start: 0px;
    padding: 0px;
}

/*-----------------------------------------------------
	メニューアコーディオン内　リストデザイン
-----------------------------------------------------*/
#dl_menu dd ul {
    margin: 0;
    list-style: none;
}
#dl_menu dd li {
    margin: 0;
    padding: 10px 0 10px 25px;
}
@media screen and ( max-width: 767px) {

/*-------- スマホ表示　最後のliボーダー無 ----------*/
#dl_menu dd li:not(:last-child) {
    border-bottom: 1px dashed #cdcbcb;
}
#dl_menu .spc_dd li {
    border: none!important;
    padding: 220px 10px 10px 10px;
}
#dl_menu .manu_list li > p {
    margin-bottom: 0;
}
#dl_menu .new_cont li > p {
    margin-bottom: 0;
}

/*----- アコーディオンメニュー内 リンクカラー ------*/
#dl_menu li a:link, #dl_menu li a:visited, #dl_menu li a:hover, #dl_menu li a:active {
    text-decoration: none;
    color: #212938;
}
}
/*----- アコーディオンメニュー内 ポインター ------*/
#dl_menu .spec_cont li {
    cursor : pointer;
}
@media (min-width: 768px) {
#dl_menu .accordion-list dd.menu {
    padding: 0;
    background: #f9f9f9;
    border: 1px solid #f0f0f0;
}
}
/*-----------------------------------------------------
	マニュアルリスト/トレード情報/特集コンテンツ  
-----------------------------------------------------*/
#dl_menu .manu_list li {
    cursor : pointer;
}
#dl_menu .manu_list_title {
    font-size: 0.8em;
    font-weight: bold;
}
#dl_menu .new_cont_title {
    font-size: 0.9em;
    font-weight: bold;
}
#dl_menu .float_btn_green {
    display: inline-block;
    position: absolute;
    bottom: 1em;
    right: 5%;
     color: #505050;
    font-weight: bold;
}
@media (min-width: 768px) {
#dl_menu .manu_list {
    display: flex;
    flex-wrap: wrap;
}
#dl_menu .new_cont {
    display: flex;
    flex-wrap: wrap;
}
#dl_menu .manu_list li {
    display: inline-block;
    width: 31%;
    min-height: 387px;
    line-height: 1.7;
    margin: 10px;
    padding: 160px 10px 10px 10px;
    background-color: #fff;
    background-size: contain;
    box-shadow: 1px 1px 5px 0 #c1c1c1;
}
#dl_menu .new_cont li {
    display: inline-block;
    width: 31%;
    height: 435px;
    line-height: 1.7;
    margin: 10px;
    padding: 160px 10px 10px 10px;
    background-color: #fff;
    background-size: contain;
    box-shadow: 1px 1px 5px 0 #c1c1c1;
}
#dl_menu .manu_list_title {
    display: inline-block;
    margin: 9px 0;
}
#dl_menu .manu_list_text {
    font-size: 0.8em;
}
#dl_menu .float_btn_green {
    right: -8px;
    transform: translateX(10%);
    -webkit-transform: translateX(10%);
    -ms-transform: translateX(10%);
    /*background: linear-gradient(180deg, #464d5b,#eec14a);*/
    color: #505050;
    width: 160px;
    /*padding: 0.3em 0.8em;*/
    text-decoration: none;
    /*box-shadow: 0 5px 6px -2px rgb(0 0 0 / 20%);
    -webkit-tap-highlight-color: transparent;
    transition: .3s ease-out;*/
    font-weight: bold;
}
#dl_menu .float_btn_green:hover{
    cursor: pointer;
}
}
#dl_menu .new_cont li, #dl_menu .manu_list li, #dl_menu .spec_cont li {
    position: relative;
}
#dl_menu .spec_cont {
    display: flex;
    flex-wrap: wrap;
}
#dl_menu .spec_cont li {
    display: inline-block;
    width: 32%;
    min-height: 387px;
    line-height: 1.7;
    /*margin: 10px;*/
    padding: 159px 10px 10px 10px;
    background-color: #fff;
    background-size: contain;
    box-shadow: 1px 1px 5px 0 #c1c1c1;
}
#dl_menu .spec_list_text {
    font-size: 0.8em;
}

#dl_menu .spec_list_title {
    font-size: 1.0em;
    font-weight: bold;
    display: inline-block;
    margin: 9px 0;
}
@media screen and ( max-width: 767px) {
#dl_menu .spec_cont li {
    width: 100%;
    padding-top:  57%;
}
#dl_menu .spec_cont li:not(:last-child) {
margin-bottom: 15px;
}
#dl_menu .manu_list li {
    background-image: none !important;
    height: 50px;
}
#dl_menu .new_cont li {
    background-image: none !important;
    height: 50px;
}
}
#dl_menu .manu_list li .linksp , #dl_menu .spec_cont li .linksp {
    font-weight: bold;
    position: absolute;
    right: 20px;
    bottom: 20px;
}
#dl_menu .manu_list li a , #dl_menu .spec_cont li a {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
@media screen and (max-width: 767px) {
#dl_menu .manu_list li a , #dl_menu .spec_cont li a {
    left: 0;
}
}
#dl_menu .manu_list li, #dl_menu .spec_cont li {
    position: relative;
}
/*-----------------------------------------------------
	お問い合わせボックス/ボタン デザイン
-----------------------------------------------------*/
#item .contact-box, .wide-wrap .commentary-box {
    background-image: none;
}
#item .contact-box .contact-box-title {
    background-color: #212938;
}
#item .contact-box_inner {
    background-color: #f0f0f0;
}
#item .btn_style01 {
    border: 1px solid #212938;
}
#item .contact-box_tel {
	color: #212938;
}
#item .btn {
	color: #212938;
}
#item .commentary-box_title {
	color: #212938;
}
#item , #news {
    padding: 45px 0 45px 0;
}
.wide-wrap .contact-box-item > .btn:hover, .btn:active, .btn:focus {
    box-shadow: 3px 3px 5px 0px RGBA(129,137,141,1);
    transition: 0.4s;
    transform: none;
}
.contact-box {
    padding: 0px;
}

/*-----------------------------------------------------
	トップページ ボタンカラー
-----------------------------------------------------*/
#top_btn .square_btn_green {
   background: linear-gradient(180deg , #464d5b,#c1a354 );

}
#top_btn .square_btn_red {
    background: linear-gradient(180deg, #212938, #314fa2);
}

/*-----------------------------------------------------
	fanclubカラー(青)　フォント/背景
-----------------------------------------------------*/
.base_color_b {
     color: #212938 !important;
}
.base_bg_b {
     background: #212938;

}

/*-----------------------------------------------------
	ヘッダーボタン　カラー
-----------------------------------------------------*/
#head_btn .square_btn_red {
    background: linear-gradient(180deg, #212938, #373e4a);
}
#head_btn .square_btn_green {
    background: linear-gradient(180deg , #464d5b,#646a74);
}

/*-----------------------------------------------------
	メッセージ　手紙背景 デザイン
-----------------------------------------------------*/

.message_area { 
    padding: 30px 75px 15px; 
	background: #f9f9f9;
    border: 1px solid #f0f0f0;
}
@media screen and (max-width: 767px) {
.message_area { 
    padding: 30px 10px; 
}
}

/*-----------------------------------------------------
	白/黒　リンククラス
-----------------------------------------------------*/
.link_black a:link, .link_black a:visited, .link_black a:hover, .link_black a:active {
    color: #505050;
    text-decoration: underline;
}
.link_white a:link, .link_white a:visited, .link_white a:hover, .link_white a:active {
    color: #f7f7f7;
    text-decoration: underline;
}

/*-----------------------------------------------------
	トップページ　リベートステップ
-----------------------------------------------------*/
.wide-wrap .step-chart li:nth-child(1) {
    background: #d5e0ff;
}
.wide-wrap .step-chart_style01 li:nth-child(1)::after{
    border-top-color: #d5e0ff;
}
.wide-wrap .step-chart li:nth-child(2) {
    background: #96b3ff;
}
.wide-wrap .step-chart_style01 li:nth-child(2)::after{
    border-top-color: #96b3ff;
}
.wide-wrap .step-chart li:nth-child(3) {
    background: #446edc;
    color: #fff;
}
.wide-wrap .step-chart_style01 li:nth-child(3)::after{
    border-top-color: #446edc;
}
.wide-wrap .step-chart li:nth-child(4) {
    background: #212938;
}
/*-----------------------------------------------------
	ローディング画面
-----------------------------------------------------*/
#cover {
	height: 100%;
	width: 100%;
	background: #fff;
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 200;
}
.hide{
	opacity: 0;
	visibility: hidden;
	transition: 1s;
}
.show{
	transition: 1s;
	opacity: 1;
	visibility: visible;
}
#loading {
	/* 画面一杯にローディング画面を広げる */
	height: 100%;
	width: 100%;
	background: #212938;
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 100;
	/* flexboxを使ってローディングアイコンを画面の中央に寄せる
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center; */
}
#default {
	position: relative;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.shootingstar {
	position: relative;
	height: 0;
	width: 1px;
	background: white;
	animation-name: shooting;
	animation-duration: 0.8s;
	animation-timing-function: linear;
}

@keyframes shooting {
  0% {
    height: 0;
  }

  100% {
    height: 80px;
  }
}
#xm_loading{
}
/*-------------------------------------
           　pc/mb切替ボタン
-------------------------------------*/
ul.btn_list {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}
.btn_list > li {
    margin-right: 15px;
    width: 40px;
    height: 40px;
    list-style-type: none;
    border-radius: 3px;
    background: #dddddd;
    padding: 5px;
}
.btn_list > li:nth-child(1) {
    background: #e8103a;
    color: #fff;
}
li.pconly::before {
    content: '\f108';
    font-family: 'Font Awesome 5 Free';
    font-weight: bold;
    font-size: 25px;
    padding-left: 1px;
}
li.mbonly::before {
     content: '\f3cd';
    font-family: 'Font Awesome 5 Pro';
    font-weight: bold;
    font-size: 30px;
    padding-left: 5px;
}
.li_active {
    background: #e8103a !important;
    color: #fff !important;
}
.li_noacrive {
    background: #dddddd !important;
    color: #505050 !important;
}
.is_active {
    display: block !important;
}
.is_span_active {
    display: inline !important;
}
.no_active {
    display: none !important;
}
.no_span_active {
    display: none !important;
}
@media screen and (max-width: 767px) {
li.pconly::before {
     content: '\f3cd';
    font-family: 'Font Awesome 5 Pro';
    font-weight: bold;
    font-size: 30px;
    padding-left: 5px;
}
li.mbonly::before {
    content: '\f108';
    font-family: 'Font Awesome 5 Free';
    font-weight: bold;
    font-size: 25px;
    padding-left: 1px;
}
.is_active {
    display: none !important;
}
.is_span_active {
    display: none !important;
}
.no_active {
    display: block !important;
}
.no_span_active {
    display: inline !important;
}
}
/*-------------------------------------
fanclub ベースカラー
-------------------------------------*/
.fan_blue {
	color: #212938 !important;
}
.fan_yellow {
	color: #464d5b !important;
}
.fan_backb {
	background-color: #212938 !important;
}
.fan_backy {
	background-color: #464d5b !important;
}
#sidebar {
	margin-top: 18px;
}
/*-------------------------------------
section bottom
-------------------------------------*/
#bottom {
    background: #212938;
    margin: 30px -200% 0;
    padding: 30px 200% 20px;
}
#bottom .bottom-box {
    color: #fff;
}
#bottom .bottom-box_title {
    color: #fff;
    font-weight: bold;
    font-size: 18px;
    line-height: inherit;
}
#bottom dl {
    background: transparent;
}
#bottom .btn_gray {
    background: #464d5b;
    color: #fff;
    font-weight: bold;
}




/*---------------------------------------------------------------------
	 section news2 CTA用
----------------------------------------------------------------------*/

#news2{
	max-width: 100%
}
#news2 h2{
	margin: 60px 0 18px 0;
	padding: 10px 0 10px 0;
	text-align: center;
	font-size: 2.5rem;
	line-height: 1em;
	background-color: rgba(0, 0, 0, 0);
	letter-spacing: 0.1rem;
	color: #505050;
	font-weight: bold;
	border: none;
}
.news2-list {
	margin-left: 0;
	margin-bottom: 9px;
}
#news2 .item-box {
    background-color: #f9f9f9;
}
#news2 .item-box .item-box_title {
    margin-bottom: 0px;
    border-bottom: 2px solid #f9f9f9;
    color: #212938;
}
@media (min-width: 768px) {
#news2 .item-box .item-box_thumb {
    float: left;
    margin-right: 30px;
    margin-top: 20px;
}
}
#news2 .item-data {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #cccc;
}
#news2 dl {
    background: #f9f9f9;
}
#news2 .btn_gray {
    background: #666;
}
@media (min-width: 768px){
#news2 .item-box {
margin: 0 calc(50% - 50vw);
padding: 15px calc(50vw - 50%);
}
}
@media (min-width: 768px) {
#news2 .item-box .btn-detail {
    margin-top: 3px;
    text-align: right;
}
}
#news2 .frame {
    padding: 3px;
}
#news2 .container {
    margin: 30px 0;
    border-bottom: 1px dotted #ccc;
    border-top: 1px dotted #ccc;
}
#news2 .date {
    margin: 20px 0 0;
}
#news2 .title {
    font-weight: bold;
    color: #555d66;
    padding: 0 10px;
    border-left: 5px solid #212938;
}
#news2 th, td, tbody th {
    text-align: left;
    vertical-align: middle;
    padding: 10px 10px;
}
@media (min-width: 768px) {
#news2 th, td, tbody th {
    padding: 10px 20px;
}
}
#news2 blockquote {
    margin: 0;
    padding: 40px 3px 20px;
}
@media (min-width: 768px){
#news2 blockquote {
    margin-right: 24px;
    margin-left: 24px;
    padding: 35px 40px;
}
}

#news2 .move {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    margin: 30px 0;
}


#news2 {
    padding: 0 0 45px 0;
}


#news2 img:hover {
    -webkit-box-shadow: 0 5px 15px rgb(0 0 0 / 30%);
    box-shadow: 0 5px 15px rgb(0 0 0 / 30%);
}

#news2 .bg-w {
background-color: #fff;
}

#news2 .bd-w {
border: 1px solid #fff;
}

/*-----------------------------------------------------------------------------------
　　　　　　　　　　　　プロモーション用追加CSS
-----------------------------------------------------------------------------------*/
#promo {
    background: #108a20;
    color: #fff;
    padding: 9px 10px 5px;
    font-weight: bold;
    text-align: center;
    margin: -30px 0 25px 0;
}

@media screen and (max-width: 768px) {
#promo {
    text-align: left;
    font-size: 0.8em;
    line-height: 1.9;
}
}

#promo a {
    color: #fff;
}

#promo a:hover {
    color: #00ff73;
}

/*-----------------------------------------------------------------------------------
　　　　　　　　　             プロモーション用ここまで
-----------------------------------------------------------------------------------*/

/**
 * 
 * 		コピーボックスタイトルデザイン
 * 
 **/
 
/* コピーボックスタイトル */
.clipboard_title {
    color: #555;
    font-size: 18px;
    margin-bottom: 25px;
    border-bottom: none;
    padding: 6px 6px;
    font-weight: bold;
}
/* mediaクエリの設定 コピーボックスタイトル*/
@media (min-width: 768px) {
.clipboard_title {
    padding: 3px 9px 3px 0;
}
}

/* 外枠Flexbox（テキスト・ボタン 配置） */
.copy_container {
    display: flex;
    flex-wrap: wrap;
    margin:  30px 0 30px;
}

/* テキストcolumn */
.text_col {
    position: relative;
    width: 100%;
}

/* ボタンcolumn */
.copy_col {
    width: 100%;
}
/* mediaクエリ column設定 */
@media (min-width: 520px) {
  .copy_col {
    width: 210px;
  }
  .text_col {
    width: 300px;
  }
}

/* テキストボックスのデザイン */
.copy_text_box {
    padding: 8px 20px;
    background: #f0f0f0;
    border: solid 1px #777;
    border-radius: 8px;
    font-size: 1.5rem;
    box-shadow: 2px 2px 0px #e9e9e9;
    width: 295px;
    height: 49px;
}

/* コピーボタンのデザイン */
.copybtn {
    display: inline-block;
    padding: 1em 2em;
    border: 0;
    border-radius: 8px;
    box-shadow: 2px 2px 0px #e9e9e9;
    background: #666;
    color: #fff;
    font-size: 1.4rem;
    line-height: 1.5;
}

/* コピーボタンホバー状態 */

.copybtn:hover {
    -webkit-box-shadow: 0 5px 15px rgb(0 0 0 / 30%);
    box-shadow: 0 5px 15px rgb(0 0 0 / 30%);
    transition: .6s;
}

#clipboard_copy {
       
}

.copy_message {
    position: absolute;
    top:0;
    left: 0;
}



p#js_copyalert {
    color: #fff;
	margin:0;
    display: none;
    background-color: #212938cc;
    bottom: -6px;
    height: 5rem;
    width: 295px;
    border-radius: 8px;
	padding: 9px 60px;
}

p#js_copyalert > i {
	margin-right: 15px;
}

/**
 * 
 * パスワード自動生成
 * 
 **/

.pass-container {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
}

.pass-col1 {
	width: 21rem;
}
.pass-col2 {
	width: 30rem;
	position:relative;
}
.pass-col3 {
	width: 11rem;
}

p#pass_alert {
color: #fff;
    display: none;
    position: absolute;
    background-color: #212938cc;
    bottom: -6px;
    height: 5rem;
    width: 295px;
    border-radius: 8px;
	padding: 9px 60px;
}
p#pass_alert > i {
	margin-right: 15px;
}
p#pass_output {
	display: inline-block;
}
.pass-box {
    padding: 8px 20px;
    background: #f0f0f0;
    border: solid 1px #777;
    border-radius: 8px;
    font-size: 1.5rem;
    box-shadow: 2px 2px 0px #e9e9e9;
    width: 295px;
    height: 49px;
}

.pass-maker-title {
    color: #522974;
    font-size: 18px;
    margin-bottom: 25px;
    border-bottom: none;
    padding: 6px 6px;
    font-weight: bold;
}

@media (max-width: 768px) {
	.pass-col1 > p > .icon_arrow_s_right {
		display: none;
	}
	.pass-col1 {
		width: 21rem;
		order: 1;
	}
	.pass-col2 {
		width: 31rem;
		order: 3;
	}
	 p#pass_alert {
		width: 31rem;
	}
	.pass-box {
		width: 100%;
	}
	.pass-col3 {
		width: 21rem;
		order: 2;
	}
	.pass-maker-title {
 	   padding: 3px 9px 3px 0;
	}
}
@media (max-width: 457px) {
	.pass-col1 {
		width: 100%;
		order: 1;
	}
	.pass-col1 > .btn {
		display: block;
		padding: 1em 6em;
	}
	.pass-col2 {
		width: 100%;
		order: 2;
	}
	 p#pass_alert {
		width: 100%;
	}
	.pass-box {
		width: 100%;
		margin: 0;
	}
	.pass-col3 {
		width: 100%;
		order: 3;
        margin-top: -1.6rem;
	}
	.pass-col3 > .btn {
		display: block;
		padding: 1em 13rem;
	}
}
.page-top a {
	display: none;
}

/*マニュアル記事のフッターロゴ変更*/
.funclub_logo {
    background-image: url(https://www.sakaida1125.xsrv.jp/wp-content/uploads/2022/11/kaigaifxfanclub_logo_01.png) !important;
}
/*キャンペーンパーツ大*/

.bonusBox05.exclusive {
    background: linear-gradient(#f9f9f9, rgba(0, 0, 0, 0.2)), url(https://www.sakaida1125.xsrv.jp/wp-content/uploads/2023/03/fxgt_Top_780px_1.jpg);
    background-size: cover;
    color: #505050;
    margin: 0 -1000px;
    padding: 0 1000px;
}
.paddingCommon60A {
    padding: 44px 25px 20px;
}
.contents01.exclusive, .bonusBoxNews01Inner01.exclusive {
    display: flex;
    justify-content: flex-end;
}
.generationA .contents01, .generationA .contents02 {
    max-width: 1196px;
    margin-left: auto;
    margin-right: auto;
}
.bonusBox05Inner01 {
    background-color: #1d2144a6;
    color: #fff;
    margin: 0 -1000px;
    padding: 0 1000px;
}
@media (max-width: 767px) {
.bonusBox05Inner01 {
    padding: 0 1000px 20px;
}
}
.generationA .contents01, .generationA .contents02 {
    max-width: 1196px;
    margin-left: auto;
    margin-right: auto;
}
.flexCommon01 {
    position: relative;
    display: flex;
    flex-wrap: wrap;
}
.flexCommon01.flexCenter {
    justify-content: center;
}
.bonusBox05Inner01Title01, .bonusBox05Inner01Main01 {
    border-bottom: 1px solid #FFF;
    padding: 10px 0;
}
.flexCommon01.flexBetween {
    justify-content: space-between;
}
.bonusBoxInnerFlex {
    display: flex;
    justify-content: space-between;
    position: relative;
    flex-wrap: wrap;
    align-items: flex-end;
}
.bonusBox05Inner01Num01 {
    background-color: #1d2144;
    color: #FFF;
    text-align: center;
    background-image: linear-gradient(#575578 0%,transparent 50%,transparent 50%,#1d2144 100%);
}
.bonusBox05Inner01Main01 > div {
    width: calc(50% - 10px);
}
@media (max-width: 767px) {
.bonusBox05Inner01Main01 > div {
    width: calc(100% - 10px);
}
}
.bonusBox05Inner01Num01 {
    width: 100px;
    height: 100px;
    line-height: 100px;
}
.dispTable>div, .dispTable>li, .dispTable>p, .dispTable>span {
    display: table-cell;
    vertical-align: middle;
}
.bonusBox05Inner01Small01 {
    font-size: 16px;
}
.bonusBox05Inner01Small02 {
    font-size: 18px;
}
.bonusBox05Inner01Mid01 {
    font-size: 18px;
}
.bonusBox05Inner01Big01 {
    padding: 3px 15px 0 0;
    font-size: 35px;
    font-weight: bold;
}
@media (max-width: 767px) {
.bonusBox05Inner01Small01 {
    font-size: 14px;
}
.bonusBox05Inner01Small02 {
    font-size: 14px;
}
.bonusBox05Inner01Mid01 {
    font-size: 14px;
}
.bonusBox05Inner01Big01 {
    padding: 3px 15px 0 0;
    font-size: 28px;
    font-weight: bold;
}
}
.bonusBox05 a {
    color: var(--wp--preset--color--white);
    text-decoration: none;
}
.top_campaign_text34 {
    font-size: 34px;
    font-weight: bold;
    line-height: 1.2em;
}
.top_campaign_text27 {
    font-size: 27px;
    font-weight: bold;
    line-height: 1.3em;
}
.top_campaign_text20 {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.3em;
}
.bonusBox05 p {
    margin: 0;
}
#btn .campain_btn_green {
	position: relative;
	line-height: 1.5em;
	text-decoration: none;
	text-align: center;
	color: #fff;
	padding: 9px 20px 0;
   min-width: 280px;
	margin: 5px;
	width: 80%;
	background: #d14263;
	background-image: linear-gradient(#ff8282 0%,transparent 50%,transparent 50%,#d14263 100%);
}
@media (max-width: 767px) {
#btn .campain_btn_green {
	width: 100%;	
}	
}

#btn .campain_btn_green .fa {
	position: absolute;
	top: 21%;
	font-size: 33px;
	right: 15px;
	margin: 0;
	vertical-align: middle;
}
#btn .campain_btn_green .fa {
	position: absolute;
	top: 21%;
	font-size: 33px;
	right: 15px;
	margin: 0;
	vertical-align: middle;
}
#btn .campain_btn_green:hover {
	-webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
	box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
}
#btn .campain_btn_green a {
	text-decoration: none;
	display: block;
	color: #f6f5f1;
	padding: 0.25em 0 0.5em 0;
	border: 3px solid #1EC69B;
}
.f14px{
	font-size: 14px;
}