@charset "utf-8";
/* ================================================================================================================

投稿、固定等の下層ページ専用スタイル
※ヘッダー、フッターはcommon.cssにて構成
================================================================================================================*/

/*パンくずリスト*/

.bread_crumbs{background: #E2E2E2;padding: 14px 0 9px;}
.bread_crumbs ul{display: flex;justify-content: flex-start;font-size: 16px;width: 100%;max-width: 1260px;margin: 0 auto;padding:0 0 0 20px;line-height: 1;}
.bread_crumbs ul li{position: relative;width: fit-content;padding:0 0.3em 0;}

/* 色変更 パンくずリスト用スタイル*/

body.js_black .bread_crumbs{background: #000;}
body.js_blue .bread_crumbs{background:#000AFF;}

@media (max-width:500px) {
    .bread_crumbs{padding: 11px 0 9px;}
    .bread_crumbs ul{font-size: 12px;padding:0 0 0 15px;}
}

/* ================================================================================================================
記事基本設定
================================================================================================================*/
.main_column article{margin-bottom: 20px;}
/*タイトル*/

.main_visual{height: 208px;display: flex;justify-content: center;align-items: center;background: rgba(64,166,224,0.3);}
.main_visual h1{font-weight: 400;font-size: 40px;line-height: 1.325;}

@media (max-width:767px) {
    .main_visual{height: clamp(80px,20vw,208px);}
    .main_visual h1{font-size: clamp(22px,5vw,40px);}

}

/*見出しと段落*/

.main_column h1{font-weight: 400;}
.main_column article h2,
#archive h2{text-align: center;font-weight: 400;margin: 0 0 50px 0;position: relative;}
.main_column article h2:not(:first-child){margin: 60px 0 50px;}
#archive h2{margin: 0 0 20px 0;}

.main_column article h2::after,
#archive h2::after{position: absolute;content:"";width: 50px;height: 5px;background: #40A6E0;left:50%;bottom: -15%;transform: translateX(-50%);}
.main_column article h3{position: relative;text-align: left;font-weight: 400;padding: 0 0 0 0.8em;margin: 64px 0 13px 0;}
.main_column article h3::after{position: absolute;content:"";width: 5px;height: 77%;background: #40A6E0;left:0;top: 4px;}
.main_column article p{font-size: 16px;line-height: 35px;}

/* 色変更
*/
body.js_blue .main_column article h2::after,
body.js_black .main_column article h2::after {background: #fff;}
body.js_blue .main_column article h3::after,
body.js_black .main_column article h3::after {background: #fff;}

@media (max-width:767px) {
    .main_column h2{margin: 0 0 25px 0;}
    .main_column h2:not(:first-child){margin: 35px 0 25px;}
    .main_column h3{margin: 30px 0 13px 0;}
}

@media (max-width:500px) {
    .main_column h2{font-size: 20px;}
    .main_column h3{font-size: 18px;}
    .main_column h3::after{height: 92%;left:0;top: -3px;}
}

/*リスト*/

.main_column article ul{
    font-size: 16px;
    /* padding: 0 10px 0 0; */
    line-height: 35px;}
.main_column article ul li{position: relative;padding-left: 0.6em;text-indent: 0em;}
.main_column article ul li::before{position: absolute;content:"";width: 3px;height: 3px;background: #333;border-radius: 50%;top:16px;left: 2px;}
@media (max-width:500px){
    .main_column article ul{font-size: 16px;
        /* padding: 0 10px 0 0; */
        line-height: 30px;}
    .main_column article ul li::before{top: 14px;}
}

/*テーブル*/

.main_column article table tr td{padding: 20px clamp(10px, 1.4vw, 25px) 20px clamp(10px, 1.4vw, 25px);border: solid 1px #333;}
.main_column article table tr td a{color: #40A6E0;text-decoration: underline;}
.main_column article table tr td:first-of-type{background: #EAEAEA;}

/* 色変更
*/
body.js_blue .main_column article table tr td,
body.js_black .main_column article table tr td{border: solid 1px #fff;}

body.js_blue .main_column article table tr td{background:#000AFF;}
body.js_black .main_column article table tr td{background:#000;}

body.js_blue .main_column article table tr td a,
body.js_black .main_column article table tr td a{color: #fff;}

@media (max-width:767px) {
.main_column article table{min-width:767px;overflow-x: auto;}

.main_column table tr td,
.main_column table tr td a{font-size: 16px;}

/*画像関係*/

.wp-block-columns.is-layout-flex {gap: 0;}
.main_column figure{margin: 0.5em 0 0.5em;}
.main_column figure img{display: block; max-width:480px;margin: 0 auto; width: 100%;}
}










/* ================================================================================================================
メインカラム、サイドカラムのラッパー部(内部スタイルは別記)
*/
/* メインカラム、サイドカラムのラッパー部
*/
.column_main_side_wrapper{width: 100%;max-width: 1242px;margin: 104px auto 199px;}

/* メインカラムのラッパー
*/
#main_column{width: 100%;max-width: 968px;padding: 11px 10px 0;}

/* サイドカラムのラッパー
*/
#side_column{width: 100%;max-width: 220px;padding: 0 10px 0;}
.sticky_area{/* position: sticky; *//* top: 68px; */}

@media(max-width:1280px){
    .column_main_side_wrapper{margin: 80px auto 80px;}
}

@media (max-width:767px) {
.column_main_side_wrapper{margin: 60px auto 60px;}
#side_column{display: none;}
}/* max-width:767px */

@media (max-width:500px) {
    #main_column{padding: 11px 15px 0;}
    .column_main_side_wrapper{margin: 24px auto 40px;}
}/* max-width:500px */

/* content_06 */
.main_column .content_06{margin: 0 0 74px 0;}
.main_column .content_06 .link_area_inner{flex-wrap: wrap; align-items: flex-start;}

.main_column .content_06 .link_area_inner a{width: 47.7%;padding: 36px 20px;margin:0 0 20px 0;line-height: 1;position: relative;border: 3px solid #40A6E0;font-size: 22px;color:#006EAD;border-radius: 10px;text-align: center;display: flex;justify-content: center;align-items: center;background: #E8F7FF;transition: opacity .4s;}
.main_column .content_06 .link_area_inner a:hover{opacity: .6;transition: opacity .4s;}

.main_column .content_06 .link_area_inner a::after{position: absolute;content:"";bottom: 8px;right: 8px;width: 0px;height:0;border-left: 32px solid transparent;border-bottom: 32px solid #024E79;}

.main_column .content_06 .link_area_inner a:last-of-type{margin:0;}
.main_column .content_06 .link_area_inner a:nth-last-child(2){margin:0;}

/* 色変更
 */
body.js_blue .main_column .content_06 .link_area_inner a{background: #000AFF;}
body.js_black .main_column .content_06 .link_area_inner a{background: #000;}

body.js_blue .main_column .content_06 .link_area_inner a,
body.js_black .main_column .content_06 .link_area_inner a{border: 3px solid #fff;color: #fff;}

body.js_blue .main_column .content_06 .link_area_inner a::after,
body.js_black .main_column .content_06 .link_area_inner a::after{border-bottom: 32px solid #fff;}


@media (max-width:767px){
    .main_column .content_06 .link_area_inner a{
        border: 2px solid #40A6E0;
    }
}

@media (max-width:500px){
    .main_column .content_06{margin:0 0 35px 0;}
    .main_column .content_06 .link_area_inner{flex-wrap: wrap;}

    .main_column .content_06 .link_area_inner a{width: 48.7%;padding: 26px 0;margin:0 0 9px 0;font-size: 15px;}
    .main_column .content_06 .link_area_inner a:last-of-type{margin:0;}
    .main_column .content_06 .link_area_inner a:nth-last-child(2){margin:0;}
}/* max-width:500px */

@media (max-width:500px){
    .main_column .content_06 .link_area_inner a::after{bottom: 6px;right: 5px;border-left: 14px solid transparent;border-bottom: 14px solid #024E79;}
}

@media (max-width:360px){
    .main_column .content_06 .link_area_inner a{font-size: 14px;}
}/* max-width:360px */

/* ============================================================================
よく見られているページ(most_viwed_pages)
*/
.main_column .most_viwed_pages_text h4{font-size: 22px;font-weight: 400;margin-bottom: 35px;}
.main_column .popular_articles ul.wpp-list{display: flex;flex-wrap: wrap;justify-content: space-between;}
.main_column .popular_articles ul.wpp-list li{display:block;width: 29.7%;height: fit-content;}
.main_column .popular_articles ul.wpp-list a{display: flex;padding: 8px;margin: 0 0 17px 0;line-height: 1.4;min-height: 82px;position: relative;border: 3px solid #40A6E0;font-size: 18px;color:#006EAD;border-radius: 10px;justify-content: center;align-items: center;background: url(./../../img/under_page/most_viwed_pages_link_bg_pc.png) no-repeat center / 284px;transition: opacity .4s;background-size: cover;}
.main_column .popular_articles ul.wpp-list a{/* display:block; */}
.main_column .popular_articles ul.wpp-list a:hover{opacity: .6;transition: opacity .4s;}
.main_column .popular_articles ul.wpp-list a::after{position: absolute;content:"";bottom:8px;right: 8px;width: 0px;height:0;border-left:14px solid transparent;border-bottom:14px solid #024E79;}
.main_column .popular_articles ul.wpp-list a:last-of-type,
.main_column .popular_articles ul.wpp-list a:nth-last-child(2),
.main_column .popular_articles ul.wpp-list a:nth-last-child(3){margin:0;}

/* 色変更
*/
body.js_blue .main_column .popular_articles ul.wpp-list a{background:#000AFF;border: 3px solid #fff;color: #fff;}
body.js_black .main_column .popular_articles ul.wpp-list a{background:#000;border: 3px solid #fff;color: #fff;}

body.js_blue .main_column .popular_articles ul.wpp-list a::after{border-bottom: 14px solid #fff;}
body.js_black .main_column .popular_articles ul.wpp-list a::after{border-bottom: 14px solid #fff;}

@media (max-width:500px){
    .main_column .most_viwed_pages_text h4{font-size: 18px;}
    .main_column .popular_articles ul.wpp-list li{width: 100%;}
    .main_column .popular_articles ul.wpp-list a::after{bottom: 6px;right: 7px;border-left: 16px solid transparent;border-bottom: 16px solid #024E79;}
    .main_column .popular_articles ul.wpp-list a{padding: 19px 20px;margin: 0 0 8px 0;font-size: 16px;}
    .main_column .popular_articles ul.wpp-list a:nth-last-child(2),
    .main_column .popular_articles ul.wpp-list a:nth-last-child(3){margin:0 0 8px 0;}
    .main_column .popular_articles ul.wpp-list a:last-of-type{margin:0;}
}/* max-width:500px */


/* ============================================================================
サイドカラム内部
*/
.side_column .side_column_list_wrapper h4{font-weight: 400;padding: 16px;line-height: 1;position: relative;color:#fff;display: flex;justify-content: center;align-items: center;background: #40A6E0;}
.side_column .side_column_list_wrapper h4::after{position: absolute;content:"";bottom: 5px;right: 7px;width: 0px;height:0;border-left:14px solid transparent;border-bottom: 14px solid #C5E4F6;}

.side_column .side_column_list_wrapper ul{display: flex;flex-direction: column;justify-content: flex-start;padding: 15px 0 0 0;margin-bottom: 50px;}
.side_column .side_column_list_wrapper ul li{padding: 0 0 0 7px;line-height: 35px;font-size: 16px;}
ul.years_5 li:nth-child(n + 6){display:none !important;}
.side_column ul li{position: relative;}
.side_column ul li::before{position: absolute;content:"";width: 3px;height: 3px;background: #333;border-radius: 50%;top:16px;left: 2px;}
.side_column_banner_wrapper ul li::before{display: none;}

.side_column .banner_wrapper_inner a{display: block;margin: 0 0 24px 0;font-size: 0;}
.side_column .banner_wrapper_inner a:last-child{margin:0;}

/* 色変更
 */
body.js_blue .side_column .side_column_list_wrapper h4,
body.js_black .side_column .side_column_list_wrapper h4{border: 1px solid #fff;}

body.js_blue .side_column .side_column_list_wrapper h4{background: #000AFF;}
body.js_black .side_column .side_column_list_wrapper h4{background: #000;}

body.js_blue .side_column .side_column_list_wrapper h4::after,
body.js_black .side_column .side_column_list_wrapper h4::after{border-bottom: 14px solid #fff;}

body.js_blue .side_column ul li::before,
body.js_black .side_column ul li::before {background: #fff;}

/* =====================================================================
提案用スタイル追記分ここから
*/

/* 番号付きリスト
*/
ol{padding-left: 1em;
    font-size: 16px;
}
ol li{list-style: decimal;
padding-bottom: 8px;}


body.js_blue .main_column ul li::before,
body.js_black .main_column ul li::before {background: #fff;}


/* ストライプテーブル(.is-style-stripes)
*/

/* 最上部灰色 */
.wp-block-table.is-style-stripes td, .wp-block-table.is-style-stripes th{background-color: #f0f0f0;font-weight: normal;border: solid 1px #333;padding: 20px clamp(10px, 1.4vw, 25px) 20px clamp(10px, 1.4vw, 25px);}
/* ストライプスタイル、元々灰色を透明に */
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {background-color: unset;}
/* ストライプテーブルのtbody内trの背景色を無効化 */
.wp-block-table.is-style-stripes table tbody tr td{background-color: unset;}

body.js_blue .wp-block-table.is-style-stripes table tr td:first-of-type,
body.js_blue .wp-block-table.is-style-stripes table tr:nth-child(even) td,
body.js_blue .wp-block-table.is-style-stripes table tr td,
body.js_blue .wp-block-table.is-style-stripes table th{background:#000AFF;}

body.js_black .wp-block-table.is-style-stripes table tr td:first-of-type,
body.js_black .wp-block-table.is-style-stripes table tr:nth-child(even) td,
body.js_black .wp-block-table.is-style-stripes table tr td,
body.js_black .wp-block-table.is-style-stripes table th{background:#000;}

body.js_blue .wp-block-table.is-style-stripes table th,
body.js_black .wp-block-table.is-style-stripes table th{border: solid 1px #fff;}

/* テーブル パターン3(.is-style-layout03) */
.wp-block-table.is-style-layout03 table tbody tr:first-of-type td{
    background: #EAEAEA;
}

body.js_blue .wp-block-table.is-style-layout03 table tbody tr:first-of-type td{background:#000AFF;}
body.js_black .wp-block-table.is-style-layout03 table tbody tr:first-of-type td{background: #000;}



body.js_blue .main_column article h4::after,
body.js_blue .main_column article h5::after,
body.js_blue .main_column article h6::after{background: #fff;}
body.js_black .main_column article h4::after,
body.js_black .main_column article h5::after,
body.js_black .main_column article h6::after{background: #fff;}

/* 見出し
*/
.main_column article h4,
/* .main_column article h5, */
.main_column article h6{position:relative;text-align: left;font-weight: 400;padding: 0 0 0 0.8em;}
.main_column article h4{position: static;margin: 44px 0 13px 0;background: #EAEAEA;padding: 10px 10px 10px 1.4em;}
.main_column article h5{margin: 30px 0 13px 0;}
.main_column article h6{margin: 14px 0 13px 0;}

/* h5の下の線 */
.main_column article h5 {
	border-bottom: solid 1px #000;
	font-size: 18px;
}

/* .main_column article h5::after, */
.main_column article h6::after{position: absolute;content: "";width: 5px;height: 77%;background: #40A6E0;left: 0;top: 2px;}

/* 色変更
*/
body.js_blue .main_column article h4{background: rgba(64,166,224,0.3);}
body.js_black .main_column article h4{background: rgba(64,166,224,0.3);}

body.js_blue .main_column article h5::after,
body.js_blue .main_column article h6::after,
body.js_black .main_column article h5::after,
body.js_black .main_column article h6::after{background: #fff;}

/* map
*/
.main_column iframe{aspect-ratio: 16 / 9;width: 100%;height: auto;}

/*
提案用スタイル追記分ここまで
=====================================================================*/


.side_column_banner_wrapper{margin-top:50px;}
@media (max-width:767px){
    .side_column_banner_wrapper{margin-top:20px;}
}

/*========================================================================================================================================
フォームスタイルここから
contact,confirm,thanks各ページでスタイルの差別化が必要なセレクタには、
section.form_section に 下記 class名を付与し、スタイルの差異を作る

contact
confirm
thanks

*/

.main_column .form_section{width: 100%;}
/*====================================================================
フォーム 入力ページ用スタイル
*/
.main_column .form_section > p{font-size: 16px;margin: 0 0 37px 0;}
.main_column .form_section .progress ul{display: flex;justify-content: flex-start;height: fit-content;
    overflow: hidden;padding: 0;width: 100%;}

/* フォーム進捗バー共通スタイル
*/
.main_column .form_section .progress ul li{position: relative;width: 31.8%;padding: 7px 0;background: #80C7F0;color:#fff;text-align: center;font-size: 18px;}
.main_column .form_section .progress ul li.current{background: #006DAC;}

.main_column .form_section .progress ul li:nth-of-type(1){z-index: 2;}
.main_column .form_section .progress ul li:nth-of-type(2){z-index: 1;}
.main_column .form_section .progress ul li:nth-of-type(3){z-index: 0;}

/* 三角マーク 共通
*/
.main_column .form_section .progress ul li.current::before,
.main_column .form_section .progress ul li::before,
.main_column .form_section .progress ul li::after{content:"";position: absolute;top:50%;right:0;left: unset;width:0;height: 0;transform: rotate(45deg) translateY(-70%) skew(-8deg, -8deg);box-sizing: border-box;border-left: 20px solid transparent;border-bottom: 20px solid transparent;z-index: 1;background: none;border-radius: unset;}
.main_column .form_section .progress ul li span.pc_text{display: inline;}
.main_column .form_section .progress ul li span.sp_text{display: none;}

/* 三角マーク current 青
*/
.main_column .form_section .progress ul li.current::before{border-top: 20px solid #006DAC;border-right: 20px solid #006DAC;}

/* 三角マーク 青
*/
.main_column .form_section .progress ul li::before{border-top:20px solid #80C7F0;border-right:20px solid #80C7F0;}

/* 三角マーク 白
*/
.main_column .form_section .progress ul li::after{right:-1px;z-index: -1;border-top:23px solid #fff;border-right:23px solid #fff;border-left:23px solid transparent;border-bottom:23px solid transparent;}

/* 色変更
*/

/* フォーム進捗バー 青 */
body.js_blue .main_column .form_section .progress ul li{background: #000AFF;color:#fff;border:1px solid #fff;}
body.js_blue .main_column .form_section .progress ul li.current{background: #0033b2;}

body.js_blue .main_column .form_section .progress ul li::before{border-top:20px solid #000AFF;border-right:20px solid #000AFF;}
body.js_blue .main_column .form_section .progress ul li.current::before{border-top:20px solid #0033b2;border-right:20px solid #0033b2;}

/* フォーム進捗バー 黒 */
body.js_black .main_column .form_section .progress ul li{background: #000;color:#fff;border:1px solid #fff;}
body.js_black .main_column .form_section .progress ul li.current{background: #333;}

body.js_black .main_column .form_section .progress ul li::before{border-top:20px solid #000;border-right:20px solid #000;}
body.js_black .main_column .form_section .progress ul li.current::before{border-top:20px solid #333;border-right:20px solid #333;}

/* 各入力欄の必須/任意表示
*/
.main_column .form_section .flex{display: flex;justify-content: space-between;}
.main_column .form_section .required{position: relative;}
.main_column .form_section .required::after{position: absolute;padding: 2px 11px;width: fit-content;top: 0;right: 0;}
.main_column .form_section .required::after{content:"必須";color: #fff;border-radius: 3px;background: #ED5050;font-size: 14px;}

.main_column .form_section form{width: 100%;max-width:1200px;margin: 44px auto 0;padding: 36px 0px 39px;}
.main_column .form_section form > div{width: 100%;margin:0;padding: 0;}

/* 各入力欄のラッパー共通 */
.main_column .form_section .item{width: 100%;padding: 0;font-size: 0;margin: 0 0 40px 0;}

/* 各入力欄のlabel,input共通 */
.main_column .form_section .item .label_wrapp{display: flex;align-items: center;margin-right: 10px;}
.main_column .form_section .item label{display:block;font-size: 16px;width: fit-content;}
.main_column .form_section .item input{display:block;font-size: 16px;padding: 15px 17px;}

/* メッセージ入力欄 */
.main_column .form_section .label_wrapp.textarea{align-items: flex-start;margin-top: 14px;}
.main_column .form_section .label_wrapp label{margin: 0;min-width: 171px;}
.main_column .form_section .item textarea{padding: 10px;height: 238px;}

/* 入力欄 共通スタイル
*/
.main_column .form_section form input,
.main_column .form_section form textarea{
    /* macos向けスタイル */
    -webkit-appearance: none;
    font-size: 16px;
    width:74%;
    border: 1px solid #A8A8A8;
    background: #F8F8F8;
    border-radius:4px;
    width: 100%;
}

/* contact form 7 が生成する要素とクラス名に対してのスタイル
*/
.main_column .form_section span.wpcf7-form-control-wrap{width: 74%;}

/* contact form 7 が生成するエラー のスタイル
*/
.main_column .form_section span.wpcf7-form-control-wrap span{font-size:initial;}

/* contact form 7 が生成するエラー のスタイル contactページ内調整用
*/
.main_column .form_section.contact .consent_checkbox_wrapp span.wpcf7-form-control-wrap span.wpcf7-form-control{position:relative;padding: 0 60px 0 0;}
.main_column .form_section.contact .consent_checkbox_wrapp span.wpcf7-form-control-wrap span.wpcf7-form-control::after{
    position: absolute;
    padding: 2px 11px;
    width: fit-content;
    top: 50%;
    right: 0;
    content: "必須";
    color: #fff;
    border-radius: 3px;
    background: #ED5050;
    font-size: 14px;
    transform: translateY(-50%);
}


/* チェックボックス左右位置崩れの調整*/
.main_column .form_section.contact .consent_checkbox_wrapp span.wpcf7-form-control-wrap span.wpcf7-list-item{margin:0;}

/* チェックボックスホバー時のスタイル*/
.main_column .form_section.contact .consent_checkbox_wrapp span.wpcf7-form-control-wrap span.wpcf7-list-item span.wpcf7-list-item-label{cursor:pointer;}

/* 個人情報の取り扱いについてエリア
*/

/* ラッパー:取り扱いエリア */
.main_column .form_section .handling_personal_info{padding:30px 0 0 0;}

/* テキスト:次へお進みください */
.main_column .form_section .handling_personal_info > p{padding: 17px 0 23px;font-size:16px;line-height:30px;}

/* ラッパー:取り扱いエリア 本文(デザイン確定後具体的にマークアップしていく) */
.main_column .form_section .handling_personal_info > div{overflow-y: auto;max-height: 237px;font-size:16px;line-height:30px;border:solid 1px#A8A8A8;padding:16px;}

/* チェックボックス:同意する エリア
*/
.main_column .form_section.contact .consent_checkbox_wrapp{width: fit-content;padding: 28px 0 14px;margin:auto;}
.main_column .form_section.confirm .consent_checkbox_wrapp{width: fit-content;padding: 28px 0 38px;margin:auto;}

/* チェックボックス */
.main_column .form_section input#consent{width: 20px;height: 20px;vertical-align: middle;-webkit-appearance: none;border: 1px solid #A8A8A8;border-radius: 4px;cursor: pointer;position: relative;margin: 0 5px 1px 0;}
.main_column .form_section input#consent:checked{background:#0075ff;}
.main_column .form_section input#consent:checked::after{content:"";position:absolute;top: 0%;left: 27%;width: 8px;
    height: 13px;border-right:solid 2px #fff;border-bottom: solid 2px #fff;transform:rotate(45deg);}

/* ラベル:同意する */
.main_column .form_section form label[for="consent"]{position: relative;display: inline-block;font-size: 16px;width: fit-content;min-width: 150px;cursor:pointer;text-align: center;}

/* 必須マーク */
.main_column .form_section form label[for="consent"]::after{
    position: absolute;
    padding: 2px 11px;
    width: fit-content;
    top: 0;
    right: 0;
    /* content: "必須"; */
    color: #fff;
    border-radius: 3px;
    background: #ED5050;
    font-size: 14px;
    }

/* ホバーエフェクト : 入力内容の確認ボタン 入力確認ページの戻るボタン 入力確認ページの送信ボタン*/
.main_column .form_section form input[type="submit"],
.main_column .form_section form input[type="button"]{transition: opacity .4s;}
.main_column .form_section form input[type="submit"]:hover,
.main_column .form_section form input[type="button"]:hover{opacity: .6;}

/* ラッパー 送信ボタン */
.main_column .form_section .submit_wrapp{text-align: center;}

/* contactページ用 ラッパー送信ボタン */
.main_column .form_section.contact .submit_wrapp{text-align: center;display: flex;justify-content: center;align-items: center;flex-direction: column-reverse;}

/* confirmページ用 ラッパー送信ボタン */
.main_column .form_section.confirm .submit_wrapp{
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: wrap;
    justify-content: center;
    max-width: 520px;
    /* max-width: 1000px; */
    margin: auto;
}
.main_column .form_section.confirm .wpcf7-spinner{margin: 0 30%;order: 1;}
.main_column .form_section.confirm form input[type="submit"]{order: 2;}
.main_column .form_section.confirm form input[type="button"]{order: 3;}

/* 送信ボタン */
.main_column .form_section.contact form input[type="submit"],
.main_column .form_section.confirm form input[type="submit"]{
    /* macos向けスタイル */
    -webkit-appearance: button;
    appearance: button;
    border: none;
    padding: 13px 0px;font-size: 18px;display: inline-block;width: 300px;cursor: pointer;color: #fff;border-radius: 10px;line-height: 35px;border: none;background: #006DAC;
}

/* macos向けスタイル */
_:lang(x)+_:-webkit-full-screen-document,.main_column .form_section input#consent{-webkit-appearance:none;position:relative;}
_:lang(x)+_:-webkit-full-screen-document,.main_column .form_section input#consent:checked::after{content:"";position:absolute;top: 0%;left: 27%;width: 8px;height: 13px;border-right:solid 2px #fff;border-bottom: solid 2px #fff;transform:rotate(45deg);}

/* 色変更
*/
body.js_blue .main_column .form_section .handling_personal_info > div,
body.js_black .main_column .form_section .handling_personal_info > div{border: 1px solid #fff;}

body.js_blue .main_column .form_section form input,
body.js_black .main_column .form_section form input{color:#fff;border: 1px solid #fff;}

/* Firefoxでは透過するためopacityは明示的に設定 */
body.js_blue .main_column .form_section form ::placeholder,
body.js_black .main_column .form_section form ::placeholder{color:#fff;opacity: 1;}

body.js_blue .main_column .form_section form input[type="submit"],
body.js_black .main_column .form_section form input[type="submit"]{border: 2px solid #fff;}

body.js_blue .main_column .form_section.contact form input[type="submit"],
body.js_blue .main_column .form_section.confirm form input[type="submit"]{color: #000AFF;background: #fff;transition: none;opacity: 1;}
body.js_blue .main_column .form_section.contact form input[type="submit"]:hover,
body.js_blue .main_column .form_section.confirm form input[type="submit"]:hover{color: #fff;background: #000AFF;}

body.js_black .main_column .form_section.contact form input[type="submit"],
body.js_black .main_column .form_section.confirm form input[type="submit"]{color: #000;background: #fff;transition: none;opacity: 1;}
body.js_black .main_column .form_section.contact form input[type="submit"]:hover,
body.js_black .main_column .form_section.confirm form input[type="submit"]:hover{color: #fff;background: #000;}

body.js_blue .main_column .form_section form input[type="button"],
body.js_black .main_column .form_section form input[type="button"]{border: 2px solid #fff;}

body.js_blue .main_column .form_section.contact form input[type="button"],
body.js_blue .main_column .form_section.confirm form input[type="button"]{color: #000AFF;background: #fff;transition: none;opacity: 1;}
body.js_blue .main_column .form_section.contact form input[type="button"]:hover,
body.js_blue .main_column .form_section.confirm form input[type="button"]:hover{color: #fff;background: #000AFF;}

body.js_black .main_column .form_section.contact form input[type="button"],
body.js_black .main_column .form_section.confirm form input[type="button"]{color: #000;background: #fff;transition: none;opacity: 1;}
body.js_black .main_column .form_section.contact form input[type="button"]:hover,
body.js_black .main_column .form_section.confirm form input[type="button"]:hover{color: #fff;background: #000;}

body.js_blue .main_column .form_section form textarea,
body.js_black .main_column .form_section form textarea{color:#fff;border: 1px solid #fff;}

body.js_blue .main_column .form_section form input,
body.js_blue .main_column .form_section form textarea{background:#000AFF;}

body.js_black .main_column .form_section form input,
body.js_black .main_column .form_section form textarea{background:#000;}

body.js_blue .main_column .form_section input#consent,
body.js_black .main_column .form_section input#consent{border:1px solid #fff;}

body.js_blue .main_column .form_section form input#consent:checked{background:#000AFF;}
body.js_black .main_column .form_section form input#consent:checked{background:#000;}


/*====================================================================
フォーム 入力確認ページ用スタイル
*/

.main_column .form_section.confirm form .label_wrapp + p{color: #000;font-size: 16px;width: 74%;padding: 12px 20px;border-bottom:solid 1px #A8A8A8;min-height: 50px;}
/* 色変更 */
body.js_blue .main_column .form_section.confirm form .label_wrapp + p,
body.js_black .main_column .form_section.confirm form .label_wrapp + p{color: #fff;}

.main_column .form_section.confirm form div.label_wrapp.textarea + p{min-height: 238px;}


.main_column .form_section.confirm form input[type="button"]{
    -webkit-appearance: button;
    appearance: button;
    border: none;
    padding: 13px 0px;
    font-size: 18px;
    display: inline-block;
    width: 200px;
    cursor: pointer;
    color: #fff;
    border-radius: 10px;
    line-height: 35px;
    border: none;
    background: #A3A3A3;
    margin-right: 20px;
}

@media (max-width:1280px){
    .main_column .form_section .progress ul li span.pc_text{display: none;}
    .main_column .form_section .progress ul li span.sp_text{display: inline;}
    .main_column .form_section .progress ul li{text-indent: 1.7em;width: 31.4%;}
    .main_column .form_section .flex{flex-direction: column;}
    .main_column .form_section .item .label_wrapp{margin: 0 0 8px 0;min-width: unset;max-width: 171px;}

    .main_column .form_section form span.wpcf7-form-control-wrap{width:100%;}
    .main_column .form_section form input,.main_column .form_section form textarea{font-size: 16px;}

    .main_column .form_section .handling_personal_info > p {
        padding: 17px 0 23px;
        font-size: 16px;
        line-height: 30px;
    }

    /* 確認ページ用スタイル */
    .main_column .form_section.confirm form .label_wrapp + p{font-size: 16px;width: 100%;padding: 12px 20px;color: #000;border-bottom:solid 1px #A8A8A8;min-height: 50px;}


}/* max-width:1280px */

@media (max-width:767px){
    .main_column .form_section.confirm .submit_wrapp{flex-direction: column;align-items: center;}
    .main_column .form_section.confirm form input[type="submit"]{margin: 26px 0;}
    .main_column .form_section.confirm .wpcf7-spinner{margin: unset;}
    .main_column .form_section.confirm form input[type="button"]{margin: unset;}
}/* max-width:767px */

@media (max-width:500px){
    /* フォーム進捗バー
    */
    .main_column .form_section .progress ul{overflow:hidden;}
    .main_column .form_section .progress ul li{padding: 8.4px 0;font-size: 13px;line-height: 1;text-indent: unset;}

    /* 三角マーク 共通
    */
    .main_column .form_section .progress ul li.current::before,
    .main_column .form_section .progress ul li::before,
    .main_column .form_section .progress ul li::after{top:50%;right:0;width:0;height: 0;transform: rotate(45deg) translateY(-70%) skew(6deg, 6deg);border-left: 0px solid transparent;border-bottom: 0px solid transparent;z-index: -1;}

    /* 三角マーク current 青
    */
    .main_column .form_section .progress ul li.current::before{border-top: 20px solid #006DAC;border-right: 20px solid #006DAC;}

    /* 三角マーク 青
    */
    .main_column .form_section .progress ul li::before{border-top: 20px solid #80C7F0;border-right:20px solid #80C7F0;}

    /* 三角マーク 白
    */
    .main_column .form_section .progress ul li::after{right: -2px;z-index: -2;border-top: 22px solid #fff;border-right: 22px solid #fff;border-left: 0px solid transparent;border-bottom: 0px solid transparent;}

    /* 各入力欄 必須マーク
    */
    .main_column .form_section .required::after{padding: 2px 11px;top: 0;right: 0;}
    .main_column .form_section .required::after{border-radius: 3px;font-size: 14px;}

    .main_column .form_section form{margin: 0px auto 0;padding: 37px 0px 39px;}

    /* 各入力欄のラッパー共通 */
    .main_column .form_section .item{padding: 0;font-size: 0;margin: 0 0 27px 0;}

    /* 各入力欄のlabel,input共通 */
    .main_column .form_section .item .label_wrapp{display: flex;align-items: center;margin: 0 0 10px 0;max-width: unset;}
    .main_column .form_section .item label{display:block;font-size: 18px;width: fit-content;}

    .main_column .form_section .item input{display:block;font-size: 16px;padding: 15px 17px;}

    /* メッセージ入力欄 */
    .main_column .form_section .label_wrapp.textarea{align-items: flex-start;margin-top: 0;max-width: unset;}
    .main_column .form_section .label_wrapp label{margin: 0;min-width: unset;width: fit-content;padding: 0 61px 0 0;}
    .main_column .form_section .item textarea{padding: 10px;height: 148px;}

    /* 入力欄 共通スタイル
    */
    .main_column .form_section form input,
    .main_column .form_section form textarea{font-size: 16px;width:100%;border-radius:4px;}

    /* 個人情報の取り扱いについてエリア
    */

    /* ラッパー:取り扱いエリア */
    .handling_personal_info{padding: 25px 0 0 0;}

    /* テキスト:次へお進みください */
    .handling_personal_info > p{padding: 27px 0 17px;font-size:16px;line-height:30px;}

    /* ラッパー:取り扱いエリア 本文(デザイン確定後具体的にマークアップしていく) */
    .handling_personal_info > div{overflow-y: auto;max-height: 220px;font-size:16px;line-height:30px;border:solid 1px#A8A8A8;padding:16px;}

    /* チェックボックス:同意する エリア
    */
    .main_column .form_section .consent_checkbox_wrapp{padding: 23px 0 38px;margin:auto;}

    /* チェックボックス */
    .main_column .form_section input#consent{width: 20px;height: 20px;border: 1px solid #A8A8A8;border-radius: 4px;margin: 0 5px 1px 0;}
    .main_column .form_section form input#consent:checked::after{top: 0%;left: 27%;width: 8px;
        height: 13px;border-right:solid 2px #fff;border-bottom: solid 2px #fff;transform:rotate(45deg);}

    /* ラベル:同意する */
    .main_column .form_section form label[for="consent"]{font-size: 16px;width: fit-content;}

    /* 必須マーク */
    .main_column .form_section form label[for="consent"]::after{padding: 2px 11px;width: fit-content;top: 0;
        right: 0;border-radius: 3px;font-size: 14px;}

    /* 送信ボタン */
    .main_column .form_section form input[type="submit"]{
        padding: 12px 0px;width: 100%;line-height: 27px;}

    /* macos向けスタイル */
    _:lang(x)+_:-webkit-full-screen-document,.main_column .form_section input#consent{-webkit-appearance:none;position:relative;}
    _:lang(x)+_:-webkit-full-screen-document,.main_column .form_section input#consent:checked::after{content:"";position:absolute;top: 0%;left: 27%;width: 8px;height: 13px;border-right:solid 2px #fff;border-bottom: solid 2px #fff;transform:rotate(45deg);}

}/* max-width:500px */

@media (max-width:360px){
    .main_column .form_section.contact form input[type="submit"], .main_column .form_section.confirm form input[type="submit"]{width: 91%;}
    .main_column .form_section .progress ul li{text-indent: 1.2em;}
}

/*
フォームスタイルここまで
======================================================================================================================================== */

/* ========================================================================================================================================
アーカイブ ここから
*/
#archive .monthly-list{text-align: center;margin-bottom: 50px;}
#archive .monthly-list li{display: inline-block;}
#archive .monthly-list li a{text-decoration: underline;padding: 0 5px;color: #58B1E4;}
#archive .monthly-list li a[aria-current="page"]{text-decoration: none;color: #000;pointer-events: none;}
#archive .monthly-list li::before{content: "|";margin-right: 5px;}
#archive .monthly-list li:first-child::before{content: "";}
#archive h3{position: relative;text-align: left;font-weight: 400;padding: 0 0 0 0.8em;margin: 0px 0 25px 0;}
#archive h3::after {position: absolute;content: "";width: 5px;height: 77%;background: #40A6E0;left: 0;top: 4px;}

/* 色変更
*/
body.js_blue .important_notices#archive h2,
body.js_black .important_notices#archive h2{background: none;}

body.js_blue .important_notices#archive h2::after,
body.js_black .important_notices#archive h2::after{background: #fff;}

body.js_blue #archive h3::after {background: #fff;}
body.js_black #archive h3::after {background: #fff;}

body.js_blue #archive .monthly-list li a,
body.js_black #archive .monthly-list li a{transition: none;opacity: 1;}

body.js_blue #archive .monthly-list li a,
body.js_black #archive .monthly-list li a{color: #fff;}

body.js_blue #archive .monthly-list li a:hover,
body.js_black #archive .monthly-list li a:hover{border:1px solid #fff;}



/* ページネーション */
/* ラッパー */
#archive .navigation.pagination{padding:68px 0;}

/* 各要素 */
#archive .nav-links{display: flex;justify-content: center;flex-wrap: wrap;margin: auto;width: 100%;}
#archive .nav-links span,
#archive .nav-links a{padding: 8px 16px;margin: 2px 4px;}

/* 前へ、次へ */
#archive .nav-links .page-numbers.prev,
#archive .nav-links .page-numbers.next{background: none;position: relative;font-size: 17px;}
#archive .nav-links .page-numbers.prev::before,
#archive .nav-links .page-numbers.next::after{content:"";position: absolute;top:50%;width: 8px;height: 8px;background: none;border-top:2px solid #333;}
#archive .nav-links .page-numbers.prev::before{left:0;border-left:2px solid #333;transform:translateY(-50%) rotate(-45deg);}
#archive .nav-links .page-numbers.next::after{right:0;border-right:2px solid #333;transform:translateY(-50%) rotate(45deg);}

/* 選択可能ページナビ共通 */
#archive .nav-links .page-numbers{
    display: block;
    background: #E2E2E2;color: #333;font-size: 18px;}

/* 現在表示中ページ */
#archive .nav-links .page-numbers.current{background: #40A6E0;color: #fff;}


/* 色変更
*/
body.js_blue #archive .nav-links a,
body.js_black #archive .nav-links a{transition: none;opacity: 1;}

body.js_blue #archive .nav-links .page-numbers.prev,
body.js_black #archive .nav-links .page-numbers.prev,
body.js_blue #archive .nav-links .page-numbers.next,
body.js_black #archive .nav-links .page-numbers.next{color:#fff;background: none;}

body.js_blue #archive .nav-links .page-numbers.prev::before,
body.js_black #archive .nav-links .page-numbers.prev::before,
body.js_blue #archive .nav-links .page-numbers.next::after,
body.js_black #archive .nav-links .page-numbers.next::after{border-top:2px solid #fff;}

body.js_blue #archive .nav-links .page-numbers.prev::before,
body.js_black #archive .nav-links .page-numbers.prev::before{border-left:2px solid #fff;}

body.js_blue #archive .nav-links .page-numbers.next::after,
body.js_black #archive .nav-links .page-numbers.next::after{border-right:2px solid #fff;}

/* 選択可能ページナビ共通 */
body.js_black #archive .nav-links .page-numbers,
body.js_blue #archive .nav-links .page-numbers{background: #fff;}
body.js_blue #archive .nav-links .page-numbers{color: #000AFF;}
body.js_black #archive .nav-links .page-numbers{color: #333;}

body.js_blue #archive .nav-links .page-numbers:hover,
body.js_black #archive .nav-links .page-numbers:hover{color: #fff;border: 1px solid #fff;}
body.js_blue #archive .nav-links .page-numbers:hover{background: #000AFF;}
body.js_black #archive .nav-links .page-numbers:hover{background: #000;}

/* 現在表示中ページ */
body.js_blue #archive .nav-links .page-numbers.current,
body.js_black #archive .nav-links .page-numbers.current{border:1px solid #fff;background: none;color:#fff;}

@media (max-width:500px){
    #archive .navigation.pagination{padding:30px 0;}
    #archive .monthly-list li a{font-size: 16px;}
    #archive .nav-links span,
    #archive .nav-links a{padding: 6px 12px;}
}


/*
アーカイブ ここまで
========================================================================================================================================*/

/* ========================================================================================================================================
検索ページ ここから
*/

#archive .search-highlight{font-weight: bold;background: linear-gradient(transparent 60%, #FFFF66 60%);color: #333 !important;text-align: center;padding: 0 !important;font-size: 18px !important;border-radius: 0px;}

/*
検索ページ ここまで
========================================================================================================================================*/


/* コンテンツ内のリンクの装飾：デフォルトスタイルは青色＋下線に統一(トップページ全体、ヘッダ、フッタは除く) */
.main_column a:not(.most_viwed_pages a, a.btn_0){
    color: #40A6E0;
    text-decoration: underline;
}

body.js_black .main_column a:not(.most_viwed_pages a),
body.js_blue .main_column a:not(.most_viwed_pages a) {
    color: #fff;
}

body.js_black .main_column a:not(.most_viwed_pages a, a.btn_0):hover,
body.js_blue .main_column a:not(.most_viwed_pages a, a.btn_0):hover{
    transition:unset;
    opacity:1;
    text-decoration:none;
}


/* 色変更
*/
body.js_blue .main_column .popular_articles ul.wpp-list a{background:#000AFF;border: 3px solid #fff;color: #fff;}
body.js_black .main_column .popular_articles ul.wpp-list a{background:#000;border: 3px solid #fff;color: #fff;}

body.js_blue .main_column .popular_articles ul.wpp-list a::after{border-bottom: 14px solid #fff;}
body.js_black .main_column .popular_articles ul.wpp-list a::after{border-bottom: 14px solid #fff;}


/* 色変更
*/
body.js_blue .main_column a.btn_0{background:#000AFF;border: 3px solid #fff;color: #fff;}
body.js_black .main_column a.btn_0{background:#000;border: 3px solid #fff;color: #fff;}

body.js_blue .main_column a.btn_0::after{border-bottom: 14px solid #fff;}
body.js_black .main_column a.btn_0::after{border-bottom: 14px solid #fff;}
