@charset "Shift_JIS";

/**
 * filename: main.css
 * @overview Voting right
 * @version 1.0.0 2021-01-15
 */

html {
    height: 100%;
}

body {
    min-width: 360px;
    margin: 0;
    font-size: 1rem;
    font-weight: normal;
    line-height: 1.5;
    color: #333;
    font-family: Meiryo,"メイリオ","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","MS PGothic","ＭＳ Ｐゴシック", sans-serif;
    background-color:#F5F3EB;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.PC{
    background-color:#ffffff;
}

.PC .sp-show{
    display:none!important;
}

body:not(.PC) .pc-show{
    display:none!important;
}
.display-none{
    display:none!important;
}

/*********
Basic parts
*********/
a {
    text-decoration: none;
}

a:link {
    color: #333;
}

a:visited {
    color: #333;
}

a:hover {
    text-decoration: none;
}

a:active {
    color: #333;
}

ul,
ol {
    margin: 0 0 1rem 0;
    padding-left: 2rem;
}

ol {
    list-style-type: none;
    position: relative;
}

ul ul,
ol ul,
ul ol,
ol ol {
    padding-left: 2rem;
}

ul ul.small,
ol ul.small,
ul ol.small,
ol ol.small {
    padding-left: 3.5rem;
}

ul.small ul.small,
ol.small ul.small,
ul.small ol.small,
ol.small ol.small {
    padding-left: 1.5rem;
}

ol .marker {
    display: inline-flex;
    position: absolute;
    left: -2rem;
    margin: 0;
    justify-content: space-between;
    width: 1.6rem;
}

ol .marker_checkbox {
    margin-top: 0.5rem;
}

li {
    margin: 0 0 1em 0;
    position: relative;
}

p{
    margin: 0 0 1em 0;
    word-break: break-all;
}

strong,
.strong {
    font-weight: bold;
    margin: 0 4px;
}
small,
.small{
    font-size: 0.75rem;
}

em,
.em{
    font-size: 1.2rem;
}
.type_number {
    text-align: right!important;
}

.PC .type_number_pc_only {
    text-align: right!important;
}

.text_green{
    color:#177544!important;
}

.text_red{
    color:#CC173A!important;
}

.indent{
    text-indent: 1em;
}

.align-center {
    text-align: center!important;
}
.align-right {
    text-align: right!important;
}
.align-left {
    text-align: left!important;
}
body:not(.PC) .align-left_sp {
    text-align: left!important;
}

.text_nowrap{
     white-space:nowrap;
}

img.w-100 {
    width: 100%;
}


/** tooltip*/
.PC .text_nowrap_ellipsis{
    white-space: nowrap;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
}

.tooltip {
    font-size: 0.858rem;
    color: #FFFFFF;
    background-color: rgba(102, 102, 102, 0.9);
    padding: .25rem;
    border-radius: .143rem;
    position: absolute;
    z-index: 6100;
}

.tooltip_arrow {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7px 6px 0 6px;
    border-color: rgba(102, 102, 102, 0.9) transparent transparent transparent;
    position: absolute;
    left: .7rem;
    bottom: 1px;
    transform: translateY(100%);
    z-index: 6090;
}


/** display */
.d-block {
    display: block;
}

/** flex*/

.f_inner_flex{
    display: flex!important;
}
.f_space-between{
    justify-content: space-between;
}
.flex-column{
    flex-direction: column;
}

.PC .f_inner_flex_pc {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 1rem;
}

.PC .f_space-between_pc {
    justify-content: space-between;
}

.f_inner_flex_pc.col_w_50_pc > * {
    width: 100%;
}

.PC .f_inner_flex_pc.col_w_50_pc > *{
    width: calc(50% - .5rem)!important;
}


/**********
Content parts
**********/

/* common */
header,
main,
footer {
    padding: 0 1rem;
    margin-left: auto;
    margin-right: auto;
}

header>.w100-full,
main>.w100-full,
footer>.w100-full{
    max-width: none;
    width:calc(100% + 2rem);
    margin-left: -1rem;
    margin-right: -1rem;
}

header > div.container,
main > div.container,
footer > div.container,
div.container-center{
    margin-left: auto;
    margin-right: auto;
}

.PC div.container{
    max-width:  calc( 1000px - 2rem );
    width:100%;
}

body:not(.PC) div.container{
    max-width: calc( 768px - 2rem );
    width:100%;
}

/* blockskip */
#blockskip {
    display: none;
}

#contents {
    position: absolute;
    font-size: 0rem;
    pointer-events: none;
}

.PC #blockskip {
    display: block;
    position: absolute;
    width: 100%;
    height: 1px;
    margin: 0;
    padding: 0;
    overflow: visible;
    z-index: 9999;
    top: 0;
    left: 0;
    background-color:  #EEEEEE;
    text-align: center;
    color: #333;
}

.PC #blockskip a {
    display: block;
    background: #FFFFFF;
    margin: -1px 0 0 0;
    padding: 0;
    width: 100%;
    text-align: center;
    font-size: 0rem;
    color: #FFFFFF;
    line-height: 1px;
    cursor: default;
    height: 1px;
    overflow: hidden;
}

.PC #blockskip a.show,
.PC #blockskip a:focus {
    background-color: #EEEEEE!important;
    color: #333;
    height: auto;
    padding: 0.75rem 0;
    font-size:1rem;
    cursor: pointer;
    border: none!important;
    line-height: normal;
    text-decoration: underline;
}
.PC #blockskip a.show:hover,
.PC #blockskip a:focus:hover {
    text-decoration: none;
}

/* header */
.header-menu{
    background: #177544;
    color: #fff;
    padding: 2px 1rem;
    margin: 0 -1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

body:not(.PC) header {
    background: #177544;
}

body:not(.PC) .header-menu{
    max-width:calc( 768px - 2rem );
    margin-left: auto;
    margin-right: auto;
    padding: 2px 0;
}

.PC .header-menu {
    background: transparent;
    max-width:calc( 1000px - 2rem );
    margin-left: auto;
    margin-right: auto;
    padding: 2px 0;
}

.PC .header-menu li {
    margin-bottom: 0;
    list-style: none;
}
.PC .header-menu a {
    text-decoration: underline;
    color: #333;
    font-size: .875rem;
    margin-right: 1rem;
}

.PC .header-menu a:hover,
.PC .header-menu a:focus,
.PC .header-menu a:active {
    text-decoration: none;
}

.PC .header-menu .icon {
    background-size: 1rem 1rem;
    width: 1rem;
    height: 1rem;
    margin-right: .25rem;
    vertical-align: middle!important;
}

_:-ms-lang(x)::-ms-backdrop, .PC .header-menu .icon {
    background-size: auto;
}

.PC .header-menu .faq-search {
    display: flex;
}

.PC .header-menu .faq-search-text {
    width: 10rem;
    font-size: .875rem;
    padding: .25rem .4rem;
}

.PC .header-menu .faq-search-btn {
    min-width: auto;
    width: 2rem;
    height: 2rem;
    border: none;
    padding: 0;
    background-color: transparent;
}

.PC .header-menu .faq-search-btn:focus,
.PC .header-menu .faq-search-btn:active,
.PC .header-menu .faq-search-btn:hover {
    background-color: transparent;
}

.PC .header-menu .faq-search-btn > img {
    width: 2rem;
    height: 2rem;
}

.PC .header-menu .faq-search-btn:focus > img {
    outline: -webkit-focus-ring-color auto 1px;
}

/* IE11 */
_:-ms-lang(x)::-ms-backdrop, .PC .header-menu .faq-search-btn:focus > img {
    outline: #444444 dotted 1px;
}

header .system-name {
    margin: 0;
    padding: 0;
}

.header-title-kensyu {
    margin-left: auto;
    margin-right: 0;
    color:#FFFFFF;
}

.PC .header-title-kensyu {
    margin-left: auto;
    margin-right: 0;
    color:#CC173A!important;
}

.header-title {
    font-size: 1rem;
    color: #FFFFFF;
    display: flex;
    flex-direction: column;
    margin-top: 0.25rem;
    margin-bottom: 0.25rem;
}
.PC .header-title {
    margin-left: 0;
}
.header-era {
    font-size: .75rem;
    font-weight: normal;
    color: #FFFFFF;
    line-height: 1.3;
}
.header-era-number {
    font-size: 0.875rem;
    padding:0 .3rem;
    font-weight: bold;
}
.PC .header-title{
    font-size: 1.25rem;
    font-weight: bold;
    color: #333;
}
.PC .header-era {
    color: #333;
}

.PC .header-era-number {
    font-size: 1rem;
}

/** menu handle*/
header .menu-handle {
    position: relative;
    width: 50px;
    height: 50px;
    margin: 0 -0.5rem 0 0!important;
    color: #fff;
    min-width: auto;
    background: none;
    padding: 0;
}

header .menu-handle:hover,
header .menu-handle:focus,
header .menu-handle:active {
    background: none!important;
}

header .menu-bar {
    position: absolute;
    display: block;
    width: 1.25rem;
    height: 2px;
    background-color: #fff;
    box-sizing: border-box;
    transition: all .4s;
    right: 15px;
}

header .menu-bar:nth-of-type(1) {
    top: 12px;
}

header .menu-bar:nth-of-type(2) {
    top: 18px;
}

header .menu-bar:nth-of-type(3) {
    bottom: 24px;
}

header .menu-handle.open-menu .menu-bar:nth-of-type(1) {
    -webkit-transform: translateY(6px) rotate(-45deg);
    transform: translateY(6px) rotate(-45deg);
}

header .menu-handle.open-menu .menu-bar:nth-of-type(2) {
    opacity: 0;
}

header .menu-handle.open-menu .menu-bar:nth-of-type(3) {
    -webkit-transform: translateY(-6px) rotate(45deg);
    transform: translateY(-6px) rotate(45deg);
}

header .menu-label {
    position: absolute;
    font-size: 0.6875rem;
    right: 0;
    bottom: 6px;
    text-align: center;
    width: 50px;
}

.header-label {
    display: inline-block;
    border: solid 1px #fff;
    background: #177544;
    color: #fff;
    border-radius: .875rem;
    font-size: .75rem;
    font-weight: normal;
    padding: 0 1rem;
    margin: 0 .7rem;
    text-align: center;
}
.PC .header-label {
    border: solid 1px #177544;
    background: #fff;
    color: #177544;
}

/** header nav */
.header-nav {
    display: none;
    background: #175632;
    margin: 0 -1rem;
    padding: 1rem 0.9375rem;
    width:100%;
}

.header-nav ul {
    margin: 0;
    padding: 0;
    color: #fff;
    list-style: none;
}

.header-nav ul li a {
    color: #fff;
    display: block;
    padding: 1rem 0;
}

.PC .header-nav {
    display: block;
    background-color: transparent;
    margin: 0;
    padding: 0;
    width:auto;
}

.PC .header-nav  ul{
    display: flex;
}

.PC .header-nav ul li:last-of-type a{
    margin-right: 0;
}

/* main */
main {
    display: flex;
    flex-direction: column;
}

/** フローチャートコンテナ*/
.flow-container{
    max-width: none;
    width: calc(100% + 2rem);
    margin-left: -1rem;
    margin-right: -1rem;
    display: flex;
    justify-content: flex-start;
    flex-flow: column;
}

.main-primary-step,
.main-h1,
.sub-primary-step,
.sub-secondary-step,
.sub-process-title,
.sub-h1{    
    width:100%;
    display: flex;
    justify-content: center;
    flex-flow: column;
    align-items: center
}

/* 色・表示 */
/*sp*/
.main-primary-step,
.main-h1,
.sub-primary-step,
.sub-h1{
    background: #FFFFFF;
}
.sub-secondary-step{
    background: #F5F3EB;
}
body:not(.PC) .sub-secondary-step{
    display: none;
}
body:not(.PC) .sub-secondary-step-visible{
    display: flex;
}
body:not(.PC) .sub-process-title{
    display: none;
}
/*PC時、順番入れ替え（Flexの子要素として使用　mainタグ等）*/
.PC .pc-order-0{order: -6;}
.PC .pc-order-1{order: -5;}
.PC .pc-order-2{order: -4;}
.PC .pc-order-3{order: -3;}
.PC .pc-order-4{order: -2;}
.PC .pc-order-5{order: -1;}
.PC .pc-order-6{order: 0;}

.main-h1,
.sub-h1{
    margin-bottom: 1.5rem;
}



/*pc*/
.PC .main-h1,
.PC .sub-process-title{
    background: #177544;
    min-height: 3.3125rem;
}
.PC .sub-h1{
    background: #F5F3EB;
}
.PC .sub-primary-step{
    display: none;  
}

/*フロー用　中央コンテナ*/
.PC .flow-container-center-wrapper{
    max-width: calc( 1000px - 2rem );
    width:100%;
    position: relative;
}

body:not(.PC) .flow-container-center-wrapper{
    max-width: 768px;
    width:100%;
    position: relative;
}

/* h1 */
.main-h1 h1,
.sub-h1 h1{
    font-size: 1.25rem;
    padding: .75rem 0rem;
    line-height: 1.5;
    font-weight:normal;
}
.PC .main-h1 h1{
    font-weight: bold;
    padding: 0 1rem 0 0;
    font-size: 1.25rem;
    color: #ffffff;
}
.PC .sub-h1 h1{
    font-weight: bold;
    padding: .75rem 1rem .75rem 0;
    font-size: 1.5rem;
    color: #177544;
}
.title_aria{
    margin: 0;
    padding: 0 1rem;
    display: flex;
    align-items: center;
}
.PC .title_aria{
    padding: 0 ;
}
/*primary-step*/
ol.progress-bar {
    margin: 0 1rem;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    border-bottom:1px solid #177544;
}
.PC ol.progress-bar {
    margin: 0;
    padding: 0 0;
    flex-wrap: wrap;
    justify-content: flex-start;
    border-bottom:none;
    border-top:1px  solid #177544;
}

ol.progress-bar li {
    width: auto;
    position: relative;
    padding:0.75rem 1.2rem 0.75rem 0 ;
    margin-bottom: 0px;
    list-style: none;
    display: flex;
    align-items: center;
}
.PC ol.progress-bar li {
    padding-right: 1.5rem;
}
ol.progress-bar li:last-child {
    padding-right: 0rem;
}
ol.progress-bar li > * {
    flex: 0 1 auto;
}

.progress-bar li .text{
    display:none;
    white-space: nowrap;
    margin-left: 0.25rem;
}
.progress-bar li.in-ope .text{
    display: inline-block;
}
.progress-bar li.in-ope .text {
    font-weight: bold;
    color: #177544;
    font-size: 1.125rem;
}
.PC .progress-bar li .text {
    display: inline-block;
}

/** primary-step 丸付き文字*/
.progress-bar li span.stepchart-number {
    display: inline-block;
    background: #444444;
    color: #FFFFFF;
    font-size: 1rem;
    font-weight: normal;
    border-radius: 50%;
    width: 1.25rem;
    height: 1.25rem;
    line-height: 1.4;
    text-align: center;
    margin-bottom: 3px;
}

.android .progress-bar li span.stepchart-number {
    line-height: 1.2;
}

.PC .progress-bar li.in-ope span.stepchart-number {
    background: #177544;        
}

.PC .progress-bar li span.stepchart-number {
    font-weight: bold;
}
body:not(.PC) .progress-bar li.in-ope {
    padding-left: 0;
}
body:not(.PC) .progress-bar li.in-ope span.text  {
    color: #333;
}

body:not(.PC) .progress-bar li span,
body:not(.PC) .progress-bar li:not(.complete)::after  {
    opacity: 0.2;
}
body:not(.PC) .progress-bar li.complete span ,
body:not(.PC) .progress-bar li.in-ope span  {
    opacity: 1;
}
.progress-bar li:not(:last-child)::after {
    position: absolute;
    content: '';
    display: inline-block;
    border-radius: 50%;
    top:49%;
    transform: translateY(-50%);
    right: 0.2rem;
    width: 0.8rem;
    height: 0.8rem;
    text-align: center;
    z-index: 500;
    background-image: url('../../img/arrow_step_main.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.PC .progress-bar li:not(:last-child)::after {
    right: 0.25rem;
    width: 1rem;
    height: 1rem;
}

/* サブプログレスバー */
.sub-progress-bar {
    display: flex;
    background: rgba(0, 0, 0, 0.15);
    height: 4px;
    width: auto;
    margin: 1.5rem 1.2rem 1.5rem 1.2rem;
    padding: 0;
    list-style: none;
    border-radius: 1rem;
}

.sub-progress-bar li {
    width: 100%;
    height: 4px;
    position: relative;
    margin-bottom: 0;
}
.sub-progress-bar li .text{
    display:none;
}
.PC .sub-progress-bar {
    flex-wrap: wrap;
    height: auto;
    background: #F5F3EB;
    margin: 0;
    padding: .5rem 0;
    border-radius: 0;
    align-items: center;
    border-bottom: 2px solid #177544;
}


.PC .sub-progress-bar li{
    height: auto;
    width: auto;
    padding: 0;
}
.sub-progress-bar li.in-ope .text {
    font-weight: bold;
    color: #177544;
    font-size: 1.125rem;
}
.PC .sub-progress-bar li .text {
    display: inline-block;
    text-indent: 0;
    overflow: visible;
    padding: 0.25rem 1rem;
}
.sub-progress-bar li:last-child ,
.PC .sub-progress-bar li{
    border-right: none;
}

.PC .process-name {
    display: block;
    color: #ffffff;
    font-size: 1rem;
    margin: 0;
    padding: 0 0;
}


/** 飾り*/
.sub-progress-bar li.in-ope,
.sub-progress-bar li.complete {
    background: rgba(0, 0, 0, 0.50);
    position: relative;
}
.sub-progress-bar li.complete:first-of-type {
    border-radius: 1rem 0 0 1rem;
}
.PC .sub-progress-bar li:first-of-type {
    margin-left: -1rem;
}
.sub-progress-bar li.in-ope,
.sub-progress-bar li.complete:last-of-type {
    border-radius: 0 1rem 1rem 0;
}
.sub-progress-bar li.in-ope:first-of-type {
    border-radius: 1rem 1rem 1rem 1rem;
}
.sub-progress-bar li::before,
.sub-progress-bar li.in-ope .subProgressMarker {
    position: absolute;
    content: "";
    vertical-align: top;
}
.PC .sub-progress-bar li.in-ope::after,
.PC .sub-progress-bar li:first-child::before{
    content: none;
}
.PC .sub-progress-bar li::before {
    top: calc(50% - 5px);
    left: -3px;
    width: 6px;
    height: 6px;
    border-top: solid 2px #444444;
    border-right: solid 2px #444444;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.PC .sub-progress-bar li {
    background: transparent;
}
.PC .sub-progress-title {
    position: relative;
}
.PC .sub-progress-bar li.in-ope .subProgressMarker {
    content: "";
    width: 0;
    height: 0;
    border-right: 6px solid transparent;
    border-bottom: 8.9px solid #177544;
    border-left: 6px solid transparent;
    bottom: 0;
    transform: translateX(-50%);
    left: 50%;
    z-index: 1000;
}

/* 進捗吹き出し*/
.sub-progress-bar-text{
    position: absolute;
    padding: 0 1rem;
    background: #444444;
    color: #ffffff;
    border-radius: 1rem;
    left: 50%;
    transform: translateX(-50%);
    top: -.2rem;
    font-size: 0.750rem;
}
.sub-progress-bar-text::after{
    position: absolute;
    content: "";
    bottom: -9px;
    left: calc(50% - 5px);
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 9px solid #444444;
}
.PC .sub-progress-bar-text{
    display: none;
}

/* サブステップフロー（緑） */
.sub-secondary-step.step-green {
    background: #FFFFFF;
}

.PC .sub-secondary-step.step-green {
    background: #F5F3EB;
}

.sub-progress-bar.sub-progress-bar-step-green {
    margin: 0 1rem;
    padding: 0.25rem 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    border-bottom: 1px dashed #177544;
    border-radius: 0;
    height: auto;
    background: rgba(0, 0, 0, 0);
}

.PC .sub-progress-bar.sub-progress-bar-step-green {
    margin: 0;
    padding: 0.5rem 0;
    border-radius: 0;
    align-items: center;
    border-bottom: 2px solid #177544;
}

.sub-progress-bar.sub-progress-bar-step-green > li {
    color: #DADADA;
    margin: 0;
    padding: 0.25rem 0.25rem 0.25rem 0;
    background: rgba(0,0,0,0);
    width: auto;
    height: auto;
}

.sub-progress-bar.sub-progress-bar-step-green > li:first-child {
    margin-left: 0;
}

.sub-progress-bar.sub-progress-bar-step-green > li > .text {
    display: inline;
    padding: 0;
    font-weight: normal;
    font-size: 1rem;
}

.sub-progress-bar.sub-progress-bar-step-green > li.complete,
.sub-progress-bar.sub-progress-bar-step-green > li.in-ope {
    color: #177544;
}

.sub-progress-bar.sub-progress-bar-step-green > li + li {
    padding-left: calc(0.25rem + 0.8rem);
}

.PC .sub-progress-bar.sub-progress-bar-step-green > li {
    padding: 0.25rem 1rem 0.25rem 0;
}

.PC .sub-progress-bar.sub-progress-bar-step-green > li,
.PC .sub-progress-bar.sub-progress-bar-step-green > li.complete {
    color: #333;
}

.PC .sub-progress-bar.sub-progress-bar-step-green > li.in-ope {
    color: #177544;
}

.PC .sub-progress-bar.sub-progress-bar-step-green > li.in-ope > .text {
    font-weight: bold;
    font-size: 1.125rem;
}

.PC .sub-progress-bar.sub-progress-bar-step-green > li + li {
    padding-left: 1rem;
}

.sub-progress-bar.sub-progress-bar-step-green > li:not(:first-child):before {
    position: absolute;
    content: '';
    display: inline-block;
    border-radius: 50%;
    top: 49%;
    transform: translateY(-50%);
    left: 0;
    width: 0.8rem;
    height: 0.8rem;
    text-align: center;
    z-index: 500;
    background-image: url(../../img/arrow_step_sub_gray.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.sub-progress-bar.sub-progress-bar-step-green > li.complete:not(:first-child):before,
.sub-progress-bar.sub-progress-bar-step-green > li.in-ope:not(:first-child):before {
    background-image: url(../../img/arrow_step_sub_green.svg);
}

.PC .sub-progress-bar.sub-progress-bar-step-green > li:not(:first-child):before {
    top: calc(50% - 5px);
    left: -3px;
    width: 6px;
    height: 6px;
    border-top: solid 2px #444444;
    border-right: solid 2px #444444;
    border-radius: 0;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    background-image: none;
}

.sub-h1.step-green h1 {
    color: #333;
}

.PC .sub-h1.step-green h1 {
    color: #177544;
}

/* frame */
.frame_green {
    border: solid 2px #519773;
    padding: 1.25rem;
    margin-bottom: .625rem;
}

.frame_green > *:last-child {
    margin-bottom: 0;
}

.frame_brown {
    border: solid 2px #C4BCB3;
    border-radius: 1rem;
    padding: 1.25rem;
    margin-bottom: .625rem;
}

.frame_brown > *:last-child {
    margin-bottom: 0;
}

.frame_arrow_down_green {
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 1.6875rem 2.625rem 0 2.625rem;
    border-color: #197F4A transparent transparent transparent;
    margin-bottom: .625rem;
}

/* message */
.message {
    padding: 0.8rem 0.8rem 0.8rem 3rem;
    line-height: 1.8;
    margin-bottom: 1.5rem;
    position: relative;
}
.message > * ,
.message > * > *{
    margin: 0;
}

.message > *:last-child {
    margin-bottom: 0;
}

.message.error {
    background: #ffeef4;
    border: 2px solid #dd2246;
    color: #CC173A;
}

.message.warning {
    background: #fff2bb;
    border: 2px solid #ffbc00;
    color: #333;
}
.message.success {
    background: #EAFAF2;
    border: 2px solid #177544;
    color: #333;
}
.message.info {
    background: #D7F1FF;
    border: 2px solid #0079CC;
    color: #333;
}
.message.inquiry {
    background: #ffffff;
    border: 2px solid #0079CC;
    color: #333;
}

.message.workbreak {
    background: #555555;
    color: #ffffff;
    font-weight: bold;
    text-align: center;
    margin-left: -1rem;
    margin-right: -1rem;
    padding: 0.8rem;
}

/** aria icon*/
.aria_icon {
    position: absolute;
    content: "";
    width: 1.5rem;
    height: 1.5rem;
    left: 0.8rem;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:0 0;
    background-color:transparent;
}
.aria_icon.error {
    background-image: url('../../img/icon_error.svg');
}
.aria_icon.warning {
    background-image: url('../../img/icon_warning.svg');
}
.aria_icon.success {
    background-image: url('../../img/icon_success.svg');
}
.aria_icon.info {
    background-image: url('../../img/icon_info.svg');
}
.aria_icon.inquiry {
    background-image: url('../../img/icon_inquiry.svg');
}


/** 見出し*/

h1 {
    font-size: 1.25rem;
    padding: 0.2rem 0 0.2rem 0;
    line-height: 2;
    font-weight: bold;
    margin:0;
}

h2 {
    text-align: center;
    line-height: 1.6;
    font-size: 1.5rem;
    color: #177544;
    border-bottom: 2px solid #177544;
    margin-top:0;
    margin-bottom: 1.5rem;
}

body.PC h2 {
    text-align: left;
    padding: 0 0;
    margin-top: 1rem;
}

.border-bottom-0{
    border-bottom: 0;
}

h3 {
    color: #333;
    font-size: 1.125rem;
    font-weight: bold;
    margin-top:0;
    margin-bottom: 1.25rem;
    border-left: 0.5rem solid #177544;
    padding-left: 0.5rem;
}

h3_table {
    color: #333;
    font-weight: bold;
    margin-top:0;
    margin-bottom: 1.25rem;
    border-left: 0.5rem solid #177544;
    padding-left: 0.5rem;
}


/* icon */
.icon {
    display: inline-block;
    vertical-align: top;
}

.icon-title-help{
    width: 1.875rem;
    height: 1.875rem;
    padding: 0;
    min-width: auto;
    background-color: transparent;
    margin-left: auto;
    margin-bottom: 0;
}

.icon-title-help:hover,
.icon-title-help:focus,
.icon-title-help:active {
    background-color: transparent;
}

.android .icon-title-help:hover,
.android .icon-title-help:active {
    background-color: transparent !important;
}

_::-webkit-full-page-media, _:future, :root body:not(.PC) .icon-title-help:hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .icon-title-help:active {
    background-color: transparent !important;
}

.icon-title-help > img {
/*    position: absolute;*/
    width: 1.875rem;
    height: 1.875rem;
    border-radius: 50%;
}

.icon-title-help:hover > img,
.icon-title-help:active > img {
    box-shadow: 0px 2px 4px 3px rgba(0,0,0,0.3);
    background-color: #FF9D00;
}

.android .icon-title-help:hover > img,
.android .icon-title-help:active > img {
    box-shadow: none;
}

_::-webkit-full-page-media, _:future, :root body:not(.PC) .icon-title-help:hover > img,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .icon-title-help:active > img {
    box-shadow: none;
}

/* for safari */
_::-webkit-full-page-media, _:future, :root .icon-title-help:hover > img,
_::-webkit-full-page-media, _:future, :root .icon-title-help:active > img {
    transform: translateZ(0);
}


.icon-title-help:focus-visible {
    outline: revert;
}

/* for safari */
_::-webkit-full-page-media, _:future, :root .icon-title-help:focus {
    outline: revert;
}

/* android */
.android .icon-title-help:focus-visible {
    outline: revert;
}

.icon.medical {
    background: transparent url('../../img/icon_medical.svg') no-repeat center center;
}

.icon.guidance_question {
    background: transparent url('../../img/icon_guidance_question.svg') no-repeat center center;
    background-size: cover!important;
    content: "";
    display: inline-block;
    width: 1rem!important;
    height: 1.5rem!important;
    position: absolute;
    left: .3rem;
    top: 0;
}

.PC .single_table .guidance_question {
    background: transparent url('../../img/icon_guidance_question.svg') no-repeat center center;
    background-size: cover!important;
    content: "";
    display: inline-block;
    width: 0.7rem!important;
    height: 1.0rem!important;
    position: absolute;
    left: 0rem;
    top: 0.1rem;
}


.PC .single_table .guidance.qa_aria{
    position: relative;
    padding-left:1.0rem;
}

.icon.header_guide {
    background: url('../../img/icon_header_guide.svg') no-repeat center;
}

.icon.header_question {
    background: url('../../img/icon_header_question.svg') no-repeat center;
    background-color: #444444;
    border-radius: 50%;
}

_:-ms-lang(x)::-ms-backdrop, .icon.header_question {
    background-position-y: .1px;
    background-position-x: center;
}

.icon.mihon_note {
    background: transparent url('../../img/icon_mihon_note.svg') no-repeat center center;
}

.icon.portalmenu_disabilities {
    background: transparent url('../../img/icon_portalmenu_disabilities.svg') no-repeat center center;
}

.icon.portalmenu_disaster_theft {
    background: transparent url('../../img/icon_portalmenu_disaster_theft.svg') no-repeat center center;
}

.icon.portalmenu_donation {
    background: transparent url('../../img/icon_portalmenu_donation.svg') no-repeat center center;
}

.icon.portalmenu_earthquake {
    background: transparent url('../../img/icon_portalmenu_earthquake.svg') no-repeat center center;
}

.icon.portalmenu_income {
    background: transparent url('../../img/icon_portalmenu_income.svg') no-repeat center center;
}

.icon.portalmenu_income_etc {
    background: transparent url('../../img/icon_portalmenu_income_etc.svg') no-repeat center center;
}

.icon.portalmenu_life_insurance {
    background: transparent url('../../img/icon_portalmenu_life_insurance.svg') no-repeat center center;
}

.icon.portalmenu_loss_carry {
    background: transparent url('../../img/icon_portalmenu_loss_carry.svg') no-repeat center center;
}

.icon.portalmenu_medical_bills {
    background: transparent url('../../img/icon_portalmenu_medical_bills.svg') no-repeat center center;
}

.icon.portalmenu_plans {
    background: transparent url('../../img/icon_portalmenu_plans.svg') no-repeat center center;
}

.icon.portalmenu_retirement_indi {
    background: transparent url('../../img/icon_portalmenu_retirement_indi.svg') no-repeat center center;
}

.icon.portalmenu_salary {
    background: transparent url('../../img/icon_portalmenu_salary.svg') no-repeat center center;
}

.icon.portalmenu_social_insurance {
    background: transparent url('../../img/icon_portalmenu_social_insurance.svg') no-repeat center center;
}

.icon.portalmenu_souse {
    background: transparent url('../../img/icon_portalmenu_souse.svg') no-repeat center center;
}

.icon.portalmenu_student {
    background: transparent url('../../img/icon_portalmenu_student.svg') no-repeat center center;
}

.icon.portalmenu_support {
    background: transparent url('../../img/icon_portalmenu_support.svg') no-repeat center center;
}

.icon.portalmenu_temporary {
    background: transparent url('../../img/icon_portalmenu_temporary.svg') no-repeat center center;
}

.icon.portalmenu_widow {
    background: transparent url('../../img/icon_portalmenu_widow.svg') no-repeat center center;
}

/* test_S */

.icon.portalmenu_aoiro {
    background: transparent url('../../img/icon_portalmenu_aoiro.svg') no-repeat center center;
}

.icon.portalmenu_fudosanshotoku {
    background: transparent url('../../img/icon_portalmenu_fudosanshotoku.svg') no-repeat center center;
}

.icon.portalmenu_gaizei {
    background: transparent url('../../img/icon_portalmenu_gaizei.svg') no-repeat center center;
}

.icon.portalmenu_heikin {
    background: transparent url('../../img/icon_portalmenu_heikin.svg') no-repeat center center;
}

.icon.portalmenu_jigyo {
    background: transparent url('../../img/icon_portalmenu_jigyo_1.svg') no-repeat center center;
}

.icon.portalmenu_jukari {
    background: transparent url('../../img/icon_portalmenu_jukari.svg') no-repeat center center;
}

.icon.portalmenu_kinyu {
    background: transparent url('../../img/icon_portalmenu_kinyu.svg') no-repeat center center;
}

.icon.portalmenu_sakimono {
    background: transparent url('../../img/icon_portalmenu_sakimono.svg') no-repeat center center;
}

.icon.portalmenu_senjusha {
    background: transparent url('../../img/icon_portalmenu_senjusha.svg') no-repeat center center;
}

.icon.portalmenu_sogojoto {
    background: transparent url('../../img/icon_portalmenu_sogojoto.svg') no-repeat center center;
}

.icon.portalmenu_taishoku {
    background: transparent url('../../img/icon_portalmenu_taishoku.svg') no-repeat center center;
}

.icon.portalmenu_tochitatemono {
    background: transparent url('../../img/icon_portalmenu_tochitatemono_1.svg') no-repeat center center;
}

.icon.portalmenu_tokuteijutaku {
    background: transparent url('../../img/icon_portalmenu_tokuteijutaku.svg') no-repeat center center;
}

.icon.portalmenu_toushi {
    background: transparent url('../../img/icon_portalmenu_toushi.svg') no-repeat center center;
}

/* test_E */

/** link*/
ul.link {
    padding-left: 0;
}
ul.link > li {
    list-style-type: none;
}
ul.link > li > a,
.link > a,
a.link {
    color: #333;
    padding-left: 1em;
    text-decoration: underline;
    position: relative;
    cursor: pointer;
}
ul.link > li > a::before,
.link > a::before,
a.link::before {
    position: absolute;
    content: "";
    vertical-align: top;
    top: 0.5em;
    left: 0;
    width: 0.4em;
    height: 0.4em;
    border-top: 2px solid #555;
    border-right: 2px solid #555;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

_::-webkit-full-page-media, _:future, :root ul.link > li > a::before,
_::-webkit-full-page-media, _:future, :root .link > a::before,
_::-webkit-full-page-media, _:future, :root a.link::before {
    top: 0.3em;
}

a.link.link_not_icon {
    padding-left:0px !important;
}

a.link.link_not_icon::before {
    content:none !important;
}

ul.link a:hover,
ul.link a:focus,
ul.link a:active,
.link > a:hover,
.link > a:focus,
.link > a:active,
a.link:hover,
a.link:focus,
a.link:active {
    text-decoration: none;
}

ul.link.icon_lightbox a::before,
.link.icon_lightbox > a::before,
a.link.icon_lightbox::before {
    position: absolute;
    content: "";
    vertical-align: top;
    top: 0.3rem;
    left: 0;
    width: .625rem;
    height: .8125rem;
    border: none;
    background: url("../../img/icon_link_lightbox.svg") no-repeat;
    background-size: 0.625rem 0.8125rem;
    background-position: center;
    transform: none;
}

.icon_out_link {
    width: 1.25rem;
    height: 1.4375rem;
    display: inline-block;
    vertical-align: top;
    background: transparent url("../../img/icon_out-link.png") no-repeat left center;
}

.icon_image {
    width: 1.25rem;
    height: 1.4375rem;
    display: inline-block;
    vertical-align: top;
    background: transparent url("../../img/icon_link_lightbox.svg") no-repeat left center;
}

.icon_pdf {
    width: 2.5rem;
    height: 1.4375rem;
    display: inline-block;
    vertical-align: top;
    background: transparent url("../../img/icon_pdf.svg") no-repeat left center;
}

.message span.icon_image,
.message span.icon_out_link,
.message span.icon_pdf {
    vertical-align: middle !important;
}

.icon_pdf_checkbox,
.icon_out_link_checkbox {
    margin-top:.550rem;
}

.icon_image_checkbox {
    margin-top:.600rem;
}

.small .icon_pdf,
.small .icon_image,
.small .icon_out_link {
    vertical-align:text-bottom;
}


/* open-close handle */
.oc-help {
    margin: 1.25rem 0 30px 0;
}

.oc-handle {
    display: block;
    padding-right: 2rem;
    padding-bottom: 2px;
    border-bottom: 1px solid #c4bcb3;
    margin: 0;
    position: relative;
    cursor: pointer;
}

.oc-handle:hover,
.oc-handle:focus,
.oc-handle:active {
    text-decoration: underline;
}

.oc-handle > img {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    vertical-align: top;
    box-sizing: border-box;
    transform-origin: 50% 25%;
    transition: all .4s;
    width: 1.0rem;
    height: auto;
}

body.PC .oc-handle:hover,
body.PC .oc-handle:focus {
    background-color: #EAFAF2;
}

body.PC .oc-handle:hover,
body.PC .oc-handle:focus,
body.PC .oc-handle:active {
    text-decoration: none;
}

h3.oc-handle {
    display: inline-block;
    padding-left: .5rem;
    padding-right: 2rem;
    padding-bottom: 0;
    border-bottom: none;
    position: relative;
}

body.PC h3.oc-handle:hover,
body.PC h3.oc-handle:focus,
body.PC h3.oc-handle:active {
    text-decoration: underline;
    background-color: transparent;
}

body.PC h3.oc-handle > img {
    position: initial;
    top: initial;
    vertical-align: sub;
    right: auto;
    left: auto;
    margin-left: 1.0rem;
}

body:not(.PC) h3.oc-handle > img {
    position: absolute;
    top: 50%;
    vertical-align: sub;
    right: 0;
    left: auto;
    margin-left: 1.0rem;
}

.oc-handle.is-opened > img {
    transform: rotate(180deg);
}

.oc-content {
    margin: 0;
    display: none;
    border: solid 1px #C4BCB3;
    padding: 1rem;
}

h3 + .oc-content {
    margin-top: 1rem
}

h3 + .oc-content.frame_brown {
    margin-top: .25rem
}

.oc-handle.is-opened + .oc-content {
    display: block;
}

.is-opened {
    border-bottom:0;
}

.oc-content > * {
    margin-top: 0;
}

.oc-content li:last-of-type {
    margin: 0;
}

.oc-content > *:last-child {
    margin-bottom: 0;
}

.oc-content_preopen {
    margin: 0;
    display: block;
    border: solid 1px #C4BCB3;
    padding: 1rem;
}

h3 + .oc-content_preopen {
    margin-top: 1rem
}

h3 + .oc-content_preopen.frame_brown {
    margin-top: .25rem
}

.oc-handle.is-opened + .oc-content_preopen {
    display: block;
}

.oc-content_preopen > * {
    margin-top: 0;
}

.oc-content_preopen li:last-of-type {
    margin: 0;
}

.oc-content_preopen > *:last-child {
    margin-bottom: 0;
}

/* add-handle */
.add-handle-container {
    background: transparent;
    margin: 0 -1rem 2.5rem;
    padding: 1.5rem 1rem;
    position: relative;
}

.add-handle-container > *:last-child {
    margin-bottom: 0;
}

.add-handle-container.disabled {
    background: #eeeeee;
}

body.PC .add-handle-container {
    background: transparent;
    margin: 0 -1rem 2.5rem;
    padding: 0 1rem;
}

body.PC table + .add-handle-container,
body.PC .matrix_table + .add-handle-container,
body.PC table + .add-handle-circle-container,
body.PC .matrix_table + .add-handle-circle-container {
    margin-top: -1.5rem;
}

.add-handle-container-contents > *:last-child {
    margin-bottom: 0;
}

.add-handle-container-contents {
    background: #FAF2D7;
    margin: 0;
    padding: 1.5rem 1rem;
}

.add-handle-container.disabled .add-handle-container-contents {
    background-color: #EEEEEE;
}

body:not(.PC) .add-handle-container-no-total {
    background: transparent;
    margin: 0 -1rem 2.5rem;
    padding: 0 1rem;
}

.add-handle {
    display: inline-block;
    padding: 0 1rem;
    width: 100%;
    justify-content: center;
    align-items: center;
    height: 3rem;
    border-radius: 3.375rem;
    box-shadow: 0px 2px 4px 0px rgb(0 0 0 / 8%);
    min-width: 16rem;
    margin: 0 0 1rem 0;
    flex-wrap: nowrap;
    background: #ff9d00;
    color: #333;
    font-weight: bold;
}

.add-handle:disabled {
    color: #FFFFFF;
    background: #cccccc;
}

.add-handle:not(:disabled):hover,
.add-handle:not(:disabled):focus {
    box-shadow: 0px 2px 4px 3px rgba(0,0,0,0.3);
    background: #ff9d00;
    outline: none;
}

.add-handle:not(:disabled):focus {
    background: #ff9d00;
}

.android .add-handle:not(:disabled):hover,
.android .add-handle:not(:disabled):active {
    box-shadow: 0px 2px 4px 3px rgba(0,0,0,0.3);
    background: #ff9d00;
    outline: none;
}

_::-webkit-full-page-media, _:future, :root body:not(.PC) .add-handle:not(:disabled):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .add-handle:not(:disabled):active {
    box-shadow: 0px 2px 4px 3px rgba(0,0,0,0.3);
    background: #ff9d00;
    outline: none;
}

.add-handle:not(:disabled):focus-visible {
    box-shadow: none;
    outline: revert;
}

body.PC .add-handle {
    width: 50%;
}

.add-handle > span.add-handle_text {
    position: relative;
    display: inline-block;
    white-space: nowrap;
    padding-left:1.6rem;
    margin: 0;
}

.add-handle > span.add-handle_text:before,
.add-handle > span.add-handle_text:after {    
    position: absolute;
    content: "";
    top:calc(50% - 2px);
    transform: translateY(-50%);
}
.add-handle > span.add-handle_text:before {    
    left: calc(0.6rem - 1px);
    height: 1.2rem;
    border-right: 2px solid #444444;
}
.add-handle > span.add-handle_text:after {    
    left: 0rem;
    width: 1.2rem;
    border-top: 2px solid #444444;
}

.add-handle:disabled  > span.add-handle_text:before {    
    border-right: 2px solid #ffffff;
}
.add-handle:disabled > span.add-handle_text:after {    
    border-top: 2px solid #ffffff;
}

.total-amount {
    margin: 0 0 1rem 0;
}

.total-amount span {
    display: block;
}

.total-amount .label {
    font-size: 1rem;
    margin: 0 0 .25rem;
}

.total-amount .price {
    display: inline-block;
    font-size: 1.5rem;
}

.total-amount .price {
    word-break: break-all;
}

.total-amount .small_price {
    display: inline-block;
    word-break: break-all;
}

.add-handle-circle-container {
    background: #FAF2D7;
    margin: 0 -1rem 2.5rem;
    padding: 1.5rem 4.5rem 1.5rem 1rem;
    position: relative;
}

.add-handle-circle-container > *:not(.add-handle-circle):last-of-type {
    margin-bottom: 0;
}

.add-handle-circle-container.disabled {
    background: #eeeeee;
}

body.PC .add-handle-circle-container {
    padding-left: 5rem;
    padding-right: 1rem;
    margin: 0 0 1.5rem;
}

.add-handle-circle-container.bg-none,
.add-handle-circle-container.bg-none.disabled {
    background-color: transparent;
}

.add-handle-circle {
    position: absolute;
    display: inline-block;
    background: #ff9d00;
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.08);
    top: .75rem;
    right: 1rem;
    left: auto;
    min-width: auto;
    margin-bottom: 0;
}

.add-handle-circle::before,
.add-handle-circle::after {
    content: "";
    background-color: #444444;
    position: absolute;
}

.add-handle-circle::before {
    width: 2px;
    height: 1.5rem;
    left: 50%;
    top: 50%;
    transform: translateY(-50%) translateX(-50%);
}

.add-handle-circle::after {
    width: 1.5rem;
    height: 2px;
    left: 50%;
    top: 50%;
    transform: translateY(-50%) translateX(-50%);
}

.add-handle-circle:disabled {
    background: #cccccc;
}

.add-handle-circle:disabled::before,
.add-handle-circle:disabled::after {
    background-color: #FFFFFF;
}

.add-handle-circle:not(:disabled):hover,
.add-handle-circle:not(:disabled):focus {
    box-shadow: 0px 2px 4px 3px rgba(0,0,0,0.3);
    background: #ff9d00;
    outline: none;
}

.android .add-handle-circle:not(:disabled):hover,
.android .add-handle-circle:not(:disabled):active {
    box-shadow: 0px 2px 4px 3px rgba(0,0,0,0.3);
    background: #ff9d00;
    outline: none;
}

_::-webkit-full-page-media, _:future, :root body:not(.PC) .add-handle:not(:disabled):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .add-handle:not(:disabled):active {
    box-shadow: 0px 2px 4px 3px rgba(0,0,0,0.3);
    background: #ff9d00;
    outline: none;
}

.add-handle-circle:not(:disabled):focus-visible {
    outline: revert;
}

body.PC .add-handle-circle {
    right: auto;
    left: 1rem;
}

.add-handle-circle > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 3rem;
    height: 3rem;
}

/** guidance*/
.guidance {
    margin-bottom: 1rem;
}

.guidance > * ,
.guidance > * > *{
    margin-bottom: 0;
}

.guidance.small {
    margin-bottom: .875rem;
}

ul.guidance.small {
    margin-bottom: .875rem;
}

.guidance.qa_aria{
    position: relative;
    padding-left:2em;
}


/* table*/
.table{    
    margin: 1rem 0 2.0rem;
    border-collapse: collapse;
    border-spacing: 0;
    width:100%;
    table-layout: fixed;
}
.table tr{
    border-bottom: none;
}

.table tr > *{
    display: block;
}

.table th{
    text-align: left;
    font-weight: normal;
}
.table td{    
    text-align: left;
}

th,td {
    word-break: break-all;
}

th > *:last-child,
td > *:last-child {
    margin-bottom: 0;
}

/** single_table*/
.table.single_table caption {
    text-align: left;
    margin-bottom: .5rem;
    border-left: 0.5rem solid #177544;
    padding-left: 0.5rem;
    font-size: 1.125rem;
}

.table.single_table tr.underline {
    padding: .5rem 1rem;
    border-bottom: solid 1px #C4BCB3;
}

body:not(.PC) .table.single_table tr:not(:first-of-type) > th:first-of-type {
    margin-top: 0.5rem;
}

.table.single_table tr > * {
    padding: .25rem 0 .5rem 0;
}

body:not(.PC) .table.single_table tr td .form-note {
    margin: 0 0 .25rem 0;
}

.table.single_table th{
    padding: .5rem 0 0;
}

.table.single_table strong {
    margin: 0;
}

.PC .table.single_table tr{
    border-top: 1px solid #aaaaaa;
    border-bottom: 1px solid #aaaaaa;
}

.PC .table.single_table tr > *{
    display: table-cell;
    padding: .5rem 1rem;
}

.PC .table.single_table th {
    width:auto;
    background-color: #F2EFE4;
    text-align:left;
    vertical-align: top;
    font-size: .875rem;
}

.PC .table.single_table td {
    width:auto;
    text-align:left;
    vertical-align: top;
    font-size: 1rem;
}

.PC .table.single_table th *{
    color: #333!important;
    font-weight: normal!important;
}

.table.single_table input.textbox,
.table.single_table .select-container,
body.PC .table.single_table .pc-form-horizontal
 {
    margin-bottom: 0;
}



/** matrix_table*/
.matrix_table {
    margin-bottom: 2.5rem;
}

.matrix_table .tbody-th{
    display:none;
}
.matrix_table > div > dt{
    font-weight: bold;
    padding:1rem 0 0.5rem 0;
}

body:not(.PC) .matrix_table > div > dt{
    font-weight: bold;
    color:#177544!important;
    padding: 0 0 0 0;
    margin-bottom: 0.5rem;
}

body:not(.PC) .matrix_table > div.sub > dt{
    margin-top: 1rem;
}

body:not(.PC) .matrix_table > div:nth-of-type(2) > dt{
    margin-top: 1rem;
}

.matrix_table > div > dd,
.matrix_table > div > dd > dl{
    margin:0;
}
.matrix_table > div > dd dt{
    margin:0;
    padding:0;
}

.matrix_table > div > dd dd{
    margin: 0 0 1rem;
    padding: .25rem 0 .5rem 0;
    border-bottom: 1px solid #aaaaaa;
    min-height: 1.5rem;
}

.matrix_table > div > dd dt > *:last-child,
.matrix_table > div > dd dd > *:last-child {
    margin-bottom: 0;
}

body:not(.PC) .matrix_table > div > dd dd.has-input {
    border-bottom: none;
}

.PC .matrix_table{
    display: flex;
}
.PC .matrix_table .tbody-th{
    display:block;
}
.PC .matrix_table dl,
.PC .matrix_table dd{
    margin: 0;
}

.PC .matrix_table dt{
    color: #000000;
    background-color: #F2EFE4;
    font-weight: normal;
    text-align: left;
    padding: .75rem .5rem;
    margin: 0;
    border-right: 1px solid #aaaaaa;
    border-bottom: 1px solid #aaaaaa;
}

.PC .matrix_table > div{
    flex: 1;   
    display: flex;
    flex-direction: column;
}


.PC .matrix_table.matrix_table_transpose {
    flex-direction: column;
    border-bottom:  1px solid #aaaaaa!important;
}
.PC .matrix_table.matrix_table_transpose dl,
.PC .matrix_table.matrix_table_transpose dt,
.PC .matrix_table.matrix_table_transpose dd{
    border: 0!important;
}
.PC .matrix_table.matrix_table_transpose > div{
    flex: 1 1 auto;
    display: flex;
    flex-direction: row;
    width: 100%;
    height: 100%;
    border-top:  1px solid #aaaaaa!important;
}

.PC .matrix_table.matrix_table_transpose > div > dt{
    flex: 0 0 auto;
}
.PC .matrix_table.matrix_table_transpose > div > dd{
    flex: 1 1 auto;
}
.PC .matrix_table.matrix_table_transpose > div > dd > dl{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    height: 100%;
}

.PC .matrix_table.matrix_table_transpose > div > dd > dl > dt{
    flex: 1 1 auto;
    border-left:  1px solid #aaaaaa!important;
}
.PC .matrix_table.matrix_table_transpose > div:not(.tbody-th) > dd > dl > dd{
    flex: 1 1 auto;
    border: 0;
    border-left:  1px solid #aaaaaa!important;
}


.PC .matrix_table.matrix_table_transpose > div:not(.tbody-th) > dd > dl > dd > input{
  width: 100%;
}



body.PC .matrix_table > div.w-initial,
body.PC .matrix_table > div.w-10,
body.PC .matrix_table > div.w-20,
body.PC .matrix_table > div.w-30,
body.PC .matrix_table > div.w-40,
body.PC .matrix_table > div.w-50,
body.PC .matrix_table > div.w-60,
body.PC .matrix_table > div.w-70,
body.PC .matrix_table > div.w-80,
body.PC .matrix_table > div.w-90,
body.PC .matrix_table > div.w-15,
body.PC .matrix_table > div.w-25,
body.PC .matrix_table > div.w-35,
body.PC .matrix_table > div.w-45,
body.PC .matrix_table > div.w-55,
body.PC .matrix_table > div.w-65,
body.PC .matrix_table > div.w-75,
body.PC .matrix_table > div.w-85,
body.PC .matrix_table > div.w-95,
body.PC .matrix_table > div.w-100{
    flex: 0 1 auto;
}

body.PC .matrix_table > div.w-auto{
    flex: 1 1 auto;   
}

body:not(.PC) .matrix_table > div.w-initial,
body:not(.PC) .matrix_table > div.w-auto,
body:not(.PC) .matrix_table > div.w-10,
body:not(.PC) .matrix_table > div.w-20,
body:not(.PC) .matrix_table > div.w-30,
body:not(.PC) .matrix_table > div.w-40,
body:not(.PC) .matrix_table > div.w-50,
body:not(.PC) .matrix_table > div.w-60,
body:not(.PC) .matrix_table > div.w-70,
body:not(.PC) .matrix_table > div.w-80,
body:not(.PC) .matrix_table > div.w-90,
body:not(.PC) .matrix_table > div.w-15,
body:not(.PC) .matrix_table > div.w-25,
body:not(.PC) .matrix_table > div.w-35,
body:not(.PC) .matrix_table > div.w-45,
body:not(.PC) .matrix_table > div.w-55,
body:not(.PC) .matrix_table > div.w-65,
body:not(.PC) .matrix_table > div.w-75,
body:not(.PC) .matrix_table > div.w-85,
body:not(.PC) .matrix_table > div.w-95,
body:not(.PC) .matrix_table > div.w-100{
    flex:1;
    width:100%!important;
}

.PC .matrix_table > div > dt:first-child{
    border-top: 1px solid #aaaaaa;
}
.PC .matrix_table > div.tbody-th >dd dt{
    padding: .75rem .5rem;
}

.PC .matrix_table > div:not(.tbody-th) >dd dt{
    display: none;
}

.PC .matrix_table > div:not(.tbody-th) >dd dd{
    margin: 0;
    border-right: 1px solid #aaaaaa;
    border-bottom: 1px solid #aaaaaa;
    padding: .75rem .5rem;
}

.PC .matrix_table > div:not(.tbody-th) >dd dd.error{
    background-color: #FFEEF4;
}

.PC .matrix_table > div:last-of-type > dt,
.PC .matrix_table > div:not(.tbody-th):last-of-type > dd dd {
    border-right: none;
}

.matrix_table input {
    margin:0;
}
.matrix_table input.textbox,
.matrix_table .select-container {
    margin-bottom:0;
}



/* list_table */
.list_table {
    margin: 1rem 0 2.0rem;
    table-layout: fixed;
    border-collapse: collapse;
    display: block;
}

.list_table caption {
    text-align: left;
    margin-bottom: .5rem;
    display: block;
    border-left: 0.5rem solid #177544;
    padding-left: 0.5rem;
}

.list_table thead {
    display: none;
}

.list_table tbody,
.list_table tr,
.list_table td {
    display: block;
}

.list_table dd {
    overflow-wrap: break-word;
}

.list_table span {
    word-break: break-all;
}

.list_table_common {
    margin: 1rem 0 2.0rem;
    table-layout: fixed;
    border-collapse: collapse;
    display: block;
}

.list_table_common caption {
    text-align: left;
    margin-bottom: .5rem;
    display: block;
    border-left: 0.5rem solid #177544;
    padding-left: 0.5rem;
}

.list_table_common thead {
    display: none;
}

.list_table_common tbody,
.list_table_common tr,
.list_table_common td {
    display: block;
}

.list_table_common span {
    word-break: break-all;
}

.plate {
    position: relative;
    padding: 2.4rem 1rem 1rem 1rem;
    background: #fff;
    border: solid 1px #D5D0C7;
    box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.08);
    margin: 0 0 1.75rem;
}

.plate dd,
.plate dl {
    margin: 0;
    font-size: .875rem;
}

.plate_common {
    position: relative;
    padding: 2.4rem 1rem 1rem 1rem;
    background: #fff;
    border: solid 1px #D5D0C7;
    box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.08);
    margin: 0 0 1.75rem;
}

.plate_common dd,
.plate_common dl {
    margin: 0;
    font-size: .875rem;
}


body:not(.PC) .plate .row-num {
    position: absolute;
    display: flex;
    content: "";
    width: 100%;
    height: 1.8rem;
    background: #177544;
    top: 0;
    left: 0;
    box-sizing: border-box;
    font-size: .875rem;
    color: transparent;
    align-items: center;
    justify-content: left;
    padding: .25rem 1rem .25rem 1rem;
}

.plate_common .row-num {
    position: absolute;
    display: flex;
    content: "";
    width: 100%;
    height: 1.8rem;
    background: #177544;
    top: 0;
    left: 0;
    box-sizing: border-box;
    font-size: .875rem;
    color: transparent;
    align-items: center;
    justify-content: left;
    padding: .25rem 1rem .25rem 1rem;
}

body:not(.PC) .plate.show-num .row-num {
    color: #FFFFFF;
}

body:not(.PC) .plate_common.show-num .row-num {
    color: #FFFFFF;
}

.plate dl {
    margin-bottom: 1.25rem;
}

.plate_common dl {
    margin-bottom: 1.25rem;
}


body:not(.PC) .plate dl {
    margin-bottom: .75rem;
}

.plate_common dl {
    margin-bottom: .75rem;
}

.PC .plate dl {
    margin-bottom: 0;
}

.plate td:last-child dl {
    margin-bottom: 0;
}

.plate dt {
    margin: 0;
}

.plate dd {
    margin: 0;
    font-size: 1.25rem;
}

.plate_common td:last-child dl {
    margin-bottom: 0;
}

.plate_common dt {
    margin: 0;
}

.plate_common dd {
    margin: 0;
    font-size: 1.25rem;
}


body:not(.PC) .plate .internal {
    font-size: .875rem;
}

.plate_common .internal {
    font-size: .875rem;
}

.plate .price {
    font-size: 1.5rem;
    margin-bottom: 1rem;
}

.plate_common .price {
    font-size: 1.5rem;
    margin-bottom: 0;
}

body:not(.PC) .plate .price {
    margin-bottom: 0;
}

.plate .textdata {
}

.plate .plate-command {
    text-align: right;
    margin: 0;
}

.plate .plate-command button {
    min-width: 5rem;
    margin: 0;
}

.plate_common .textdata {
}

.plate_common .plate-command {
    text-align: right;
    margin: 0;
}

.plate_common .plate-command button {
    min-width: 5rem;
    margin: 0;
}

body:not(.PC) .sp-underline {
    margin-bottom: 1.0rem;
    border-bottom: solid 1px #C4BCB3;
}



.plate .plate-command button:focus-visible {
    outline: dashed 1px #444444;
    outline-offset: 1px;
}

.plate .plate-command button:not(:first-of-type) {
    margin: 0 0 0 .625rem;
}

.plate_common .plate-command button:not(:first-of-type) {
    margin: 0 0 0 .625rem;
}

body:not(.PC) .plate dd {
    padding-bottom: .5rem;
    border-bottom: solid 1px #cccccc;
}

body:not(.PC) .plate td:nth-last-of-type(2) dd {
    border-bottom: none;
}

body:not(.PC) .plate2 td:nth-last-of-type(2) dd {
    border-bottom: solid 1px #cccccc;
}


body:not(.PC) .plate td:last-of-type dd {
    padding-bottom: 0;
    border-bottom: none;
}

body:not(.PC) .plate td:last-of-type dd:not(.plate-command)::before {
    content: "";
    position: relative;
    display: block;
    top: -2.25rem;
    border-top: solid 1px #cccccc;
}

body:not(.PC) .plate2 td:last-of-type dd:not(.plate-command)::before {
    border-top: none;
}

body:not(.PC) .plate td:nth-of-type(2) dd:not(.plate-command)::before {
    content:none!important;
}

.plate_common dd {
    padding-bottom: .5rem;
    border-bottom: solid 1px #cccccc;
}

.plate_common td:nth-last-of-type(2) dd {
    border-bottom: none;
}

.plate_common td:last-of-type dd {
    padding-bottom: 0;
    border-bottom: none;
}

.plate_common td:last-of-type dd:not(.plate-command)::before {
    content: "";
    position: relative;
    display: block;
    top: -2.25rem;
    border-top: solid 1px #cccccc;
}

.plate_common td:nth-of-type(2) dd:not(.plate-command)::before {
    content:none!important;
}

.PC .list_table {
    display: table;
    width: 100%;
}

.PC .list_table caption {
    display: table-caption;
}

.PC .list_table thead {
    display: table-header-group;
    background: #F2EFE4;
}

.PC .list_table tbody {
    display: table-row-group;
    background: #fff;
}

.PC .list_table tr {
    display: table-row;
    background-color: transparent;
}

.PC .list_table tbody tr:nth-child(odd) > * {
    background-color: #fff;
    background-clip: padding-box;
}
.PC .list_table tbody tr:nth-child(even) > * {
    background-color: #FCFAF2;
    background-clip: padding-box;
}

.PC .list_table tbody tr:hover > *,
.PC .list_table tbody tr:focus > *{
    background-color: #EAFAF2;
    background-clip: padding-box;
}

.PC .list_table th {
    font-size: .875rem;
    font-weight: normal;
    text-align: left;
    vertical-align: top;
    border: solid 1px #cccccc;
    padding: .75rem .5rem;
}

.PC .list_table td {
    display: table-cell;
    font-size: 1rem;
    font-weight: normal;
    text-align: left;
    vertical-align: top;
    border: solid 1px #cccccc;
    padding: .75rem .5rem;
}

.PC .list_table thead tr th:first-of-type,
.PC .list_table tbody tr td:first-of-type {
    border-left: none;
}

.PC .list_table thead tr th:last-of-type,
.PC .list_table tbody tr td:last-of-type {
    border-right: none;
}

.PC .plate {
    padding: 0;
    box-shadow: none;
    border: none;
}

.PC .plate .row-num {
    text-align: right;
}

.PC .plate dt {
    display: none;
}

.PC .plate dd {
    font-weight: normal;
    font-size: .875rem;
    margin-bottom: 0;
}
.PC .plate .price {
    font-weight: normal;
    font-size: 1rem;
    margin-bottom: 0;
}

.PC .plate .textdata {
}

.PC .plate .plate-command {
    text-align: left;
}

.PC .plate .plate-command button {
    margin: 0 .3rem .3rem;
    min-width:auto;
    padding: .7rem .5rem;
}

.list_table input.textbox,
.list_table .select-container {
    margin-bottom: 0;
}

.list_table_common input.textbox,
.list_table_common .select-container {
    margin-bottom: 0;
}


/* table sub */
.PC table .sub,
.PC .matrix_table .sub {
    background: none;
    margin: 0;
    padding: 0;
}



/* required */
.required {
    background: #CC173A;
    color: #fff;
    font-size: 0.75rem;
    padding: 3px 8px 2px 8px;
    display: inline-block;
    vertical-align: top;
    margin-left: 10px;
}

/* button */
button {
    background: #555;
    color: #fff;
    font-size: 1.125rem;
    border: none;
    padding: 1rem .5rem;
    min-width: 8.75rem;
    border-radius: .125rem;
    margin: 0 .625rem 0 0;
}

button:hover,
button:focus,
button:active {
    background-color: #000;
}

.android button:not(:disabled):hover,
.android button:not(:disabled):focus,
.android button:not(:disabled):active {
    background-color: #000;
}

_::-webkit-full-page-media, _:future, :root body:not(.PC) button:not(:disabled):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) button:not(:disabled):focus,
_::-webkit-full-page-media, _:future, :root body:not(.PC) button:not(:disabled):active {
    background-color: #000;
}

button:focus {
    outline: none;
}

button:last-of-type {
    margin-right: 0;
}

button[disabled] {
    background: #ccc;
}

button:not([disabled]) {
    cursor: pointer;
}

button.mb-btn {
    margin-bottom: 1.25rem;
}

button.edit {
    font-size: 1rem;
    padding: .875rem .5rem;
    min-width: 0;
    width: 5rem;
}

button.delete {
    min-width: 0;
    width: 1.5rem;
    height: 1.5rem;
    padding: 0;
    border-radius: 50%;
    background-color: transparent;
    border: 1px solid #d3ccc2;
    position: relative;
}

button.delete::before,
button.delete::after {
    position: absolute;
    content: "";
    width: 1rem;
    height: 1px;
    background: #444;
    top: .625rem;
}

button.delete::before {
    right: .1875rem;
    transform: rotate(45deg);
}

button.delete::after {
    left: .1875rem;
    transform: rotate(-45deg);
}

/* main command */
.main-command,
.edit-command,
.transition-command,
.revise-command,
.sub-command {
    margin-bottom: 1rem;
}

body.PC .main-command {
    background-color: #f2efe4;
    padding-top: 1.25rem;
}

body.PC .main-command-row,
body.PC .revise-command {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.main-command button,
.edit-command button,
.transition-command button,
.revise-command button,
.dialog-closing-area button,
.dialog-command button {
    border-radius: 3.375rem;
    width: 100%;
    font-size: 1.375rem;
    padding: .875rem 1.25rem;
    border: 1px solid #d3ccc2;
    background: #fff;
    color: #333;
    margin: 0 0 1.25rem 0;
}

.main-command button:not([disabled]):hover,
.main-command button:not([disabled]):focus,
.main-command button:not([disabled]):active,
.transition-command button:not([disabled]):hover,
.transition-command button:not([disabled]):focus,
.transition-command button:not([disabled]):active,
.edit-command button:not([disabled]):hover,
.edit-command button:not([disabled]):focus,
.edit-command button:not([disabled]):active,
.revise-command button:not([disabled]):hover,
.revise-command button:not([disabled]):focus,
.revise-command button:not([disabled]):active,
.dialog-closing-area button:not([disabled]):hover,
.dialog-closing-area button:not([disabled]):focus,
.dialog-closing-area button:not([disabled]):active,
.dialog-command button:not([disabled]):hover,
.dialog-command button:not([disabled]):focus,
.dialog-command button:not([disabled]):active {
    background: #F7F7F7;
    color: #000000;
    outline:none;
}

_::-webkit-full-page-media, _:future, :root body:not(.PC) .main-command button:not([disabled]):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .main-command button:not([disabled]):active,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .transition-command button:not([disabled]):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .transition-command button:not([disabled]):active,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .edit-command button:not([disabled]):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .edit-command button:not([disabled]):active,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .revise-command button:not([disabled]):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .revise-command button:not([disabled]):active,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .dialog-closing-area button:not([disabled]):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .dialog-closing-area button:not([disabled]):active,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .dialog-command button:not([disabled]):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .dialog-command button:not([disabled]):active {
    background: #F7F7F7;
    color: #000000;
    outline:none;
}

.main-command button:not([disabled]):focus-visible,
.transition-command button:not([disabled]):focus-visible,
.edit-command button:not([disabled]):focus-visible,
.revise-command button:not([disabled]):focus-visible,
.dialog-closing-area button:not([disabled]):focus-visible,
.dialog-command button:not([disabled]):focus-visible {
    border: #444444 1px solid;
    box-shadow: inset 0 0 0 2px #444444;
    outline:none;
}

body.PC .main-command .order-first {
    order: -1;
}

body.PC .main-command button,
body.PC .transition-command button,
body.PC .edit-command button,
body.PC .revise-command button {
    width: auto;
}

body.PC .main-command button:not(.order-first),
body.PC .transition-command button:not(:first-of-type) {
    margin-left: .5rem;
}

.main-command button.positive,
.transition-command button.positive,
.dialog-command button.positive {
    background: #177544;
    border: 1px solid #177544;
    color: #fff;
}

body.PC .main-command button.positive,
body.PC .transition-command button.positive {
    min-width: 13.3rem;
}

.main-command button.positive:not([disabled]):hover,
.main-command button.positive:not([disabled]):focus,
.main-command button.positive:not([disabled]):active,
.transition-command button.positive:not([disabled]):hover,
.transition-command button.positive:not([disabled]):focus,
.transition-command button.positive:not([disabled]):active,
.dialog-command button.positive:not([disabled]):hover,
.dialog-command button.positive:not([disabled]):focus,
.dialog-command button.positive:not([disabled]):active {
    background: #135834;
    border: 1px solid #135834;
    color: #fff;
    outline:none;
}

.android .main-command button.positive:not([disabled]):hover,
.android .main-command button.positive:not([disabled]):active,
.android .transition-command button.positive:not([disabled]):hover,
.android .transition-command button.positive:not([disabled]):active,
.android .dialog-command button.positive:not([disabled]):hover,
.android .dialog-command button.positive:not([disabled]):active {
    background: #135834;
    border: 1px solid #135834;
    color: #fff;
    outline:none;
}
_::-webkit-full-page-media, _:future, :root body:not(.PC) .main-command button.positive:not([disabled]):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .main-command button.positive:not([disabled]):active,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .transition-command button.positive:not([disabled]):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .transition-command button.positive:not([disabled]):active,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .dialog-command button.positive:not([disabled]):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .dialog-command button.positive:not([disabled]):active {
    background: #135834;
    border: 1px solid #135834;
    color: #fff;
    outline:none;
}

.main-command button.positive:not([disabled]):focus-visible,
.transition-command button.positive:not([disabled]):focus-visible,
.dialog-command button.positive:not([disabled]):focus-visible {
    border: #177544 1px solid;
    box-shadow: inset 0 0 0 2px #FFFFFF;
}

/* .main-command button.input_another */

.main-command button.input_another:not([disabled]):hover,
.main-command button.input_another:not([disabled]):focus,
.main-command button.input_another:not([disabled]):active{
    color: #177544;
    background-color: #EAFAF2;
}

_::-webkit-full-page-media, _:future, :root body:not(.PC) .main-command button.input_another:not([disabled]):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .main-command button.input_another:not([disabled]):active{
    color: #177544;
    background-color: #EAFAF2;
}

.main-command button.input_another:not([disabled]):focus-visible {
    border: #177544 2px solid;
    box-shadow: inset 0 0 0 1px #177544;
}

button.square,
.sub-command button {
    width: 100%;
    font-size: 1rem;
    font-weight: bold;
    background: #fff;
    border: 2px solid #177544;
    border-radius: .25rem;
    color: #177544;
    padding: .875rem 1.5rem;
    margin-bottom: 0.75rem;
}

body.PC button.square {
    width: auto;
    padding: .875rem .5rem;
}

body.PC .sub-command button {
    width: 50%;
}

body.PC .sub-command.align-center button {
    margin-left: .5rem;
    margin-right: .5rem;
}

button.square:not([disabled]):hover,
button.square:not([disabled]):focus,
button.square:not([disabled]):active,
.sub-command button:not([disabled]):hover,
.sub-command button:not([disabled]):focus,
.sub-command button:not([disabled]):active {
    background-color: #EAFAF2;
    border-color: #177544;
    color: #177544;
    outline: none;
}

.android button.square:not([disabled]):hover,
.android button.square:not([disabled]):focus,
.android button.square:not([disabled]):active,
.android .sub-command button:not([disabled]):hover,
.android .sub-command button:not([disabled]):focus,
.android .sub-command button:not([disabled]):active {
    background-color: #EAFAF2;
    border-color: #177544;
    color: #177544;
    outline: none;
}

_::-webkit-full-page-media, _:future, :root body:not(.PC) button.square:not([disabled]):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) button.square:not([disabled]):focus,
_::-webkit-full-page-media, _:future, :root body:not(.PC) button.square:not([disabled]):active,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .sub-command button:not([disabled]):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .sub-command button:not([disabled]):focus,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .sub-command button:not([disabled]):active {
    background-color: #EAFAF2;
    border-color: #177544;
    color: #177544;
    outline: none;
}

button.square:not([disabled]):focus-visible,
.sub-command button:not([disabled]):focus-visible {
    border: #177544 2px solid;
    box-shadow: inset 0 0 0 1.5px #177544;
}

/* for safari */
_::-webkit-full-page-media, _:future, :root button.square:not([disabled]):focus-visible,
_::-webkit-full-page-media, _:future, :root.sub-command button:not([disabled]):focus-visible {
    border: #177544 2px solid;
    box-shadow: inset 0 0 0 1.5px #177544;
    outline: none;
}

button[disabled],
.main-command button[disabled].positive,
.transition-command button[disabled].positive {
    background: #ccc;
    border-color: #ccc;
    color: #fff;
}

button[disabled].square {
    border: none;
}

/* container */
.container button:focus-visible {
    outline: dashed 1px #444444;
    outline-offset: 1px;
}

/* edit command */
body.PC .edit-command-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

body.PC .paging-command-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.edit-command .prev {
    position: relative;
    width:calc(50% - .5rem);
    font-size: 1rem;
    padding: .875rem 1.25rem .875rem 2.25rem;
}

body:not(.PC) .edit-command .prev{
    margin-right: .5rem;
}

.edit-command .next {
    position: relative;
    width:calc(50% - .5rem);
    font-size: 1rem;
    padding: .875rem 2.25rem .875rem 1.25rem;
}

.edit-command button.prev::before {
    position: absolute;
    content: "";
    display: block;
    top: 45%;
    width: .5rem;
    height: .5rem;
    left: 1.5rem;
    border-bottom: 2px solid #444;
    border-left: 2px solid #444;
    transform: rotate(45deg) translateX(-50%);
}

.edit-command button.prev[disabled]::before {
    border-bottom: 2px solid #ffffff;
    border-left: 2px solid #ffffff;
}

.edit-command button.next::before {
    position: absolute;
    content: "";
    display: block;
    top: 45%;
    right: 1rem;
    width: .5rem;
    height: .5rem;
    border-top: 2px solid #444;
    border-right: 2px solid #444;
    transform: rotate(45deg) translateX(-50%);
}

.edit-command button.next[disabled]::before {
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
}

body.PC .edit-command button:not(:last-of-type) {
    margin-right: .5rem;
}

/* revise command */
.revise-command {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
}

body.PC .revise-command button:not(:first-of-type) {
    margin-left: .5rem;
}

.revise-command button.erace {
    color: #CC173A;
}

.revise-command button.erace:not([disabled]).erace:hover,
.revise-command button.erace:not([disabled]):focus,
.revise-command button.erace:not([disabled]).erace:active {
    color: #B01432;
}

.android .revise-command button.erace:not([disabled]).erace:hover,
.android .revise-command button.erace:not([disabled]):focus,
.android .revise-command button.erace:not([disabled]).erace:active {
    color: #CC173A;
}

_::-webkit-full-page-media, _:future, :root body:not(.PC) .revise-command button.erace:not([disabled]).erace:hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .revise-command button.erace:not([disabled]):focus,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .revise-command button.erace:not([disabled]).erace:active {
    color: #CC173A;
}

.revise-command button.erace[disabled] {
    color: #fff;
}

/* transition command */
body.PC .transition-command-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}


/* transition command subflow */

.transition-command button.subflow{
    position: relative;
    padding: .875rem 2.25rem;
    border: 2px solid #177544;
    color: #177544;
}

body.PC .transition-command button.subflow {
    min-width: 13.3rem;
}

.transition-command button.subflow:not([disabled]):hover,
.transition-command button.subflow:not([disabled]):focus,
.transition-command button.subflow:not([disabled]):active{
    color: #177544;
    background-color: #EAFAF2;
}

.android .transition-command button.subflow:not([disabled]):hover,
.android .transition-command button.subflow:not([disabled]):active {
    color: #177544;
    background-color: #EAFAF2;
}

_::-webkit-full-page-media, _:future, :root body:not(.PC) .transition-command button.subflow:not([disabled]):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .transition-command button.subflow:not([disabled]):active {
    color: #177544;
    background-color: #EAFAF2;
}

.transition-command button.subflow:not([disabled]):focus-visible {
    border: #177544 2px solid;
    box-shadow: inset 0 0 0 1px #177544;
}

.transition-command button.subflow[disabled]{
    color: #ffffff;
    border: none;
}
.transition-command button.subflow::before {
    position: absolute;
    content: "";
    display: block;
    top: 50%;
    right: 1rem;
    width: .5rem;
    height: .5rem;
    border-top: 2px solid #177544;
    border-right: 2px solid #177544;
    transform: rotate(45deg) translateX(-50%);
}

.transition-command button.subflow[disabled]::before {
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
}


/* deducation-menu */
.deducation-menu-container {
    margin: 0 0 1.875rem 0;
}

.deducation-menu-container > * {
    width: 100%;
}

.deducation-menu-description {
    margin-bottom: 1rem;
}

.PC .deducation-menu-description {
    margin-bottom: 0;
}

.deducation-menu-description > *:not(:last-child) {
    margin-bottom: 1rem;
}

.deducation-menu-description > *:last-child {
    margin-bottom: 0;
}

.deducation-menu-description > p.link:last-child {
    margin-bottom: 1rem;
}

a.deducation-menu-link {
    position: relative;
    display: block;
    background: #fff;
    height: 100%;
}

a.deducation-menu-link::before {
    position: absolute;
    content: "";
    display: block;
    top: calc(50% - .375rem);
    right: 1rem;
    width: 1rem;
    height: 1rem;
    border-top: 2px solid #177544;
    border-right: 2px solid #177544;
    transform: rotate(45deg);
}

a.deducation-menu-link:focus-visible {
    outline: dashed 1px #444444;
    outline-offset: 1px;
}

a.deducation-menu-link:hover,
a.deducation-menu-link:focus,
a.deducation-menu-link:active {
    background-color: #EAFAF2;
}

.deducation-menu {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    border: 2px solid #177544;
    border-radius: .25rem;
    padding: .5rem 1.875rem .5rem 1.625rem;
}
.deducation-menu.completed-input{
    border-width: 5px;
}
.deducation-menu .icon {
    background-size: 3.5rem 3.5rem;
    width: 3.75rem;
    height: 3.5rem;
    margin-right: .75rem;
}

_:-ms-lang(x)::-ms-backdrop, .deducation-menu .icon {
    background-size: auto;
}

body.PC .deducation-menu-detail {
    width: calc(100% - 4.5rem);
}

.deducation-menu-detail .label {
    display: block;
    line-height: 1.4;
    margin-bottom: .5rem;
}

.deducation-menu-detail .price {
    display: block;
    font-size: 1.25rem;
    margin-bottom: 1.25rem;
}

.deducation-menu-detail .price {
    word-break: break-all;
}

.deducation-menu-detail .notice {
    display: block;
    color: #177544;
    font-weight: bold;
    position: relative;
    padding-left: 2rem;
    margin-bottom: 1.25rem;
}

.deducation-menu-detail .notice::before {
    position: absolute;
    content: "";
    width: 1.5rem;
    height: 1.5rem;
    left: 0;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-color: transparent;
    background-image: url(../../img/icon_warning.svg);
}

.deducation-menu-detail .notice_2 {
    display: block;
    font-size: 1.25rem;
    position: relative;
    padding-left: 2rem;
    margin-bottom: 1.25rem;
}

.deducation-menu-detail .notice_2::before {
    position: absolute;
    content: "";
    width: 1.5rem;
    height: 1.5rem;
    left: 0;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-color: transparent;
    background-image: url(../../img/icon_warning.svg);
}

.PC .deducation-menu-detail .notice_2 {
    display:inline-block;
    position: relative;
    margin-top: .875rem;
    margin-bottom: .875rem;
    margin-left: 34rem;
    font-size: 1.25rem;
    
    padding-left: 2rem;
    left: -3rem;
}

.PC .deducation-menu-detail .notice_2::before {
    position: absolute;
    content: "";
    width: 1.5rem;
    height: 1.5rem;
    left: 0;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-color: transparent;
    background-image: url(../../img/icon_warning.svg);

}

.deducation-menu-detail > *:last-child {
    margin-bottom: 0;
}

/* faq-link-container */
.faq-link-bg {
    background-color: #FFF;
}

.faq-link-container {
    padding: 2rem 1rem;
}

.faq-link-container h2 {
    border: none;
    margin-top: 0 !important;
    margin-bottom: 1rem;
}

.faq-link {
    display: inline-block;
    width: 100%;
    padding: .75rem 1.75rem;
    box-sizing: border-box;
    border: solid 2px #177544;
    border-radius: 0.25rem;
    font-size: 1.25rem;
    font-weight: bold;
    position: relative;
}

.faq-link:hover,
.faq-link:focus {
    text-decoration: underline;
}

.faq-link::after {
    position: absolute;
    content: "";
    vertical-align: top;
    top: 50%;
    right: 1rem;
    width: 0.4em;
    height: 0.4em;
    border-top: 2px solid #177544;
    border-right: 2px solid #177544;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
}

.PC .faq-link {
    width: 45%;
}

.icon-faq-link {
    width: 1.75rem;
    height: auto;
    box-sizing: border-box;
    vertical-align: middle;
    margin-right: 1rem;
}

/* pagetop */
#pagetop {
    font-size: 0.75rem;
    text-align: center;
    background: #F5F3EB;
    padding: 0 1rem;
    position: relative;
}

#pagetop:before {
    content: "";
    display: inline-block;
    width: calc(100% - 2rem);
    height: 1px;
    position: absolute;
    background: #c4bcb3;
    top: 0;
}

.PC #pagetop {
    background-color: #fff;
    color: #333;
}

#pagetop a {
    display: inline-block;
    width: 100%;
    padding: .875rem 0;
    cursor: pointer;
}

#pagetop a:hover,
#pagetop a:focus,
#pagetop a:active {
    text-decoration: underline;
}

#pagetop a .icon,
.screen-id-pagetop a .icon {
    position: relative;
    width: 1.125rem;
}

#pagetop a .icon::before,
.screen-id-pagetop a .icon::before {
    position: absolute;
    content: "";
    top: .375rem;
    left: 0;
    vertical-align: top;
    width: .5rem;
    height: .5rem;
    border-top: 1px solid #333;
    border-right: 1px solid #333;
    transform: rotate(-45deg);
}

/* screen-id */
.screen-id-cotnainer {
    display: flex;
    width: 100%;
    border-top: solid 1px #c4bcb3;
    border-bottom: solid 1px #c4bcb3;
}

.screen-id-cotnainer > * {
    width: 50%;
}

.screen-id-cotnainer .screen-id-pagetop,
.screen-id-cotnainer .screen-id {
    font-size: 0.75rem;
    text-align: center;
    background: #FFF;
    color: #333;
    position: relative;
}

.screen-id-cotnainer .screen-id-pagetop {
    border-left: solid 1px #c4bcb3;
}

.screen-id-cotnainer .screen-id-pagetop > a,
.screen-id-cotnainer .screen-id {
    padding: .875rem 0;
}

.screen-id-cotnainer .screen-id-pagetop > a {
    display: block;
}

.screen-id-cotnainer .screen-id-pagetop > a:hover,
.screen-id-cotnainer .screen-id-pagetop > a:focus {
    text-decoration: underline;
}

.screen-id-text,
.screen-id-pagetop-text {
    display: block;
    max-width: calc((768px - 18px) / 2); /* border + scrollbar = 18px */
}

.screen-id-text {
    margin-left: auto;
}

.screen-id-pagetop-text {
    margin-right: auto;
}

.PC .screen-id-text,
.PC .screen-id-pagetop-text {
    display: block;
    max-width: calc((1000px - 2rem) / 2);
}

/* footer */
footer {
    background: #fff;
}
.footer-main {
    background: #fff;
    padding: 0 0 1rem 0;
}

.PC .footer-main {
    background-color: #115934;
    color: #fff;
    padding: 0;
}

.PC .footer-body {
    display: flex;
    flex-wrap: wrap;
    padding: 1rem 0;
}

.PC .footer-body ul,
.PC .footer-body li,
.PC .footer-body p {
    margin-bottom: 0;
    margin-top: 0;
}

footer nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 0.875rem;
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}

.PC footer nav ul {
    justify-content: flex-start;
    flex-wrap: nowrap;
    font-size: .75rem;
}

footer nav ul li {
    width: 50%;
    text-align: center;
}

.PC footer nav ul li {
    width: auto;
    margin: 0 1rem;
}

footer nav ul li a {
    display: inline-block;
    width: 100%;
    padding: 1.25rem 0;
}

.PC footer nav ul li a {
    padding: 0;
    color: #fff;
    text-decoration: underline;
}

.PC footer nav ul li a:hover,
.PC footer nav ul li a:focus,
.PC footer nav ul li a:active {
    text-decoration: none;
}

footer .copyright {
    font-size: .55rem;
    text-align: center;
    margin-top: 1rem;
    line-height: 1.4;
}

.PC footer .copyright {
    margin-left: auto;
    margin-right: 1rem;
    font-size: .75rem;
}

footer .copyright > span {
    display: block;
}

.PC footer .copyright > span {
    display: inline-block;
    margin-left: 0.5rem;
}


/* inline */
.summary-plate {
    height: 31.25rem;
    overflow: auto;
}


/* dialog */
.dialog,
.dialog.paper-container,
.link_lightbox_container.dialog.paper-container,
.PC .link_lightbox_container.dialog.paper-container {
    display: none;
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
    left: 5%;
    width: calc(100vw - 10%)!important;
    z-index: 9999;
}

.PC .dialog,
.PC .dialog.paper-container,
.PC .link_lightbox_container.dialog.paper-container {
    display: none;
    position: fixed;
    top: 50%;
    transform: translateY(-50%) translateX(-50%) !important;
    left: 50% !important;
    width: 900px !important;
    z-index: 9999;
}


.dialog::before,
.dialog.paper-container::before,
.PC .dialog.paper-container::before,
.link_lightbox_container.dialog.paper-container::before,
.PC .link_lightbox_container.dialog.paper-container::before {
  position: fixed;
  content: "";
  background: rgba(0,0,0,0.7);
  width: 200vw;
  height: 200vh;
  top: -100vh;
  left: -100vw;
  z-index: -10;
}


.dialog-header,
.dialog.paper-container .dialog-header,
.PC .dialog.paper-container .dialog-header,
.link_lightbox_container.dialog.paper-container .dialog-header,
.PC .link_lightbox_container.dialog.paper-container .dialog-header {
    background-color: #177544;
    font-size: 1.25rem;
    color: #fff;
    text-align: center;
    padding: .875rem 1.8rem .75rem 1.8rem;
    position: relative;
    border-radius: .125rem .125rem 0 0;
}

.dialog.warning .dialog-header {
    background-color: #FFBC00;
    color: #333;
}

.dialog-header p {
    margin: 0;
    line-height: 1.4;
}

.dialog-header .dialog_close,
.link_lightbox_container.dialog.paper-container .dialog-header .dialog_close,
.PC .link_lightbox_container.dialog.paper-container .dialog-header .dialog_close {
    position: absolute;
    top: calc(50% - .875rem);
    right: .5rem;
    width: 1.75rem;
    height: 1.75rem;
    cursor: pointer;
}

.dialog-header .dialog_close .icon.dclose {
    position: relative;
    width: 1.75rem;
    height: 1.75rem;
}

.dialog-header .dialog_close .icon.dclose::before,
.dialog-header .dialog_close .icon.dclose::after {
    position: absolute;
    content: "";
    width: 1.5rem;
    height: .125rem;
    background: #fff;
    vertical-align: top;
    top: .875rem;
}

.dialog.warning .dialog-header .dialog_close .icon.dclose::before,
.dialog.warning .dialog-header .dialog_close .icon.dclose::after {
    background-color: #444;
}

.dialog-header .dialog_close .icon.dclose::before {
    right: 2px;
    transform: rotate(45deg);
}

.dialog-header .dialog_close .icon.dclose::after {
    left: 2px;
    transform: rotate(-45deg);
}

.dialog-main,
.dialog.paper-container .dialog-main,
.PC .dialog.paper-container .dialog-main,
.link_lightbox_container.dialog.paper-container .dialog-main,
.PC .link_lightbox_container.dialog.paper-container .dialog-main {
    padding: 1rem;
    min-height: calc(30vh - 2rem);
    max-height: calc(60vh - 2rem);
    overflow-x: auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    background: #fff;
    border-radius: 0 0 .125rem .125rem;
}

/* testS */
.PC .dialog-main,
.PC .link_lightbox_container.dialog.paper-container .dialog-main {

    min-height: 210px !important;

}

/* testE */

.dialog-content {
    margin: 0 0 1.5rem;
}

.dialog-command {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: flex-end;
    flex-direction: column;
}

body.PC .dialog-command {
    flex-direction: row;
}

.dialog-closing-area {
    text-align: center;
    margin-bottom: 1rem;
}

.dialog-command button,
.dialog-closing-area button {
    width: 100%;
}

.dialog-command button[disabled],
.dialog-closing-area button[disabled] {
    background-color: #CCCCCC !important;
    color: #fff !important;
    border-color: #CCCCCC !important;
}

.dialog-command button:not(:last-of-type) {
    margin: 0 0 1rem;
}

body.PC .dialog-command button,
body.PC .dialog-closing-area button {
    width: auto;
    margin: 0;
}

body.PC .dialog-command button:not(:first-of-type) {
    margin-left: 1rem;
}

.dialog.warning .dialog-command button.positive {
    background-color: #FFBC00;
    color: #333;
    border-color: #FFBC00;
}

.dialog.warning .dialog-command button.positive:not([disabled]):hover,
.dialog.warning .dialog-command button.positive:not([disabled]):focus,
.dialog.warning .dialog-command button.positive:not([disabled]):active {
    background-color: #F2A520;
    color: #000000;
    border-color: #FFBC00;
}

_::-webkit-full-page-media, _:future, :root body:not(.PC) .dialog.warning .dialog-command button.positive:not([disabled]):hover,
_::-webkit-full-page-media, _:future, :root body:not(.PC) .dialog.warning .dialog-command button.positive:not([disabled]):active {
    background-color: #F2A520;
    color: #000000;
    border-color: #FFBC00;
}

.scrollfixed{
    overflow: auto;
}

/*badge*/
.badge {
    display: inline-block;
    margin: 0 .5rem;
    padding: .3rem 1rem;
    font-size: 1.25rem;
    font-weight: normal;
    line-height: 1.5;
    text-align: center;
    white-space: nowrap;
    color: #333;
    background-color: rgba(112, 112, 112, 0.1);
}

.PC .badge {
    color: #333;
    background-color: #ebe2c0;
}

button.badge_help,
a.badge_help{
    position: relative;
    display: inline-block;
    min-width: auto;
    padding: 0;
    width: 1.25rem;
    height: 1.25rem;
    white-space: nowrap;
    overflow: hidden;
    color: transparent;
    margin-left: .5rem;
    margin-bottom: 0;
    vertical-align: top;
    margin-top: .125rem;
}

a.badge_help_checkbox {
    margin-top: .625rem;
}

button.badge_help:focus,
a.badge_help:focus {
    outline: none;
}

button.badge_help:focus-visible,
a.badge_help:focus-visible {
    outline: dashed 1px #444444;
    outline-offset: 1px;
}

button.badge_help > img.icon_badge_help,
button.badge_help > img.icon_badge_help_focus,
a.badge_help > img.icon_badge_help,
a.badge_help > img.icon_badge_help_focus {
    position: absolute;
    width: 1.25rem;
    height: 1.25rem;
    left: 0;
    top: 0;
    cursor: pointer;
}

button.badge_help > img.icon_badge_help_focus,
a.badge_help > img.icon_badge_help_focus  {
    display: none;
}

button.badge_help:hover > img.icon_badge_help,
button.badge_help:focus > img.icon_badge_help,
button.badge_help:active > img.icon_badge_help,
a.badge_help:hover > img.icon_badge_help,
a.badge_help:focus > img.icon_badge_help,
a.badge_help:active > img.icon_badge_help {
    display: none;
}

button.badge_help:hover > img.icon_badge_help_focus,
button.badge_help:focus > img.icon_badge_help_focus,
button.badge_help:active > img.icon_badge_help_focus,
a.badge_help:hover > img.icon_badge_help_focus,
a.badge_help:focus > img.icon_badge_help_focus,
a.badge_help:active > img.icon_badge_help_focus  {
    display: inline;
}

button.badge_help.link:before,
a.badge_help.link:before {
    display: none;
}

/* disc-list */
ul.disc-list {
    list-style: none;
}

.message ul.disc-list > li  {
    margin: 0 0 0 0;
}

ul.disc-list > li {
    margin: 0 0 0.5rem 0;
    position: relative;
}

ul.disc-list > li > .icon.marker-disc {
    position: absolute;
    width: .3rem;
    height: .3rem;
    background: #444444 no-repeat center center;
    left: -1.1rem;
    top: .55em;
    border-radius: .15rem;
}

.error ul.disc-list > li > .icon.marker-disc {
    background: #CC173A no-repeat center center;
}

.message ul.disc-list > li > .icon.marker-disc {
    top: .7em;
}

ul.disc-list.small > li:before {
    top: .4rem;
}

.message ul.disc-list > li:before {
    top: .7rem;
}

.error ul.disc-list > li:before {
    background-color: #CC173A;
}

ul.indent_of_annotation_disc-list {
    text-indent: 2rem;
}

/* eyecatch */
ul.eyecatch {
    list-style: none;
}

ul.eyecatch > li {
    position: relative;
}

ul.eyecatch .icon.eyecatch {
    position: absolute;
    width: 1rem;
    height: 1rem;
    background: url(../../img/icon_list_checked.svg) no-repeat center center;
    background-size: 1rem 1rem;
    left: -2rem;
    top: .1rem;
}

/* radio */
ul.radio-list {
    list-style: none;
    padding: 0;
    margin: 0 0 1.5rem 0;
}

ul.radio-list > li {
    position: relative;
    margin-bottom: 0;
}

ul.radio-list li:last-child {
    margin-bottom: 0;
}

ul:not(.toggle).radio-list {
    list-style: none;
    padding: 0;
    margin: 0 0 0 0;
}

.radio-item[type="radio"] {
  filter: alpha(opacity=0);
  -moz-opacity:0;
  opacity:0;
  -webkit-appearance: none;
  appearance: none;
  position: absolute;
}

.radio-item[type="radio"]:focus {
    box-shadow: none;
}

.radio-item[type="radio"] ~ label {
    display: inline-block;
    position: relative;
    margin: 0;
    padding: .5rem 1rem .5rem 1.75rem;
    font-size: 1.125rem;
    text-align: left;
    line-height: 1.6;
    font-weight: normal;
    cursor: pointer;
}

.radio-item[type="radio"] ~ label:before {
    position: absolute;
    content: "";
    top: 11px;
    left: 0.1rem;
    width: 1.25rem;
    height: 1.25rem;
    background: #FFF;
    border: 1px solid #d3ccc2;
    border-radius: 50%;
    box-sizing: border-box;
}

.android .radio-item[type="radio"] ~ label:before {
    top: 13px;
}

.radio-item[type="radio"]:not(:disabled):hover ~ label,
.radio-item[type="radio"]:focus ~ label {
    background-color: #EAFAF2;
}

.android .radio-item[type="radio"]:not(:disabled):hover ~ label,
.android .radio-item[type="radio"]:focus ~ label {
    background-color: #EAFAF2;
}

_::-webkit-full-page-media, _:future, :root body:not(.PC) .radio-item[type="radio"]:not(:disabled):hover ~ label
_::-webkit-full-page-media, _:future, :root body:not(.PC) .radio-item[type="radio"]:not(:disabled):focus ~ label {
    background-color: #EAFAF2;
}

.radio-item[type="radio"]:focus-visible ~ label:before {
    outline: dashed 1px;
    outline-offset: 1px;
}

.radio-item[type="radio"][disabled] ~ label {
    cursor: default;
}

.radio-item[type="radio"][disabled] ~ label:before {
    background: #eee;
}

.radio-item[type="radio"]:checked ~ label:after {
    position: absolute;
    content: "";
    top: 16px;
    transform: translateX(.3rem);
    left: 0.1rem;
    width: .625rem;
    height: .625rem;
    border-radius: 50%;
    background: #177544;
}

.android .radio-item[type="radio"]:checked ~ label:after {
    top: 18px;
}

.radio-item[type="radio"]:checked ~ label:before {
    border: 2px solid #177544;
    background: #fff;
}

.radio-item[type="radio"][disabled]:checked ~ label:after {
    background: #ccc;
}

.radio-item[type="radio"][disabled]:checked ~ label:before {
    border: 2px solid #ccc;
}

/* toggle */
ul.radio-list.toggle {
    display: flex;
    flex-wrap: wrap;
    padding: 0;
}

ul.radio-list.toggle > li {
    margin: 0;
}

.toggle .radio-item[type="radio"] ~ label {
    width: 8rem;
    padding: 1rem .5rem;
    text-align: center;
    line-height: 1;
    background: #fff;
    border: 1px solid #d3ccc2;
    cursor: pointer;
    height: calc(100% - 2rem);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    word-break: break-all;
    box-shadow: 0px 0.25rem 5px rgba(0,0,0,0.2);
}

.toggle .radio-item[type="radio"]:not(:disabled):hover ~ label,
.toggle .radio-item[type="radio"]:focus ~ label {
    background-color: #EAFAF2;
    color: #333;
    border-color: #d3ccc2;
}

.android .toggle .radio-item[type="radio"]:not(:disabled):hover ~ label {
    background-color: #EAFAF2;
    color: #333;
    border-color: #d3ccc2;
}

_::-webkit-full-page-media, _:future, :root body:not(.PC) .toggle .radio-item[type="radio"]:not(:disabled):hover ~ label {
    background-color: #EAFAF2;
    color: #333;
    border-color: #d3ccc2;
}

.toggle .radio-item[type="radio"]:focus-visible ~ label {
    outline: dashed 1px #444444;
}

.toggle .radio-item[type="radio"]:not(:disabled):checked:hover ~ label,
.toggle .radio-item[type="radio"]:not(:disabled):checked:focus ~ label{
    background-color: #135834;
    color: #FFFFFF;
    border-color: #d3ccc2;
}

.android .toggle .radio-item[type="radio"]:not(:disabled):checked:hover ~ label {
    background-color: #135834;
    color: #FFFFFF;
    border-color: #d3ccc2;
}

_::-webkit-full-page-media, _:future, :root body:not(.PC) .toggle .radio-item[type="radio"]:not(:disabled):checked:hover ~ label {
    background-color: #135834;
    color: #FFFFFF;
    border-color: #d3ccc2;
}

.toggle li:first-child .radio-item[type="radio"] ~ label {
    border-radius: 2px 0 0 2px;
    border-right: none;
}

.toggle li:last-child .radio-item[type="radio"] ~ label {
    border-radius: 0 2px 2px 0;
}

.toggle .radio-item[type="radio"][disabled] ~ label {
    background: #eee;
    color: #bbb;
    border: 1px solid #ccc;
    cursor: default;
    box-shadow:none;
}

.toggle .radio-item[type="radio"] ~ label:before {
    display: none;
}

.toggle .radio-item[type="radio"]:checked ~ label:after {
    display: none;
}

.toggle .radio-item[type="radio"]:checked ~ label,
.toggle .radio-item[type="radio"]:checked:active ~ label {
    background: #177544;
    border-color: #177544;
    color: #fff;
    box-shadow:none;
}



.toggle li:last-child .radio-item[type="radio"]:checked ~ label {
    border-left-color: #d3ccc2;
}

.toggle .radio-item[type="radio"][disabled]:checked ~ label {
    background: #ccc;
    border-color: #ccc;
}

/* checkbox */
ul.checkbox-list {
    list-style: none;
    padding: 0;
}

ul.checkbox-list > li {
    position: relative;
    margin-bottom: 0;
}

ul.checkbox-list li:last-child {
    margin-bottom: 0;
}

.checkbox-item[type="checkbox"] {
  filter: alpha(opacity=0);
  -moz-opacity:0;
  opacity:0;
  -webkit-appearance: none;
  appearance: none;
  position: absolute;
}

.checkbox-item[type="checkbox"]:focus {
    box-shadow: none;
}

.checkbox-item[type="checkbox"] ~ label {
    display: inline-block;
    position: relative;
    margin: 0;
    padding: .5rem .75rem .5rem 1.75rem;
    font-size: 1.125rem;
    text-align: left;
    line-height: 1.6;
    font-weight: normal;
    cursor: pointer;
    pointer-events: auto;
}

.checkbox-item[type="checkbox"] ~ label:before {
    position: absolute;
    content: "";
    top: 11px;
    left: 0rem;
    width: 1.25rem;
    height: 1.25rem;
    background: #FFF;
    border: 1px solid #d3ccc2;
    border-radius: 2px;
    box-sizing: border-box;
}

.android .checkbox-item[type="checkbox"] ~ label:before {
    top: 13px;
}

.checkbox-item[type="checkbox"][disabled] ~ label {
    cursor: default;
}

.checkbox-item[type="checkbox"][disabled] ~ label:before {
    background: #eee;
    border: 1px solid #ccc;
}

.checkbox-item[type="checkbox"]:checked ~ label:after {
    position: absolute;
    content: "";
    box-sizing: border-box;
    display: block;
    left: 0.25rem;
    top: 15px;
    width: 0.75rem;
    height: 0.5rem;
    border-left: 3px solid #FFF;
    border-bottom: 3px solid #FFF;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);;
}

.android .checkbox-item[type="checkbox"]:checked ~ label:after {
    top: 18px;
}

.checkbox-item[type="checkbox"]:checked ~ label:before {
    border: 1px solid #177544;
    background: #177544;
}

.checkbox-item[type="checkbox"][disabled]:checked ~ label:after {
    background: #ccc;
}

.checkbox-item[type="checkbox"][disabled]:checked ~ label:before {
    border: 1px solid #ccc;
    background: #ccc;
}

/** hover時背景色追加*/
.checkbox-item[type="checkbox"]:not(:disabled):hover ~ label,
.checkbox-item[type="checkbox"]:focus ~ label {
    background-color: #EAFAF2;
}

.android .checkbox-item[type="checkbox"]:not(:disabled):hover ~ label {
    background-color: #EAFAF2;
}

_::-webkit-full-page-media, _:future, :root body:not(.PC) .checkbox-item[type="checkbox"]:not(:disabled):hover ~ label {
    background-color: #EAFAF2;
}

.checkbox-item[type="checkbox"]:focus-visible ~ label:before {
    outline: dashed 1px;
    outline-offset: 1px;
}

.toggle li:last-child .radio-item[type="radio"]:checked ~ label {
    border-left-color: #d3ccc2;
}

.toggle .radio-item[type="radio"][disabled]:checked ~ label {
    background: #ccc;
    border-color: #ccc;
}

/* paper */
.PC .paper-group {
    align-items: flex-start;
}

.paper-group .icon {
    background-size: 1.25rem 1.4375rem;
    width: 1.25rem;
    height: 1.4375rem;
}

.PC .dialog.paper-container.show {
    display: block;
}

.PC .dialog.paper-container::before {
    display: none;
}

.PC .f_inner_flex_pc.col_w_50_pc .paper-container{
    width: calc(50% - 1rem)!important;
}

.mihon-btn {
    position: relative;
    min-width: auto;
    padding: .5rem 1rem 1.43rem 1rem;
    margin-bottom: 0;
    background-color: rgba(65, 65, 65, 0.8);
}

.mihon-btn:hover,
.mihon-btn:focus,
.mihon-btn:active {
    background-color: rgba(0, 0, 0, 0.8);
}

.mihon-btn:disabled {
    background-color: rgba(199, 199, 199, 0.8);
}

.mihon-btn-label {
    position: absolute;
    bottom: .1rem;
    left: 50%;
    transform: translateX(-50%);
    font-size: .875rem;
    color: #fafafa;
    word-break: keep-all;
}

.PC .paper-container .dialog-header {
    background: rgba(18,18,18,0.6);
    color: #ffffff;
    font-weight: bold;
    padding: 0.8rem;
    line-height: 1.8;
    box-shadow: 5px 5px 5px 0px rgba(0,0,0,0.08);
    position: relative;
    text-align: left;
    border-radius: 0;
}

.PC .paper-container .dialog-header > p {
    margin-bottom: 0;
    font-weight: normal;
    font-size: 1rem;
}

.paper-container .dialog-header .dialog_close,
.PC .paper-container .dialog-header .dialog_close {
    position: absolute;
    top: calc(50% - .875rem);
    right: .5rem;
    width: 1.75rem;
    height: 1.75rem;
    cursor: pointer;
}

.paper-container .dialog-main {
    position: relative;
}

.paper-container .dialog-main .dialog-content {
    margin: 0;
}

.PC .paper-container .dialog-main .dialog-content {
    width: 100%;
}

.paper-img {
    width: auto;
/*    max-width: 100%; */
    height: auto;
    margin: 0 auto 2rem;
}

.paper-img.show {
    display: block;
    width: 100%;
}

.paper-img.show_autoSize {
    display: block;
    width: auto;
    max-width: 100%;
}

.paper-img.actualSize {
    width: 140%!important;
    height: auto!important;
    max-height: none!important;
}

.paper-command {
    text-align: right;
    position: sticky;
    bottom: 0;
    left: 0;
    z-index: 2000;
}

.paper-command button {
    min-width: auto;
    padding: .125rem;
    margin-right: .625rem;
    margin-bottom: 0;
    background-color: rgba(65, 65, 65, 0.8);
}

.paper-command button:hover,
.paper-command button:focus,
.paper-command button:active {
    background-color: rgba(0, 0, 0, 0.8);
}

.paper-command button:disabled {
    background-color: rgba(199, 199, 199, 0.8);
}

.paper-command .paper_zoomIn .icon.plus,
.paper-command .paper_zoomOut .icon.minus {
    position: relative;
    width: 1.75rem;
    height: 1.75rem;
}

.paper-command .paper_zoomIn .icon.plus::before,
.paper-command .paper_zoomIn .icon.plus::after,
.paper-command .paper_zoomOut .icon.minus::before {
    position: absolute;
    content: "";
    width: 1.25rem;
    height: .125rem;
    background: #fff;
    vertical-align: top;
    top: .875rem;
}

.paper-command .paper_zoomIn .icon.plus::before,
.paper-command .paper_zoomOut .icon.minus::before {
    right: .25rem;
}

.paper-command .paper_zoomIn .icon.plus::after {
    right: .25rem;
    transform: rotate(90deg);
}

.fix-btn-area {
    position: relative;
}

.fix-btn-wrapper {
    text-align: right;
    position: relative;
    height: 5.5rem;
}

.fix-btn {
    position: absolute;
    top: 0;
    bottom: auto;
    right: 1rem;
    z-index: 1000;
}

.fix-btn.is-fixed {
    position: fixed;
    top: auto;
    bottom: 20px;
    right: 2rem;
    z-index: 1000;
}

.dialog.paper-container::before,
.PC .dialog.paper-container::before,
.link_lightbox_container.dialog.paper-container::before,
.PC .link_lightbox_container.dialog.paper-container::before {
    display: block;
}

.dialog.paper-container .dialog-header .dialog_close,
.PC .dialog.paper-container .dialog-header .dialog_close,
.link_lightbox_container.dialog.paper-container .dialog-header .dialog_close,
.PC .link_lightbox_container.dialog.paper-container .dialog-header .dialog_close {
    display: inline;
}

.link_lightbox_container.dialog.paper-container .dialog-main,
.PC .link_lightbox_container.dialog.paper-container .dialog-main,
.help_link.dialog .dialog-main,
.PC .help_link.dialog .dialog-main {
    position: relative;
    width: auto;
}

.PC .link_lightbox_container.dialog.paper-container .paper-img.show {
    width: 80%;
}

.PC .link_lightbox_container.dialog.paper-container.paper-container-large {
    width: 900px !important;
}
/** strong contents*/
.sub{
    background: #FAF2D7;
    margin: 0 -1rem 1rem -1rem;
    padding:  1rem;
}

.PC .sub {
    background-color: #FAF2D7;
    margin-left: 0;
    margin-right: 0;
}

.sub > *:last-child {
    margin-bottom: 0;
}

/* visibility */
.visuallyhidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    -webkit-clip-path: inset(0px 0px 99.9% 99.9%);
    clip-path: inset(0px 0px 99.9% 99.9%);
    border: 0;
}


/*spinner*/
.loading_spinner{
    display: inline-block;
    width: 2rem;
    height: 2rem;
    border: 0.25em solid #96C4AC;
    border-right-color: transparent;
    border-radius: 50%;
    -webkit-animation: spinner-rotate .75s linear infinite;
    animation: spinner-rotate .75s linear infinite;
}
@keyframes spinner-rotate {
  to { transform: rotate(360deg); }
}


/* form */
input,
select,
textarea {
    color: #333;
    font-size: 1.125rem;
}

input.textbox,
select.select {
    height: 3.82rem;
}

body.PC input.textbox,
body.PC select.select {
    height: 2.82rem;
}

/* textbox */
input.textbox {
    border: 1px solid #d3ccc2;
    border-radius: .125rem;
    padding: 1rem 0.5rem;
    box-sizing: border-box;
    width: 100%;
    /* ios */
    background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#fff));
    background-image: -webkit-linear-gradient(left, #fff, #fff);
}

.PC input.textbox {
    padding: 0.5rem 0.5rem;
}

input[type=text]::-ms-clear {
    display: none;
}
input[type=password]::-ms-reveal {
    display: none;
}

input.textbox.done {
    box-shadow: none;
}

input.textbox:focus {
    border: #177544 1px solid;
    box-shadow: inset 0 0 0 3px #177544;
    outline: none;
}

input.textbox.error {
    border: 1px solid #CC173A;
    box-shadow: inset 0 0 0 2px #CC173A;
    background: #ffeef4;
    /* ios */
    background-image: -webkit-gradient(linear, left top, left bottom, from(#ffeef4), to(#ffeef4));
    background-image: -webkit-linear-gradient(left, #ffeef4, #ffeef4);
}

input.textbox.error:focus {
    box-shadow: inset 0 0 0 2px #CC173A;
}

input.textbox::-webkit-input-placeholder {
    padding-top: 4px;
}

input.textbox[disabled] {
    border: 1px solid #ccc;
    background: #eee;
    opacity: 1;
    /* ios */
    background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#eee));
    background-image: -webkit-linear-gradient(left, #eee, #eee);
}


/* textarea */
textarea {
    resize: none;
    width: 100%;
    box-sizing: border-box;
    height: 10rem;
    padding: 1rem 0.5rem;
    line-height: 1.4;
    border: 1px solid #d3ccc2;
    border-radius: .125rem;
    /* ios */
    background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#fff));
    background-image: -webkit-linear-gradient(left, #fff, #fff);
}

textarea.done {
    box-shadow: none;
}

textarea:focus {
    border: #177544 1px solid;
    box-shadow: inset 0 0 0 3px #177544;
    outline: none;
}

textarea.error {
    border: 1px solid #CC173A;
    box-shadow: inset 0 0 0 2px #CC173A;
    background: #ffeef4;
    /* ios */
    background-image: -webkit-gradient(linear, left top, left bottom, from(#ffeef4), to(#ffeef4));
    background-image: -webkit-linear-gradient(left, #ffeef4, #ffeef4);
}

textarea.error:focus {
    box-shadow: inset 0 0 0 2px #CC173A;
}

textarea[disabled] {
        border: 1px solid #ccc;
        background: #eee;
        /* ios */
        background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#eee));
        background-image: -webkit-linear-gradient(left, #eee, #eee);
}


/*option*/
option {
    color: #333;
}

/*file*/
input[type="file"] {
    max-width: 100%;
}

/* form-group */
.form-group {
    margin: 0 0 calc(1rem - 1px) 0;
    padding-bottom: 1px;
    width: 100%;
}

.form-group > *{
    margin-bottom: .25rem;
}

.form-group > div:not(.form-element) > *:not(.form-element){
    margin-bottom: .5rem;
}

body.PC .form-group > div > .pc-form-horizontal{
    margin-bottom: 1rem!important;
}

body.PC .form-group > div > .mynumber-input-group.pc-form-horizontal{
    margin-bottom: 0!important;
}

.form-group > p.link{
    margin-bottom: 1rem;
}

.form-label {
    display: block;
    margin-bottom: .25rem;
}
.form-note {
    display: block;
    font-size: .75rem;
    line-height: 1.6;
    position: relative;
    margin: .25rem 0;
}

.indent-note {
    padding-left:2em;
    text-indent:-2em;
}

.form-error-message {
    display: block;
    margin-bottom: .25rem;
    font-size: 1rem;
}

/*form 横並び*/
.pc-form-horizontal > *,
.sp-form-horizontal > *{
    margin: 0 0 0.5rem 0;   
}

body.PC .form-element {
    max-width: 100%;    
    margin-bottom: 1.5rem;
}

body.PC .pc-form-horizontal{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    position: relative;
    width: calc(100% + 0.5rem);
    margin-top:-0.25rem; 
    margin-left:-0.25rem; 
    margin-right:-0.25rem; 
    margin-bottom: 1rem;    
}

body.PC table:not(.table) .pc-form-horizontal{
    margin-bottom: 1rem!important;    
}

body.PC .pc-form-horizontal > *{
    margin: 0.25rem 0.25rem 0.5rem 0.25rem;
    flex: 1;
}

body.PC .sp-form-horizontal:not(.pc-form-horizontal) > * {
    margin-bottom: 0.5rem;   
}

body:not(.PC) .sp-form-horizontal{
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    position: relative;
    width: calc(100% + 0.5rem);
    margin-left:-0.25rem; 
    margin-right:-0.25rem; 
    margin-bottom: 0.5rem;    
}

body:not(.PC) .sp-form-horizontal > *{
    flex: 1;
    margin: 0 0.25rem 1rem 0.25rem;
}


body.PC .pc-form-horizontal > .pc-form-horizontal,
body:not(.PC) .sp-form-horizontal > .sp-form-horizontal{
    margin-left:0rem; 
    margin-right:0rem; 
    width: 100%;
}

span.horizontal-text,
span.horizontal-text-flex-end{
    display: block;
    white-space: nowrap;    
}
body.PC .pc-form-horizontal > span.horizontal-text,
body:not(.PC) .sp-form-horizontal > span.horizontal-text{
    flex: 0 1 auto;
    align-items: center;
}

body.PC .pc-form-horizontal > span.horizontal-text-flex-end,
body:not(.PC) .sp-form-horizontal > span.horizontal-text-flex-end{
    flex: 0 1 auto;
    align-items: center;
    align-self: flex-end;
}



/* form-element (中に入れたフォーム要素の幅など)*/
.form-element {
    max-width: 100%;    
    margin-bottom: 1.5rem;
}


/* selectbox */
.select-container {
    position: relative;
    display: inline-block;
    overflow: hidden;
    width: 100%;
    padding: 0;
    vertical-align: middle;
    background: #fff;
}

.icon_selectbox_arrow {
    position: absolute;
    top: 0;
    right: 10px;
    bottom: 0;
    margin: auto;
    z-index:2;
}
select.select {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    padding: 1rem 1.5rem 1rem .5rem;
    background-color: transparent;
    background-image: none;
    -webkit-appearance: none;
    appearance: none;
    border: 1px solid #d3ccc2;
    border-radius: .125rem;
    line-height: 1.2;
}


body.PC .select {
    padding: 0.5rem 1.5rem 0.5rem 0.5rem;
}

select.select::-ms-expand {
    display: none;
}

select.select:not(.done) {
    color: #757575;
}

select.select:not(.done)[disabled] {
    color: #dadada;
}

select.select.done{
    box-shadow: none;
    color: #333;
}

select.select:focus {
    border: #177544 1px solid;
    box-shadow: inset 0 0 0 3px #177544;
    outline: none;
}

select.select.error {
    border: #CC173A 1px solid;
    box-shadow: inset 0 0 0 2px #CC173A;
    background-color: #ffeef4;
}

select.select.error:focus {
    box-shadow: inset 0 0 0 2px #CC173A;
}

select.select[disabled] {
    background-color: #eee;
}

/*password*/
.password {
    position: relative;
    width: 100%;
}

.password > *{
    margin: 0;
}

.password > input.textbox{
    width: 100%!important;
    padding-right:2.5rem!important;
}

button.password-display {
    position: absolute;
    vertical-align: top;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 2.25rem;
    height: 3.8125rem;
    padding: 0;
    margin: 0!important;
    min-width: 0;
    background-color: transparent!important;
}

.form-element .password button.password-display{
    right: 0.25rem;
}
body.PC button.password-display {
    height: 2.8125rem;
}

button.password-display svg {
    width: 1.375rem;
    vertical-align: middle;
    margin-top: 2px;
    fill: #757575;
}

input.textbox:focus + button.password-display svg {
    fill: #177544;
}

input.textbox.error + button.password-display svg {
    fill: #CC173A;
}

input.textbox[disabled] + button.password-display svg {
    fill: #ccc;
}

button.password-display svg.close-eye {
    display: none;
}

button.password-display.is-showed svg.open-eye {
    display: none;
}

button.password-display.is-showed svg.close-eye {
    display: inline-block;
}





/* palceholder */
input::placeholder {
    color: #757575;
}

input::-webkit-input-placeholder,
input::-moz-placeholder {
    color: #757575;
}

input:-ms-input-placeholder {
    color: #757575;
}

input[disabled]::placeholder {
    color: #dadada;
}

input[disabled]::-webkit-input-placeholder,
input[disabled]::-moz-placeholder {
    color: #dadada;
}

input[disabled]:-ms-input-placeholder {
    color: #dadada;
}

:focus::-webkit-input-placeholder {
    color: transparent;
}

:focus:-moz-placeholder {
    color: transparent;
}

:focus::-moz-placeholder {
    color: transparent;
}

/*幅指定 PC版*/
body.PC .w-5 {width:5%!important;}
body.PC .w-10 {width:10%!important;}
body.PC .w-15 {width:15%!important;}
body.PC .w-20 {width:20%!important;}
body.PC .w-25 {width:25%!important;}
body.PC .w-30 {width:30%!important;}
body.PC .w-35 {width:35%!important;}
body.PC .w-40 {width:40%!important;}
body.PC .w-45 {width:45%!important;}
body.PC .w-50 {width:50%!important;}
body.PC .w-55 {width:55%!important;}
body.PC .w-60 {width:60%!important;}
body.PC .w-65 {width:65%!important;}
body.PC .w-70 {width:70%!important;}
body.PC .w-75 {width:75%!important;}
body.PC .w-80 {width:80%!important;}
body.PC .w-85 {width:85%!important;}
body.PC .w-90 {width:90%!important;}
body.PC .w-95 {width:95%!important;}
body.PC .w-100 {width: 100%!important;}

body.PC .pc-form-horizontal .w-5 {width:calc(5% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-10 {width:calc(10% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-15 {width:calc(15% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-20 {width:calc(20% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-25 {width:calc(25% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-30 {width:calc(30% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-35 {width:calc(35% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-40 {width:calc(40% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-45 {width:calc(45% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-50 {width:calc(50% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-55 {width:calc(55% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-60 {width:calc(60% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-65 {width:calc(65% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-70 {width:calc(70% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-75 {width:calc(75% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-80 {width:calc(80% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-85 {width:calc(85% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-90 {width:calc(90% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-95 {width:calc(95% - 0.5rem)!important; flex: 0 1 auto;}
body.PC .pc-form-horizontal .w-100 {width:calc( 100% - 0.5rem)!important; flex: 0 1 auto;}


/*幅指定 SP版*/
body:not(.PC) .sp-w-5 {width:5%!important;}
body:not(.PC) .sp-w-10 {width:10%!important;}
body:not(.PC) .sp-w-15 {width:15%!important;}
body:not(.PC) .sp-w-20 {width:20%!important;}
body:not(.PC) .sp-w-25 {width:25%!important;}
body:not(.PC) .sp-w-30 {width:30%!important;}
body:not(.PC) .sp-w-35 {width:35%!important;}
body:not(.PC) .sp-w-40 {width:40%!important;}
body:not(.PC) .sp-w-45 {width:45%!important;}
body:not(.PC) .sp-w-50 {width:50%!important;}
body:not(.PC) .sp-w-53 {width:53%!important;}
body:not(.PC) .sp-w-55 {width:55%!important;}
body:not(.PC) .sp-w-60 {width:60%!important;}
body:not(.PC) .sp-w-65 {width:65%!important;}
body:not(.PC) .sp-w-70 {width:70%!important;}
body:not(.PC) .sp-w-75 {width:75%!important;}
body:not(.PC) .sp-w-80 {width:80%!important;}
body:not(.PC) .sp-w-85 {width:85%!important;}
body:not(.PC) .sp-w-90 {width:90%!important;}
body:not(.PC) .sp-w-95 {width:95%!important;}
body:not(.PC) .sp-w-100 {width: 100%!important;}

body:not(.PC) .sp-form-horizontal .sp-w-5 {width:calc(5% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-10 {width:calc(10% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-15 {width:calc(15% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-20 {width:calc(20% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-25 {width:calc(25% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-30 {width:calc(30% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-35 {width:calc(35% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-40 {width:calc(40% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-45 {width:calc(45% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-50 {width:calc(50% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-53 {width:calc(53% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-55 {width:calc(55% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-60 {width:calc(60% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-65 {width:calc(65% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-70 {width:calc(70% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-75 {width:calc(75% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-80 {width:calc(80% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-85 {width:calc(85% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-90 {width:calc(90% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-95 {width:calc(95% - 0.5rem)!important; flex: 0 1 auto;}
body:not(.PC) .sp-form-horizontal .sp-w-100 {width:calc(100% - 0.5rem)!important; flex: 0 1 auto;}


/*margin*/
.mt-0{margin-top: 0rem!important;}
.mt-1{margin-top: 0.25rem!important;}
.mt-2{margin-top: 0.5rem!important;}
.mt-3{margin-top: 0.75rem!important;}
.mt-4{margin-top: 1rem!important;}
.mt-5{margin-top: 1.25rem!important;}
.mt-6{margin-top: 1.5rem!important;}
.mt-7{margin-top: 1.75rem!important;}
.mt-8{margin-top: 2rem!important;}
.mt-9{margin-top: 2.25rem!important;}
.mt-10{margin-top: 2.5rem!important;}
/* R6 99 AS1 */
.mt-11{margin-top: -0.5rem!important;}
/* R6 99 AE */

.ml-0{margin-left: 0rem!important;}
.ml-1{margin-left: 0.25rem!important;}
.ml-2{margin-left: 0.5rem!important;}
.ml-3{margin-left: 0.75rem!important;}
.ml-4{margin-left: 1rem!important;}
.ml-5{margin-left: 1.25rem!important;}
.ml-6{margin-left: 1.5rem!important;}
.ml-7{margin-left: 1.75rem!important;}
.ml-8{margin-left: 2rem!important;}
.ml-9{margin-left: 2.25rem!important;}
.ml-10{margin-left: 2.5rem!important;}

.mr-0{margin-right: 0rem!important;}
.mr-1{margin-right: 0.25rem!important;}
.mr-2{margin-right: 0.5rem!important;}
.mr-3{margin-right: 0.75rem!important;}
.mr-4{margin-right: 1rem!important;}
.mr-5{margin-right: 1.25rem!important;}
.mr-6{margin-right: 1.5rem!important;}
.mr-7{margin-right: 1.75rem!important;}
.mr-8{margin-right: 2rem!important;}
.mr-9{margin-right: 2.25rem!important;}
.mr-10{margin-right: 2.5rem!important;}

.mb-0{margin-bottom: 0rem!important;}
.mb-1{margin-bottom: 0.25rem!important;}
.mb-2{margin-bottom: 0.5rem!important;}
.mb-3{margin-bottom: 0.75rem!important;}
.mb-4{margin-bottom: 1rem!important;}
.mb-5{margin-bottom: 1.25rem!important;}
.mb-6{margin-bottom: 1.5rem!important;}
.mb-7{margin-bottom: 1.75rem!important;}
.mb-8{margin-bottom: 2rem!important;}
.mb-9{margin-bottom: 2.25rem!important;}
.mb-10{margin-bottom: 2.5rem!important;}


body.PC .pc-mt-0{margin-top: 0rem!important;}
body.PC .pc-mt-1{margin-top: 0.25rem!important;}
body.PC .pc-mt-2{margin-top: 0.5rem!important;}
body.PC .pc-mt-3{margin-top: 0.75rem!important;}
body.PC .pc-mt-4{margin-top: 1rem!important;}
body.PC .pc-mt-5{margin-top: 1.25rem!important;}
body.PC .pc-mt-6{margin-top: 1.5rem!important;}
body.PC .pc-mt-7{margin-top: 1.75rem!important;}
body.PC .pc-mt-8{margin-top: 2rem!important;}
body.PC .pc-mt-9{margin-top: 2.25rem!important;}
body.PC .pc-mt-10{margin-top: 2.5rem!important;}

body.PC .pc-ml-0{margin-left: 0rem!important;}
body.PC .pc-ml-1{margin-left: 0.25rem!important;}
body.PC .pc-ml-2{margin-left: 0.5rem!important;}
body.PC .pc-ml-3{margin-left: 0.75rem!important;}
body.PC .pc-ml-4{margin-left: 1rem!important;}
body.PC .pc-ml-5{margin-left: 1.25rem!important;}
body.PC .pc-ml-6{margin-left: 1.5rem!important;}
body.PC .pc-ml-7{margin-left: 1.75rem!important;}
body.PC .pc-ml-8{margin-left: 2rem!important;}
body.PC .pc-ml-9{margin-left: 2.25rem!important;}
body.PC .pc-ml-10{margin-left: 2.5rem!important;}

body.PC .pc-mr-0{margin-right: 0rem!important;}
body.PC .pc-mr-1{margin-right: 0.25rem!important;}
body.PC .pc-mr-2{margin-right: 0.5rem!important;}
body.PC .pc-mr-3{margin-right: 0.75rem!important;}
body.PC .pc-mr-4{margin-right: 1rem!important;}
body.PC .pc-mr-5{margin-right: 1.25rem!important;}
body.PC .pc-mr-6{margin-right: 1.5rem!important;}
body.PC .pc-mr-7{margin-right: 1.75rem!important;}
body.PC .pc-mr-8{margin-right: 2rem!important;}
body.PC .pc-mr-9{margin-right: 2.25rem!important;}
body.PC .pc-mr-10{margin-right: 2.5rem!important;}

body.PC .pc-mb-0{margin-bottom: 0rem!important;}
body.PC .pc-mb-1{margin-bottom: 0.25rem!important;}
body.PC .pc-mb-2{margin-bottom: 0.5rem!important;}
body.PC .pc-mb-3{margin-bottom: 0.75rem!important;}
body.PC .pc-mb-4{margin-bottom: 1rem!important;}
body.PC .pc-mb-5{margin-bottom: 1.25rem!important;}
body.PC .pc-mb-6{margin-bottom: 1.5rem!important;}
body.PC .pc-mb-7{margin-bottom: 1.75rem!important;}
body.PC .pc-mb-8{margin-bottom: 2rem!important;}
body.PC .pc-mb-9{margin-bottom: 2.25rem!important;}
body.PC .pc-mb-10{margin-bottom: 2.5rem!important;}

body:not(.PC) .sp-mt-0{margin-top: 0rem!important;}
body:not(.PC) .sp-mt-1{margin-top: 0.25rem!important;}
body:not(.PC) .sp-mt-2{margin-top: 0.5rem!important;}
body:not(.PC) .sp-mt-3{margin-top: 0.75rem!important;}
body:not(.PC) .sp-mt-4{margin-top: 1rem!important;}
body:not(.PC) .sp-mt-5{margin-top: 1.25rem!important;}
body:not(.PC) .sp-mt-6{margin-top: 1.5rem!important;}
body:not(.PC) .sp-mt-7{margin-top: 1.75rem!important;}
body:not(.PC) .sp-mt-8{margin-top: 2rem!important;}
body:not(.PC) .sp-mt-9{margin-top: 2.25rem!important;}
body:not(.PC) .sp-mt-10{margin-top: 2.5rem!important;}

body:not(.PC) .sp-mt-13{margin-top: 3.25rem!important;}

body:not(.PC) .sp-ml-0{margin-left: 0rem!important;}
body:not(.PC) .sp-ml-1{margin-left: 0.25rem!important;}
body:not(.PC) .sp-ml-2{margin-left: 0.5rem!important;}
body:not(.PC) .sp-ml-3{margin-left: 0.75rem!important;}
body:not(.PC) .sp-ml-4{margin-left: 1rem!important;}
body:not(.PC) .sp-ml-5{margin-left: 1.25rem!important;}
body:not(.PC) .sp-ml-6{margin-left: 1.5rem!important;}
body:not(.PC) .sp-ml-7{margin-left: 1.75rem!important;}
body:not(.PC) .sp-ml-8{margin-left: 2rem!important;}
body:not(.PC) .sp-ml-9{margin-left: 2.25rem!important;}
body:not(.PC) .sp-ml-10{margin-left: 2.5rem!important;}

body:not(.PC) .sp-mr-0{margin-right: 0rem!important;}
body:not(.PC) .sp-mr-1{margin-right: 0.25rem!important;}
body:not(.PC) .sp-mr-2{margin-right: 0.5rem!important;}
body:not(.PC) .sp-mr-3{margin-right: 0.75rem!important;}
body:not(.PC) .sp-mr-4{margin-right: 1rem!important;}
body:not(.PC) .sp-mr-5{margin-right: 1.25rem!important;}
body:not(.PC) .sp-mr-6{margin-right: 1.5rem!important;}
body:not(.PC) .sp-mr-7{margin-right: 1.75rem!important;}
body:not(.PC) .sp-mr-8{margin-right: 2rem!important;}
body:not(.PC) .sp-mr-9{margin-right: 2.25rem!important;}
body:not(.PC) .sp-mr-10{margin-right: 2.5rem!important;}

body:not(.PC) .sp-mb-0{margin-bottom: 0rem!important;}
body:not(.PC) .sp-mb-1{margin-bottom: 0.25rem!important;}
body:not(.PC) .sp-mb-2{margin-bottom: 0.5rem!important;}
body:not(.PC) .sp-mb-3{margin-bottom: 0.75rem!important;}
body:not(.PC) .sp-mb-4{margin-bottom: 1rem!important;}
body:not(.PC) .sp-mb-5{margin-bottom: 1.25rem!important;}
body:not(.PC) .sp-mb-6{margin-bottom: 1.5rem!important;}
body:not(.PC) .sp-mb-7{margin-bottom: 1.75rem!important;}
body:not(.PC) .sp-mb-8{margin-bottom: 2rem!important;}
body:not(.PC) .sp-mb-9{margin-bottom: 2.25rem!important;}
body:not(.PC) .sp-mb-10{margin-bottom: 2.5rem!important;}

body:not(.PC) .sp-mb-13{margin-bottom: 3.25rem!important;}

/*input幅 全角*/
body.PC .form-element.textbox-textlength-1{ width:calc( 1.125rem * 1 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-2{ width:calc( 1.125rem * 2 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-3{ width:calc( 1.125rem * 3 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-4{ width:calc( 1.125rem * 4 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-5{ width:calc( 1.125rem * 5 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-6{ width:calc( 1.125rem * 6 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-7{ width:calc( 1.125rem * 7 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-8{ width:calc( 1.125rem * 8 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-9{ width:calc( 1.125rem * 9 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-10{ width:calc( 1.125rem * 10 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-11{ width:calc( 1.125rem * 11 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-12{ width:calc( 1.125rem * 12 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-13{ width:calc( 1.125rem * 13 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-14{ width:calc( 1.125rem * 14 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-15{ width:calc( 1.125rem * 15 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-16{ width:calc( 1.125rem * 16 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-17{ width:calc( 1.125rem * 17 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-18{ width:calc( 1.125rem * 18 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-19{ width:calc( 1.125rem * 19 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-20{ width:calc( 1.125rem * 20 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-21{ width:calc( 1.125rem * 21 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-22{ width:calc( 1.125rem * 22 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-23{ width:calc( 1.125rem * 23 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-24{ width:calc( 1.125rem * 24 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-25{ width:calc( 1.125rem * 25 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-26{ width:calc( 1.125rem * 26 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-27{ width:calc( 1.125rem * 27 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-28{ width:calc( 1.125rem * 28 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-29{ width:calc( 1.125rem * 29 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-30{ width:calc( 1.125rem * 30 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-31{ width:calc( 1.125rem * 31 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-32{ width:calc( 1.125rem * 32 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-33{ width:calc( 1.125rem * 33 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-34{ width:calc( 1.125rem * 34 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-35{ width:calc( 1.125rem * 35 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-36{ width:calc( 1.125rem * 36 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-37{ width:calc( 1.125rem * 37 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-38{ width:calc( 1.125rem * 38 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-39{ width:calc( 1.125rem * 39 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-40{ width:calc( 1.125rem * 40 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-41{ width:calc( 1.125rem * 41 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-42{ width:calc( 1.125rem * 42 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-43{ width:calc( 1.125rem * 43 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-44{ width:calc( 1.125rem * 44 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-45{ width:calc( 1.125rem * 45 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-46{ width:calc( 1.125rem * 46 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-47{ width:calc( 1.125rem * 47 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-48{ width:calc( 1.125rem * 48 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-49{ width:calc( 1.125rem * 49 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-50{ width:calc( 1.125rem * 50 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-51{ width:calc( 1.125rem * 51 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-52{ width:calc( 1.125rem * 52 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-53{ width:calc( 1.125rem * 53 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-54{ width:calc( 1.125rem * 54 + 1rem + 2px)!important; flex: 0 1 auto;}
body.PC .form-element.textbox-textlength-55{ width:calc( 1.125rem * 55 + 1rem + 2px)!important; flex: 0 1 auto;}

/*input幅 半角指定（幅はJS側で指定しています）*/
body.PC .form-element.textbox-textlength-1-number,
body.PC .form-element.textbox-textlength-2-number,
body.PC .form-element.textbox-textlength-3-number,
body.PC .form-element.textbox-textlength-4-number,
body.PC .form-element.textbox-textlength-5-number,
body.PC .form-element.textbox-textlength-6-number,
body.PC .form-element.textbox-textlength-7-number,
body.PC .form-element.textbox-textlength-8-number,
body.PC .form-element.textbox-textlength-9-number,
body.PC .form-element.textbox-textlength-10-number,
body.PC .form-element.textbox-textlength-11-number,
body.PC .form-element.textbox-textlength-12-number,
body.PC .form-element.textbox-textlength-13-number,
body.PC .form-element.textbox-textlength-14-number,
body.PC .form-element.textbox-textlength-15-number,
body.PC .form-element.textbox-textlength-16-number,
body.PC .form-element.textbox-textlength-17-number,
body.PC .form-element.textbox-textlength-18-number,
body.PC .form-element.textbox-textlength-19-number,
body.PC .form-element.textbox-textlength-20-number,
body.PC .form-element.textbox-textlength-21-number,
body.PC .form-element.textbox-textlength-22-number,
body.PC .form-element.textbox-textlength-23-number,
body.PC .form-element.textbox-textlength-24-number,
body.PC .form-element.textbox-textlength-25-number,
body.PC .form-element.textbox-textlength-26-number,
body.PC .form-element.textbox-textlength-27-number,
body.PC .form-element.textbox-textlength-28-number,
body.PC .form-element.textbox-textlength-29-number,
body.PC .form-element.textbox-textlength-30-number,
body.PC .form-element.textbox-textlength-31-number,
body.PC .form-element.textbox-textlength-32-number,
body.PC .form-element.textbox-textlength-33-number,
body.PC .form-element.textbox-textlength-34-number,
body.PC .form-element.textbox-textlength-35-number,
body.PC .form-element.textbox-textlength-36-number,
body.PC .form-element.textbox-textlength-37-number,
body.PC .form-element.textbox-textlength-38-number,
body.PC .form-element.textbox-textlength-39-number,
body.PC .form-element.textbox-textlength-40-number,
body.PC .form-element.textbox-textlength-41-number,
body.PC .form-element.textbox-textlength-42-number,
body.PC .form-element.textbox-textlength-43-number,
body.PC .form-element.textbox-textlength-44-number,
body.PC .form-element.textbox-textlength-45-number,
body.PC .form-element.textbox-textlength-46-number,
body.PC .form-element.textbox-textlength-47-number,
body.PC .form-element.textbox-textlength-48-number,
body.PC .form-element.textbox-textlength-49-number,
body.PC .form-element.textbox-textlength-50-number,
body.PC .form-element.textbox-textlength-51-number,
body.PC .form-element.textbox-textlength-52-number,
body.PC .form-element.textbox-textlength-53-number,
body.PC .form-element.textbox-textlength-54-number,
body.PC .form-element.textbox-textlength-55-number,
body.PC .form-element.textbox-textlength-56-number,
body.PC .form-element.textbox-textlength-57-number,
body.PC .form-element.textbox-textlength-58-number,
body.PC .form-element.textbox-textlength-59-number,
body.PC .form-element.textbox-textlength-60-number,
body.PC .form-element.textbox-textlength-61-number,
body.PC .form-element.textbox-textlength-62-number,
body.PC .form-element.textbox-textlength-63-number,
body.PC .form-element.textbox-textlength-64-number,
body.PC .form-element.textbox-textlength-65-number,
body.PC .form-element.textbox-textlength-66-number,
body.PC .form-element.textbox-textlength-67-number,
body.PC .form-element.textbox-textlength-68-number,
body.PC .form-element.textbox-textlength-69-number,
body.PC .form-element.textbox-textlength-70-number,
body.PC .form-element.textbox-textlength-71-number,
body.PC .form-element.textbox-textlength-72-number,
body.PC .form-element.textbox-textlength-73-number,
body.PC .form-element.textbox-textlength-74-number,
body.PC .form-element.textbox-textlength-75-number,
body.PC .form-element.textbox-textlength-76-number,
body.PC .form-element.textbox-textlength-77-number,
body.PC .form-element.textbox-textlength-78-number,
body.PC .form-element.textbox-textlength-79-number,
body.PC .form-element.textbox-textlength-80-number,
body.PC .form-element.textbox-textlength-81-number,
body.PC .form-element.textbox-textlength-82-number,
body.PC .form-element.textbox-textlength-83-number,
body.PC .form-element.textbox-textlength-84-number,
body.PC .form-element.textbox-textlength-85-number,
body.PC .form-element.textbox-textlength-86-number,
body.PC .form-element.textbox-textlength-87-number,
body.PC .form-element.textbox-textlength-88-number,
body.PC .form-element.textbox-textlength-89-number{ flex: 0 1 auto;}


/*select幅 全角*/
body.PC .form-element.select-textlength-1{ width:calc( 1.125rem * 1 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-2{ width:calc( 1.125rem * 2 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-3{ width:calc( 1.125rem * 3 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-4{ width:calc( 1.125rem * 4 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-5{ width:calc( 1.125rem * 5 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-6{ width:calc( 1.125rem * 6 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-7{ width:calc( 1.125rem * 7 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-8{ width:calc( 1.125rem * 8 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-9{ width:calc( 1.125rem * 9 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-10{ width:calc( 1.125rem * 10 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-11{ width:calc( 1.125rem * 11 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-12{ width:calc( 1.125rem * 12 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-13{ width:calc( 1.125rem * 13 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-14{ width:calc( 1.125rem * 14 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-15{ width:calc( 1.125rem * 15 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-16{ width:calc( 1.125rem * 16 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-17{ width:calc( 1.125rem * 17 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-18{ width:calc( 1.125rem * 18 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-19{ width:calc( 1.125rem * 19 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-20{ width:calc( 1.125rem * 20 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-21{ width:calc( 1.125rem * 21 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-22{ width:calc( 1.125rem * 22 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-23{ width:calc( 1.125rem * 23 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-24{ width:calc( 1.125rem * 24 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-25{ width:calc( 1.125rem * 25 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-26{ width:calc( 1.125rem * 26 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-27{ width:calc( 1.125rem * 27 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-28{ width:calc( 1.125rem * 28 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-29{ width:calc( 1.125rem * 29 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-30{ width:calc( 1.125rem * 30 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-31{ width:calc( 1.125rem * 31 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-32{ width:calc( 1.125rem * 32 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-33{ width:calc( 1.125rem * 33 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-34{ width:calc( 1.125rem * 34 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-35{ width:calc( 1.125rem * 35 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-36{ width:calc( 1.125rem * 36 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-37{ width:calc( 1.125rem * 37 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-38{ width:calc( 1.125rem * 38 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-39{ width:calc( 1.125rem * 39 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-40{ width:calc( 1.125rem * 40 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-41{ width:calc( 1.125rem * 41 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-42{ width:calc( 1.125rem * 42 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-43{ width:calc( 1.125rem * 43 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-44{ width:calc( 1.125rem * 44 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-45{ width:calc( 1.125rem * 45 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-46{ width:calc( 1.125rem * 46 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-47{ width:calc( 1.125rem * 47 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-48{ width:calc( 1.125rem * 48 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-49{ width:calc( 1.125rem * 49 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-50{ width:calc( 1.125rem * 50 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-51{ width:calc( 1.125rem * 51 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-52{ width:calc( 1.125rem * 52 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-53{ width:calc( 1.125rem * 53 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-54{ width:calc( 1.125rem * 54 + 2rem + 6px)!important; flex: 0 1 auto;}
body.PC .form-element.select-textlength-55{ width:calc( 1.125rem * 55 + 2rem + 6px)!important; flex: 0 1 auto;}

/*select幅 半角指定（幅はJS側で指定しています）*/
body.PC .form-element.select-textlength-1-number,
body.PC .form-element.select-textlength-2-number,
body.PC .form-element.select-textlength-3-number,
body.PC .form-element.select-textlength-4-number,
body.PC .form-element.select-textlength-5-number,
body.PC .form-element.select-textlength-6-number,
body.PC .form-element.select-textlength-7-number,
body.PC .form-element.select-textlength-8-number,
body.PC .form-element.select-textlength-9-number,
body.PC .form-element.select-textlength-10-number,
body.PC .form-element.select-textlength-11-number,
body.PC .form-element.select-textlength-12-number,
body.PC .form-element.select-textlength-13-number,
body.PC .form-element.select-textlength-14-number,
body.PC .form-element.select-textlength-15-number,
body.PC .form-element.select-textlength-16-number,
body.PC .form-element.select-textlength-17-number,
body.PC .form-element.select-textlength-18-number,
body.PC .form-element.select-textlength-19-number,
body.PC .form-element.select-textlength-20-number,
body.PC .form-element.select-textlength-21-number,
body.PC .form-element.select-textlength-22-number,
body.PC .form-element.select-textlength-23-number,
body.PC .form-element.select-textlength-24-number,
body.PC .form-element.select-textlength-25-number,
body.PC .form-element.select-textlength-26-number,
body.PC .form-element.select-textlength-27-number,
body.PC .form-element.select-textlength-28-number,
body.PC .form-element.select-textlength-29-number,
body.PC .form-element.select-textlength-30-number,
body.PC .form-element.select-textlength-31-number,
body.PC .form-element.select-textlength-32-number,
body.PC .form-element.select-textlength-33-number,
body.PC .form-element.select-textlength-34-number,
body.PC .form-element.select-textlength-35-number,
body.PC .form-element.select-textlength-36-number,
body.PC .form-element.select-textlength-37-number,
body.PC .form-element.select-textlength-38-number,
body.PC .form-element.select-textlength-39-number,
body.PC .form-element.select-textlength-40-number,
body.PC .form-element.select-textlength-41-number,
body.PC .form-element.select-textlength-42-number,
body.PC .form-element.select-textlength-43-number,
body.PC .form-element.select-textlength-44-number,
body.PC .form-element.select-textlength-45-number,
body.PC .form-element.select-textlength-46-number,
body.PC .form-element.select-textlength-47-number,
body.PC .form-element.select-textlength-48-number,
body.PC .form-element.select-textlength-49-number,
body.PC .form-element.select-textlength-50-number,
body.PC .form-element.select-textlength-51-number,
body.PC .form-element.select-textlength-52-number,
body.PC .form-element.select-textlength-53-number,
body.PC .form-element.select-textlength-54-number,
body.PC .form-element.select-textlength-55-number,
body.PC .form-element.select-textlength-56-number,
body.PC .form-element.select-textlength-57-number,
body.PC .form-element.select-textlength-58-number,
body.PC .form-element.select-textlength-59-number,
body.PC .form-element.select-textlength-60-number,
body.PC .form-element.select-textlength-61-number,
body.PC .form-element.select-textlength-62-number,
body.PC .form-element.select-textlength-63-number,
body.PC .form-element.select-textlength-64-number,
body.PC .form-element.select-textlength-65-number,
body.PC .form-element.select-textlength-66-number,
body.PC .form-element.select-textlength-67-number,
body.PC .form-element.select-textlength-68-number,
body.PC .form-element.select-textlength-69-number,
body.PC .form-element.select-textlength-70-number,
body.PC .form-element.select-textlength-71-number,
body.PC .form-element.select-textlength-72-number,
body.PC .form-element.select-textlength-73-number,
body.PC .form-element.select-textlength-74-number,
body.PC .form-element.select-textlength-75-number,
body.PC .form-element.select-textlength-76-number,
body.PC .form-element.select-textlength-77-number,
body.PC .form-element.select-textlength-78-number,
body.PC .form-element.select-textlength-79-number,
body.PC .form-element.select-textlength-80-number,
body.PC .form-element.select-textlength-81-number,
body.PC .form-element.select-textlength-82-number,
body.PC .form-element.select-textlength-83-number,
body.PC .form-element.select-textlength-84-number,
body.PC .form-element.select-textlength-85-number,
body.PC .form-element.select-textlength-86-number,
body.PC .form-element.select-textlength-87-number,
body.PC .form-element.select-textlength-88-number,
body.PC .form-element.select-textlength-89-number{ flex: 0 1 auto;}

/* test.cssから移動したスタイルS */

.beginning_of_sentence {
    margin-left: 0;
}

.indent_of_annotation{
    padding-left:3em;
    text-indent:-3em;
}

.indent_of_annotation_qa_aria{
    padding-left:3em;
    text-indent:-3em;
}

body:not(.PC) .indent_of_annotation_qa_aria{
    padding-left:0.3em;
    text-indent:-3em;
}


.indent_of_link{
    padding-left:1.3em;
    text-indent:-1em;
}

.indent_of_link_small_qa_aria{
    padding-left:4em;
    text-indent:-1em;
}

body:not(.PC) .indent_of_link_small_qa_aria{
    padding-left:1.3em;
    text-indent:-1em;
}

body.PC .indent_of_oc-help{
    padding-left:2.3em;
    text-indent:-1em;
}

body:not(.PC) .indent_of_oc-help{
    padding-left:1.3em;
    text-indent:-1em;
}

ul.indent_of_link{
    padding-left:1.3em;
    text-indent:-1em;
}

ul.indent_of_link .dialog{
    padding-left:0;
    text-indent:0;
}

.PC .list_table_checkbox {
    background-color: #FCFAF2 !important;
}

.list_table_checkbox_margin {
    margin:0.5rem 0 0.5rem 0 !important;
}

body:not(.PC) .list_table_checkbox_thead {
    display: none !important;
}

.frame_arrow_down_gray {
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 2.1875rem 3.125rem 0 3.125rem;
    border-color: #d3d3d3 transparent transparent transparent;
    margin-bottom: .625rem;
}

body:not(.PC) li input.textbox{
    margin-left: -2rem;
    width:calc(100% + 2rem);
}

body:not(.PC) li .password{
    width:calc(100% + 2rem);
}

body:not(.PC) li .pc-form-horizontal{
    margin-left: -2rem;
    width:calc(100% + 2rem);
}
body:not(.PC) li .sp-form-horizontal{
    margin-left: -2.25rem;
    width:calc(100% + 2.5rem);
}

body:not(.PC) ul.checkbox-list li .pc-form-horizontal{
    margin-left: -0.25rem;
    width:calc(100% + 0.5rem);
}
body:not(.PC) ul.checkbox-list li .sp-form-horizontal{
    margin-left: -0.25rem;
    width:calc(100% + 0.5rem);
}
body:not(.PC) ul.radio-list li .pc-form-horizontal{
    margin-left: -0.25rem;
    width:calc(100% + 0.5rem);
}
body:not(.PC) ul.radio-list li .sp-form-horizontal{
    margin-left: -0.25rem;
    width:calc(100% + 0.5rem);
}

body:not(.PC) li .pc-form-horizontal input.textbox{
    margin-left:0rem;
    width:calc(100%);
}

body:not(.PC) li .sp-form-horizontal input.textbox{
    margin-left: 0rem;
    width:calc(100%);
}

body:not(.PC) li textarea{
    margin-left: -2rem;
    width:calc(100% + 2rem);
}

body:not(.PC) li .select-container{
    margin-left: -2rem;
    width:calc(100% + 2rem);
}

body:not(.PC) li .pc-form-horizontal .select-container{
    margin-left: 0rem;
    width:calc(100%);
}

body:not(.PC) li .sp-form-horizontal .select-container{
    margin-left: 0rem;
    width:calc(100%);
}

body:not(.PC) li input[type="file"] {
    margin-left: -2rem;
    width:calc(100% + 2rem);
}

body:not(.PC) li .radio-list{
    margin-left: -2rem;
    width:calc(100% + 2rem) ;
}

body:not(.PC) li .toggle{
    margin-left: -2rem;
}

body:not(.PC) li .checkbox-list{
    margin-left: -2rem;
    width:calc(100% + 2rem);
}

/*
body:not(.PC) li button{
    margin-left: -2rem;
}

body:not(.PC) li img{
    margin-left: -2rem;
}
*/

body:not(.PC) li .indent_of_annotation{
    margin-left: -2rem;
}


body:not(.PC)  ul.checkbox-list li .indent_of_annotation{
    margin-left: 0rem;
}

body:not(.PC) li .indent_of_link{
    margin-left: -2rem;
}

body:not(.PC) li .indent_of_oc-help{
    margin-left: -2rem;
}

.PC li .indent_of_oc-help{
    margin-left: 0rem;
}

body:not(.PC) li .guidance{
    margin-left: -2rem;
}

body:not(.PC) li .not_indent{
    margin-left: 0rem;
}

body:not(.PC) ul .not_indent{
    margin-left: 0rem;
}

body:not(.PC) ol .not_indent{
    margin-left: 0rem;
}

body:not(.PC) li .add-handle-circle-container{
    margin-left: -2rem;
}

body:not(.PC) li .sp-li-noindent{
    margin-left: -2rem;
}


.PC  ul.checkbox-list li .indent_of_annotation{
    margin-left: -1.75rem;
}

li .icon.marker-disc{
    margin-left: -0.5rem;
}

li .icon.indent_of_annotation_marker-disc{
    margin-left: 1.5rem;
}

.PC .table.single_table th .required{
    color: #fff !important;
}

.PC input[type="file"] {
    width: 80%;
}

.oc-handle > img {
    width: 1.0rem;
}

body.PC .oc-handle > img {
    width: 1.0rem;
}

/* 中央横並びボタン用class start */
.select-command {
    margin-bottom: 1rem;
}

body.PC .select-command {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

body.PC .select-command button {
    width: calc((73% - 1rem) /2);
}

.select-command {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
}

body.PC .select-command button:not(:first-of-type) {
    margin-left: .5rem;
}

body:not(.PC) .select-command button{
    margin-right: 0;
}

/* 中央横並びボタン用class end */

/* 左寄せ横並びボタン用class start */
.select-command_2 {
    margin-bottom: 1rem;
}

body.PC .select-command_2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
}

body.PC .select-command_2 button {
    width: calc((73% - 1rem) /2);
}

.select-command_2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
}

body.PC .select-command_2 button:not(:first-of-type) {
    margin-left: .5rem;
}

body:not(.PC) .select-command_2 button{
    margin-right: 0;
}

/* 左寄せ横並びボタン用class end */

.main-command {
    margin-top: 1.5rem
}

body:not(.PC) h2 {
    margin-top: 1rem;
}

ul.radio-list{
    margin-top: 0.5rem;
}

ul.checkbox-list {
    margin-top: 0.75rem;
}

.PC .plate .plate-command button {
    margin: 0 0.25rem 0.3rem;
}

.PC .ol_radio_indent {
    margin-left: -2rem;
}

body:not(.PC) .ol_span_indent {
    margin-left: -2rem;
}

/* test.cssから移動したスタイルE */

.list_table caption strong {
    margin: 0;
    font-size: 1.125rem;
}

.list_table_common caption strong {
    margin: 0;
    font-size: 1.125rem;
}


body:not(.PC) .indentSP{
    padding-left: 1em;
}

.small a.badge_help {
    vertical-align: top;
    margin-top: 0;
}

.required_table {
    background: #CC173A;
    color: #fff;
    font-size: 0.75rem;
    padding: 3px 5px 2px 5px;
    display: inline-block;
    vertical-align: top;
    white-space:nowrap;
}

body:not(.PC) .required_table{
    margin-left: 1em;
    background: #CC173A;
    color: #fff;
    padding: 3px 8px 2px 8px;
}

.display_none {
    display: none;
}
.circle_number {
    text-align:center;
    border:1px  solid #177544;
    border-radius: 50%;
    width:1.5em;
    height:1.5em;
    background-color:#177544;
    color:#fff;
}

/* R6 37 AS9 */
.circle_number_2 {
    text-align:center;
    border:1px  solid #177544;
    border-radius: 50%;
    width:2.2em;
    height:1.5em;
    background-color:#177544;
    color:#fff;
}
/* R6 37 AE */

.add-handle-sub:not(:disabled),
.add-handle-sub:not(:disabled):focus {
    background: #fff;
    border: 2px solid #ff9d00;
}

.add-handle-sub:not(:disabled):hover {
    box-shadow: initial;
    background: #fff2bb;
}

.android .add-handle-sub:not(:disabled):hover {
    box-shadow: none;
    background: #fff;
}

_::-webkit-full-page-media, _:future, :root body:not(.PC) .add-handle-sub:not(:disabled):hover {
    box-shadow: none;
    background: #fff;
}

h4 {
    color: #177544;
    font-size: 1rem;
    font-weight: bold;
    margin-top:0;
    margin-bottom: 1.25rem;
}

.sticky_mihon {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: auto;
  margin: 0 auto;
  align-self: flex-start;
}

.beginning_of_sentence_nofu_kanpu {
    margin-left: 0;
    font-size: 1.2rem;
}

.beginning_of_sentence_nofu_kanpu_money {
    margin-left: 0;
    font-size: 1.5rem;
}

body:not(.PC) .sp-pb-0{
    padding-bottom: 2px !important;
}

.indent_of_sentence{
    padding-left:2.2em;
    text-indent:-2.2em;
}

.indent_of_bold{
    font-weight: bold;
    margin: 0 4px 0 0;
}

.radio_indent_of_sentence{
    padding-left:3.75em !important;
    text-indent:-2.25em !important;
}

.h3_number {
    font-size: 1.25rem;
    border-left: none;
    padding-left: 0.0rem;
}

tr.plate_common:hover{
    cursor: pointer;
    background-color: #EAFAF2;
}

#prev_button{
    margin-right: auto;
}

.checkmarkSpan{
    height:100px;
    margin:30px 50px 30px;
}

.checkmark{
    padding-left:80px;
    position:relative;
}

.checkmark:before,
.checkmark:after{
    content:"";
    display:block;
    position:absolute;
}

.checkmark:before{
    width:72px;
    height:72px;
    border-radius:50px;
    background:#ffffff;
    border:1px solid #0081c1;
    right:0;
    top:0px;
    border-width: 5px;
    
}

.checkmark:after{
    border-left:2px solid #0081c1;
    border-bottom:2px solid #0081c1;
    width:40px;
    height:20px;
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);
    right:19px;
    top:24px;
    border-width: 5px;
}

.checkguidance{
    font-size: 110%;
}